[FFmpeg-devel] [PATCH] News: Removal of libndi

Jean-Baptiste Kempf jb at videolan.org
Sun Mar 24 22:14:11 EET 2019


On Sun, 24 Mar 2019, at 20:10, Ronald S. Bultje wrote: 
> The GPL does not mention hardware (instead, they use the word "system
> library"). Going from here, I don't consider enterprise-level hardware like
> Matrox $$$ priced stuff to be a system library at all. My system certainly
> has no hardware or drivers or system-level libraries that are
> API+ABI+functionally compatible with Matrox' tools and wares - under any
> license, not open-source and not closed-source. How can the system library
> exception possibly apply here?

Drivers have always been considered part of the OS, whatever the price of the hardware.
The Linux kernel has drivers for pieces of hardware that are way more expensive than Matrox hardware.

So, if the library is part of the driver (installed at the same time), it is considered part of the "major components of the OS", because if you don't install the driver, you cannot use the hardware.
This is the opinion of the Linux Foundation, the FSF, FSFE and so many others.

Usually, the "major components" (as mentioned in the GPL and not "system libraries", which is the shortcut) explicitly mention 3 parts: kernel, compiler and  "others."
The common understanding is that everything that runs in Kernel-Land, aka kernel + drivers is the kernel part of the "major components". libc, compiler and libraries linked by compilers, if distributed with the OS, are the second part of the "major components"; and the last part, "others" cover the other core parts of the OS (usually the "base" in linux distributions), and covers init and the shell, and the basic services normally installed by default (at, cron, etc..).

Yes, this meaning is very dated, but GPLv2 is from 1991.


Most of those hardware libraries are glorified ioctls around the driver and shipped with the drivers.
And I see this with nVidia, Intel MFX and Decklink (lots of "acquire C++ interface, set param" there, release the C++ interface).

Matrox seems to do something else, though, introducing a special library for FFmpeg consumption, and I doubt that feels like a driver...


-- 
Jean-Baptiste Kempf -  President
+33 672 704 734


More information about the ffmpeg-devel mailing list