MediaPortal Audio renderer - better video playback quality (2 Viewers)

Truri

MP Donator
  • Premium Supporter
  • November 9, 2008
    192
    9
    Home Country
    Germany Germany
    AW: Re: MediaPortal Audio renderer - better video playback quality

    Truri:
    Can you make the graphs little bigger?

    Sorry, I took the wrong URLs... *grml* ^^
    I fixed it in my post and hope now its fine ;)
     

    Truri

    MP Donator
  • Premium Supporter
  • November 9, 2008
    192
    9
    Home Country
    Germany Germany
    AW: MediaPortal Audio renderer - better video playback quality

    I don't know where it's posted correctly... i it related to audio renderer or evr...
    Feel free to move!

    Here are some logs from running ZDF HD where I have some massive "hickups" and "slowdowns, blockings".
    But now it runs for about 10 Minutes without problems, but then for some reason are the hickups....
    Cyberlink 10 Codecs

    Besides of these problems, I watched yesterday various video files and it was running very smooth and without problems (video/sound) :)) :D
     

    red5goahead

    MP Donator
  • Premium Supporter
  • November 24, 2007
    695
    144
    Italy, North West
    Home Country
    Italy Italy
    About ASUS Xonar (again :)) -> http://dlcdnet.asus.com/pub/ASUS/Audio_Card/Xonar_HDAV1.3/Xonar_HDAV_BD_DVD_User_Guide.pdf

    6.Select correspondent Sample Rate in Xonar AV Center consistent with the playing
    disc audio format displayed in TMT screen (right-click mouse to turn on
    “information” function) for the highest fidelity playback.

    Based on that I would say that the audio card drivers are constantly trying to renderer on the sample rate / bit depth that is set in the driver settings. So, the user needs to adjust those to match every time when a different audio format is played. A workaround would be to set those for example to 196Khz 16 bit and the force ffdshow to resample constantly to those.

    Please test :)

    Play-exclusive doesn't work. I tried to change pcm to 44.1 khz. . there is no way to change the bit format.

    44836953.jpg


    So I tried with MP and new audio renderer but there is a problem.
    I switch to analog out with my card I connect it to Marantz through 6.1 multichannel input.
    so I set ac3encoder to 0. new audio renderer seems not working anymore.

    Code:
    24-08-2010 13:34:42.218 [ 15c4] WASAPIRenderer::CheckAudioClient
    24-08-2010 13:34:42.218 [ 15c4] WAVEFORMATEX - WASAPIRenderer::CheckAudioClient
    24-08-2010 13:34:42.218 [ 15c4]   nAvgBytesPerSec 576000
    24-08-2010 13:34:42.218 [ 15c4]   nBlockAlign     12
    24-08-2010 13:34:42.218 [ 15c4]   nChannels       6
    24-08-2010 13:34:42.218 [ 15c4]   nSamplesPerSec  48000
    24-08-2010 13:34:42.218 [ 15c4]   wBitsPerSample  16
    24-08-2010 13:34:42.218 [ 15c4]   wFormatTag      65534
    24-08-2010 13:34:42.218 [ 15c4]   WAVE_FORMAT_EXTENSIBLE
    24-08-2010 13:34:42.218 [ 15c4]   dwChannelMask 63
    24-08-2010 13:34:42.218 [ 15c4]   GUID          {00000001-0000-0010-8000-00AA00389B71}
    24-08-2010 13:34:42.218 [ 15c4] WASAPIRenderer::GetAudioDevice
    24-08-2010 13:34:42.218 [ 15c4] Target end point: 
    24-08-2010 13:34:42.218 [ 15c4] WASAPIRenderer::GetAvailableAudioDevices
    24-08-2010 13:34:42.219 [ 15c4] Unable to find selected audio device, using the default end point!
    24-08-2010 13:34:42.223 [ 15c4] Default audio endpoint: "Altoparlanti (ASUS Xonar DX Audio Device)" ({0.0.0.00000000}.{2343e11e-69de-4461-b781-8cdac6ad6ef1}) - supports pull mode: 0
    24-08-2010 13:34:42.223 [ 15c4] WASAPIRenderer::CreateAudioClient
    24-08-2010 13:34:42.223 [ 15c4] WASAPIRenderer::CreateAudioClient success
    24-08-2010 13:34:42.226 [ 15c4] WASAPIRenderer::CheckMediaType WASAPI client refused the format: (0x88890008)
    24-08-2010 13:34:42.226 [ 15c4] CheckMediaType
    24-08-2010 13:34:42.520 [ 15c4] Pause
    24-08-2010 13:34:42.724 [ 11ec] Run
    24-08-2010 13:34:42.724 [ 11ec] WASAPIRenderer::Run
    24-08-2010 13:34:42.724 [ 11ec] WASAPIRenderer::CheckAudioClient
    24-08-2010 13:34:42.724 [ 11ec] WASAPIRenderer::StartAudioClient
    24-08-2010 13:34:42.724 [ 11ec]    start failed (0x88890001)
    24-08-2010 13:34:42.726 [ 11ec] SetBias: 1.0409582974
    24-08-2010 13:34:42.726 [ 11ec] SetBias - updated SoundTouch tempo
    24-08-2010 13:35:21.017 [ 15c4] Pause
    24-08-2010 13:35:21.588 [ 15c4] Stop
    24-08-2010 13:35:21.588 [ 15c4] WASAPIRenderer::Stop - releasing WASAPI resources

    I'm quite confused... :D:D

    try with ac3filter now.

    attach log.
     

    tourettes

    Retired Team Member
  • Premium Supporter
  • January 7, 2005
    17,301
    4,800
    Code:
    24-08-2010 13:34:42.226 [ 15c4] WASAPIRenderer::CheckMediaType WASAPI client refused the format: (0x88890008)

    0x88890008 AUDCLNT_E_UNSUPPORTED_FORMAT

    Driver is not accepting the reguested audio format. Check if changing the 44.1Khz to 48.Khz solves the issue. If yes, then Asus has not understood what the WASAPI exclusive means :) (application has the control over the output format, not the user :)).
     

    hoborg

    Portal Pro
    June 13, 2008
    4,413
    1,644
    Nový Jičín
    Home Country
    Czech Republic Czech Republic
    Truri:

    I am not sure if should post it here or not, but i think it can clarify some things.

    Here is FLAC 7.1 sample (if my post will be useless, at last this sample is good for testing)

    If you open this sample in graphstudio and you have SAF 5 installed and passthrough enabled, such graph is created:
    flac1.png


    As you can see, MadFlac is used to decode FLAC 7.1 - there is enabled 5.1 limitation in mad flac becouse we need to passhrough it
    So MadFLAC outputing 5.1; 96Khz and 24bit PCM. This is very good quality, but becouse we need to passthrough it as 5.1 we need to proceed it more and standartize it.
    Here is time for FFDshow. FFDshow resample anything that is <> 48Khz to 48Khz, then on the fly encode it to 5.1; 48khz AC3 16bit.
    48khz AC3 16bit is "standard" - all recievers should be able to handle this format.

    Of course there is no need to AC3 encode, you can output it as it is now as 5.1 48Khz 16bit PCM.

    This process happend with all 5.1 (and more) audio formats - AAC, WMA, etc...

    But if you try to play my sample in MePo, graph is created like this: (exactly, FFDshow is missing).
    flac2.png

    By some reason, MePo blocked FFDshow, so such audio source cannot proceeded correctly.
    So that is why FFDshow audio decoder needs to be added to MePo video postprocessing to force load it - but this cause issues for some videos with multiple audio streams inside (MePo popup cannot play...)

    I do not known how much tourettes wants to develop his filter, but i think to have standartise input is very usefull and can prevent lot of problems.
     

    tourettes

    Retired Team Member
  • Premium Supporter
  • January 7, 2005
    17,301
    4,800
    I am not sure if should post it here or not, but i think it can clarify some things.

    Partly yes :)

    As you can see, MadFlac is used to decode FLAC 7.1 - there is enabled 5.1 limitation in mad flac becouse we need to passhrough it
    So MadFLAC outputing 5.1; 96Khz and 24bit PCM. This is very good quality, but becouse we need to passthrough it as 5.1 we need to proceed it more and standartize it.

    Truri is using HDMI audio, so there is no 5.1 limit from the hardware side. And with MP audio renderer the output shouldn't be encoded to AC3 since it will just lower the audio quality. Instead the audio decoder should be changed (for testing, until the resampling code is implemented for audio renderer) to output a correct sample rate / bit depth combination. Most likely 96Khz @ 16 bit would be accepted by ATI's HDMI driver.

    Here is time for FFDshow. FFDshow resample anything that is <> 48Khz to 48Khz, then on the fly encode it to 5.1; 48khz AC3 16bit.
    48khz AC3 16bit is "standard" - all recievers should be able to handle this format.

    This step is definitely wrong when it comes to the MP audio renderer. Encoded audio cannot be processed any way, audio renderer needs always decoded PCM audio stream to work with. I think this makes currently SAF not suitable for the testing use.

    MP Audio renderer will itself encode the audio if user wants (read - has SPDIF connection in use. Analog and HDMI aren't requiring / supporting the AC3).

    I do not known how much tourettes wants to develop his filter, but i think to have standartise input is very usefull and can prevent lot of problems.

    Audio renderer currently supports only the 1:1 formats that the audio device is supporting. At later stages the resampling will be introduced, but for now audio decoder needs to be able to push the content in correct format.

    Why ATI fails to support 24 bit audio? No clue, but it is AMD/ATI engineers who need to answer this question.


    By some reason, MePo blocked FFDshow, so such audio source cannot proceeded correctly.
    So that is why FFDshow audio decoder needs to be added to MePo video postprocessing to force load it - but this cause issues for some videos with multiple audio streams inside (MePo popup cannot play...)

    Sounds like this could be a bug in the graph building (I'm sure ffdshow is not blocked by the code itself). But in any case a bug report should be raised, nothing to do with the MP audio renderer testing (especially when the ffsdshow definitely shouldn't be used for AC3 on-the-fly encoding with the MP audio renderer, not with the testing phase nor with the release at some day).
     

    tourettes

    Retired Team Member
  • Premium Supporter
  • January 7, 2005
    17,301
    4,800
    Play-exclusive doesn't work. I tried to change pcm to 44.1 khz. . there is no way to change the bit format.

    This is the 1st step we need to get to work, after that we can focus on the audio renderer (if there are any issues anymore left after getting the play-exclusively.exe to work).
     

    red5goahead

    MP Donator
  • Premium Supporter
  • November 24, 2007
    695
    144
    Italy, North West
    Home Country
    Italy Italy
    Code:
    24-08-2010 13:34:42.226 [ 15c4] WASAPIRenderer::CheckMediaType WASAPI client refused the format: (0x88890008)

    0x88890008 AUDCLNT_E_UNSUPPORTED_FORMAT

    Driver is not accepting the reguested audio format. Check if changing the 44.1Khz to 48.Khz solves the issue. If yes, then Asus has not understood what the WASAPI exclusive means :) (application has the control over the output format, not the user :)).

    Agree . It's a tuff world but it's the only we have :D.. Imho there are too many clue wasapi is not a goal for most
    of the brand and chip manufacturers
     

    hoborg

    Portal Pro
    June 13, 2008
    4,413
    1,644
    Nový Jičín
    Home Country
    Czech Republic Czech Republic
    tourettes:

    Of course there is no need to enable AC3 encode, becouse your renderer do it.
    So you have plan to integrate samplerate/bith depth changer ? Is it really needed if there is already integrated in FFDshow ?

    If passthrough is not enabled durning SAF setup, FFDshow didnt resample/encode anything, audio is sended to renderer as it is.
     

    Users who are viewing this thread

    Top Bottom