编解码可以软编实现(CPU),或者硬编(GPU),当然还可以使用专用的编解码卡(IC),他们各有优点,但是基于硬件的处理往往速度更快。但是也有人说软编有更大的可调节性。这里我们只记录硬编的硬件支持情况,尤其是软编效率没有上来的情况下这显得尤其重要。
废话不多说,先上intel GPU QSV硬编解情况:
摘自:https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding
ffmpeg qsv使用方法:https://trac.ffmpeg.org/ticket/5899
重点:
CQ:
./ffmpeg_g -y -i in.mp4 -an -c:v hevc_qsv -load_plugin hevc_hw -q 30 out.mp4
CBR:
./ffmpeg_g -y -i in.mp4 -an -c:v hevc_qsv -load_plugin hevc_hw -b 5M -maxrate 5M out.mp4
注意:hevc_qsv只输出IB帧,无P帧。我反复尝试了N次后依然如此,尤其是其中有个-r 1(no B frames)给人无B帧的希望
。有段Intel人员给的解释如下:
nvidia nvenc:
摘自:https://developer.nvidia.com/nvidia-video-codec-sdk#NVENCFeatures
https://developer.nvidia.com/video-encode-decode-gpu-support-matrix#Encoder
联系客服