我制作了一个控制台程序,可以预览来自网络摄像头的视频,并通过 MJPEG 压缩过滤器将其捕获为 .avi 格式。我的架构:
WebCam
->IBaseFilter(Video capture filter)
->IBaseFilter(MJPEG compression filter)
------------->ICaptureGraphBuilder2::RenderStream
->.avi
关于如何通过 IAMVideoCompression 接口设置 MJPEG 压缩参数以获得最小的视频大小和至少平均质量的任何建议?现在我将 putQuality 方法参数设置为 0.1,这对我有很大帮助;我的视频文件大小约为 15mb/分钟。
我无法使用任何视频播放器渲染这个捕获的 .avi 文件(我尝试过 Windows Media Player、WMP Classic、VLC)。我需要先制作解压器才能观看此视频吗?
我应该使用另一个压缩过滤器吗?哪一个是最好的?
我的目标是编写一个视频流服务器(如 Skype)。您认为 15mb/分钟的大小适合将视频数据包传输到网络吗?我将使用 UDP(RTP) 套接字来传输媒体流。