Audio Output Modes: Difference between revisions

From wiki.jriver.com
Jump to navigation Jump to search
No edit summary
 
 
(45 intermediate revisions by 5 users not shown)
Line 1: Line 1:
==Overview==
Media Center can output audio data in a variety of ways. This is important, because different hardware requires different communication methods to obtain the best possible audio quality and performance.
Media Center can output audio data in a variety of ways. This is important, because different hardware requires different communication methods to obtain the best possible audio quality and performance.


{{See also|Audio Playback Options}}
==Hardware Direct==
If you want to get the best possible audio quality, you want to talk to your sound hardware in as direct of a way as possible. You do not want Windows or any other layer resampling or doing other processing to the signal. ASIO, WASAPI, and Kernel Streaming are all hardware direct.


You can adjust your Audio Output Mode via:
There are some drawbacks to hardware direct communication:
* <span style="color:#8B4513">Tools > Options > Audio > Audio Device</span>
* <span style="color:#8B4513">Player > Playback Options</span>
* Click the DSP ([[Image:image55_20.png]]) button under the Player Window and click the ''Playback Options'' button.

Media Center supports a variety of different Audio Output Modes:
* Windows
** [[Direct Sound]]
** [[WASAPI]]
** [[ASIO]]
** [[Kernel Streaming]]
** [[Disk Writer]]
** Null Output
* OSX
** [[Core Audio]]
** Null Output

Under the drop-down menu, MC20 '''automatically''' selects the Output Mode that it determines should be best for each detected audio device. In most cases, you should just need to select your audio device from the menu.

For earlier versions of Media Center, or to understand the available choices, use the following guide.

== Hardware Direct ==
To get the best audio quality, your software should communicate directly with your sound hardware, without Windows or any other layer doing resampling or other processing of the signal.

Core Audio, ASIO, WASAPI, and Kernel Streaming are all hardware direct.

There are some things to be aware of when using hardware direct communication:
* During audio playback, the soundcard will be locked. You will not be able to play sounds from a web browser or other program while audio is playing.
* During audio playback, the soundcard will be locked. You will not be able to play sounds from a web browser or other program while audio is playing.
* Playback of sample rates your soundcard does not support will not be possible. Use DSP Studio > Output Format to allow Media Center to convert to a supported sample rate.
* Playback of sample rates your soundcard does not support will not be possible. Use Tools > Options > Audio > Settings > DSP and output format > Output Format to allow Media Center to convert to a supported sample rate.


==Best Audio Quality Output Mode==
== Choosing the Audio Output Mode ==
On OS X MC uses [[Core Audio]] to access your audio device, which provides bit-perfect playback, and requires no configuration. On Windows, Media Center will typically choose the best Output Mode available for your device, based on the drivers installed. If given the choice between multiple modes or drivers, choose the best output for your hardware in this order:
Work down this ladder to choose the best output for your hardware:

1) If your hardware has a native, well-behaved, ASIO driver, use ASIO. Otherwise see #2.
2) If you are on Windows Vista, Windows 7, or newer, use WASAPI exclusive. Otherwise see #3.
1) If your hardware has a native, well-behaved, ASIO driver, use ASIO.

3) If Kernel Streaming works, use Kernel Streaming. Otherwise see #4.
2) Otherwise, on Windows Vista, Windows 7, or newer, use WASAPI [[Exclusive Access]].
4) Use DirectSound or WaveOut. Neither provide hardware direct output, so choose based on performance.

3) Otherwise, use Kernel Streaming if it works.

4) If none of the above are possible, use DirectSound or WaveOut. Neither of these provide hardware direct output, so choose based on performance.

If you have problems, start with DirectSound and get MC working. Once you have audio working and are comfortable using MC, then experiment with other audio output choices.

=== ASIO ===
{{See also|ASIO}}


==Output mode: ASIO==
ASIO is a sound card communication system created by Steinberg.
ASIO is a sound card communication system created by Steinberg.


If your soundcard has a native ASIO driver, this is the most direct (and normally best) way to communicate with it.
If your soundcard has a native ASIO driver, this is the most direct (and normally best) way to communicate with it.


Please note that ASIO4All is basically Kernel Streaming with an ASIO wrapper. There's no good reason to use ASIO + ASIO4All vs just using Kernel Streaming in Media Center.
Please note that ASIO4All is basically Kernel Streaming with an ASIO wrapper. There's no good reason to use ASIO + ASIO4All vs just using Kernel Streaming directly in Media Center.


==Output mode: Windows Audio Session API (WASAPI)==
=== WASAPI (Windows Audio Session API) ===
{{See also|WASAPI}}
WASAPI is a hardware communication system built into Vista, Windows 7, and newer. When used in 'exclusive' mode, the system mixer is bypassed.


WASAPI is a hardware communication system in Vista, Windows 7, and newer. When used in [[exclusive mode]], the Windows system mixer is bypassed, but other applications cannot simultaneously use the audio device.
==Output mode: Kernel Streaming==

=== Kernel Streaming ===
Kernel Streaming is a hardware direct way to speak directly to a WDM audio driver. It works on XP, so is useful when the above two options are not possible.
Kernel Streaming is a hardware direct way to speak directly to a WDM audio driver. It works on XP, so is useful when the above two options are not possible.


==Output mode: Direct Sound==
=== Direct Sound ===
This is the default and most compatible output method. It plays through the system mixer. This means all formats will be converted by Windows to the native format of the card. It is compatible but not the highest quality method.
This is Windows default and the most compatible output method. It plays through the system mixer. This means all formats will be converted by Windows to the native format of the card. It is highly compatible, but it is not the highest quality method.


==Output mode: Wave Out==
=== Wave Out ===
This is a legacy output mode. With some misbehaved hardware, it may work better than DirectSound.
This is a legacy output mode. With some misbehaved hardware, it may work better than DirectSound.


==Output mode: Disk Writer==
=== Disk Writer ===
This writes whatever would have gone to the soundcard to a WAV file on disk.

==Volume==
{{See also|Volume}}
There are several choices. "Internal" will usually work. Set it by clicking on the speaker icon to the left of the volume slider in the upper left corner.

==Notes==
The only way to prevent a Creative Labs X-Fi based card or Asus Xonar card from resampling all incoming audio is to use ASIO and the driver that came with the card. With these cards, WASAPI exclusive will not change the master clock of the card.

==More==
* [[Audio Setup]]
* [[Audio Troubleshooting Guide]]
* [[Mixing]]

[[Category:Options]]
[[Category:Setup]]
[[category:Audio]]

Latest revision as of 16:01, 18 April 2015

Media Center can output audio data in a variety of ways. This is important, because different hardware requires different communication methods to obtain the best possible audio quality and performance.

See also: {{#if:Audio Playback Options |[[:Audio Playback Options{{#if:||{{{l1}}}}}]] |Error: Template must be given at least one article name

}}{{#if:|{{#if:|, | and }} [[:{{{2}}}{{#if:||{{{l2}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{3}}}{{#if:||{{{l3}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{4}}}{{#if:||{{{l4}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{5}}}{{#if:||{{{l5}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{6}}}{{#if:||{{{l6}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{7}}}{{#if:||{{{l7}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{8}}}{{#if:||{{{l8}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{9}}}{{#if:||{{{l9}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{10}}}{{#if:||{{{l10}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{11}}}{{#if:||{{{l11}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{12}}}{{#if:||{{{l12}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{13}}}{{#if:||{{{l13}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{14}}}{{#if:||{{{l14}}}}}]] }}{{#if:|, and [[:{{{15}}}{{#if: || }}]] }}{{#if:| —
Error: Too many links specified (maximum is 15)

}}

You can adjust your Audio Output Mode via:

  • Tools > Options > Audio > Audio Device
  • Player > Playback Options
  • Click the DSP (Image55 20.png) button under the Player Window and click the Playback Options button.

Media Center supports a variety of different Audio Output Modes:

Under the drop-down menu, MC20 automatically selects the Output Mode that it determines should be best for each detected audio device. In most cases, you should just need to select your audio device from the menu.

For earlier versions of Media Center, or to understand the available choices, use the following guide.

Hardware Direct[edit]

To get the best audio quality, your software should communicate directly with your sound hardware, without Windows or any other layer doing resampling or other processing of the signal.

Core Audio, ASIO, WASAPI, and Kernel Streaming are all hardware direct.

There are some things to be aware of when using hardware direct communication:

  • During audio playback, the soundcard will be locked. You will not be able to play sounds from a web browser or other program while audio is playing.
  • Playback of sample rates your soundcard does not support will not be possible. Use Tools > Options > Audio > Settings > DSP and output format > Output Format to allow Media Center to convert to a supported sample rate.

Choosing the Audio Output Mode[edit]

On OS X MC uses Core Audio to access your audio device, which provides bit-perfect playback, and requires no configuration. On Windows, Media Center will typically choose the best Output Mode available for your device, based on the drivers installed. If given the choice between multiple modes or drivers, choose the best output for your hardware in this order:

1) If your hardware has a native, well-behaved, ASIO driver, use ASIO.

2) Otherwise, on Windows Vista, Windows 7, or newer, use WASAPI Exclusive Access.

3) Otherwise, use Kernel Streaming if it works.

4) If none of the above are possible, use DirectSound or WaveOut. Neither of these provide hardware direct output, so choose based on performance.

If you have problems, start with DirectSound and get MC working. Once you have audio working and are comfortable using MC, then experiment with other audio output choices.

ASIO[edit]

See also: {{#if:ASIO |[[:ASIO{{#if:||{{{l1}}}}}]] |Error: Template must be given at least one article name

}}{{#if:|{{#if:|, | and }} [[:{{{2}}}{{#if:||{{{l2}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{3}}}{{#if:||{{{l3}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{4}}}{{#if:||{{{l4}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{5}}}{{#if:||{{{l5}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{6}}}{{#if:||{{{l6}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{7}}}{{#if:||{{{l7}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{8}}}{{#if:||{{{l8}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{9}}}{{#if:||{{{l9}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{10}}}{{#if:||{{{l10}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{11}}}{{#if:||{{{l11}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{12}}}{{#if:||{{{l12}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{13}}}{{#if:||{{{l13}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{14}}}{{#if:||{{{l14}}}}}]] }}{{#if:|, and [[:{{{15}}}{{#if: || }}]] }}{{#if:| —
Error: Too many links specified (maximum is 15)

}}

ASIO is a sound card communication system created by Steinberg.

If your soundcard has a native ASIO driver, this is the most direct (and normally best) way to communicate with it.

Please note that ASIO4All is basically Kernel Streaming with an ASIO wrapper. There's no good reason to use ASIO + ASIO4All vs just using Kernel Streaming directly in Media Center.

WASAPI (Windows Audio Session API)[edit]

See also: {{#if:WASAPI |[[:WASAPI{{#if:||{{{l1}}}}}]] |Error: Template must be given at least one article name

}}{{#if:|{{#if:|, | and }} [[:{{{2}}}{{#if:||{{{l2}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{3}}}{{#if:||{{{l3}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{4}}}{{#if:||{{{l4}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{5}}}{{#if:||{{{l5}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{6}}}{{#if:||{{{l6}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{7}}}{{#if:||{{{l7}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{8}}}{{#if:||{{{l8}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{9}}}{{#if:||{{{l9}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{10}}}{{#if:||{{{l10}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{11}}}{{#if:||{{{l11}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{12}}}{{#if:||{{{l12}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{13}}}{{#if:||{{{l13}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{14}}}{{#if:||{{{l14}}}}}]] }}{{#if:|, and [[:{{{15}}}{{#if: || }}]] }}{{#if:| —
Error: Too many links specified (maximum is 15)

}}

WASAPI is a hardware communication system in Vista, Windows 7, and newer. When used in exclusive mode, the Windows system mixer is bypassed, but other applications cannot simultaneously use the audio device.

Kernel Streaming[edit]

Kernel Streaming is a hardware direct way to speak directly to a WDM audio driver. It works on XP, so is useful when the above two options are not possible.

Direct Sound[edit]

This is Windows default and the most compatible output method. It plays through the system mixer. This means all formats will be converted by Windows to the native format of the card. It is highly compatible, but it is not the highest quality method.

Wave Out[edit]

This is a legacy output mode. With some misbehaved hardware, it may work better than DirectSound.

Disk Writer[edit]

This writes whatever would have gone to the soundcard to a WAV file on disk.

Volume[edit]

See also: {{#if:Volume |[[:Volume{{#if:||{{{l1}}}}}]] |Error: Template must be given at least one article name

}}{{#if:|{{#if:|, | and }} [[:{{{2}}}{{#if:||{{{l2}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{3}}}{{#if:||{{{l3}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{4}}}{{#if:||{{{l4}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{5}}}{{#if:||{{{l5}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{6}}}{{#if:||{{{l6}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{7}}}{{#if:||{{{l7}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{8}}}{{#if:||{{{l8}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{9}}}{{#if:||{{{l9}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{10}}}{{#if:||{{{l10}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{11}}}{{#if:||{{{l11}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{12}}}{{#if:||{{{l12}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{13}}}{{#if:||{{{l13}}}}}]] }}{{#if:|{{#if:|, |, and }} [[:{{{14}}}{{#if:||{{{l14}}}}}]] }}{{#if:|, and [[:{{{15}}}{{#if: || }}]] }}{{#if:| —
Error: Too many links specified (maximum is 15)

}}

There are several choices. "Internal" will usually work. Set it by clicking on the speaker icon to the left of the volume slider in the upper left corner.

Notes[edit]

The only way to prevent a Creative Labs X-Fi based card or Asus Xonar card from resampling all incoming audio is to use ASIO and the driver that came with the card. With these cards, WASAPI exclusive will not change the master clock of the card.

More[edit]