参考:
https://blog.csdn.net/COCO56/article/details/89517157
先使用 -hwaccels 参数查看支持什么显卡,intel系列使用QSV
再使用 -codecs |grep qsv 查看QSV编码下,支持哪些编码方式,如
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_qsv h264_cuvid ) (encoders: libx264 libx264rgb h264_amf h264_nvenc h264_qsv nvenc nvenc_h264 )
具体参数可参考下面:
D:\soft\ffmpeg\bin\ffmpeg.exe -hwaccel qsv -threads 4 -i “f:\\input.mkv” -map 0:0 -map 0:1 -map 0:2 -c:v h264_qsv -acodec copy -disposition:a:0 default “output.mp4”
-threads 采用4个线程,一般几个虚拟内核使用几个线程
-map 多音轨参数
-c:v 采用什么模式,使用什么后缀,比如 qsv 就用h264_qsv ,用Nvidia ,可以用h264_cuda 等,如果用libx264 ,那就是用软编码
软硬编码对比
可以看出,硬编码比如软编码速度快上了5倍左右