ffmpeg - 如何优化录制的摄像机流的文件大小?
问题描述
我正在使用不同的方法从相机录制流。我尝试使用 ffmpeg 录制摄像机流。我看了这个问题:https ://stackoverflow.com/a/26464175/5128696并使用了以下命令:
ffmpeg -i http://user:password@192.168.0.101/video.cgi?resolution=vga -c copy -map 0 -f segment -segment_time 300 -segment_format mp4 "outfile%03d.mp4"
它有效,但文件大小在2 分钟视频中达到了45Mb 的峰值。
然后我使用 VLC 录制流。相同长度片段的结果文件约为 2Mb
如何优化录制文件的大小?我的相机提供没有音频的 640x480 视频流,45Mb 太多了。
解决方案
-c copy
启用流复制模式。删除此选项以重新编码:
ffmpeg -i http://user:password@192.168.0.101/video.cgi?resolution=vga -map 0 -f segment -segment_time 300 "outfile%03d.mp4"
这将使用名为 libx264 的编码器的默认设置。有关更多选项,请参阅FFmpeg Wiki:H.264。
推荐阅读
- react-native - 如何在没有 .on() 事件的情况下从 React Native 上的实时数据库获取数据?
- r - 如何在 R 中编写循环?
- java - 视图的通用动画覆盖轴不起作用
- vector - 找到运算符“=”的“0”定义,无法确定“=”的确切重载匹配定义
- android - 向数据库中添加信息
- javascript - 为什么命令行现在每个参数后面都有两个连字符 (--)?它起源于哪里,为什么不使用单个连字符?
- keras - 将 LSTM 模型从 Keras 转换为 Pytorch
- rust - 如何对嵌套的 .iter() 进行错误处理?
- html - 更改动态加载的 Angular 元素的 CSS
- javascript - Flow js不适用泛型