Log in

View Full Version : DivX H.264 decoder connecting to ffdshow unnecessarily


`Orum
21st December 2009, 19:26
I'm using DivX's H.264 decoder for playback in MPC-HC. This works fine, but if I have ffdshow's video decoder for "Raw Video" set to YV12 or "all supported", it adds that filter in the graph between the DivX decoder and the renderer when it's not needed (really, it plays in GraphStudio & MPC-HC just fine).

With ffdshow's raw decoding enabled:
http://img191.imageshack.us/img191/1097/with.png

With ffdshow's raw decoding disabled:
http://img683.imageshack.us/img683/1708/without.png

Normally I would just leave the raw video setting disabled, but then MPC-HC can't play back YV12 from AviSynth scripts! So, is there a way I can either disable it when the DivX decoder is being used, or enable it only when decoding video served by AviSynth?

Edit: I tried lowering the merit, but that has no effect on the use of the filter or not.

Keiyakusha
21st December 2009, 19:55
Well, if you will leave raw filter ON, obviously it will be connected to everything that outputs raw video... In your case YV12.

EDIT: maybe turning on raw filter for YV12 in vfw interface and disabling it in directshow will work as you want...

`Orum
21st December 2009, 20:31
Well, if you will leave raw filter ON, obviously it will be connected to everything that outputs raw video... In your case YV12.
Yeah, I just don't get why the renderer could take YV12 from DivX but not from AviSynth.

EDIT: maybe turning on raw filter for YV12 in vfw interface and disabling it in directshow will work as you want...
Hrm, how do I do that in ffdshow?

Keiyakusha
21st December 2009, 22:48
Hrm, how do I do that in ffdshow?
Etto... you should enable YV12 in VFW configuration dialog exactly as you enabled it in Video decoder configuration. And in Video decoder configuration you should disable it. And thats all...

`Orum
22nd December 2009, 01:23
Ah, I had forgotten that the VFW config had a "decoder" tab.

Anyway, it works as intended. For some reason the VFW icon only appears when encoding, and not decoding, but whatever, not a big deal.

:thanks:

So, out of curiosity, does MPC-HC attempt to construct a DirectShow filter chain for playback, and then fall back to VFW if it can't find something that works?

avivahl
22nd December 2009, 02:20
AFAIK, MPC-HC uses only DirectShow. Maybe avisynth uses VfW? (That would explain why it works when VfW raw processing is enabled and DirectShow disabled)