beerking
2K Club - QQ Super Nova
After more digging I found these Audacity details:
Requirements
Crucially, available driver and application support for multi-channel audio (and whether you can use Audacity for multi-channel recording) depends on the operating system you are using. Please check the relevant section below for your particular system.
Windows
Windows Sound Interfaces
MME: The standard Windows MME (Multi Media Extensions) sound interface has been around since Windows 3.1. It supports up to two channels of recording, sample depths up to 16 bits, and sample rates up to 44100Hz. On playback, multiple applications can use the sound device at the same time, with all the audio being mixed and sample rate converted to 44100Hz in Windows before being sent to the audio interface. Nice and simple for going ping and utterly hopeless for multi-channel music production.
DirectSound: It's also not very much use for writing games with, which is why after the release of Windows 95, it became necessary to offer the games manufacturers something better to persuade them off DOS. So DirectSound was born. This provided more flexible playback of audio, and later added multi-channel and surround sound playback for immersive game audio. Recording support was added later. DirectSound offers somewhat lower latencies than MME, and the possibility of multi-channel recording on some devices.
ASIO: So in the meantime, serious audio recording and playback was left out in the cold. Proprietary solutions stepped into the gap, and Steinberg created the ASIO interface for bypassing the operating system entirely, and connecting audio applications direct to the audio interface. This gives very low latencies (because all the mixing and conversion involved in the MME interface is avoided), but means that only one application can use an audio interface at a time (no sharing between multiple applications, no system sounds).
Audacity supports ASIO but that support is not distributed in releases for licensing reasons. Audacity can be compiled with ASIO support as long as that build is not distributed to others.
WASAPI: In 2005 the WASAPI application programming interface (API) was introduced starting with Windows Vista. WASAPI isolates audio more from the kernel so providing greater stability, allows a few further multi-channel devices to work without ASIO and provides lower latency than MME and Windows DirectSound.
On the other hand, direct hardware access under WASAPI is limited to a WaveRT driver which only a few built-in devices support (also, Audacity and many other audio programs do not support it). Latencies under WASAPI are higher than under WDM-KS because MME and DirectSound are both emulated over WASAPI. To compensate for this, Windows Store applications on Windows 8 can support offloading of audio processing to hardware which was dropped with Vista. This is a necessary step for modern battery-dependent devices where software audio processing on the CPU would rapidly deplete battery life.
WASAPI has two significant benefits for Audacity.
External article about Windows API's: For more on how Windows sound drivers work, and the different API's, see this article by Claus Riethmüller. Note: after that page was written, DirectSound added recording support, as mentioned above.
Recording With Audacity
As distributed, Audacity comes with support for Windows MME and WDM drivers. MME drivers work fine for simple stereo recording and playback, and are available on all versions of Windows where Audacity will run. However, neither these nor most WDM drivers will provide multi-channel recording; if you try to send multiple inputs to Audacity with these, you will only be presented with a series of separate two-channel "recording devices" from which one can be chosen, instead of the number of input channels there actually are.
Requirements
- Hardware support: you need a sound card or external audio interdace which has enough Analog to Digital Converters (ADC's) to do multi-channel recording. Most consumer cards only have one stereo pair of ADC's that is switched between various inputs such as Line-In and "Mic". You'll need at least a semi-professional device to find support for multi-channel recording.
- Driver support: the drivers for the device must make it possible to record more than two channels at once. This is more problematic that it might seem because the standard sound interfaces for many operating systems were designed long before multi-channel recording was possible, and so only allow for up to two channels of recording. Also, consumer-level systems are not designed to achieve the low latencies and high throughputs needed for high quality multi-channel recordings.
- Application support: the application you are recording into must support working with multiple channels of audio. Audacity supports recording however many channels the device offers (for example, 24). The number of channels desired can be selected in the Devices tab of Preferences. There are two current limitations:
- Channel selection: You can't select exactly which channels are used - Audacity will simply use the first ones it finds. You may need to increase the number of recording channels in Audacity preferences (possibly to the maximum supported by the device, even though you are only recording a subset of them), until all you want are included. This may mean having to delete silent tracks after recording. Some audio interfaces however will display a "Multi" device. Selecting this as recording device in Audacity should let you record all the channels at once automatically.
- Channel to track allocation: Particular channels of the sound device can't be recorded to particular tracks. After recording, multi-channel files can be exported using current Audacity, by choosing the appropriate mixdown option in Preferences (Import/Export tab). Playback support in Audacity is currently limited to stereo (2 channels), so all multi-channel recordings will be sent to your sound device in stereo. Your device can probably be configured as to whether the front left and front right speakers are used, or if output is duplicated to the surround channels. Offers from developers to help us add support for multi-channel playback are welcomed - to get in touch please join our developers' mailing list.
Crucially, available driver and application support for multi-channel audio (and whether you can use Audacity for multi-channel recording) depends on the operating system you are using. Please check the relevant section below for your particular system.
Windows
Windows Sound Interfaces
MME: The standard Windows MME (Multi Media Extensions) sound interface has been around since Windows 3.1. It supports up to two channels of recording, sample depths up to 16 bits, and sample rates up to 44100Hz. On playback, multiple applications can use the sound device at the same time, with all the audio being mixed and sample rate converted to 44100Hz in Windows before being sent to the audio interface. Nice and simple for going ping and utterly hopeless for multi-channel music production.
DirectSound: It's also not very much use for writing games with, which is why after the release of Windows 95, it became necessary to offer the games manufacturers something better to persuade them off DOS. So DirectSound was born. This provided more flexible playback of audio, and later added multi-channel and surround sound playback for immersive game audio. Recording support was added later. DirectSound offers somewhat lower latencies than MME, and the possibility of multi-channel recording on some devices.
ASIO: So in the meantime, serious audio recording and playback was left out in the cold. Proprietary solutions stepped into the gap, and Steinberg created the ASIO interface for bypassing the operating system entirely, and connecting audio applications direct to the audio interface. This gives very low latencies (because all the mixing and conversion involved in the MME interface is avoided), but means that only one application can use an audio interface at a time (no sharing between multiple applications, no system sounds).
Audacity supports ASIO but that support is not distributed in releases for licensing reasons. Audacity can be compiled with ASIO support as long as that build is not distributed to others.
WASAPI: In 2005 the WASAPI application programming interface (API) was introduced starting with Windows Vista. WASAPI isolates audio more from the kernel so providing greater stability, allows a few further multi-channel devices to work without ASIO and provides lower latency than MME and Windows DirectSound.
On the other hand, direct hardware access under WASAPI is limited to a WaveRT driver which only a few built-in devices support (also, Audacity and many other audio programs do not support it). Latencies under WASAPI are higher than under WDM-KS because MME and DirectSound are both emulated over WASAPI. To compensate for this, Windows Store applications on Windows 8 can support offloading of audio processing to hardware which was dropped with Vista. This is a necessary step for modern battery-dependent devices where software audio processing on the CPU would rapidly deplete battery life.
WASAPI has two significant benefits for Audacity.
- 24-bit recording is supported (Windows DirectSound supports 24-bit recording, but the PortAudio API Audacity uses does not support 24-bit input under DirectSound).
- From version 2.0.4 onwards, Audacity supports recording computer playback (even where sound devices don't support this) using Windows WASAPI loopback recording. For the audio to be captured, the audio device playing the audio must be in shared mode ("Exclusive Mode" unchecked in the Windows "Sound" Control Panel).
External article about Windows API's: For more on how Windows sound drivers work, and the different API's, see this article by Claus Riethmüller. Note: after that page was written, DirectSound added recording support, as mentioned above.
Recording With Audacity
As distributed, Audacity comes with support for Windows MME and WDM drivers. MME drivers work fine for simple stereo recording and playback, and are available on all versions of Windows where Audacity will run. However, neither these nor most WDM drivers will provide multi-channel recording; if you try to send multiple inputs to Audacity with these, you will only be presented with a series of separate two-channel "recording devices" from which one can be chosen, instead of the number of input channels there actually are.