由于转码是非常耗时的操作。
为了加快视频文件的转码,对视频文件进行切分,分成多片,在多台机器并行执行,最后做合并来提升性能。以下做一个实验,对分片前后的数据做一个对比, 验证分片转码的性能提升效果。

1.原始 mov 转码为 mp4文件(不切片)
输入:218s 的视频文件,文件大小:215.3M,由 iPhone 11 Pro 拍摄的视频。 原始文件格式:
Duration: 00:03:38.22, start: 0.000000, bitrate: 7894 kb/s
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709), 1920x1080, 7676 kb/s, 29.97 fps, 29.97 tbr, 600 tbn, 600 tbc (default)
time(ffmpeg -i 4_minute_video.mov 4_minute_video.mp4)
real 5m42.127s
user 40m41.547s
sys 0m19.006s
218s的mov视频文件转码为mp4,转码耗时:342s
2.拆分成5段视频
time(~/workspace/video-splitter/ffmpeg-split.py -f 4_minute_video.mov -c 5)
实际的执行命令:
ffmpeg -i 4_minute_video.mov -vcodec copy -acod

该博客通过实验分析了视频转码的效率提升方法。通过将视频切片并行转码,然后合并结果,显著减少了整体耗时。原始文件转码耗时342秒,而分片转码后平均耗时降低到约74.2秒,性能提升约5倍。主要耗时集中在编码阶段,表明分片策略能有效加速长视频转码。
最低0.47元/天 解锁文章
7029





