How can you change the default audio output in VLC to 5.1?

223,900

Solution 1

I felt the need to resurrect this as it’s pretty high up on search results and the solution no longer works for v2.0.2—however, I finally found a fix!

  1. Press Ctrl+P to bring up preferences.
  2. At the bottom of the right-hand navigation select the All radio-button under the Show settings area (bottom left of the interface).
  3. Now expand the Audio tree, select Out Modules and select DirectX.
  4. Select your "Output device" and "Speaker configuration" from the drop down menus.
  5. Restart VLC.

Solution 2

This was a bit confusing for me as well. I have 7.1 audio on my system. VLC always defaulted to stereo audio. Then I finally figured it out. You must have your sound cards speaker configuration set to 5.1 or else VLC will not choose the 5.1 track. I thought that 7.1 set for speaker configuration on my sound card would work for anything so the system would play 5.1 or 7.1 if available. But apparently with VLC, and maybe some other programs, your system must match exactly or it will not recognize your settings. This is a feature that the VideoLan team needs to fix. With the advent of 7.1 audio VLC needs to recognize that it can play 5.1 audio on a 7.1 system.

Solution 3

From vlc --longhelp --advanced:

  --force-dolby-surround {0 (Auto), 1 (On), 2 (Off)}
                             Force detection of Dolby Surround

There's also the respective setting in the GUI version of the settings under "Audio->Effects->Dolby Surround". Is has the options "Auto", "On" and "Off".

From what I understand, it should automatically detect whether the source media is surround sound or not.

Solution 4

Much better solution if you want to respect the audio mapping produced by VLC:

  • Using DirectX as explained above in the solution would give an audio mapping like this :

    Stereo audio file:

    main debug: using audio filter module "scaletempo"
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->Stereo
    main debug: conversion pipeline complete
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->3F2R/LFE
    main debug: looking for audio converter module matching "any": 12 candidates
    main debug: using audio converter module "trivial_channel_mixer"
    main debug: conversion pipeline complete
    

    5.1 audio file:

    main debug: using audio filter module "scaletempo"
    main debug: conversion: 'a52 '->'f32l' 48000 Hz->48000 Hz 3F2R/LFE->3F2R/LFE
    main debug: looking for audio converter module matching "any": 12 candidates
    main debug: no audio converter modules matched
    main debug: looking for audio converter module matching "any": 12 candidates
    main debug: using audio converter module "a52tofloat32"
    main debug: conversion pipeline complete
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz 3F2R/LFE->3F2R/LFE
    main debug: conversion pipeline complete
    
  • Using WaveOut as i'll describe, respects better the audio mapping for stereo content and keep the same mapping as the first solution :

    Stereo audio file:

    main debug: using audio filter module "scaletempo"
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->Stereo
    main debug: conversion pipeline complete
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz Stereo->Stereo
    main debug: conversion pipeline complete
    

    5.1 audio file:

    main debug: using audio filter module "scaletempo"
    main debug: conversion: 'a52 '->'f32l' 48000 Hz->48000 Hz 3F2R/LFE->3F2R/LFE
    main debug: looking for audio converter module matching "any": 12 candidates
    main debug: no audio converter modules matched
    main debug: looking for audio converter module matching "any": 12 candidates
    main debug: using audio converter module "a52tofloat32"
    main debug: conversion pipeline complete
    main debug: conversion: 'f32l'->'f32l' 48000 Hz->48000 Hz 3F2R/LFE->3F2R/LFE
    main debug: conversion pipeline complete
    

Now if someone feel this workaround as a proper solution, you can do it like this :

  1. Press Ctrl+P to bring up preferences.
  2. Go to "Audio" on left (or on top if VLC 3.0.x)
  3. In output, set output module to 'WaveOut audio output', no need to change your speaker configuration as the first solution.
  4. Restart VLC

Hope that will be helpful for someone...

Solution 5

You need Dolby Atmos for headphones from Windows Store and activated Movie preset (Detailed) Then,

Settings for VLC:

  1. Tools > Preferences > Audio > Output Module > WaveOut audio output.
  2. Device - Set your audio device.
  3. Reboot VLC.
Share:
223,900

Related videos on Youtube

Dutch Huette
Author by

Dutch Huette

Updated on September 18, 2022

Comments

  • Dutch Huette
    Dutch Huette almost 2 years

    Is there a setting in VLC to change default audio output to 5.1?

    • slhck
      slhck about 13 years
      I guess if the source is not in 5.1 you'll have to find software that emulates 5.1 output from a stereo signal. Could be your audio driver can do that.
  • Dutch Huette
    Dutch Huette about 13 years
    As far as I can tell, this is a setting that changes whether DS/DTS should be used in the audio channel, but not the line configurati on (stereo, left+right, 5.1....)
  • joctee
    joctee over 11 years
    Best answer. This was working for me.
  • niieani
    niieani over 8 years
    No such options under Mac OS X.
  • lmat - Reinstate Monica
    lmat - Reinstate Monica over 8 years
    @Victor "it should automatically detect whether the source media is surround sound or not." How can I tell what VLC detected?
  • Victor
    Victor over 8 years
    @LimitedAtonement I believe this is available under Tools->Codec information, if you look at the audio stream and how many channels it has.
  • SlySven
    SlySven about 5 years
    Or FreeBSD I have an "Audio output device" box to type something into - perhaps I need to give a particular device name...?
  • endolith
    endolith almost 4 years
    So does VLC output 5.1 to DirectX and then DirectX mixes it to stereo?