Understanding “Foo Out WASAPI”: Troubleshooting GuideFooOut WASAPI (often referenced as “foo_out_wasapi”) is a popular output component used in Foobar2000 and other audio applications to deliver high-quality audio playback on Windows using the WASAPI (Windows Audio Session API) interface. It provides low-latency exclusive-mode playback, bit-perfect output, and advanced configuration options that audiophiles and professionals often require. This guide explains how WASAPI works, common problems with Foo Out WASAPI, step-by-step troubleshooting, configuration tips, and advanced diagnostics.
What is WASAPI and why use Foo Out WASAPI?
WASAPI is Microsoft’s modern audio API introduced with Windows Vista. It supports:
- Shared mode — audio streams are mixed by the system, which applies resampling and volume processing.
- Exclusive mode — the application has direct control of the audio device, allowing bit-perfect output with minimal latency.
Foo Out WASAPI is a third-party output component for Foobar2000 that leverages WASAPI’s capabilities to deliver:
- Bit-perfect playback in exclusive mode (no system resampling).
- Low-latency performance for real-time monitoring or DJing.
- Per-device configuration and advanced buffer controls.
Common issues and quick answers
- No sound after selecting Foo Out WASAPI — Often caused by incorrect device selection, exclusive mode conflicts, or driver issues. Check device choice and ensure the device isn’t used by another exclusive application.
- Crackling/popping — Buffer underruns or mismatched sample rates. Increase buffer size, enable shared mode, or set the player sample rate to match the hardware.
- Playback stutters only with certain files — File-specific sample rates or unusual bit depths may trigger automatic resampling or conversion problems. Verify codecs and convert to compatible formats if needed.
- Device unavailable / greyed out — The device may be disabled in Windows Sound settings or used exclusively by another app. Re-enable device or close the competing app.
- High CPU usage — Low buffer sizes and complex DSP chains can increase CPU load. Increase buffers or simplify DSP processing.
Step-by-step troubleshooting checklist
-
Confirm basics
- Ensure Foobar2000 is up to date and foo_out_wasapi component is installed.
- Restart Foobar2000 after installing or changing output components.
- Reboot the system if device drivers were updated.
-
Verify Windows settings
- Open Sound settings (Settings > System > Sound) and ensure the target device is enabled and set to the correct default if desired.
- In Control Panel > Sound > Playback, right-click the device → Properties → Advanced. Note the “Default Format” sample rate/bit depth and whether exclusive mode options are checked.
-
Select the correct device in Foobar2000
- Preferences > Playback > Output > Device: pick the intended WASAPI device. Try both the device name with “(WASAPI: Exclusive)” and the shared option to compare behavior.
- If the device appears multiple times, pick the one that matches your intended mode (Shared vs Exclusive).
-
Test exclusive vs shared mode
- Exclusive mode: Enables bit-perfect output but prevents other apps from using the device simultaneously. If issues appear, switch to shared mode to see if they disappear.
- Shared mode: Uses system mixing and is more tolerant of mismatches.
-
Adjust buffer settings
- In foo_out_wasapi preferences, increase buffer length if you hear pops/clicks. Typical values: start at 100–200 ms and adjust down if latency is critical.
- If low-latency is required, try gradually reducing buffer size while monitoring stability.
-
Match sample rates
- Ensure Foobar2000’s output sample rate (or the file’s native sample rate) matches the device’s supported rates. Avoid forced resampling unless necessary.
- In Windows Sound Device Properties > Advanced, set Default Format to a common rate like 44100 Hz or 48000 Hz if unsure.
-
Disable enhancements and audio processing
- In device Properties > Enhancements (or Spatial Sound), disable all enhancements and spatial audio that might introduce processing or conflicts.
-
Update or roll back drivers
- Update the audio device driver from the manufacturer. For USB DACs, use the DAC vendor’s driver when available.
- If problems began after a driver update, try rolling back to the previous driver.
-
Check for other exclusive apps
- Close applications that might take exclusive control (games, other players, pro audio software). Use Task Manager to find suspect processes.
-
Test with simpler setups
- Bypass DSPs, resamplers, or complex components in Foobar2000 to see if the issue persists.
- Test with a different USB port/cable for external DACs.
Detailed troubleshooting examples
-
Crackling only with high-resolution files
- Cause: Device or driver cannot handle high sample rates in exclusive mode, or buffer too small.
- Fix: Try switching to shared mode, increase buffer, or set Foobar2000 to downsample to a supported rate.
-
No audio after switching to Exclusive
- Cause: Another app holds exclusive access; device requires different sample format.
- Fix: Close other apps; in Windows sound properties, ensure “Allow applications to take exclusive control” is checked/unchecked depending on behavior; try toggling it.
-
Device doesn’t appear in Foobar2000
- Cause: Device disabled, driver missing, or wasapi component not installed.
- Fix: Re-enable in Windows Sound settings, reinstall drivers, confirm foo_out_wasapi is installed and enabled.
Advanced diagnostics
- Use Windows Event Viewer for driver-related errors (look under System logs).
- Use Process Explorer to inspect handles and which process is using the audio device.
- Use loopback testing: set the device as default and use another recorder to capture playback to verify the signal leaves the OS.
- For USB DACs, check power management settings and try different USB controllers (rear-panel ports on desktops).
Configuration tips for best results
- For bit-perfect playback: use exclusive mode, set device default format to match file rates when possible, and disable system enhancements.
- For stability across apps: use shared mode with moderately sized buffers (100–300 ms).
- For low-latency live monitoring: use exclusive mode with smaller buffers (30–80 ms) but only if your hardware/driver reliably supports it.
- Keep firmware and drivers of external DACs up to date.
When to seek help from device/vendor or Foobar2000 community
- Persistent issues after trying the above, especially if they occur only with certain hardware.
- If the DAC requires a custom driver or firmware update.
- If you suspect a bug in the foo_out_wasapi component — check Foobar2000 forums, GitHub issues (if applicable), or component changelogs.
Quick reference checklist
- Update Foobar2000 and foo_out_wasapi.
- Select correct WASAPI device and mode.
- Match sample rates; disable resampling if aiming for bit-perfect.
- Increase buffer on pops/crackles; decrease if latency too high and stable.
- Disable Windows audio enhancements.
- Update/rollback drivers; test different USB ports/cables.
- Close other apps that may take exclusive control.
If you want, I can:
- Provide step-by-step screenshots for Windows ⁄11 settings.
- Suggest optimal foo_out_wasapi values for a specific DAC—tell me the model.
Leave a Reply