FFMPEG是否利用CUDA或任何其他硬件加速?

时间:2011-12-15 16:28:58

标签: cuda ffmpeg gpu hardware-acceleration libavcodec

简单的问题,但我找不到答案。

我们决定使用转码引擎(最好是开源),我认为FFMPEG不使用硬件加速,但我不确定。

我相信ffmpeg使用libavcodec,这是在无数其他产品中使用的相同库,例如Handbrake。我不敢相信他们不支持硬件加速,因此,我的问题。

4 个答案:

答案 0 :(得分:1)

libavcodec具有允许客户端实现硬件解码的API。我不认为Handbrake支持它。

使用CUDA内核或任何其他类型的SIMD语言,所有这些都对任务无用。它使用与GPU(或更新的CPU)一起打包的专用解码器硬件。 CUDA碰巧提供了一个访问它的API,这就是“CUDA支持”的含义。

答案 1 :(得分:0)

据我所知ffmpeg不使用CUDA,如果你对某些事情感到好奇 - CoreAVC Video Decoder在他们的H.264解码器中有这样的选择。

答案 2 :(得分:0)

我使用Loiloscope。自首次发布以来,它已经推出了CUDA加速转码。

答案 3 :(得分:0)

如果你调用avcodec_find_decoder()来获取解码器,FFmpeg将不会利用硬件加速来解码。相反,使用特定硬件解码器调用avcodec_find_decoder_by_name()将获得GPU利用率。例如:

AVCodec *avcodec_h264dec = avcodec_find_decoder_by_name("h264_cuvid");