ffmpeg-转换Chrome生成的webm视频很慢

时间:2018-06-28 10:49:14

标签: ffmpeg webrtc

我以两种不同的方式生成webm文件。一个使用Chrome WebRTC MediaRecorder,另一个使用js库来逐帧(webm-writer-js)生成webm视频。生成的视频文件大小没有什么不同,快的是慢的文件的60%,但速度的差异是1000%

使用基本的ffmpeg语法-i input.webm output.mp4,使用Chrome的媒体记录器创建的文件实际上要花费近10倍的时间才能转换。转换日志略有不同,但总体看起来与我的新手非常相似。左侧是快速转换,右侧是慢速转换。

enter image description here

快速运行时会引发一些错误,但转换似乎成功。在慢速转换中,您可以看到处理了许多帧,而在快速帧中,好像只有一帧(非常快)。使用-preset veryfast可以将速度时间减少一半,但是可以看到质量下降。

您知道如何在不影响质量的前提下加快Chrome生成的视频的转换吗?非常感谢!

1 个答案:

答案 0 :(得分:3)

检测到Chrome的文件的帧速率为1000 / s。应该是30 fps。

两种解决方法-强制视频同步到可变帧率

-i input.webm -vsync vfr output.mp4

或强制输出速率

-i input.webm -r 30 output.mp4