The No.1 Website for Pro Audio
Survey of sharing all my personal ways to optimize the sound quality of PC
Old 7th April 2012
  #1
Gear Maniac
Survey of sharing all my personal ways to optimize the sound quality of PC

This time I’m going to share my experiences of optimizing our CAS/DAW computers, to talk about how to improve the sound quality of PC.
CAS (Computer Audio system), as well as HTPC, for output to high-end audio systems playing back, mainly for entertainment usage.
And DAW (Digital Audio Workstation), is the industrial or workstation edition of CAS, mainly for audio studios, and composers, also for someone making home studio, or audio FX or music producing, and sometimes they would record something like guitar, bass, or vocal etc…
Both of them are also computers for pro-audio, and just the differences of functions, the way to optimize their sound are very nearly similar.
And my computer is even a system for PC + CAS + DAW 3 usage inside a same machine. So some universal ways those the others teach you to build a simple CAS/HTPC or DAW and told you to disable many stuffs. But I’m not going to tell you to do so. Because it’s still need to be kept a system-balanced stable status of a “normally well computer” and it can help the sound quality actually.


OK, now start from choosing the computer configurations.

First, audio is one of the media types.
For processing multimedia, AMD can never be as good as Intel or better, especially the CPU instructions, float operations etc. Intel is always the much faster one in such all. And even in full workloads, e.g. a large amount of keeping transcoding, turned on many high precision effectors etc., it’s really much more stable and faster in evidence.
So cause of this, that’s why Mac computers – which are the best for media production, they just use the complete Intel system only and never use the other CPU and chipsets except their old PowerPC.
So that’s why so many people said “the only advantage of AMD is just price”.

Normally there is a component called HPET (High Precision Event Timer) inside the Intel motherboards or Intel Chipset nowadays (around from the period of Pentium D).
High Precision Event Timer - Wikipedia, the free encyclopedia
This stuff is developed by Intel and Microsoft from 2005. But I cannot sure are there any same stuffs in the other chipsets or AMD systems.
HPET can be enabled in the BIOS of your motherboard. This stuff helps the sound quality so much in evidence. You can hear the large differences obviously between enabling it or not. So it is strongly recommended to enable it. If you cannot see any HPET inside your BIOS configurations, maybe you may upgrade your BIOS and let’s see it exist or not.

Make sure the power supplied to your computer must be sufficient.

Of course, there are seldom people may setup such systems with onboard sounds. Most of them are such as PCI/PCI-Express soundcard, 1394/USB/PCI DAC/Audio-Interface etc…
One thing you should notice that, if you need to use any 1394/USB cards, then you should better choose those products which are using the chips of Texas Instruments (TI) or NEC. The chips of ALI or VIA should be avoided to use. Otherwise....... OMG lol, nothing I could say anymore except “good luck”…
It may be better if you can use a display card. The workloads of CPU and I/O would be decreased a certain amount if you do not use your onboard display, but it never help too much actually.


Then now we talk about the operation systems. As I’ve mentioned before, Mac OSX may be the OS which is the best sound quality.
But generally most of the people are still habitually using the platforms of Microsoft Windows. In all of the Windows systems, it’s better to use Windows Vista or Windows 7. Because you can just get the best clocking timer only in the Windows Core Audio. And MMCSS (Multimedia Class Scheduler Service) is the essential key point, it’s extremely helpful for the WASAPI or ASIO. Certainly the performance of Windows 7 is much far better than Windows Vista.
Next, all the drivers must be upgraded to the latest version. And you should install all latest fixes, patches and service packs from the Windows Update.
Starting with Windows Vista, Microsoft requires all computer and audio device manufacturers to support Universal Audio Architecture in order to pass Windows Logo. Then the driver of those devices can work inside the environment of core audio. Universal Audio Architecture - Wikipedia, the free encyclopedia

As I’ve mentioned before, There’re still many people use their computer in the function of PC and CAS/DAW mixed usage. That means their computer would be used for audio playback and production but for web browsing, MSN, ICQ, Facebook etc. at the same time too. So they may need to install anti-virus software too.
For all of the anti-virus softwares, There is only the Avira can do the best detection rate and the best performance at the same time until now. It detects the most viruses but the most fastest speed, just like haven’t run any anti-virus inside. So this one is recommended to use.
This web does several times of benchmarks tests for the anti-virus softwares every year, so you may have a look on their latest test as a reference: AV-Comparatives - Independent Tests of Anti-Virus Software - Welcome to AV-Comparatives.org


OK, now we would focus on Windows Vista SP1 and Windows 7 in the following.

Control Panel > Hardware and Sound > Sound, open it, in the “playback” tab, select the output device u need, double-click or click ”Properties” to open, in the “Advanced” tab, select the default sampling rate and bit-size you need. In the part of “Exclusive Mode”, make sure those 2 checkboxes all had been ticked.
For those 2 checkboxes, the first one is for enabling the Exclusive mode of WASAPI, that means it can bypass the windows mixer and output simply directly, and the other sounds from the other tracks of OS mixer cannot be play out anymore, until the audio using the exclusive mode has been released again.
And the second checkbox below is for allowing the audio stream in exclusive mode can be boosted its priority in the whole computer by MMCSS, so it may reduce jitters.

For the slow performance computers, the old hardware configurations, slow display cards or onboard display, the Aero of Windows Vista/7 may better be disabled to speed up the overall performance. Just right click on the desktop > Personalize, then just choose the Windows 7 Basic theme. The basic theme of Windows 7 is still quite pretty although the Windows Vista one is little bit simple.


Now we start to talk about the softwares. Generally the CAS (HTPC) and DAW systems are running different softwares, so we are going to talk about them separately.

For CAS (HTPC) systems, we are going to go through with Foobar2000 as an example.

First, make sure the playback thread have the highest priority. In Foobar2000, File > Preferences > Advanced > Playback > thread priority, just keep it the highest value 7 would be fine

Nest, it’s so important to load the full audio file into RAM and just playback inside the memory. In the item File > Preferences > Advanced > Playback > full file buffering up to, set it to 100,000KB or larger value, just depends on the largest file size you would usually play.

ASIO or WASAPI exclusive mode should always be used for playback as possible as it can. If unfortunately both of them are not found either, Kernel Streaming would be an alternate substitute although it is a blemish in an otherwise perfect thing.

All the DSP effects would be disabled as possible as it can, and the volume fader of Foobar2000 should always be kept in 0dB, for avoiding from the unnecessary digital distortive noises. It’s better to keep the dithering disabled too if you are going to just play the simple 16bit x 44100Hz audios, because dithering should be added when the audio were being produced, and not added by user playback.

Finally, even the whole Foobar2000 process should be run in the highest “real-time” priority. Right click the Windows Taskbar > select the "Task Manager" (for Windows XP/Vista) or "Start Task Manager" (for Windows 7), in the “Processes” tab, find and select the process named ”foobar2000.exe” then right click on it > Set Priority > Realtime. If you think it is too trouble, you may just create a new text file and enter the following command text, then save it into a *.bat file:
start "" /realtime "C:\Program Files\foobar2000\foobar2000.exe"

Then every time when you want to launch Foobar2000, just run this .bat file and it is



For DAW systems, cause of the sound quality of Cakewalk Sonar is not very well, and the popularity of Protools and Logic softwares , so we are going to go through with Nuendo and Cubase of Steinberg as an example.

First, actually the whole process of DAW software running in the “realtime” priority can improve the sound quality too. The way to do is same as the CAS systems, but generally most of the DAW systems seldom use this way.

Next, launch your Cubase/Nuendo, then go to Devices > Device Setup > VST Audio System. Steinberg softwares can use ASIO only in general. Then in the “Advanced Options” part, the “Audio Priority” must be set to “Boost”, and “Multi-processing” must be checked. For the other configurations, just let them follow the default values would be fine.
About the rest matters of the DAW softwares are all just around the technique of composing, producing and mixing, and out of this topic, so we are not going to go through them anymore.


Here is one thing you may need to notice, although the WASAPI of Windows Vista and Windows 7 now support exclusive mode, but MMCSS is still not automatically supported by default when WASAPI is using with the external DAC or audio interfaces use USB/1394. So the company of those DAC/AI may offer some drivers for Windows Vista/7 which their ASIO drivers would apply the MMCSS manually, just like the driver of AudioFire:
http://www.av-forums.net/plus/viewthread.php?tid=70031
But for the other brands of DAC/AI, they may have some other different solutions, and I don’t know are theirs would be the same. For more details you would have to contact the technical support of your own DAC/AI by yourself. I have also kept contact usually with my Echo technical supports by my own self
For more information about this:
Technical features new to Windows Vista - Wikipedia, the free encyclopedia _performance
“WaveRT however works only with PCI, PCI Express or onboard audio devices; it does not work with USB or FireWire interfaces which are more widespread in the professional audio industry.”


OK, we should come to the part which may be the most important part right now.
Even we can optimize the sound quality too by modifying the registries of Windows. Then we could get the most extreme priority of audio until the real limitation of your computer, and make your audio signals achieve nearly sample-realtime-perfect, even sounds near the perfect realtime of high end audio disc player machines.
So now just enter “regedit” into your start menu and run it to prepare for modifying your Windows registry.

First, find the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile . The "SystemResponsiveness" key is meaning the minimum percentage workload of every CPU clock task cycle must be reserved for the others except the media streams applied in MMCSS. It is also meaning the CPU workload usage hard limitation of MMCSS multimedia streaming. Otherwise if there are no limitations, the whole computer may possibly stop to response. It would seriously decrease the whole system stability. But Windows system have an acquiescent value 10% about this. Although you set it to 0%, actually system would still work it as only 10%. So you may just set it to 10(%).

And this show again the real differences between the kernel of Windows Vista/7 and kernels of Windows XP or before
Windows Administration: Inside the Windows Vista Kernel: Part 1
And in the directory of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks , stored some configuration profiles of MMCSS to let the programs or drivers choose to use.
Generally, Directsound, Waveout, WASAPI shared mode or such similar API would apply the profile “Audio”, when the WASAPI exclusive mode and ASIO would usually apply “Pro Audio”. But different programs or drivers may apply different profiles. For more details please find their own related information, or contact their technical supports.

So now we are going to go through with “Audio” and “Pro Audio”.
In each profile:
"Scheduling Category" is the overall applied priority policy, string values: “High”, “Medium” and “Low”, of course “High” should be used.
"Priority" is the fine-tuned priority value, integer from 1 to 8, 1 is the lowest and 8 is the highest, so 8 should be used.
"GPU Priority" value from 0 to 31, 0 is the lowest value when 31 is the highest, so you should use 31
"BackgroundPriority" the value of this one is same as "Priority", but just effect its background work time, and also from 1 to 8, when 1 is the lowest and 8 is the highest, so 8 may also be set.
"SFIO Priority" is meaning the priority when the audio streams access any I/Os, e.g. go in/out the DAC/AI, 1394/USB, PCI/PCIE bus, RAM, CPU or hard disk etc. such I/Os. This is string values: “Idle”, “Low”, “Normal” and “High”, so of course you should use “High”.


Just restart the MMCSS service or reboot your computer after you have modified those all and all things would be applied.


Increasing the priorities of some IRQs may help to improve the sound quality too. The IRQs those need to be increased their priority are: IRQ 0, IRQ 8 and the IRQ of your own soundcard or 1394 card. But you must make sure your soundcard own a really standalone IRQ value and ensured absolutely no other hardwares share this IRQ value with it before you do the following things. Otherwise it would decrease the effectiveness of this step. You may find the IRQ of your own soundcard in All Programs in Start menu > Accessories > System Tools > open the System Informations, then in the page of Hardware Resources > ”IRQ”. If there are not only your soundcard but shared the same IRQ number with the other hardwares, then you may try to change another PCI/PCIE slot for your soundcard, until your soundcard got its unique IRQ number. Windows OS never have any rights to change the IRQ number by itself. Perhaps you may change its IRQ in BIOS with some motherboards but not every motherboard.
IEEE 1394 generally must own its unique IRQ number, because this is its original own designed standard and never be changed. So IEEE 1394 is very easy to set its IRQ priority. This is its innate advantage of performance, for its high performance realtime industrial standard designed.
But if you are using some USB DAC/AI, then sorry, there’re really nothing I can help. USB must share its IRQ number with other hardwares. This is its innate designed standard too, from USB v1-v3 are same. Because its original design has never let you to use it in high performance works, so, USB card cannot be increased its own IRQ priority.
IRQ 0 is the system timer of your CPU, and IRQ 8 is the CMOS of your motherboard and the real-time clock, HPET may also be placed inside. So It help the sound quality a lot after you have increased those IRQ priorities.

Now keep going on, and also we have to run the “regedit”, and then go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl, and add a registry key “IRQ#Priority”. The “#” inside the key name is the IRQ number you may need to add. For example, it you need to increase the priority of CMOS then you should add a registry key "IRQ8Priority", and then set its value to 1.
It’s the same way to do for IRQ 0 and the IRQ of your soundcard/1394card, here are the examples:
"IRQ8Priority"=dword:00000001
"IRQ0Priority"=dword:00000001

OK, fine, just reboot your computer after you’ve set all, then all things would be applied.

After all the things I’ve said above have been configured, wow! All the sounds from the computer, sounds really all much better. The sound seems like a high-end disc player machine, really sounds like played from hardware firmware. If the quality of your sound codec is good enough, e.g. AKM 128x oversampling, then you would hear less and less digital noises, sounds like the analog tapes in studios. The noises had never been so less and even all the details those never been heard before and now I can hear! But this time the sound quality had been improved too much, the speakers sounds a little bit like new-bought. It’s time for us to burn-in our speakers again! heh
So buddies you may try those my personal ways, and share your own improved result here. heh
Old 6th December 2013
  #2
Lives for gear
 
John The Cut's Avatar
 

Just wondering about the validity of all this since I am tracking down issues with Cubase 6 and Win7...
Old 7th December 2013
  #3
I have not read it all, about half way you lost me regarding validity of most of what you wrote. In short: I strongly disagree and recommend everybody to not blindly follow your tips.

Sorry to be that straight but you get people to worry about things there is nothing to worry about.
Old 7th December 2013
  #4
Deleted User
Guest
Hmmmmm

While I admire some of the thoroughness, I'm not convinced about the foundation of the OP's theory. I'm certainly not going to start tweaking my registry in order to test it. Certain aspects are interesting.

I've yet to see one of these tweaks actually prove useful, but I'll keep an eye on this thread.
Old 7th December 2013
  #5
Gear Maniac
 

So how's about some snake oil then...
Old 7th December 2013
  #6
Lives for gear
 

Whether or not specific points about whether one option is more efficient in terms of CPU power available to audio algorithms that another are true, the whole of the OPs post seems to be based on a fallacy.

That fallacy is that audio quality is in some way proportional to the amount of CPU power available to process the audio. Many people seem to imagine that somehow audio processing is scaled with regards to available CPU cycles, and that as the system gets loaded up shortcuts are made, things get a bit less accurate, bandwidth gets restricted, noise increases.. etc.

This is NOT the case, the audio algorithms you're running (be they plugins, mp3 decoders, DAWs, drivers, whatever) require X CPU instructions in order to prepare the next block of audio (which is then passed on to the next plugin, or to the DAW summing, or the output driver or to disk or whatever). If the algorithm gets time to run those X instructions in the time before the next block is required (in other words there's enough CPU power available after doing everything else required), then everything will work, 100%, AS GOOD AS IT CAN EVER BE.

If on the other hand, it doesn't, then the audio will not be available for the next block... you won't get all the audio but at slightly lower quality as some people seem to imagine, there will be a bit of audio missing, or it will be delayed (so there will be a period when the output DAC doesn't have new samples to play), in other words you will get a glitch, it will almost certainly be very noticable, and it will almost certainly NOT manifest itself as some subtle difference like a loss of top end, or blurry transients, or less dynamic bass, or whatever else it is people imagine they're hearing.

It'll be clicks, pops and dropouts, you'll get more of them as the system gets more and more overloaded, so in that respect quality will drop in a way that is arguably proportional, but since even one click in the middle of a track is likely to render it unusable, it's a moot point in my opinion.

So in short, yes you want to try to ensure your system runs as efficiently as possible leaving as many CPU cycles available to audio algorithms as possible in order to allow trouble free audio (and as much manipulation of that audio as you want or require), and some of the OPs suggestions may help in this, but don't imagine it's a gradual thing, you'll either have enough CPU available to run the audio processing you want correctly, in which case it'll be as good as it can ever be, or you won't, in which case you're almost certainly going to hear very noticable gltiches (I say "almost certainly" only because there may be freak occurences when a glitch happens in a place where it gets masked by the nature of the audio at that moment).

and as for "Mac OSX may be the OS which is the best sound quality.".. TOTAL ROT, the OS does not affect sound quality, any more than it affects the accuracy of the results that come out of your spreadsheet, or how well a spellchecker works.
Old 7th December 2013
  #7
Quote:
Originally Posted by John The Cut View Post
Just wondering about the validity of all this since I am tracking down issues with Cubase 6 and Win7...
Please ignore it. It's absolutely baffling in so many ways. (I wonder why no one replied when it was originally posted a year and a half ago?)

Anyway, on Windows 7 the only tweaks I ever make are to select the High Performance power scheme in the Power Options control panel (it's usually hidden by default; click 'show additional plans' if you don't see it), and to use msconfig to disable any non-Microsoft services and startup items that I know I won't be using. None of that Black Viper stuff.

Also, specifically for Cubase, I think that if you're running on Win 7/Win 8 people advise NOT using the Steinberg power scheme (which you can enable in the Cubase device settings), but to stick with the Microsoft High Performance one instead. Might be worth some additional research though. (And if you ever upgrade to Cubase 7, disable ASIOguard!)

Finally don't run any bloated antivirus/security packages like McAfee, Symantec, or AVG. Microsoft Security Essentials (on Win 7), Windows Defender (Win 8) and ESET are much easier on your system and provide adequate protection.
Old 8th December 2013
  #8
Lives for gear
 
John The Cut's Avatar
 

Quote:
Originally Posted by UltimateOutsider View Post
Please ignore it. It's absolutely baffling in so many ways.
Understood and thanks
Old 12th February 2014
  #9
Here for the gear
 

Sonar 8 exported file plays much faster when played elsewhere..help please

Hello, would you have any suggestions on how to fix this... when I export a wav file, the file plays at a high speed rate. And I'm guessing it has something to with bit depth and rate. but I can't get it figured out.
When I try to change bit depth via "Tools/change audio format" it will only stay at 24 and won't let me change to 16. And my project is in 16, and I dont see how to change that to 24.
Any help would be greatly appreciated.
Steven
Old 14th January 2019
  #10
Here for the gear
 

I'm sorry, but there is absolutely no truth to the notion that registry values of the form IRQnPriority will have any effect, good or bad, on Windows.

Windows has no code that reads any such registry values.

This can easily be confirmed with the "Process Monitor" (ProcMon) tool from the SysInternals tools.
Post Reply

Welcome to the Gearslutz Pro Audio Community!

Registration benefits include:
  • The ability to reply to and create new discussions
  • Access to members-only giveaways & competitions
  • Interact with VIP industry experts in our guest Q&As
  • Access to members-only sub forum discussions
  • Access to members-only Chat Room
  • Get INSTANT ACCESS to the world's best private pro audio Classifieds for only USD $20/year
  • Promote your eBay auctions and Reverb.com listings for free
  • Remove this message!
You need an account to post a reply. Create a username and password below and an account will be created and your post entered.


 
 
Slide to join now Processing…
Search this Thread
Search this Thread:

Advanced Search
Forum Jump
Forum Jump