PDA

View Full Version : x264vfw to File Writer filter in Directshow graph


Daner
26th March 2006, 13:20
Can someone explain to me why I cannot connect the x264vfw encoder filter to the File Writer filter in the following Directshow graph? I get an error saying that the pins can't agree on a media type.

http://www.cs.washington.edu/homes/dane/dshowgraph.gif

Yet, as the following screenshots show, the output pin on the x264 encoder filter has a majortype of "MEDIATYPE_Video" and a subtype of "x264", and the input pin on the File Writer has both majortype and subtype set to null, so it *should* accept every mediatype.

http://www.cs.washington.edu/homes/dane/x264pins.gif


http://www.cs.washington.edu/homes/dane/filewriterpins.gif


So why can't I connect the two?

Thanks for your help

Krismen
26th March 2006, 15:38
You must put AVI Mux filter between x264 encoder and File writer.

Daner
26th March 2006, 15:40
I just tried adding in an AVI Mux to the graph. I can get it to connect to the File Writer, but it won't let me connect the output of the x264 filter to the input of the AVI Mux.

Audionut
27th March 2006, 07:56
You need a directshow muxer that accepts x264 input.

Haali media splitter includes a directshow muxer.

http://haali.cs.msu.ru/mkv/

edit: Now if you can go to trouble of all this, why not just use the Command line version that outputs to mkv,mp4,raw.
Also, if I'm not mistaken, no directshow muxer will take x264 input and output avi.

Daner
27th March 2006, 08:08
Doesn't Virtualdub use Directshow underneath? How am I able to save out an AVI with x264 as the encoder from Virtualdub if there is no muxer that accepts x264 as input and outputs to AVI?

Krismen
27th March 2006, 08:36
VDub dosen't use DShow but you can use AviSynth script as input for VD. Example:

LoadPlugin("path\directshowsource.dll")
DirectShowSource("path\file.avi")

celtic_druid
27th March 2006, 08:55
If you want to use dshow, try ffdshow encoder for encoding. Just tested it and it works ok. Has extra options that x264 is missing to, like CQM support.