daily pastebin goal
66%
SHARE
TWEET

XBMC AE Latest build - Fix HDMI passthrough

mightymouse2045 Feb 28th, 2012 384 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ### Command used to build all tests:
  2.  
  3. ./bootstrap && ./configure --enable-ffmpeg-libvorbis --disable-pulse && make -j4
  4.  
  5.  
  6. ### Audio Settings for all tests:
  7.  
  8.     <audiooutput>
  9.         <ac3passthrough>true</ac3passthrough>
  10.         <audiodevice>custom</audiodevice>
  11.         <channellayout>10</channellayout>
  12.         <customdevice>hdmi:NVidia</customdevice>
  13.         <custompassthrough>hdmi:NVidia</custompassthrough>
  14.         <dontnormalizelevels>false</dontnormalizelevels>
  15.         <dtshdpassthrough>true</dtshdpassthrough>
  16.         <dtspassthrough>true</dtspassthrough>
  17.         <guisoundwhileplayback>true</guisoundwhileplayback>
  18.         <mode>2</mode>
  19.         <multichannellpcm>true</multichannellpcm>
  20.         <passthroughaac>true</passthroughaac>
  21.         <passthroughdevice>custom</passthroughdevice>
  22.         <passthroughmp1>true</passthroughmp1>
  23.         <passthroughmp2>true</passthroughmp2>
  24.         <passthroughmp3>true</passthroughmp3>
  25.         <truehdpassthrough>true</truehdpassthrough>
  26.     </audiooutput>
  27.  
  28.  
  29. ### Results:
  30.  
  31.  
  32.         *** Latest build:
  33.  
  34.         On opening - fails to pass correct custom device name:
  35.        
  36.                 INFO: CAESinkALSA::Initialize - Attempting to open device plug:hdmi
  37.                 ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-2) - plug:hdmi
  38.                 ERROR: CAESinkOSS::Initialize - Failed to get supported formats, assuming AFMT_S16_NE
  39.                 INFO: CSoftAE::Initialize - NULL Initialized:
  40.                 INFO:   Output Device : NULL
  41.                 INFO:   Sample Rate   : 44100
  42.                 INFO:   Sample Format : AE_FMT_FLOAT
  43.                 INFO:   Channel Count : 8
  44.                 INFO:   Channel Layout: FL,FR,FC,BL,BR,SL,SR,LFE
  45.                 INFO:   Frames        : 4410
  46.                 INFO:   Frame Samples : 35280
  47.                 INFO:   Frame Size    : 32
  48.                 DEBUG: CSoftAE::Initialize - Using speaker layout: 7.1
  49.  
  50.  
  51.  
  52. ### Regression testing:
  53.  
  54.         *** Merge pull request #17 from DDDamian/DDDamianAE on the 29/1/2012:
  55.  
  56.         Doesn't build
  57.  
  58.  
  59.         *** [AE] replaced CAEUtil::SoftClamp with approx tanh implementation on the 29/1/2012:
  60.  
  61.         Same as latest build:
  62.  
  63.                 ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-2) - plug:hdmi
  64.                 ERROR: CAESinkOSS::Initialize - Failed to get supported formats, assuming AFMT_S16_NE
  65.  
  66.  
  67.         *** [AE][ALSA] added suspend/resume support on 28/1/2012
  68.  
  69.         Same as latest build:
  70.  
  71.                 ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-2) - plug:hdmi
  72.                 ERROR: CAESinkOSS::Initialize - Failed to get supported formats, assuming AFMT_S16_NE
  73.  
  74.  
  75.         *** [AE][SoftAE] fixed alsa wait timeout on 28/1/2012:
  76.  
  77.         Navigation sounds are sporadic at best maybe hear 1 in 30?
  78.         No Navigation sounds during playback to be expected without pulse?
  79.  
  80.         On openning XBMC - Correct device is selected:
  81.  
  82.                 INFO: CAESinkALSA::Initialize - Attempting to open device hdmi:NVidia
  83.                 INFO: CAESinkALSA::InitializeHW - Your hardware does not support AE_FMT_FLOAT, trying other formats
  84.                 INFO: CAESinkALSA::InitializeHW - Using data format AE_FMT_S32NE
  85.                 DEBUG: CAESinkALSA::InitializeHW - Setting timeout to 0 ms
  86.                 INFO: CSoftAE::Initialize - ALSA Initialized:
  87.                 INFO:   Output Device : hdmi:NVidia
  88.                 INFO:   Sample Rate   : 44100
  89.                 INFO:   Sample Format : AE_FMT_S32NE
  90.                 INFO:   Channel Count : 2
  91.                 INFO:   Channel Layout: FL,FR
  92.                 INFO:   Frames        : 22
  93.                 INFO:   Frame Samples : 44
  94.                 INFO:   Frame Size    : 8
  95.                 DEBUG: CSoftAE::Initialize - Using speaker layout: 7.1
  96.                
  97.         On playback correct device and AES settings applied:
  98.  
  99.                 INFO: CAESinkALSA::Initialize - Attempting to open device hdmi:NVidia,AES0=0x06,AES1=0x82,AES2=0x00,AES3=0x02
  100.                 NOTICE: Using GL_TEXTURE_2D
  101.                 NOTICE: GL: Using VDPAU render method
  102.                 NOTICE: GL: NPOT texture support detected
  103.                 NOTICE: GL: Using GL_ARB_pixel_buffer_object
  104.                 DEBUG: GL: Disabling non-linear stretch
  105.                 DEBUG: CDVDPlayer::HandleMessages - player started 2
  106.                 DEBUG: ------ Window Deinit (DialogBusy.xml) ------
  107.                 DEBUG: CAESinkALSA::InitializeHW - Setting timeout to 0 ms
  108.                 INFO: CSoftAE::Initialize - ALSA Initialized:
  109.                 INFO:   Output Device : hdmi:NVidia,AES0=0x06,AES1=0x82,AES2=0x00,AES3=0x02
  110.                 INFO:   Sample Rate   : 48000
  111.                 INFO:   Sample Format : AE_FMT_S16NE
  112.                 INFO:   Channel Count : 2
  113.                 INFO:   Channel Layout: FL,FR
  114.                 INFO:   Frames        : 48
  115.                 INFO:   Frame Samples : 96
  116.                 INFO:   Frame Size    : 4
  117.                 DEBUG: CDVDPlayerAudio:: synctype set to 0: clock feedback
  118.                 DEBUG: CSoftAEStream::GetFrame - Underrun
  119.  
  120.  
  121.         *** [SoftAE] added new profiler sink on 28/1/2012:
  122.  
  123.         Working as above
  124.  
  125.  
  126.         *** [AE][ALSA] fixed conversion of periods to frames, periods are already in frames on 28/1/2012
  127.  
  128.         Start of the failure with incorrect device being selected:
  129.  
  130.                 INFO: CAESinkALSA::Initialize - Attempting to open device plug:hdmi
  131.                 ERROR: CAESinkALSA::Initialize - snd_pcm_open_lconf(-2) - plug:hdmi
  132.  
  133. ### Changes:
  134.  
  135.         git difftool test7 test5
  136.  
  137.         2 files changed but obvious pointer is:
  138.  
  139.         xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp on this commit
  140.  
  141.                   if (device != "default" && !SoundDeviceExists(device))
  142.                     device = "default";
  143.  
  144.  
  145. ### Apply & Testing Changes
  146.  
  147. Applying patch to latest build:
  148.  
  149. --- /usr/src/media/XBMC_AE/xbmc/cores/AudioEngine/Sinks/AESinkALSA.cpp
  150. @@ -100,9 +100,6 @@
  151.    else
  152.      cardName.Empty();
  153.  
  154. -  if (device != "default" && !SoundDeviceExists(device))
  155. -    device = "default";
  156. -
  157.    if (AE_IS_RAW(format.m_dataFormat) || passthrough)
  158.    {
  159.      if (device == "default")
  160.  
  161.  
  162. ### Results etc
  163.  
  164. * Working with custom device name as it should
  165. * Navigation sounds working
  166. * No nav sounds during playback (as i think, to be expected without pulse)
  167.  
  168. Sweetas!
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top