FFmpeg - 转换速度非常慢

9
我使用JavaEE创建了一个网络应用程序,可以展示多种视频格式。我使用ffmpeg解决方案将视频转换为主流浏览器本地支持的格式。根据http://www.jwplayer.com/html5/formats/的说明,我将其转换为WEBM容器(VP8/VORBIS或VP9/OPUS)。但是,转换非常缓慢,比特率约为200kbits/s。我使用以下命令进行转换: ffmpeg -i file.mov -c:v libvpx -preset ultrafast result.webm 如何加快转换速度以便更快地转换为主流浏览器本地支持的格式?

2
你找到解决方案了吗?如果有的话,请在这里分享,我也遇到了同样的问题,谢谢! - Bahramdun Adil
1个回答

14

使用-speed数字(例如8),而不是-preset设置(例如ultrafast)。后者用于x264/x265编码。

数字越高,编码速度越快,因此ultrafast将映射到大约8。 非常慢/安慰剂映射到0,中间的值相应地映射。1-2仍会给出合理的结果,而4-5之类的设置往往比较快,但质量并不完全糟糕。


我将 speed 参数设置为 16,但对我来说仍然太慢了,ffmpeg 13MB 的 mov 文件在30秒内转换为7b的 webm 文件。是否有其他参数可以加速转换?也许ffmpeg服务器可以帮助我流式传输文件“Live”? - karoluch
1
尝试使用-deadline实时-cpu-used-16(-cpu-used与-speed相同),这是一个实时设置,质量肯定会受到影响,但速度会显著提高。还要确保您正在运行最新的libvpx + ffmpeg版本。 - Ronald S. Bultje
好的,我以前用过。谢谢 ;) - karoluch
我在ffmpeg的man手册中没有看到-speed-cpu-used,想知道如果没有指定的话,默认使用多少个CPU。 - Eric
5
在我的测试中,使用“-preset ultrafast”可以加快速度,“-speed 8”没有任何变化。 - Eric

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接