FFmpeg硬件编解码
作者:罗上文,微信:Loken1,公众号:FFmpeg弦外之音
本章分析 FFmpeg 的各种硬件编解码的实现,例如 qsv、nvdec、nvenc、cuvid、VA-API、xxx 等等。
FFmpeg 对各种硬件编解码框架的支持如下:

FFmpeg 的硬件解码器有两种实现方式,Internal 跟 Standalone,如下:

Internal 是内部的意思,也就是说 硬件加速 的实现是 嵌套在 软解码器 内部的,如下:

Internal 类型的解码器在命令行的用法是 使用 -hwaccel 参数,然后解码器的名称是 h264,命令如下:
ffmpeg -hwaccel cuda -hwaccel_output_format cuda -c:v h264 -an -i juren.mp4 \
-c:v h264_nvenc juren_h264_nvenc.mp4
Standalone 类型的解码器都是独立于 软解码器 的,他们通常有一个新的解码器名称,例如 h264_cuvid、h264_qsv
参考资料: