INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Using ffdshow audio decoder after madflac decoder  (Read 6812 times)

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Using ffdshow audio decoder after madflac decoder
« on: October 08, 2010, 02:30:24 pm »

Since ffdshow converts 24 bit FLAC to 16 bit when decoding, I'm using madflac to decode the FLAC in MKV's. However, I still want to use the mixer in ffdshow's audio decoder. I disabled the FLAC decoder in ffdshow and have both the ffdshow audio decoder and madflac selected as filters for MKV. I am using the Haali splitter and renderer and the ffdshow video decoder.

When I play back the MKV, ffdshow's audio decoder is not inserting itself into the chain. I can use GraphStudio to connect the filters and it works fine so I assume that the ffdshow audio decoder settings are correct. Any suggestions? Thanks.
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14465
  • I won! I won!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #1 on: October 08, 2010, 03:08:52 pm »

You mean like this  ;D



Code: [Select]
Filter Graph Info:

    Filter 'ReClock Audio Renderer'
        CLSID: {9DC15360-914C-46B8-B9DF-BFE67FD36C6A}
        Host: c:\program files (x86)\reclock\reclock.dll
        Input Pin 'In'
            Connected to pin 'Out' of filter 'ffdshow Audio Decoder'
            Major type MEDIATYPE_Audio  Sub type MEDIASUBTYPE_PCM, Format type FORMAT_WaveFormatEx

    Filter 'Haali Video Renderer'
        CLSID: {760A8F35-97E7-479D-AAF5-DA9EFF95D751}
        Host: c:\program files (x86)\haali\matroskasplitter\dxr.dll
        Input Pin 'Input'
            Connected to pin 'Out' of filter 'ffdshow Video Decoder'
            Major type MEDIATYPE_Video  Sub type MEDIASUBTYPE_YUY2, Format type FORMAT_VideoInfo2
        Input Pin 'Subtitle'

    Filter 'ffdshow Audio Decoder'
        CLSID: {0F40E1E5-4F79-4988-B1A9-CC98794E6B55}
        Host: c:\program files (x86)\ffdshow\ffdshow.ax
        Output Pin 'Out'
            Connected to pin 'In' of filter 'ReClock Audio Renderer'
            Major type MEDIATYPE_Audio  Sub type MEDIASUBTYPE_PCM, Format type FORMAT_WaveFormatEx
        Input Pin 'In'
            Connected to pin 'pcm' of filter 'madFlac Decoder'
            Major type MEDIATYPE_Audio  Sub type MEDIASUBTYPE_PCM, Format type FORMAT_WaveFormatEx
        Input Pin 'In2'

    Filter 'ffdshow Video Decoder'
        CLSID: {04FE9017-F873-410E-871E-AB91661A4EF7}
        Host: c:\program files (x86)\ffdshow\ffdshow.ax
        Input Pin 'In'
            Connected to pin 'Video' of filter 'Haali Media Splitter'
            Major type MEDIATYPE_Video  Sub type Unknown GUID Name: {31435657-0000-0010-8000-00AA00389B71}, Format type FORMAT_VideoInfo2
        Output Pin 'Out'
            Connected to pin 'Input' of filter 'Haali Video Renderer'
            Major type MEDIATYPE_Video  Sub type MEDIASUBTYPE_YUY2, Format type FORMAT_VideoInfo2
        Input Pin 'In Text'

    Filter 'madFlac Decoder'
        CLSID: {6B257121-CBB6-46B3-ABFA-B14DFA98C4A6}
        Host: c:\users\mum and dad\downloads\madflac\madflac.ax
        Input Pin 'flac'
            Connected to pin 'Audio' of filter 'Haali Media Splitter'
            Major type MEDIATYPE_Audio  Sub type Unknown GUID Name: {1541C5C0-CDDF-477D-BC0A-86F8AE7F8354}, Format type FORMAT_WaveFormatEx
        Output Pin 'pcm'
            Connected to pin 'In' of filter 'ffdshow Audio Decoder'
            Major type MEDIATYPE_Audio  Sub type MEDIASUBTYPE_PCM, Format type FORMAT_WaveFormatEx

    Filter 'Haali Media Splitter'
        CLSID: {55DA30FC-F16B-49FC-BAA5-AE59FC65F82D}
        Host: c:\program files (x86)\haali\matroskasplitter\splitter.ax
        Output Pin 'Video'
            Connected to pin 'In' of filter 'ffdshow Video Decoder'
            Major type MEDIATYPE_Video  Sub type Unknown GUID Name: {31435657-0000-0010-8000-00AA00389B71}, Format type FORMAT_VideoInfo2
        Output Pin 'Audio'
            Connected to pin 'flac' of filter 'madFlac Decoder'
            Major type MEDIATYPE_Audio  Sub type Unknown GUID Name: {1541C5C0-CDDF-477D-BC0A-86F8AE7F8354}, Format type FORMAT_WaveFormatEx
Logged
JRiver CEO Elect

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14465
  • I won! I won!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #2 on: October 08, 2010, 03:15:31 pm »

Now here is the kicker - http://forum.doom9.org/showthread.php?t=120465&page=631 - If I put FFDSHOW back in, I'm back to 16-bit!
Logged
JRiver CEO Elect

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Using ffdshow audio decoder after madflac decoder
« Reply #3 on: October 08, 2010, 03:29:34 pm »

I found that if I have the J River Bitrate Monitor Filter selected, then the ffdshow audio decoder isn't in the filter chain. If I uncheck the J River Bitrate Monitor Filter, then ffdshow audio decoder is in the filter chain.
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14465
  • I won! I won!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #4 on: October 08, 2010, 03:36:25 pm »

Here is another thing...Been playing with the options in FFDSHOW (with and without MADFLAC) and if you check the following all output to Reclock is then 32-Bit....
Logged
JRiver CEO Elect

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Using ffdshow audio decoder after madflac decoder
« Reply #5 on: October 08, 2010, 03:39:29 pm »

Now here is the kicker - http://forum.doom9.org/showthread.php?t=120465&page=631 - If I put FFDSHOW back in, I'm back to 16-bit!

According to this post at Sly Soft's forum, ffdshow will always use the lowest option you have selected in 'allowed sample formats for sound processing' (this option is available when you click "processing" on the left side). If I uncheck 16 bit there, then Reclock shows my output as 32 bit PCM. The next few pages of that thread are pertinent, too.
Logged

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Using ffdshow audio decoder after madflac decoder
« Reply #6 on: October 08, 2010, 03:44:51 pm »

Here is another thing...Been playing with the options in FFDSHOW (with and without MADFLAC) and if you check the following all output to Reclock is then 32-Bit....
I just did some more test and I don't think "allowed sample formats for sound processing" under Processing is what changes it, as I mentioned in my previous post. It looks like the 32 bit Integer is what really changes the output. I had that enabled when I was unchecking 16 bit under Processing.
Logged

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Using ffdshow audio decoder after madflac decoder
« Reply #7 on: October 08, 2010, 03:49:25 pm »

If I disable the J River Bit Rate Monitor in order to have ffdshow, then I loose the DSP Studio functions like Room Correction and the use of VST plugins.  :'(
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14465
  • I won! I won!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #8 on: October 08, 2010, 03:53:56 pm »

Checking or Unchecking the 16 Bit Integer does not change the output bit debth for me.... but checking 32 Bit Integer in Output works - I've updated the Q over at Doom9's FFDSHOW thread to ask exactly what FFDSHOW is doing when.

But...couple of options may be suitable in using FFDSHOW on its own (or as a post processing filter)
1) Uncheck 16 Bit Integer in Processing (to be sure!)
2a) If you have checked 16, 24, and 32 Bit Integer in the Output Format for uncompressed or decoded streams you get 32-Bit Output (seems to make sence if the internal processing is done in 32-Bit)
2b) only check 24 Bit Integer in the Output Format and you get 24-Bit Output.  But I'm guessing it goes 24-Bit input --> 32-Bit processing --> 24-bit output

I've no idea why FFDSHOW will not punch out 24-Bit, if only 16 and 24 Bit Output is selcted .....
Logged
JRiver CEO Elect

mojave

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3732
  • Requires "iTunes or better" so I installed JRiver
Re: Using ffdshow audio decoder after madflac decoder
« Reply #9 on: October 08, 2010, 04:01:16 pm »

I went back and had ffdshow do the FLAC decoding and had 32 bit integer selected. Now Reclock shows the audio as being 32 bit PCM. I just saw your edited post at doom9. I'm still unclear about whether the audio is ever converted to 16 bit when ffdshow does the FLAC decoding.  ? I don't think the answers provided are conclusive yet and your current post needs 1) to be changed to "ffdshow decoding = 32 bit output (but is it ever reduced to 16 bit at some point?)" At least I think that should be the question.

Maybe we were thrown off track by the initial 16 bit being shown in Reclock. This explanation is in post #142 of the thread I linked to earlier:

Quote
If you use a 16 bit source, it would use 16 bit, but if you use a 24 bit source, it would use 32bit integer. It never uses 24bit as a processing sample format because that would be complicated to code, so they stick with 32 bit integer. When mixing signals, 32 bit integer has more precision than 32 bit floating point, so you should use that. 32 bit floating point is better for other kind of processing.
In practice, it would be the same, because we are "limited" to 24 bit dacs, so the extra precision you gain by using 32 bit integer would not be used by the dacs...
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14465
  • I won! I won!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #10 on: October 08, 2010, 04:13:26 pm »

Mmm Could be - I've updated the DOOM9 Post to ask the Q more clearly, but it "looks" like full debth processing in FFDSHOW without MadFLAC is possible by ensuring:
1) Uncheck 16 Bit Integer in Processing (to be sure!)
2) Check 16, 24, and 32 Bit Integer in the Output Format

Lets see what they DOOM9'ers say ...
Logged
JRiver CEO Elect

Yaobing

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10926
  • Dogs of the world unite!
Re: Using ffdshow audio decoder after madflac decoder
« Reply #11 on: October 12, 2010, 04:49:30 pm »

If I disable the J River Bit Rate Monitor in order to have ffdshow, then I loose the DSP Studio functions like Room Correction and the use of VST plugins.  :'(

These two things are totally separate.  You do not need to include JRiver Bitrate Monitor.  All it provides is the dynamic bitrate information.  For DSP Studio functions, you need to use JRiver Audio Renderer (choose "Same as device used for audio playback" for Playback Device, under Tools > Options > Video > Audio for Video, DVD, & Television).
Logged
Yaobing Deng, JRiver Media Center
Pages: [1]   Go Up