<div>I would like to create a pipeline that takes an WMV file and converts it into a MP4 (H264 + AAC) file. The WMV file contains an unknown number of video and audio streams (usually around 4 video streams, and 20-30 audio streams). Because the number of streams is not known I can&#39;t use gst-launch (I think?).</div>
<div><br></div>My initial approach was to use a decodebin2 and link each decoded pad (in the new-decoded-pad callback) to an audio/video encoder element and then link the encoder element to a newly request sink pad of the muxer. However, this led to internal dataflow errors. Apparently (<a href="http://n4.nabble.com/ffmux-mp4-audio-signal-not-emitted-td970892.html#a970892">http://n4.nabble.com/ffmux-mp4-audio-signal-not-emitted-td970892.html#a970892</a>) you can&#39;t request a sink pad once the muxer has been initialized.<div>
<br></div><div>The solution seems to be to request all sink pads before setting the pipeline to play state. But the problem is that I don&#39;t know how many streams there will be in the video file.</div><div><br></div><div>
So before I start messing with workarounds, I&#39;d thought I ask the mailing list first. Can someone help me solve this problem?</div><div><br></div><div>Grts,</div><div>Francis</div>