【发布时间】:2011-05-30 06:47:52
【问题描述】:
我只是创建简单的图表来记录来自源过滤器的视频:
SourceFilter ---> Muxer ---> FileWriter
我可以将来自 SourceFilter 的视频保存到我的本地磁盘。
But when i try to play the recorded video, it play in "slow motion" :-).
肯定存在fps(每秒帧数)问题。我该如何解决?有什么想法吗?
PS:
要检查我的 SourceFilter 是否提供正确的 fps,我只需创建另一个图表:
SourceFilter ---> Video Decoder ---> Video Renderer
它以正确的速度播放 (fps)
更多详情:
SourceFilter(*.mp4 file format) ---> Avi Mux Filter ---> File writer Filter
此记录但 fps 错误。
当我尝试 gdcl MP4 Mux (can see it here ) 时,我成功获得了正确的 fps。
SourceFilter(*.mp4 file format) ---> GDCL MPEG 4 Mux Filter ---> File writer Filter
另一种情况
SourceFilter( *.h264 file format) ---> Avi Mux Filter ---> File writer Filter
SourceFilter( *.h264 file format) ---> GDCL MPEG 4 Mux Filter---> File writer Filter
录制但录制文件不播放。
实际上我不想解码任何东西...只需将原始编码的视频帧(mp4,h264)写入文件。而且我可能不需要将音频与视频同步...为什么需要复用器吗?
我理想的过滤器应该是这样的:
SourceFilter(whatever format) ---> File writer
【问题讨论】:
-
如果您在问题中添加文件格式和编解码器信息会有所帮助
-
谢谢拉尔夫。文件格式为 mp4 和 h264。我在更多详细信息部分的问题中添加了更多详细信息。 @Ralf
-
我之前在 AVI 多路复用器上遇到过类似的问题,不幸的是很久以前我不记得我的问题是什么了。您是否根据msdn.microsoft.com/en-us/library/dd318188(v=vs.85).aspx 在源过滤器中设置 VIDEOINFOHEADER 的 AvgTimePerFrame?
-
其实,现在我只是使用 GraphEdit...没有编程任何东西...我没有在 SOURCE 过滤器中做任何修改。
标签: video directshow video-capture directshow.net