1
我无法理解如何使用libavcodec转换(例如,从avi转换为h.264)。我可以转换视频在我的C++程序是这样的:使用ffmpeg在C++流媒体服务器中转换视频
file=popen("ffmpeg -i file.avi file.m4v");
我可以使用此功能,而无需等待完成视频转换过程中动态地流?
我无法理解如何使用libavcodec转换(例如,从avi转换为h.264)。我可以转换视频在我的C++程序是这样的:使用ffmpeg在C++流媒体服务器中转换视频
file=popen("ffmpeg -i file.avi file.m4v");
我可以使用此功能,而无需等待完成视频转换过程中动态地流?
在转码过程中,您无法对m4v文件进行流式处理。 ffmpeg在转码过程结束时写入元数据,这需要流式传输视频。完成转换后,您必须使用MP4Box或qt-fatsstart将此元数据放在开头。如果您仍想在转换过程中流式传输视频,我认为您必须将视频转换为MPEG传输流(mpeg-ts)格式。
如果您不想等待流程执行,最好使用'fork'和'exec'系列函数。 –