[FFmpeg-devel] Added HW accelerated H.264 and HEVC encoding for AMD GPUs based on AMF SDK

wm4 nfxjfg at googlemail.com
Fri Sep 29 19:56:56 EEST 2017

On Fri, 29 Sep 2017 15:04:00 +0000
"Mironov, Mikhail" <Mikhail.Mironov at amd.com> wrote:

> I would like to understand better the nature of the concern. The license is MIT. The paragraph in question is a notice, not limiting the usage of the SDK.
> I can definitely reduce number of headers. I can merge all necessary interfaces into one header, though maintenance will take more resources. Which way would you prefer?

Ideally, these headers would just be easily installable by whoever
wants to build FFmpeg with AMF. This is how it works normally for
external libraries.

I don't even understand why we added those NVIDIA and avisynth headers
(the other things in compat are for basic OS compatibility, so not
comparable). For NVIDIA in particular it's probably because installing
their SDK is a major PITA and there was something about license issues.
Maybe someone else could chime in why this was done?

At least for nvenc there was an explanation given in the commit message:

    As Nvidia has put the most recent Video Codec SDK behind a double
    registration wall, of which one needs manual approval of a lenghty
    application, bundling this header saves everyone trying to use NVENC
    from that headache.
    The header is still MIT licensed and thus fine to bundle with ffmpeg.
    Not bundling this header would get ffmpeg stuck at SDK v6, which is
    still freely available, holding back future development of the NVENC

So basically, NVIDIA being... let's say, "not nice". I don't think this
will be a problem with AMD.

Again, we generally don't add headers for external libraries in-tree.

More information about the ffmpeg-devel mailing list