2017-10-16 105 views
0

我正在录制视频剪辑,然后加入最终视频中的所有剪辑。 一切都很好,但加入过程需要很长时间。如何提高ffmpeg中的视频编码速度?

尝试使用从这里一些ffmpeg的滤镜: https://trac.ffmpeg.org/wiki/Encode/H.264

这里是我使用的增加速度(这似乎是错误的)我的ffmpeg的命令:

command = new String[]{"-y", 
       "-f", 
       "concat", 
       "-safe", 
       "0", 
       "-i", 
       "/storage/emulated/0/DCIM/my_file.txt", 
       "-c:v", 
       "-preset", 
       "fast", 
       "-crf", 
       "22", 
       "copy", 
       "-flags", 
       "+global_header", 
       "/storage/emulated/0/DCIM/SampleApp/" + videoOutputPath 
     }; 

请帮助!非常感谢。

+0

显示'ffmpeg'命令的完整日志输出。许多Android用户正在使用配置不当的x264,导致显着的缓慢。输出结果将显示您是否也是这种情况。 – LordNeckbeard

回答

0

得到了解决:

我错过了一些选项,我用的ffmpeg一个新手:

最后的命令:

command = new String[]{"-y", 
       "-f", 
       "concat", 
       "-safe", 
       "0", 
       "-i", 
       "/storage/emulated/0/DCIM/my_file.txt", 
       "-c:v", 
       "libx264", 
       "-preset", 
       "ultrafast", 
       "-crf", 
       "28", 
       "-c:a", 
       "copy", 
       "-flags", 
       "+global_header", 
       "/storage/emulated/0/DCIM/SampleApp/" + videoOutputPath 
     }; 

其中“-PRESET超快是一个选项来增加编码速度,以及CRF 28“。

+0

非常感谢您对复制视频进行测试。 CRF做什么?增加28有什么不​​同? – Moondra

+0

CRF代表FFMPEG中的恒定速率因子,如果您想为视频保持最佳质量并且不关心文件大小,则应该使用此选项。质量从0到51的范围内变化,其中0是最好的(无损),50是最差的。默认值是23,理智范围是23到28.更多信息:https://trac.ffmpeg.org/wiki/Encode/H.264 –

+0

此外这个命令是针对Android的。 –