Что такое primary sound driver

Обновлено: 30.06.2024

If your CPU load climbs too high, you will hear clicks, pops or stuttering in the live audio. This is known as a buffer underrun. The good news is, CPU load can be lowered if you take the time to make some adjustments to FL Studio as shown below.

Why do underruns happen? - Live audio is rendered, ahead of time, in small segments that are sent to your audio interface. The length of the segments is set by the Buffer length in the Audio Settings. The purpose of pre-rendering is to allow for short spikes in CPU load when your computer can't keep up 'real-time'. In this case some of the buffered audio can be used while the CPU catches up. If the buffer runs out before your CPU catches up then your audio device will start crackling or stuttering as it plays the audio data arriving later than needed, in bits and pieces.

Underruns only matter during real-time playback - Loading projects and plugins will cause underruns and so the total count should not bother you. Underruns also can't occur in exported wave or mp3 files as the render process can take as long as it needs to generate audio. If you do hear glitches in an exported audio, then it's a plugin behaving badly. Further information is available in the FL Studio Optimization YouTube playlist.

First settings and things to check

Some very important settings are located on Options > Audio:

  1. Audio settings (drivers)
    • Windows, one of the most important settings is to select an ASIO audio device driver from the Input / output menu. Look first for the native ASIO driver that installed with your audio device OR if one is not available use the Image-Line FL Studio ASIO. Whichever driver you use, download the latest from your audio device manufacturer.
    • macOS - Try Aggregating your audio interface. This can improve unsolvable crackling issues, particularly during recording.

NOTE: Do not connect your audio device through a hub . Use a direct USB port connection.


The graph shows why very short buffers are bad, and very long buffers don't help - In this example the minimum time needed to generate audio for the project is 50% of real-time. That is, no matter how long the buffer, the computer needs half the buffer-time to generate the audio to fill it. Longer buffers don't come for free, as more audio needs to be generated to fill them. Short buffers are a problem because there is a minimum time that can't be crossed without the CPU falling behind real-time. As the buffer is reduced, processing overheads become an increasingly large proportion of the workload and the CPU meter climbs rapidly, usually below 10 ms, as the theoretical minimum buffer length is approached. Conversely, longer buffers simply converge on the minimum possible buffer-fill-time, in this case 50%.

  • Windows - 'Start > Settings > Control panel > System & maintenance*** > Power Options'. *** Whether or not this sub-menu shows depends on your windows settings. Set your power management to 'High performance mode'. If you are running a Laptop/Tablet CPU and experiencing unexpected audio glitches or CPU spikes, try Advanced Settings and set Minimum / Maximum processor state to 99%. This can prevent the system going into turbo CPU mode, and then thermal throttling which causes issues. Finally, ALWAYS use a laptop connected to the power supply.
  • macOS - Open 'System Preferences > 'Energy Saver' > (available option depends on your Mac model) Set 'Computer sleep' slider to 'Never' OR Check the box 'Prevent computer from sleeping automatically when the display is off'. Un-check 'Put hard disks to sleep when possible' and 'Enable Power Nap'. Laptops: Open System Preferences > Energy Saver > Un-check automatic graphics switching. Finally, ALWAYS use a laptop connected to the power supply.
  • VST library mismatches - Make sure you are using plugins that match your version of FL Studio (32 or 64 Bit). Some people switch to FL Studio 64 Bit while their VST library is still 32 Bit OR they unnecessarily run the 32 Bit version on a 64 Bit system with mainly 64 Bit plugins. If FL Studio can't find 64 Bit equivalents of the plugins it will bridge 32 Bit versions to 64 Bit mode and vice versa. This uses more CPU than 32 Bit plugin on FL Studio 32 Bit or 64 Bit plugins on FL Studio 64 Bit.
  • Incorrect Wrapper settings - Make sure you don't have Wrapper Processing > Make bridged activated where it is not needed or intended. The wrapper remembers settings, so deselect it for each plugin with Autosave activated. Bridging uses about 2% extra per plugin, so a couple won't matter but 10+ definitely will. Bridged plugins may also just behave badly causing pops, glitches and possibly crashes. Make sure to install 32/64 Bit versions of ALL plugins to match FL Studio. For more details see FL Studio 32 vs 64 Bit FAQ
Optimization Checklist
  1. Update to the latest version of FL Studio. We made some dramatic improvements to CPU load starting with FL Studio 20.0.4 and more since then.
  2. Set these Audio Settings to ensure maximum performance:
    • Buffer length - Make sure your buffer is not less than 10 ms (441 samples). We recommend between 10-40 ms.
    • Playback tracking - If not already set, try Mixer, Hybrid and Driver. Mixer can help particularly in cases where there is a misalignment between the audio and playback position or strange playhead jumpiness.
    • Mixer Interpolation - Should be set no higher than 24 point sinc (lower is better).
    • Sample rate - Set to 44,100 Hz (or 48,000 Hz if that is not available). Sample rates such as 192 kHz and 96 kHz, will use significantly more CPU than the recommended default of 44.1 kHz.
    • Reset plugins on transport - Make sure 'Reset plugins on transport' is disabled as this can cause significant glitching on start/stop events when using VST plugins.
    • Priority - Set to 'Highest' and deselect 'Safe overloads' (don't worry, an 'unsafe' overload will just lock up interface controls momentarily).
    • Open plugins - Use the View Menu > Close all plugin windows ( Alt+F12 ). If you have a habit of leaving windows open, time to change your workflow.
    • ASIO Options - Try the Mix in buffer switch and Triple buffer options. NOTE: If these do not help, make sure to deselect them again before proceeding.
  3. Smart Disable - Enable Smart disable on the Audio Settingsand then run the Tools Menu > MacrosSwitch smart disable for all plugins.
  4. Close all plugins - Use the View Menu > Close all plugin windows ( Alt+F12 ).
  5. Consolidate patterns - Check for your highest CPU usage plugins using the Plugin Performance Monitor and use the Playlist Track (header) Right-Click menu option 'Consolidate this track' to convert your highest CPU usage patterns to Audio Clips.
  6. PPQ setting (Pulses Per Quarter note) - The PPQ setting sets the 'event' resolution for the project. That is, how finely the Piano roll and Playlist grid is divided for processing by FL Studio. This affects the smallest movements and so sampling of notes, clips and automation. Settings above 192 PPQ can have a significant impact on CPU load. Generally use 96 PPQ unless you need the extra temporal resolution.
  7. For projects heavy with audio-tracks - Turn OFF 'Keep on disk' for any Sampler and Audio Clip channels. This ensures samples are pre-loaded into memory avoiding underruns caused by disk-to-RAM swapping delays OR zoom out the Playlist, ( Ctrl + Right-Click ) on a blank area, so all Audio Clips are visible prior to pressing Play. This forces Audio Clip data to be cached into RAM.
  8. Reduce the plugin count - Try to reduce the number of plugins (instrument and FX). These are the most CPU hungry parts of the program.
  9. Limit Polyphony - Use the maximum polyphony setting to reduce the maximum polyphony of channels (see Miscellaneous Channel Settings). This often reduces dramatically CPU usage in complex melodies. You can still set FL Studio to ignore the maximum polyphony settings when exporting to wave/mp3 file (see Exporting to .wav/.mp3/.mid).
  10. Disable MIDI - Disable all the 'Enable MIDI. ' options using the Options menu as MIDI processing uses CPU resources even when not in use.
  11. Playlist sluggishness - Try disabling 'Playlist menu > View > Keep labels on screen'. Mac users see here.
  12. Plugins behaving badly - See this section of the manual.
System related issues
  • Competing & background programs - Close all non-essential programs that may be competing for resources, e.g. Instant messaging programs (AIM, MSM/WLM, Skype, Yahoo! Messenger), torrents, web browsers, audio/video players, etc. If you experience intermittent issues, check for scheduled activity like virus scans, backups, windows updates, disk defragmentation, even Wi-Fi & Blue-Tooth adapters have been known to cause issues, particularly if they are constantly re-making flaky connections.
  • Hardware issues - Unplug unused HDMI, USB, BlueTooth & FireWire devices if you are experiencing unexpected CPU spikes and glitches to discount these as causes. Also don't overlook cooling issues and thermal throttling of your CPU. When was the last time you blew the dust out of your computers cooling ventilation system/s?
  • Driver issues - Update your Audio driver, Video driver and Motherboard BIOS in that order, checking each time if the issues go away. Make sure to use the latest driver from the manufacturers website for your operating system.
  • Extend your memory - Check the manual page on the CPU & Memory panel. Adding more physical RAM can improve responsiveness where data was previously saved in the Page File. This is only likely to help if you are using 4 GB or less.
  • CPU performance check - Search for your CPU's performance score on CPU Benchmark. Here's how we grade scores:
    • Weak - 4,999 or less.
    • Medium - 5,000 to 9,999.
    • Strong - 10,000 to 14,999.
    • Very strong - 15,000 or more.

    Psychology Reality Check

    Having the lowest Buffer length setting is not a competition. If you are happy with 20 or 30 ms then that's great. Remember, the lower the buffer length setting, the higher the CPU load. We strongly recommend 10 ms (ASIO mode) as a minimum setting. At lower settings than 10 ms, most people don't experience improved 'responsiveness' and the CPU load climbs rapidly. To put 10 ms in context, the delay between touching a key on a real piano and the hammer hitting the strings for a 'pianissimo' note can be well over 100 ms (Touch and temporal behavior of grand piano actions; Goebl, Bresin & Galembo [2005]), something to ponder.

    Что такое primary sound driver

    Стабильная версия (Windows 7, SSE2): 1.6.7 (10.08.2021)
    Бета-версия: 1.6.8 beta 2 (06.10.2021)

    Стабильная версия (Windows XP): 1.5.7 (1.02.2021)

    Список изменений | Архив предыдущих версий


    foobar2000 — бесплатный аудиоплеер для Windows с широчайшими возможностями.

    Основные возможности:

    Плеер поддерживает огромное количество аудиоформатов, начиная с распространённых вроде MP3 и FLAC, поддержка которых идёт "из коробки", до форматов вроде мелодий из Atari и Nintendo, для поддержки которых нужно установить дополнительные компоненты.

    К слову, кроме компонентов-декодеров существует и множество других, так как открытая архитектура foobar2000 позволяет сторонним разработчикам расширять возможности плеера.

    Огромные возможности настройки интерфейса! С помощью базовых средств можно произвольно менять расположение любых элементов интерфейса внутри окна. А если захотите поэкспериментировать, то с помощью расширенных возможностей можно изменить вид плеера до полной неузнаваемости. Умельцы делали полные копии интерфейса WMP, WinAmp и даже StarCraft!

    Расширенные возможности работы с тегами – многие действия автоматизированы, есть поддержка обложек, встраиваемых в аудиофайлы.

    Конвертирование во все поддерживаемые аудиоформаты и возможность риппинга аудиодисков.

    Его настраивать не нужно. Ему нужно подсунуть данную аудиокарту и правильную акустику. Я себе из настроек лишь на колонках бас выкрутил на максимум да в Preferences - Playback оба ползунка на +3db выкрутил. Фубар это такое, которое без настроек звучит правильно при наличии правильной ЗК и акустики.

    Primary Sound Driver Setup

    1. Select a Windows DirectSound Driver - From the drop-down menu select a driver, usually 'Primary Sound Driver'.
    2. Set the buffer length: Use the slider to change the buffer length. Longer buffer settings mean lighter CPU load and more stable performance without underruns (clicks and pops in the audio). A setting of around 20-40 ms is a good starting point, most users do not notice improved responsiveness below 10 ms, however the 'Primary Sound Driver' usually struggled to deliver latencies this low without underruns.

    System Settings - Audio

    Above left shows the Windows Audio Options with the FL Studio ASIO 'ASIO' driver selected, above right the macOS Core Audio 'Built-in Output' driver. If your Audio Interface has its own ASIO/Core Audio drivers, use them.

    A word about Soundcards, Audio Interfaces & Drivers

    Soundcard: The term 'soundcard' is used rather loosely, you may have a soundcard in your PC, a chip on your motherboard or it may be an external device connected by USB/FireWire/Bluetooth. The term Audio Interface is better used. An audio device is any device that makes the sound you hear from your PC speakers. Audio Interface Driver: The driver is the software interface between the operating system (OS) and the audio device hardware. The driver tells the OS, and so FL Studio, what inputs/outputs the interface has and what sample rates it can support. In the case of Windows, ASIO drivers are faster and more efficient than Primary Sound Driver drivers.

    Options

    Audio Input / Output

      Device - A drop-down menu used to select the audio device (output/input device) to be used by FL Studio. The list will show installed audio device drivers. If you have more than one audio device installed, the Output menu can be used to switch between them (press F10 to open the settings panel).

    • Windows - If you want to use a single input and output from two devices, then select FL Studio ASIO and choose separate Input and Outputs as shown below. If you want to use simultaneous inputs or outputs from several devices, select ASIO4ALL, open the Driver and Activate multiple inputs/outputs across devices.
    • macOS - Open the Utilities folder and Aggregate audio devices. Then select the Aggregated device in Device list.
    • Windows - Right-Click your volume control icon on the Windows task-bar, select 'Recording devices' or 'Playback devices' and select the audio device then 'Set as default' then select 'Properties > Advanced' and select a 24 bit 44100 Hz option if available OR 16 bit 44100 Hz if not. If you have an custom ASIO driver for your device the Bit depth settings may also be adjustable from there.
    • macOS - Open Audio MIDI Setup (you can find it in Utilities, inside the Applications folder). For your selected audio device, on the right side of the Audio Devices window, set the Format: 44100 Hz / 2ch-24 Bit Integer.

    Windows: Audio Properties

    • Buffer Length - To change the buffer length, click on the 'Show ASIO panel' button below this readout. The buffer stores audio data before it's sent to your audio device. This allows FL Studio to even out momentary spikes in CPU load when processing that can be slower than 'real-time'. Longer buffers lower CPU load and reduce audio glitches. However with longer buffers the delay between playing a MIDI keyboard or tweaking a control in FL Studio and hearing it is at least equal to this setting (in ms). The ideal buffer is the smallest your computer can manage without causing the buffer underrun count to increase (techniques for optimizing the buffer are described here). A good target with ASIO drivers is 10 to 20 ms (440 to 880 samples).
    • Clock Source - Some audio cards provide external clock source which can fix sync/output problems. However, most cards work properly with the default "Internal" source selected.
    • Show ASIO Panel - Opens the ASIO driver settings panel, use this to change latency settings. Settings between 1-4 ms without underruns are 'cutting edge', 5-10 ms are excellent and 11-20 ms are good. 10 ms (441 samples) is a good target.
    • Mix in buffer switch - Output audio is mixed in ASIO's 'buffer switch'. The option allows some audio devices to reach lower latencies. NOTE: When used the underrun counter is bypassed and buffer underruns may be more audible.
    • Triple buffer - Can reduce audible underruns when close to 100% CPU load with some ASIO drivers. Triple buffering is most useful when mixing under high CPU load and with some audio device drivers known to crash when they receive too many buffer underruns (e.g. Tascam US122). NOTE: Triple buffering doubles the latency compared to what is set in the ASIO driver (see the 'Status' information just below the Device Driver menu). Good drivers trigger the buffer at the start of the latency period, and so FL Studio has the whole buffer latency period available to process audio. Poorly written drivers may trigger the buffer late in the period and so effectively lower the buffer time available, leading to underruns. The triple buffer option works one buffer unit behind, and prepares audio for the next buffer period at each cycle. This doubles the latency, but that ensures that there will be enough time to process each buffer unit.
    FL Studio ASIO

    FL Studio ASIO has the advantage of being fully multi-client on most machines. This will allow you to hear the audio from FL Studio and other applications (such as YouTube, SoundCloud etc) at the same time.


      Input / Output - When this is set to [Default input] or [Default output], FL Studio will use the default Windows Input (Recording) and Output (Playback) device, as set and shown below. The [Default input] and [Default output] are decided by the 'Default Device' for Playback [Default output] and Recording [Default input] set on the Windows Sound Control Panel (Right-click the Windows speaker icon and choose 'Open Sound settings > Sound control panel'). You can also click this control and specifically select other inputs and outputs from the audio devices installed on your computer. If you need to aggregate multiple inputs and or outputs from multiple audio devices use ASIO4ALL.


    Older Windows


    NOTE: While your experience may vary, in situations where low latency performance is critical, we recommend you preference drivers in this order - Native ASIO driver > ASIO4ALLv2 > FL Studio ASIO. A Native ASIO driver is one that comes from the manufacturer of your audio device.

    Primary Sound Driver Properties
    • Buffer Length - This slider controls the audio buffer length. The buffer stores audio data before it's sent to your audio device. This allows FL Studio to even out momentary spikes in CPU load when processing that can be slower than 'real-time'. Longer buffers lower CPU load and reduce audio glitches. However with longer buffers the delay between playing a MIDI keyboard or tweaking a control in FL Studio and hearing it is at least equal to this setting (in ms). The ideal buffer is the smallest your computer can manage without causing the buffer underrun count to increase (techniques for optimizing the buffer are described here). A good target with Primary sound drivers is 20-50 ms (880 to 2205 ms).
    • Offset - This option can improve driver performance under Windows Vista. The default 0% option is off.
    • Use Polling - Polling is a technique for managing Primary Sound Driver's audio buffer, which usually allows much smaller buffer without underruns. On some PC-s, however, it can have the opposite effect.
    • Use Hardware Buffer - Uses the hardware audio buffer of 'Primary Sound Driver' enabled sound cards.
    • Use 32-Bit Buffer - Uses a 32-Bit floating-point buffer. Only works with Windows XP or above.

    macOS: Audio Properties

    • Buffer Length - This slider controls the audio buffer length. The buffer stores audio data before it's sent to your audio device. This allows FL Studio to even out momentary spikes in CPU load when processing that can be slower than 'real-time'. Longer buffers lower CPU load and reduce audio glitches. However with longer buffers the delay between playing a MIDI keyboard or tweaking a control in FL Studio and hearing it is at least equal to this setting (in ms). A good target with 'Built-in Audio' is 10 ms (441 samples) if you are playing a MIDI controller and 20 ms (880 samples) if you are not.
    • System audio settings - From the Finder, search 'Utilities'. Open the Utilities folder and then the application 'Audio MIDI Setup'. From here you can make adjustments to the Audio settings for your Mac. The Built-in Output and Built-in Microphone are the default macOS Output and Input respectively.

    Читайте также: