使用专用硬件(通常集成到GPU)对视频处理进行加速,比如解码、编码或filter等操作[1]。
优点:
缺点:
关于硬件加速的详细介绍参见[2][3]。
硬件加速API在各系统和硬解环境的支持情况如下[1]。

FFmpeg实现的API的情况如下[1]。

-hwaccel选项启用硬件解码器。
-hwaccel_device选项指定特定的硬件设备(比如有多个显卡可用)。-codec:v选项设置特定的编解码器,适用于外部包装的编解码器。
hwupload和hwdownload filter在硬件surface和内存之间拷贝数据。【扫码进君 羊,免费分享】资料包括《Andoird音视频开发必备手册+音视频学习视频+学习文档资料包+大厂面试真题+2022最新学习路线图》等等

示例:
1. 使用NVENC进行h264编码:
ffmpeg -s 1280*720 -i input_yuv -c:v h264_nvenc -pixel_format yuv420p -preset default output.mp4
2. NVEDC进行h264解码
ffmpeg -hwaccel nvdec -i input.mp4 output_yuv