[FFmpeg-devel] [PATCH v2] avcodec/nvenc: Include NVENC SDK header

Andreas Cadhalpun andreas.cadhalpun at googlemail.com
Fri Dec 11 17:03:37 CET 2015

On 11.12.2015 09:41, Carl Eugen Hoyos wrote:
> On Friday 11 December 2015 12:16:48 am Andreas Cadhalpun wrote:
>> Well, the problem is that the answer may depend on the system.
> If Nvidia offers Graphics Driver for download on its ftp server 
> for multiple operating systems, they are either system libraries 
> or not, I really don't see how this can depend on the operating 
> system.

For reference, here is the system library exception from LGPL-2.1 [1]:
"However, as a special exception, the materials to be distributed need
not include anything that is normally distributed (in either source or
binary form) with the major components (compiler, kernel, and so on)
of the operating system on which the executable runs, unless that
component itself accompanies the executable."

So in general, there can be operating systems were Nvidia's blobs
are normally distributed together with e.g. the kernel and others
were this is not the case.

> I don't see any reason why the fact that these drivers 
> have to (or can) be downloaded by the user does not make them 
> system libraries.

When running ffmpeg on Debian (main), where these Nvidia blobs
are not present and not needed (because nouveau is used as driver),
no component of the operating system, major or not,
has been distributed with Nvidia's blobs, so the system library
exception does not apply.

I'm not sure about the situation for Windows.

> My point is that so far several people have said that if nvenc 
> is a system library there is no issue (and I fully agree). I 
> didn't see a mail (and even less a patch with a commit message 
> that says so) that claims nvenc is a system library (only that 
> it "should" be one).

So let's ask: Is someone here who claims that nvenc is a system
library and can explain why?

> I am glad we agree that there is no difference (license-wise) if 
> a library is linked statically, dynamically or via dynamic 
> loading;-)

There is that, at least. ;-)

Best regards,

1: https://www.gnu.org/licenses/lgpl-2.1-standalone.html

More information about the ffmpeg-devel mailing list