2012-10-11 00:04:08 +00:00
|
|
|
mpv is a fork of mplayer2, which is a fork of MPlayer.
|
|
|
|
|
2013-10-12 23:18:50 +00:00
|
|
|
mpv as a whole is licensed as GPL version 2 or later (see LICENSE). Most source
|
|
|
|
files are GPLv2+, but some files are available under a more liberal license,
|
2015-07-24 21:53:31 +00:00
|
|
|
such as LGPLv2.1+, BSD, MIT, ISC, and possibly others. Look at the copyright
|
2013-10-12 23:18:50 +00:00
|
|
|
header of each source file, and grep the sources for "Copyright" if you need
|
2017-02-16 10:43:02 +00:00
|
|
|
to know details. C source files without Copyright notice are licensed as
|
|
|
|
LGPLv2.1+. Also see the list of files with specific licenses below (not all
|
|
|
|
files can have a standard license header).
|
2015-07-24 21:53:31 +00:00
|
|
|
|
|
|
|
All new contributions must be LGPLv2.1+ licensed, or if the changes are done on
|
|
|
|
GPL code, must come with the implicit agreement that the project can relicense
|
|
|
|
the code to LGPLv2.1+ at a later point without asking the contributor. (This
|
|
|
|
is a safeguard for making potential relicensing of the project to LGPLv2.1+
|
2015-07-26 18:23:41 +00:00
|
|
|
easier.) Using a more liberal license compatible to LGPLv2.1+ is also ok.
|
2003-12-09 08:35:55 +00:00
|
|
|
|
2013-10-12 23:18:50 +00:00
|
|
|
For information about authors and contributors, consult the git log, which
|
|
|
|
contains the complete SVN and CVS history as well.
|
2010-01-04 13:01:44 +00:00
|
|
|
|
2013-10-12 23:18:50 +00:00
|
|
|
Note that mplayer2 as a whole is licensed under GPLv3+. This is because it uses
|
|
|
|
a copy of talloc (part of Samba), which is LGPLv3+, and the next compatible
|
|
|
|
license for this mix is GPLv3+.
|
2003-12-09 08:35:55 +00:00
|
|
|
|
2013-10-12 23:18:50 +00:00
|
|
|
MPlayer as a whole is licensed under GPLv2 (incompatible to GPLv3!), because
|
|
|
|
some files are licensed to GPLv2 (and _not_ any later version of the license).
|
|
|
|
In particular, this affects the file libmpdemux/demux_ty_osd.c. It is disabled
|
|
|
|
under mplayer2, and has been removed from mpv.
|
2015-07-24 21:53:31 +00:00
|
|
|
|
|
|
|
"v2.1+" in this context means "version 2.1 or later".
|
2017-02-16 10:43:02 +00:00
|
|
|
|
2017-05-11 06:12:14 +00:00
|
|
|
Some libraries are GPLv2+ or GPLv3+ only. Building mpv with Samba support makes
|
|
|
|
it GPLv3+.
|
|
|
|
|
2017-02-16 10:43:02 +00:00
|
|
|
Source files with specific licenses:
|
|
|
|
- everything under etc/ is unknown
|
|
|
|
- everything under DOCS/man/ is GPLv2+
|
2017-04-21 11:37:33 +00:00
|
|
|
- sub/osd_font.otf is LGPLv2.1+
|
2017-02-16 10:43:02 +00:00
|
|
|
- some tests under waftools/fragments/ might be GPLv2+
|
2017-03-13 13:08:31 +00:00
|
|
|
- version.sh is GPLv2+
|
2017-05-05 04:53:23 +00:00
|
|
|
|
|
|
|
Some files are marked with "Almost LGPL." These files are GPL, but all authors
|
|
|
|
have agreed to relicense them to LGPL. the problem is that one of the authors is
|
|
|
|
Michael Niedermayer, who cited the following conditions for relicensing:
|
|
|
|
|
|
|
|
http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2016-September/073535.html
|
|
|
|
|
|
|
|
We assume the first 3 conditions are fulfilled. The last condition can be
|
|
|
|
interpreted as that his code can be changed to LGPL only as soon as the "core"
|
|
|
|
of mpv changes to LGPL. We interpret "core" as something minimal, that can
|
|
|
|
actually be built and run, with all GPL code disabled.
|
2017-05-05 06:38:30 +00:00
|
|
|
|
2017-05-11 15:02:43 +00:00
|
|
|
Some files are LGPLv3+. This is due to the contributions of a single developer
|
|
|
|
going by the SVN username "iive". The chosen license of this project is
|
|
|
|
LGPLv2.1+. The affected files will be changed to LGPLv2.1+ at the earliest
|
|
|
|
opportunity, for example if his contributions disappear by being replaced
|
|
|
|
or removed. All new contributions to these files are implied to be LGPLv2.1+.
|
|
|
|
|
2017-05-05 06:38:30 +00:00
|
|
|
LGPL relicensing status:
|
|
|
|
|
|
|
|
audio/decode/ad.h LGPL
|
|
|
|
audio/decode/ad_lavc.c very hard (nick's changes)
|
2017-05-21 10:35:53 +00:00
|
|
|
audio/decode/ad_spdif.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/decode/dec_audio.* very hard (nick's changes)
|
|
|
|
audio/filter/af.* must be killed (main author disagreed)
|
|
|
|
audio/filter/af_channel.c must be killed (main author disagreed)
|
|
|
|
audio/filter/af_equalizer.c must be killed (main author disagreed)
|
|
|
|
audio/filter/af_pan.c must be killed (main author disagreed)
|
|
|
|
audio/filter/af_volume.c must be killed (main author disagreed)
|
|
|
|
audio/filter/equalizer.h must be killed (main author disagreed)
|
|
|
|
audio/filter/tools.c must be killed (main author disagreed)
|
af_format: change license to LGPL
This case is a bit weird, because MPlayer certainly also has a file
named af_format.c. Both appear to have the function of converting audio
data between sample formats.
However, mpv's af_format.c is a rewrite, and doesn't actually do
conversion by itself. It's similar to vf_format.c, and forces the
generic filter chain code to insert conversion filters, instead of doing
conversion explicitly.
mpv's current af_format.c started out as af_force.c in d9582ad0a41. It
was renamed to af_format.c in e60b8f181d, while the old af_format.c was
split into two new filters. In 943c785619 the filename was changed to
af_format.c as well.
The new af_format.c does not contain any libaf code, except for some
potentially copy & pasted skeleton and boilerplate code. (We don't
account for this in per-filter file licenses, as the old libaf code
has to be removed fully, at which point the filters will have to be
ported to another framework, which will removed that boilerplate code.)
The old filters based on af_format.c were progressively replaced and
removed. Support for non-native endian and formats with signedness
different from native FFmpeg was completely removed in 831d7c3c400b.
The old 24 bit conversion code was removed in 552dc0d564 (made
unnecessary by 5a9f817bfde8).
Also list hwdec_vaglx.c as GPL-only, which doesn't have anything to do
with this commit.
2017-05-11 09:00:15 +00:00
|
|
|
audio/filter/af_format.c LGPL
|
2017-05-09 10:46:40 +00:00
|
|
|
audio/filter/af_lavc3enc.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/filter/af_lavfi.c LGPL
|
2017-05-09 10:53:28 +00:00
|
|
|
audio/filter/af_scaletempo.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/filter/af_rubberband.c LGPL
|
audio/out: change license of some core files to LGPL
All contributors of the current code have agreed. ao.c requires a
"driver" entry for each audio output - we assume that if someone who
didn't agree to LGPL added a line, it's fine for ao.c to be LGPL
anyway. If the affected audio output is not disabled at compilation
time, the resulting binary will be GPL anyway, and ootherwise the
code is not included.
The audio output code itself was inspired or partially copied from
libao in 7a2eec4b59f4 (thus why MPlayer's audio code is named libao2).
Just to be sure we got permission from Aaron Holtzman, Jack Moffitt, and
Stan Seibert, who according to libao's SVN history and README are the
initial author. (Something similar was done for libvo, although the
commit relicensing it forgot to mention it.)
242aa6ebd40: anders mostly disagreed with the LGPL relicensing, but we
got permission for this particular commit.
0ef8e555735: nick could not be reached, but the include statement was
removed again anyway.
879e05a7c17: iive agreed to LGPL v3+ only, but this line of code was
removed anyway, so ao_null.c can be LGPL v2.1+.
9dd8f241ac2: patch author could not be reached, but the corresponding
code (old slave mode interface) was completely removed later.
2017-05-20 09:35:25 +00:00
|
|
|
audio/out/ao.c LGPL
|
|
|
|
audio/out/ao.h LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/out/ao_alsa.c extremely hard (original author did not decide)
|
2017-05-08 11:57:40 +00:00
|
|
|
audio/out/ao_audiounit.m LGPL
|
|
|
|
audio/out/ao_coreaudio.c LGPL
|
|
|
|
audio/out/ao_coreaudio_chmap.c LGPL
|
|
|
|
audio/out/ao_coreaudio_chmap.h LGPL
|
|
|
|
audio/out/ao_coreaudio_exclusiv LGPL
|
|
|
|
audio/out/ao_coreaudio_properti LGPL
|
|
|
|
audio/out/ao_coreaudio_properti LGPL
|
|
|
|
audio/out/ao_coreaudio_utils.c LGPL
|
|
|
|
audio/out/ao_coreaudio_utils.h LGPL
|
audio/out: change license of some core files to LGPL
All contributors of the current code have agreed. ao.c requires a
"driver" entry for each audio output - we assume that if someone who
didn't agree to LGPL added a line, it's fine for ao.c to be LGPL
anyway. If the affected audio output is not disabled at compilation
time, the resulting binary will be GPL anyway, and ootherwise the
code is not included.
The audio output code itself was inspired or partially copied from
libao in 7a2eec4b59f4 (thus why MPlayer's audio code is named libao2).
Just to be sure we got permission from Aaron Holtzman, Jack Moffitt, and
Stan Seibert, who according to libao's SVN history and README are the
initial author. (Something similar was done for libvo, although the
commit relicensing it forgot to mention it.)
242aa6ebd40: anders mostly disagreed with the LGPL relicensing, but we
got permission for this particular commit.
0ef8e555735: nick could not be reached, but the include statement was
removed again anyway.
879e05a7c17: iive agreed to LGPL v3+ only, but this line of code was
removed anyway, so ao_null.c can be LGPL v2.1+.
9dd8f241ac2: patch author could not be reached, but the corresponding
code (old slave mode interface) was completely removed later.
2017-05-20 09:35:25 +00:00
|
|
|
audio/out/ao_jack.c will stay GPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/out/ao_lavc.c probably easy
|
audio/out: change license of some core files to LGPL
All contributors of the current code have agreed. ao.c requires a
"driver" entry for each audio output - we assume that if someone who
didn't agree to LGPL added a line, it's fine for ao.c to be LGPL
anyway. If the affected audio output is not disabled at compilation
time, the resulting binary will be GPL anyway, and ootherwise the
code is not included.
The audio output code itself was inspired or partially copied from
libao in 7a2eec4b59f4 (thus why MPlayer's audio code is named libao2).
Just to be sure we got permission from Aaron Holtzman, Jack Moffitt, and
Stan Seibert, who according to libao's SVN history and README are the
initial author. (Something similar was done for libvo, although the
commit relicensing it forgot to mention it.)
242aa6ebd40: anders mostly disagreed with the LGPL relicensing, but we
got permission for this particular commit.
0ef8e555735: nick could not be reached, but the include statement was
removed again anyway.
879e05a7c17: iive agreed to LGPL v3+ only, but this line of code was
removed anyway, so ao_null.c can be LGPL v2.1+.
9dd8f241ac2: patch author could not be reached, but the corresponding
code (old slave mode interface) was completely removed later.
2017-05-20 09:35:25 +00:00
|
|
|
audio/out/ao_null.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/out/ao_openal.c unknown
|
|
|
|
audio/out/ao_opensles.c LGPL
|
|
|
|
audio/out/ao_oss.c will stay GPL
|
2017-05-20 10:41:33 +00:00
|
|
|
audio/out/ao_pcm.c LGPL
|
2017-05-08 12:09:49 +00:00
|
|
|
audio/out/ao_pulse.c LGPL
|
|
|
|
audio/out/ao_rsound.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/out/ao_sdl.c LGPL
|
|
|
|
audio/out/ao_sndio.c LGPL (BSD)
|
|
|
|
audio/out/ao_wasapi.c LGPL
|
|
|
|
audio/out/ao_wasapi_changenotif LGPL
|
|
|
|
audio/out/ao_wasapi.h LGPL
|
|
|
|
audio/out/ao_wasapi_utils.c LGPL
|
audio/out: change license of some core files to LGPL
All contributors of the current code have agreed. ao.c requires a
"driver" entry for each audio output - we assume that if someone who
didn't agree to LGPL added a line, it's fine for ao.c to be LGPL
anyway. If the affected audio output is not disabled at compilation
time, the resulting binary will be GPL anyway, and ootherwise the
code is not included.
The audio output code itself was inspired or partially copied from
libao in 7a2eec4b59f4 (thus why MPlayer's audio code is named libao2).
Just to be sure we got permission from Aaron Holtzman, Jack Moffitt, and
Stan Seibert, who according to libao's SVN history and README are the
initial author. (Something similar was done for libvo, although the
commit relicensing it forgot to mention it.)
242aa6ebd40: anders mostly disagreed with the LGPL relicensing, but we
got permission for this particular commit.
0ef8e555735: nick could not be reached, but the include statement was
removed again anyway.
879e05a7c17: iive agreed to LGPL v3+ only, but this line of code was
removed anyway, so ao_null.c can be LGPL v2.1+.
9dd8f241ac2: patch author could not be reached, but the corresponding
code (old slave mode interface) was completely removed later.
2017-05-20 09:35:25 +00:00
|
|
|
audio/out/internal.h LGPL
|
|
|
|
audio/out/pull.c LGPL
|
|
|
|
audio/out/push.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
audio/audio.* very hard (mp_audio based of anders' af_audio)
|
|
|
|
audio/audio_buffer.* LGPL
|
|
|
|
audio/chmap.* LGPL
|
|
|
|
audio/chmap_sel.* LGPL
|
|
|
|
audio/fmt-conversion.* LGPL
|
|
|
|
audio/format.* hard (murky libaf origins)
|
|
|
|
common/av_common.* LGPL
|
|
|
|
common/av_log.c almost LGPL
|
|
|
|
common/av_log.h LGPL
|
|
|
|
common/codecs.* LGPL
|
|
|
|
common/common.* LGPL
|
|
|
|
common/encode.h unknown
|
|
|
|
common/encode_lavc.* unknown
|
|
|
|
common/global.h LGPL
|
|
|
|
common/msg.c almost LGPL
|
|
|
|
common/msg_control.h LGPL
|
|
|
|
common/msg.h LGPL
|
|
|
|
common/playlist.* LGPL
|
|
|
|
common/recorder.* LGPL
|
|
|
|
common/tags.* LGPL
|
|
|
|
common/version.c LGPL
|
|
|
|
demux/codec_tags.* LGPL
|
|
|
|
demux/cue.* LGPL
|
|
|
|
demux/demux.* complications (at least Denes' changes)
|
|
|
|
demux/demux_cue.c LGPL
|
|
|
|
demux/demux_disc.c LGPL
|
|
|
|
demux/demux_edl.c LGPL
|
|
|
|
demux/demux_lavf.c hard
|
|
|
|
demux/demux_libarchive.c LGPL
|
|
|
|
demux/demux_mf.c hard
|
|
|
|
demux/demux_mkv.c LGPL (mostly)
|
|
|
|
demux/demux_mkv_timeline.c LGPL
|
|
|
|
demux/demux_null.c LGPL
|
|
|
|
demux/demux_playlist.c LGPL
|
|
|
|
demux/demux_rar.c LGPL
|
|
|
|
demux/demux_raw.c unknown
|
|
|
|
demux/demux_timeline.c LGPL
|
|
|
|
demux/demux_tv.c will stay GPL
|
|
|
|
demux/ebml.* LGPL
|
|
|
|
demux/matroska.h LGPL
|
|
|
|
demux/packet.* LGPL
|
demux/stheader: change license to LGPL
All authors of the current code have agreed.
For most of its life, MPlayer used Microsoft structs like WAVEFORMATEX
to describe media content. It appears these were copied from wine in
61c5a99851e. Copyright is unclear, but mpv completely removed use of
these structs anyway. (demux_mkv.c still contains code to read these
fields from a byte stream, but the struct is fully gone.)
42f97b2b820: cehoyos (who probably didn't agree with LGPL) applied a
patch by someone who agreed. It's unknown whether cehoyos modified the
patch (and thus his copyright would apply), but the changed code was
removed anyway. (The code was first moved somewhere else, then removed.)
efd53eed614: the patch author was not asked. Although the mkv_sh_sub_t
struct was later moved to stheader.h, the added field was removed
without replacement.
f6878753fbd: nick, who could not be reached, added an include guard, but
the guard was changed several times later, and it's probably not
copyrightable anyway.
afb0fd5ea17: the same nick adds a field that was later replaced and
finally removed again in 8cd6b20571.
2017-05-10 11:15:29 +00:00
|
|
|
demux/stheader.h LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
demux/timeline.* LGPL
|
|
|
|
input/cmd_* unknown, probably easy except some commands
|
|
|
|
input/event.* LGPL
|
|
|
|
input/input.* potentially hard
|
|
|
|
input/ipc.c LGPL
|
|
|
|
input/ipc-unix.c LGPL
|
|
|
|
input/ipc-win.c LGPL
|
|
|
|
input/keycodes.* potentially hard
|
|
|
|
input/pipe-win32.c LGPL
|
|
|
|
libmpv/*.* LGPL
|
|
|
|
misc/*.* LGPL
|
|
|
|
options/m_config.* medium
|
|
|
|
options/m_option.* medium
|
|
|
|
options/m_property.* easy
|
|
|
|
options/options.* very hard (lots of options and history)
|
|
|
|
options/parse_commandline.* easy
|
|
|
|
options/parse_configfile.* easy
|
|
|
|
options/path.* medium
|
|
|
|
osdep/android/* LGPL (BSD)
|
|
|
|
osdep/ar/* LGPL (BSD)
|
|
|
|
osdep/atomic.h LGPL
|
2017-05-08 11:11:46 +00:00
|
|
|
osdep/compiler.h LGPL
|
2017-05-08 11:18:17 +00:00
|
|
|
osdep/endian.h LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
osdep/glob-win.c LGPL
|
|
|
|
osdep/io.* LGPL
|
|
|
|
osdep/macosx_application.h unknown
|
|
|
|
osdep/macosx_application.m unknown
|
|
|
|
osdep/macosx_application_objc.h unknown
|
|
|
|
osdep/macosx_compat.h unknown
|
|
|
|
osdep/macosx_events.* unknown
|
|
|
|
osdep/macosx_events_objc.h unknown
|
|
|
|
osdep/macosx_touchbar.* unknown
|
|
|
|
osdep/macosx_versions.h unknown
|
|
|
|
osdep/main-fn-cocoa.c LGPL
|
|
|
|
osdep/main-fn.h LGPL
|
|
|
|
osdep/main-fn-unix.c LGPL
|
|
|
|
osdep/main-fn-win.c LGPL
|
|
|
|
osdep/mpv.exe.manifest easy
|
|
|
|
osdep/mpv.rc easy
|
|
|
|
osdep/path.h unknown
|
|
|
|
osdep/path-macosx.m unknown
|
|
|
|
osdep/path-unix.c unknown
|
|
|
|
osdep/path-win.c unknown
|
|
|
|
osdep/semaphore.h LGPL
|
|
|
|
osdep/semaphore_osx.c LGPL
|
|
|
|
osdep/strnlen.h LGPL
|
|
|
|
osdep/subprocess.* LGPL
|
|
|
|
osdep/subprocess-posix.c LGPL
|
|
|
|
osdep/subprocess-win.c LGPL
|
|
|
|
osdep/terminal.h unknown
|
|
|
|
osdep/terminal-unix.c hard
|
|
|
|
osdep/terminal-win.c medium
|
|
|
|
osdep/threads.* LGPL
|
|
|
|
osdep/timer.c LGPL
|
2017-05-05 10:34:56 +00:00
|
|
|
osdep/timer.h LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
osdep/timer-darwin.c LGPL (MIT)
|
2017-05-05 10:34:56 +00:00
|
|
|
osdep/timer-linux.c LGPL
|
|
|
|
osdep/timer-win2.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
osdep/w32_keyboard.c unknown
|
|
|
|
osdep/w32_keyboard.h unknown
|
|
|
|
osdep/win32-console-wrapper.c LGPL (BSD)
|
|
|
|
osdep/win32/* LGPL (ISC)
|
|
|
|
osdep/windows_utils.* LGPL
|
|
|
|
player/audio.c extremely hard (complex history, libaf ties)
|
|
|
|
player/client.* LGPL (ISC)
|
|
|
|
player/command.c extremely hard (also some GPL-only things)
|
|
|
|
player/command.h hard
|
|
|
|
player/configfiles.c unknown
|
|
|
|
player/core.h extremely hard
|
|
|
|
player/external_files.* hard (murky subreader.c origins)
|
|
|
|
player/lavfi.* LGPL
|
|
|
|
player/loadfile.c extremely hard
|
|
|
|
player/lua/*.* LGPL
|
|
|
|
player/lua.c LGPL
|
|
|
|
player/misc.c LGPL
|
|
|
|
player/osd.c hard
|
|
|
|
player/playloop.c extremely hard
|
|
|
|
player/screenshot.* LGPL
|
|
|
|
player/scripting.* LGPL
|
|
|
|
player/sub.c easy (probably almost no mplayer code)
|
|
|
|
player/video.c extremely hard
|
|
|
|
stream/ai_* will stay GPL (TV code)
|
|
|
|
stream/audio_in.* will stay GPL (TV code)
|
2017-05-11 15:02:43 +00:00
|
|
|
stream/cache.c LGPLv3+
|
2017-05-05 06:38:30 +00:00
|
|
|
stream/cache_file.c LGPL
|
2017-05-11 05:29:01 +00:00
|
|
|
stream/cookies.* LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
stream/dvb* must stay GPL
|
|
|
|
stream/frequencies.* must stay GPL
|
|
|
|
stream/rar.* LGPL
|
|
|
|
stream/stream_avdevice.c unknown
|
|
|
|
stream/stream_bluray.c unknown
|
|
|
|
stream/stream.c very hard
|
|
|
|
stream/stream_cb.c LGPL
|
|
|
|
stream/stream_cdda.c unknown
|
|
|
|
stream/stream_dvb.* must stay GPL
|
|
|
|
stream/stream_dvd.c unknown
|
|
|
|
stream/stream_dvd_common.* unknown
|
|
|
|
stream/stream_dvdnav.c unknown
|
|
|
|
stream/stream_edl.c LGPL
|
2017-05-11 06:07:09 +00:00
|
|
|
stream/stream_file.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
stream/stream.h hard
|
|
|
|
stream/stream_lavf.c hard
|
|
|
|
stream/stream_libarchive.* LGPL
|
|
|
|
stream/stream_memory.c LGPL
|
|
|
|
stream/stream_mf.c unknown
|
2017-05-08 10:45:50 +00:00
|
|
|
stream/stream_null.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
stream/stream_rar.c LGPL
|
2017-05-11 06:12:14 +00:00
|
|
|
stream/stream_smb.c will stay GPLv3
|
2017-05-05 06:38:30 +00:00
|
|
|
stream/stream_tv.c will stay GPL
|
|
|
|
stream/tv* will stay GPL
|
|
|
|
sub/* LGPL
|
|
|
|
ta/* LGPL (ISC)
|
|
|
|
video/decode/d3d.* LGPL
|
|
|
|
video/decode/dec_video.* hard
|
|
|
|
video/decode/hw_cuda.c LGPL
|
|
|
|
video/decode/hw_d3d11va.c LGPL
|
|
|
|
video/decode/hw_dxva2.c LGPL
|
|
|
|
video/decode/hw_videotoolbox.c LGPL
|
|
|
|
video/decode/lavc.h hard
|
|
|
|
video/decode/vd.h hard
|
|
|
|
video/decode/vd_lavc.c very hard
|
|
|
|
video/filter/refqueue.* LGPL
|
vf.c, vf.h: change license to LGPL
Most authors have agreed. Like with vo.c, we don't take module
declarations into consideration (see 0e09533c73dc0).
Notable issues:
115bfb9762: the author has (probably) not agreed. The vf.c changes were
removed with the removal of filter DR, though (see c54fc507da8e).
7b25afd742: the same author adds VOCTRLs for deinterlacing switching at
runtime. Put them under a HAVE_GPL ifdef just to be sure. (It looks like
we could remove the VOCTRLs immediately, as they're needed only for some
compatibility things, but no need to do that yet.)
02b199e5e9: the author had a conditional agreement to LGPL, which
doesn't allow us to change it just yet, but the code added here was
completely removed anyway. (These days, the pts is passed as mp_image
field, and put_image is gone.)
3532cd532e: same author, but code removed with DR removal.
f0626e2f8d: same author, but code was moved to mp_image.c.
e5b4b495c3: agreed to LGPLv3+ only, but the code was removed in
cfa1f9e082 anyway.
086c324692: author was not asked - minor warning fix, but no mpv
includes malloc.h anymore.
e9d0a1d609: author was not asked - removed again in 33b62af947.
c260a1139d: author could not be reached - but this code was removed when
mpv changed the image allocation code to essentially use FFmpeg's
pixdesc.
2017-05-11 12:44:46 +00:00
|
|
|
video/filter/vf.c LGPL
|
|
|
|
video/filter/vf.h LGPL (mostly)
|
2017-05-05 06:38:30 +00:00
|
|
|
video/filter/vf_buffer.c LGPL
|
|
|
|
video/filter/vf_crop.c will be deleted
|
|
|
|
video/filter/vf_d3d11vpp.c LGPL
|
|
|
|
video/filter/vf_dlopen.* LGPL
|
|
|
|
video/filter/vf_dsize.c will be deleted
|
|
|
|
video/filter/vf_eq.c will be deleted
|
|
|
|
video/filter/vf_expand.c will be deleted
|
|
|
|
video/filter/vf_flip.c will be deleted
|
|
|
|
video/filter/vf_format.c will be deleted
|
|
|
|
video/filter/vf_gradfun.c will be deleted
|
|
|
|
video/filter/vf_lavfi.* LGPL
|
|
|
|
video/filter/vf_mirror.c will be deleted
|
|
|
|
video/filter/vf_noformat.c will be deleted
|
|
|
|
video/filter/vf_pullup.c will be deleted
|
|
|
|
video/filter/vf_rotate.c will be deleted
|
|
|
|
video/filter/vf_scale.c will be deleted
|
|
|
|
video/filter/vf_stereo3d.c will be deleted
|
|
|
|
video/filter/vf_sub.c will be deleted
|
|
|
|
video/filter/vf_vapoursynth.c LGPL
|
|
|
|
video/filter/vf_vavpp.c LGPL
|
|
|
|
video/filter/vf_vdpaupp.c LGPL
|
|
|
|
video/filter/vf_yadif.c will be deleted
|
|
|
|
video/csputils.* LGPL
|
|
|
|
video/fmt-conversion.* must be killed (author disagreed to LGPL)
|
|
|
|
video/gpu_memcpy.* will be deleted
|
|
|
|
video/hwdec.* LGPL
|
|
|
|
video/image_writer.* unknown
|
|
|
|
video/img_format.* hard
|
|
|
|
video/img_fourcc.h hard
|
|
|
|
video/mp_image.* hard (if even possible)
|
|
|
|
video/mp_image_pool.* LGPL
|
|
|
|
video/out/aspect.* hard
|
|
|
|
video/out/bitmap_packer.* LGPL
|
|
|
|
video/out/cocoa* unknown
|
|
|
|
video/out/d3d_shader_420p.h LGPL
|
|
|
|
video/out/d3d_shader_nv12.h LGPL
|
|
|
|
video/out/d3d_shader_yuv.hlsl LGPL
|
|
|
|
video/out/dither.* LGPL
|
|
|
|
video/out/drm_common.* LGPL
|
|
|
|
video/out/filter_kernels.* LGPL (BSD)
|
af_format: change license to LGPL
This case is a bit weird, because MPlayer certainly also has a file
named af_format.c. Both appear to have the function of converting audio
data between sample formats.
However, mpv's af_format.c is a rewrite, and doesn't actually do
conversion by itself. It's similar to vf_format.c, and forces the
generic filter chain code to insert conversion filters, instead of doing
conversion explicitly.
mpv's current af_format.c started out as af_force.c in d9582ad0a41. It
was renamed to af_format.c in e60b8f181d, while the old af_format.c was
split into two new filters. In 943c785619 the filename was changed to
af_format.c as well.
The new af_format.c does not contain any libaf code, except for some
potentially copy & pasted skeleton and boilerplate code. (We don't
account for this in per-filter file licenses, as the old libaf code
has to be removed fully, at which point the filters will have to be
ported to another framework, which will removed that boilerplate code.)
The old filters based on af_format.c were progressively replaced and
removed. Support for non-native endian and formats with signedness
different from native FFmpeg was completely removed in 831d7c3c400b.
The old 24 bit conversion code was removed in 552dc0d564 (made
unnecessary by 5a9f817bfde8).
Also list hwdec_vaglx.c as GPL-only, which doesn't have anything to do
with this commit.
2017-05-11 09:00:15 +00:00
|
|
|
video/out/opengl/hwdec_vaglx.c GPL
|
2017-05-05 06:38:30 +00:00
|
|
|
video/out/opengl/* LGPL
|
vo.c, vo.h, vo_null.c: change license to LGPL
Most contributors have agreed. vo.c requires a "driver" entry for each
video output - we assume that if someone who didn't agree to LGPL added
a line, it's fine for vo.c to be LGPL anyway. If the affected video
output is not disabled at compilation time, the resulting binary will be
GPL anyway.
One problem are the changes by Nick Kurshev (usually using "nick" as SVN
username). He could not be reached. I believe all changes to his files
are actually gone, but here is a detailed listing:
fa1d5742bc: nick introduces a new VO API. It was removed in 64bedd9683.
Some of this was replaced by VOCTRLs are introduced in 7c51652a1b,
obviously replacing at least some functionality by his API.
b587a3d642: nick adds a vo_tune_info_t struct. Removed in 64bedd9683
too.
9caad2c29a: nick adds some VOCTRLs, which were silently removed in
8cc5ba5ab8 (they became unused probably with the VIDIX removal).
340183b0e9: nick adds VO-based screenshots, which got removed in
2f4b840f62. Strangely the same name was introduced in 01cf896a2f again,
but this is a coincidence and worked differently (also it was removed
yet again in 2858232220).
104c125e6d: nick adds an option for "direct rendering". It was renamed
in 6403904ae9 and fully removed in e48b21dd87.
5ddd8e92a1: nick adds code to check the VO driver preinit arg to every
single VO driver. The argument itself and any possibly remaining code
associated with it was removed in 1f5ffe7d30.
f6878753fb: nick adds header inclusion guards. We assume this is not
relevant for copyright.
Some of nick's code was merely moved to other files, such as the
equalizer stuff added in 555c676683 and moved in 4db72f6a80 and
12579136ff, and don't affect copyright of these files anymore.
Other notes:
fef7b17c34: a patch by someone who wasn't asked for relicensing added a
symbol that was removed again in 1b09f4633.
4a8a46fafd: author probably didn't agree to LGPL, but the function
signature was changed later on anyway, and nothing of this is left.
7b25afd742: the same author adds a symbol to what is vo.h today, which
this relicensing commit removes, as it was unused. (It's not clear
whether the mere symbol is copyrightable, but no need to take a risk.)
3a406e94d7, 9dd8f241ac: slave mode things by someone who couldn't be
reached. This aspect of the old slave mode was completely removed.
bbeb54d80a: patch by someone who was not asked, but the added code was
completely removed again.
2017-05-10 12:32:34 +00:00
|
|
|
video/out/vo.c LGPL
|
|
|
|
video/out/vo.h LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
video/out/vo_caca.c unknown
|
|
|
|
video/out/vo_direct3d.c unknown
|
|
|
|
video/out/vo_drm.c LGPL
|
|
|
|
video/out/vo_image.c unknown
|
|
|
|
video/out/vo_lavc.c unknown
|
vo.c, vo.h, vo_null.c: change license to LGPL
Most contributors have agreed. vo.c requires a "driver" entry for each
video output - we assume that if someone who didn't agree to LGPL added
a line, it's fine for vo.c to be LGPL anyway. If the affected video
output is not disabled at compilation time, the resulting binary will be
GPL anyway.
One problem are the changes by Nick Kurshev (usually using "nick" as SVN
username). He could not be reached. I believe all changes to his files
are actually gone, but here is a detailed listing:
fa1d5742bc: nick introduces a new VO API. It was removed in 64bedd9683.
Some of this was replaced by VOCTRLs are introduced in 7c51652a1b,
obviously replacing at least some functionality by his API.
b587a3d642: nick adds a vo_tune_info_t struct. Removed in 64bedd9683
too.
9caad2c29a: nick adds some VOCTRLs, which were silently removed in
8cc5ba5ab8 (they became unused probably with the VIDIX removal).
340183b0e9: nick adds VO-based screenshots, which got removed in
2f4b840f62. Strangely the same name was introduced in 01cf896a2f again,
but this is a coincidence and worked differently (also it was removed
yet again in 2858232220).
104c125e6d: nick adds an option for "direct rendering". It was renamed
in 6403904ae9 and fully removed in e48b21dd87.
5ddd8e92a1: nick adds code to check the VO driver preinit arg to every
single VO driver. The argument itself and any possibly remaining code
associated with it was removed in 1f5ffe7d30.
f6878753fb: nick adds header inclusion guards. We assume this is not
relevant for copyright.
Some of nick's code was merely moved to other files, such as the
equalizer stuff added in 555c676683 and moved in 4db72f6a80 and
12579136ff, and don't affect copyright of these files anymore.
Other notes:
fef7b17c34: a patch by someone who wasn't asked for relicensing added a
symbol that was removed again in 1b09f4633.
4a8a46fafd: author probably didn't agree to LGPL, but the function
signature was changed later on anyway, and nothing of this is left.
7b25afd742: the same author adds a symbol to what is vo.h today, which
this relicensing commit removes, as it was unused. (It's not clear
whether the mere symbol is copyrightable, but no need to take a risk.)
3a406e94d7, 9dd8f241ac: slave mode things by someone who couldn't be
reached. This aspect of the old slave mode was completely removed.
bbeb54d80a: patch by someone who was not asked, but the added code was
completely removed again.
2017-05-10 12:32:34 +00:00
|
|
|
video/out/vo_null.c LGPL
|
2017-05-05 06:38:30 +00:00
|
|
|
video/out/vo_opengl.c LGPL
|
|
|
|
video/out/vo_opengl_cb.c LGPL
|
|
|
|
video/out/vo_rpi.c LGPL
|
|
|
|
video/out/vo_sdl.c LGPL
|
|
|
|
video/out/vo_tct.c LGPL
|
|
|
|
video/out/vo_vaapi.c probably impossible (some company's code)
|
|
|
|
video/out/vo_vdpau.c probably impossible (nVidia's code)
|
|
|
|
video/out/vo_wayland.c LGPL
|
|
|
|
video/out/vo_x11.c probably impossible
|
|
|
|
video/out/vo_xv.c probably impossible
|
|
|
|
video/out/w32_common.* medium
|
|
|
|
video/out/wayland* LGPL
|
|
|
|
video/out/win32/* LGPL
|
|
|
|
video/out/win_state.* unknown
|
|
|
|
video/out/x11_common.* probably impossible
|
|
|
|
video/out/x11_icon.bin must stay GPL
|
|
|
|
video/sws_utils.* LGPL
|
|
|
|
video/vaapi.* hard (GPL-only parts must be ifdefed)
|
|
|
|
video/vdpau.c hard (GPL-only parts must be ifdefed)
|
|
|
|
video/vdpau_functions.inc LGPL
|
|
|
|
video/vdpau.h unknown
|
|
|
|
video/vdpau_mixer.* actual code must be rewritten
|
|
|
|
video/vt.* LGPL
|