我有一个源过滤器正在推动" h264"流。我想将此流写入MPEG4(或可能是AVI)容器。
SourceFilter[output = H264] ---> X--->Y ....--->FileWriter[record.mpeg4]
我如何使用DirectShow执行此操作? (也打开不使用DirectShow的替代解决方案)
祝福
P.S:顺便说一句,什么是最好的 H264流的容器格式?
更新MPEG-4 Mux
好吧,我只是试试MPEG-4 Mux(www.gdcl.co.uk/mpeg4)。我的rtsp源过滤器和MUX无法连接。 Intelligent Connect尝试将FFdshow解码器放在源过滤器和多路复用器之间。
它不会在graphEdt上给出错误,但记录的流是" O" BYTE.No记录。 我缺少做某事......但它是什么?
答案 0 :(得分:1)
在www.gdcl.co.uk/mpeg4上有源代码形式的mpeg-4 mux滤波器。这通常用于H264。
您需要检查您提供的格式。有两种选择:字节流格式(在每个NALU之前有00 00 01起始码)和长度前置(在每个NALU之前有一个长度字段,存储在MP4文件中)。多路复用器应该同时接受这两者,但你可能需要检查你正在使用的fourcc / subtype guid对于多路复用器来说与你的源相同。