最近接手同事一项目,采集usb摄像头,生成AVI文件,同事使用DirectShow实现,发现一个问题,当有音频输入设备时,我录制成WMV的总时间与程序界面显示一致,当没有音频输入设备时,录制成AVI的总时间与程序界面显示不一致,录制的时间越长,差的时间越多。
AVI的Graph如下:WMV的Graph如下:有以下几个疑问:
1. 生成WMV时,参考时钟是有效的?而生成AVI时,没有有效的时钟?
2. 如果需要手动给AVI加时钟,该怎么做?最近也在看MSDN,没太看明白
3. 如果我只采集视频,并保存成WMV,该怎么做?使用哪些Filter?DMO?
4. USB Camera2.0的视频格式是yuv2,怎么用?
AVI的Graph如下:WMV的Graph如下:有以下几个疑问:
1. 生成WMV时,参考时钟是有效的?而生成AVI时,没有有效的时钟?
2. 如果需要手动给AVI加时钟,该怎么做?最近也在看MSDN,没太看明白
3. 如果我只采集视频,并保存成WMV,该怎么做?使用哪些Filter?DMO?
4. USB Camera2.0的视频格式是yuv2,怎么用?
2:加时钟是指什么?建议录制视频用ffmpeg
3:这个还是建议用ffmpeg去做,不是在实验室的话,就用现成的吧
4:格式的用法只要保证发送和接收一致就可了,可以先用下ffmpeg+ds,看看能不能正常的获的视频流,如果可以的话,那保存应该也没什么问题