最近搞 0xFFFF 赛博小聚,用 OBS 录屏输出的是 flv 格式的视频,但 DaVinci Resolve 剪辑只支持 mp4 或者 mov 格式的导入,这时候需要有个格式转换的过程。
考虑到一点基本原理:
视频数据本质是一堆像素数据+音频数据的集合,然后由于信息量过于庞大,通过用 h264, h265, aac 等编码格式压缩数据量,最后再通过类似 mkv, mp4, flv 等封装格式将其包装起来,配合一些元数据,形成最终的视频数据流。
剪辑软件本身是支持 h264、aac 等编码的,只是封装格式不支持而已,所以做一个转换。
ffmpeg 有个 -c copy
参数,可以不处理 h264 等内部格式的像素数据,直接拷贝视频流重新封装,避免重新编码解码大量消耗 CPU 时间。
最终便是这样一条命令:
ffmpeg -i 2021-08-14\ 19-58-47.flv -c copy week-6-0814.mp4
效果(2h的视频5秒就转换完了):
![](https://static-img.0xffff.one/Arvn6W2KhRCLBOXd2r6TmIlUDGuXWUWHNzs2GgTOzgQ/q:90/w:800/rt:fit/aHR0cHM6Ly9zdGF0/aWMuMHhmZmZmLm9u/ZS9hc3NldHMvZmls/ZXMvMjAyMS0wOC0x/NS8xNjI5MDA0Nzk1/LTI5NzA2NS02OTBh/M2IzMzQ2YWYzNzcx/MjQ3M2ZhNTkzNmJh/ZWI4LnBuZw.jpg)
每周都在用,在此记录下,也欢迎分享更多的想法~