Log in

View Full Version : WMP and DirectShow Filters


Snowknight26
11th March 2008, 03:20
I've noticed that whenever I play things in WMP that either WMVideo Decoder DMO or WMAudio Decoder DMO can decode natively, it is always the last thing in the filters chain (apart from the renderers).
This sometimes turns out to be a pain when I want to play 5.1 WMA Lossless files and output it to S/PDIF. I set ffdshow to enable uncompressed, LPCM, etc, but I can never get to connect. Same goes for WMV3. No matter what, WMVideo Decoder DMO is the last decoder in the chain.

If I use MPlayerC, for example, my WMA Lossless are decoded with the chain WMAudio Decoder DMO -> ffdshow, which is exactly what I want with WMP (as ffdshow can transcode the PCM to AC3 for my receiver).
Same thing goes for WMV3. MPlayerC uses the chain WMVideo Decoder DMO -> ffdshow.

So I guess what I want to know is, is there any way to use WMP without having WMVideo Decoder DMO or WMAudio Decoder DMO be the last decoders in the chain?

While I'm at it, does anyone know why WMAudio Decoder DMO only outputs 2ch PCM in graphedit even if the file is 5.1?

chros
11th March 2008, 11:59
While I'm at it, does anyone know why WMAudio Decoder DMO only outputs 2ch PCM in graphedit even if the file is 5.1?
Old Avisynth installed ???
This was a bug in the directshowsource code, but it has fixed by Nic, so I guess if you install the latest Avisynth (2.5.7) the problem will be gone ...

Snowknight26
11th March 2008, 23:18
I'm playing the file directly in graphedit, not using avisynth.

Snowknight26
23rd March 2008, 01:40
Would there be any other way to get WMP to output DD or something like that (still hoping to get WMP to use ffdshow)? I know I can choose DTS, WMA Pro, and Dolby Digital in my speaker configuration in Vista, but that doesn't seem to do encoding on the fly.

clsid
23rd March 2008, 14:02
Enable "Uncompressed" in ffdshow audio decoder and you might be able to use ffdshow as an audio post-processor.

Snowknight26
23rd March 2008, 16:49
It's set to all supported, but it won't connect at all.