summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* demux_raw: change license to LGPLwm42017-06-242-9/+8
| | | | | | | | | | | | | | | All relevant authors have agreed. I'm removing the NV12 FourCC, which was added in f910f3d9 by someone who was not contacted for the relicensing. I doubt the remaining code is copyrightable (basically all what remains the fact is that NV12 uses the same amount of space like YV12), but in this case I feel more comfortable removing it. Might contain some trace amounts of "michael"'s copyright, who agrees with LGPL only once the core is relicensed - but with the core already mostly relicensed, I'm changing the license header to LGPL, and only marking this in the "Copyright" file.
* demux_mf, stream_mf: change license to LGPLwm42017-06-243-17/+23
| | | | | | | | | | | | | | | | | | | cehoyos, who did not agree to the relicensing, added bcb5c78ce3. If there was copyright, we consider it gone, because the table changed. It does not map file extension to a FourCC anymore, and codecs.conf is gone. The new mapping is a libavcodec codec name (happens to be the same as the file extension). The same applies to commits 60ecafec, b749836b, 5b3e3be1. None of these authors were contacted. These were before the code was replaced with a table (in d0326807). The parts outside of demux_mf.c were removed a long time ago. Like in the previous comment, we don't think any copyright applies at least to the new code (at least after the FourCC removal). iive authored 0aa37a0d, which is probably still left in some form, and makes demux_mf.c "LGPL 3 or later". stream_avdevice.c (unrelated) has been marked as LGPL before.
* w32_common, w32_keyboard: change license to LGPLwm42017-06-245-31/+31
| | | | All authors agreed.
* chmap: remove misleading "downmix" channel layout namewm42017-06-241-1/+0
| | | | | | | | I'm not even sure when/if FFmpeg produces those. It's just confusing. If you really need this, you can still use dl-dr. I expect that most use is unintentional. Probably fixes #4545.
* Revert "parse_commandline: fail gracefully on bad args"wm42017-06-242-6/+3
| | | | | | This reverts commit 38b05daf7d16898f4a63e4ccf48479d8964e6e19. There was actually no LGPL relicensing agreement with wd0.
* TOOLS: change license of some scripts involved in build to LGPLwm42017-06-243-10/+43
| | | | | wscript calls them directly, and thus are probably part of the build system. They seem to be fully covered by relicensing agreements.
* vo_opengl: bump up SHADER_MAX_HOOKSNiklas Haas2017-06-241-1/+1
| | | | | Apparently people are running into the current limit. 64 ought to be enough for everybody.
* ao_pulse: reorder format choiceNiklas Haas2017-06-231-2/+2
| | | | | | | | | | | | Right now, the current order pretty much means that pulse defaults to S16 for arbitrary unsupported formats, but fallback to float would make more sense since it's the easiest to convert everything to without requiring dithering, and PA will probably just internally convert things to float anyway. Also move S32 above S16, which essentially means format_maps is sorted by preference. (Although ao_pulse currently ignores this and always picks the first as a fallback)
* options: unbreak -vwm42017-06-231-1/+1
| | | | Sigh... broken with the --really-quiet commit. I hate -v.
* options: simplify and rename m_option_type_storewm42017-06-233-50/+27
| | | | | | | | | | This was an annoying option type. And still is. But at least it's on the same level as m_option_type_print_fn now, and can probably cleaned up further like it. Both types are for options that are only on the command line, always have special handling (i.e. do something with them in parse_commandline.c before passing them to the generic m_config.c/m_option.c layers), and are m_options only for --list-options and (oddly) the split_opt_silent() function.
* options: remove weird --really-quiet special behaviorwm42017-06-234-3/+8
| | | | | | | | | This was especially grating because it causes problems with the option/property unification, uses as only thing OPT_FLAG_STORE, and behaves weird with the client API or scripts. It can be reimplemented in a much simpler way, although it needs slightly more code. (Simpler because less special cases.)
* options: unbreak -hwm42017-06-233-4/+9
| | | | Sure is a simple thing to break.
* demux_mkv: fix broken initializerwm42017-06-231-1/+1
| | | | | Who says that the first member is an array or whatever? It depends on whatever the matroska.py script generates.
* demux_mkv: Fix warnings.Rudolf Polzer2017-06-231-40/+43
| | | | | | | | | | | - Fix a signed/unsigned comparison involving info.segment_uid.len (doesn't actually warn here, but seems fragile). Code was previously safe though. - Match up all printf format strings with the respective value types, using the *int*_t printf specifiers where necessary, and fixing multiple signed/unsigned differences. Removed some casts that otherwise may have truncated values. - Fix a warning when initializing ebml_info.
* player: change license of most core files to LGPLwm42017-06-2313-95/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These files have all in common that they were fully or mostly taken from mplayer.c. (mplayer.c was a huge file that contains almost all of the playback core, until it was split into multiple parts.) This was probably the hardest part to relicense, because so much code was moved around all the time. player/audio.c still does not compile. We'll have to redo audio filtering. Once that is done, we can probably actually provide an actual LGPL configure switch. Here is a relatively detailed list of potential issues: 8d190244: author did not reply, parts were made GPL-only in a previous commit. 7882ea9b: author could not be reached, but the code is gone. wscript still has --datadir switch, but I don't think this is relevant to copyright. f197efd5: unclear origin, but I consider the code gone anyway (replaced with generic OSD mechanisms). 8337d9c2: author did not reply, but only the option still exists (under a different name), other code was removed. d8fd7131: did not reply. Disabled in a previous commit. 05258251: same author as above. Both fields actually seem to have vanished (even when tracking renames), so no action taken. d459e644, 268b2c1a: author did not reply, but we reuse only the options (with different names and slightly or fully different semantics, and completely different implementations), so I don't think this is relevant for copyright. 09e742fe, 17c39c4e: same as above. e8a173de, bff4b3ee: author could not be reached. The commands were reworked to properties, and the code outside of the TV code were moved back to the TV code. So I don't think copyright applies to the current command.c parts (mp_property_tv_color, mp_property_tv_freq, mp_property_tv_scan). The TV parts remain GPL. 0810e427: could not be reached. Disabled in a previous commit. 43744a2d: unknown author, but this was replaced by dynamic alloc (if the change is even copyrightable). 116ca0c7: unknown author; reasoning see input.c relicensing commit. e7e4d1d8: these semantics still exist, but as generic code, and this code was fully removed. f1175cd9: the author of the cited patch is unknown, and upon inspection it turns out that I was only using the idea to pause the player on EOF, so I claim it's not copyright relevant. 25affdcc: author could not be reached (yet) - but it's only a function rename, not copyrightable. 5728504c was committed by Arpi (who agreed), but hints that it might be by a different author. In fact it seems to be mostly this patch: http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2001-November/002041.html The author did not respond, but it all seems to have been removed later. It's a terrible mess though. Arpi reverted the A-V sync code at first, but left the RTC code for a while. The following commits remove these changes 100%: 14b35442, 7181a091, 31482783, 614f8475, df58e822. cehoyos did explicitly not agree to LGPL, but was involved in the following changes: c99d8fc8: applied a patch and didn't modify it, the original author agreed. 40ac0d31: author could not be reached, but all code is gone anyway. The "af" command has a similar function, but works completely different and actually reuses a mechanism older than this patch. 54350436: applied a patch, but didn't modify it, except for adding a German translation, which was removed later. a2dda036: same situation as above 240b743e: this was made GPL-only in a previous commit 7b25afd7: same as above (for now) kirijua could not be reached, but was a regular patch contributor: c2c997fd: video equalizer code move; probably not copyrightable. Is GPL due to Nick anyway. be54f481: technically, this became the audio track property later. But all what is left is the fact that you pass a track ID to it, so consider the original coypright non-relevant. 2f376d1b: this was rewritten in b7052b43, but for now we can afford to be careful, so this was marked as GPL only in a previous commit. 43844d09: remaining parts in main.c were reverted in a previous commit. anders has mostly disagreed with the LGPL relicensing. Does not want libaf to become LGPL, but made some concessions. In particular, he granted us permission to relicense 4943e9c52c and 242aa6ebd4. We also consider some of his changes remaining in mpv not relevant for copyright (such as 735de602 - we won't remove the this option completely). We will completely remove his other contributions, including the entire audio filter chain. For now, this stuff is marked as GPL only. The remaining question is how much code in player/audio.c (based on the former mplayer.c and dec_audio.c) is under his copyright. I made claims about this in a previous commit. Nick(ols) Kurshev, svn username "nick" and "nickols_k", could not be reached. He had a lot of changes in early MPlayer. It seems all of that was removed, at least in mpv. His main work, like VIDIX or libswscale work, does not exist in mpv anymore, but the changes to mplayer.c and other core parts still deserve attention: a4119f6b, fb927549, ad3529b8, e11b23dc, 5f2178be, 93c371d5: removed in b43d67e0, d1628d12, 24ed01fe, df58e822. 0a83c6ec, 104c125e, 4e067f62, aec5dcc8, b587a3d6, f3de6e6b: DR, VAA, and "tune" stuff was fully removed later on or replaced with other mechanisms. 340183b0: screenshots were redone later (the VOCTRL was even removed, with an independent implementation using the same VOCTRL a few years later), so not relevant anymore. Basically only the 's' shortcut remains (but not its implementation). 92c5c274, bffd4007, 555c6766: for now marked as GPL only in a previous commit. Might contain some trace amounts of "michael"'s copyright, who agreed to LGPL only once the core is relicensed. This will still be respected, but I don't think it matters at this in this case. (Some code touched by him was merged into mplayer.c, and then disappeared after heavy refactoring.) I tried to be as careful and as complete as possible. It can't be excluded that amends to this will be made later. This does not make the player LGPL yet.
* player/audio: mark some libaf interfacing parts as GPL onlywm42017-06-231-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | "anders" has not agreed to relicense most of his changes (although he gave permission for 4943e9c52c and 242aa6ebd4). Note that commit 3053a8b7f is in part also affected. The commit message hides this, but it seems some code was based on anders': http://mplayerhq.hu/pipermail/mplayer-dev-eng/2002-October/011773.html Much of the final commit was by Arpi, but it's still grating that there was no proper attribution (and in a case that turned out to be so important). This means player/audio.c won't even compile (and other parts of the player also use audio/audio.h, which is still GPL). But whether the end result compiles doesn't matter for copyright. Due to the heavy refactoring applied over the year, the boundaries are rather fuzzy and also somewhat arbitrary, though. Most of this code will have to be replaced with a new filter chain later.
* command: add git hashes for some GPL-only partswm42017-06-231-0/+2
| | | | For context.
* player: revert multiple help outputwm42017-06-231-9/+8
| | | | | | | I think the idea is that you can pass multiple help options on the command line, and it will print them all, instead of printing only the first one and exiting. This was added in commit 43844d09, but the patch author could not be reached. Revert it, as it's not a critical feature.
* player: disable dumping configutation in LGPL modewm42017-06-231-0/+3
| | | | | | This was added in 0810e4275. The patch author did not reply (yet). Not sure if copyrightable, but I'm making the still existing C part GPL-only for now (in a previous commit).
* player: disable --frames in WIP LGPL modewm42017-06-232-0/+9
| | | | | | | Commit d8fd7131 changes this. "tibcu" did not reply. While I'm not sure whether copyrightable code remains, I'd tend towards saying yes (the basic idea is still intact after years of refactoring), so make it GPL-only for now.
* player: disable video equalizer frontend code for WIP LGPL modewm42017-06-233-0/+10
| | | | | | | | | | Nick and kiriuja could not be reached, and created/changed this in 92c5c274, 6441a5ad, bffd4007, 555c6766, c2c997fd. The video equalizer stuff was redone fully later, but there are still parts that look too similar and basically use the same approach. I'm more comfortable with declaring it GPL only for now. I plan to redo them later in a way that will remove copyright.
* options: disable --field-dominance for WIP LGPL mode, also deprecatewm42017-06-232-1/+5
| | | | | | | | | | | | cehoyos, who did not agree to the LGPL relicensing, added this in commit 240b743e. The actual implementation of it is already guarded with HAVE_GPL. The field_dominance field in the option struct won't be guarded. We won't keep GPL-only core code forever, so deprecate it as well. To apply forced deinterlacing, a libavfilter filter can probably be removed, or we merge this functionality into the --deinterlace option (without using copyrighted stuff).
* player: disable deinterlace property for WIP LGPL modewm42017-06-232-0/+11
| | | | | | cehoyos has not agreed to the LGPL relicensing. He added the deinterlace property in commit 7b25afd7. Make it GPL-only for now. The still working parts of the --deinterlace option are not affected by his copyright.
* player: disable --priority for WIP LGPL modewm42017-06-232-2/+2
| | | | | Due to commit 14ecebe9: author could not be reached. I don't think anything copyrightable is left, but to be sure make it GPL-only.
* player: deprecate "osd" commandwm42017-06-235-1/+12
| | | | | | | | | | | It was extended by "seru" in 8d190244. This person could not be reached (or does not reply), and it's in the way of LGPL relicensing. Deprecate it, and mark the (probably) affected parts of the code with HAVE_GPL. To be fair, even though the osd.c parts were refactored from the original code, there's probably no copyright by seru on it. But for now play it save. The mere existence of a 3rd OSD level is certainly not copyrightable, so you still can set osd-level to 3 - just that it does nothing.
* stream: move cache option declarations to cache.cwm42017-06-232-28/+28
| | | | | | | | If they are copyrightable, iive's changes (commits listed in cache.c) would make them LGPL 3+. To avoid that options.c becoming LGPL 3, move the option declarations to cache.c. struct mp_cache_opts is still in options.h, but we consider that irrelevant, and options.h will become LGPL 2.1+ later.
* demux_mkv: Fix "max_cll" warning.Rudolf Polzer2017-06-221-1/+2
| | | | | | On some platforms, unsigned long and uint64_t aren't the same type, after all. As this is just a MP_VERBOSE message, risking truncation in some cases seems OK.
* Revert "m_option: make geometry code GPL-only"wm42017-06-221-32/+0
| | | | | | | | | | | | | | | | | | This reverts commit e30fe38a212d52bca4693941a7cfa9e44b675a66. The original author as well as the author from d568eaa2 agreed to LGPL now. The only one missing is 0842caf6 (Henk could not be reached, and that will probably stay this way). When I discussed this with someone else who knows a lot about copyright (j-b), the conclusion was that the rewrite was actually enough to remove all past copyright. Only the syntax and the option name remained the same, but code, code structure, and architecture all changed radically. So I'm content with dropping the GPL part. (m_option.c is still formally GPL due to the special agreement with michael, but once this is fullfilled, we will change the license to LGPL without further checks.)
* build: reduce GLX test fragmentwm42017-06-221-4/+0
| | | | | While it doesn't matter for anything, we don't really need to check for GL symbols (neither headers nor for linking).
* Copyright: small updateswm42017-06-221-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The I binding was removed from input.conf (although it's probably not copyrightable, but still). bootstrap.py has a bunch of authors which probably make the licensing situation a pain - but it's not integral part of the build system or the source code, so it doesn't matter for a LGPL core. I checked and cleaned up the build system in the last few commits. There was the possibility that parts of it were based on actual code of the old "configure" file, in particular with the waftools/fragments/ files (it turned out some were, some even not covered by LGPL agreements). This was checked, so I'm confident only the commit mentioned in the Copyright file holds back proper LGPL licensing of it. (And I guess I have to wait for a reply.) I checked the English translations. There used to be help_mp-en.h (or help_mp.h earlier), which was part of the source code, and which contained most terminal and GUI messages. This was done for the purpose of localization, but all localizations were dropped at one point in mplayer2 development. At this point, the message defines were moved back to the source code. (While in the years before that, they were moved from the source code to the file where applicable.) I didn't check help_mp-en.h when it was merged back. There was the possibility that someone might have changed one of the English messages (i.e. added his copyright to it), which then was copied back to the source code, without accounting for that copyright. Upon checking the history now, it seems this didn't happen for any code that we want to relicense to LGPL (in fact, it happened to some messages in the DVD code only).
* build: remove Linux DVB test fragmentwm42017-06-222-13/+1
| | | | | | | | | | | | Most of the DVB test fragment was added in 2e399f39 by someone who wasn't asked for LGPL relicensing permission. Thus remove it. (For some weird reason, the configure check wasn't even for the later added actual DVB code.) Since DVB is disabled by default, this isn't too bad. But if someone enables it, and the system doesn't support it, he will receive a weird compilation error. That has to be good enough, until maybe someone adds a new check.
* build: remove unused pvr.c test fragmentwm42017-06-221-7/+0
|
* Revert "osdep: NetBSD pthread_setname_np()"wm42017-06-222-14/+1
| | | | | | | | | | This reverts commit 2e81698d2809836d4cd7f754a78598e7bdf96c0b. Seems like this was a patch applied from someone who can't agree to LGPL relicensing (see previous commit), with the author field not properly set. This is not so important anyway, so just revert it.
* build: simplify OSS checks and remove changes by "bugmen0t"wm42017-06-226-88/+7
| | | | | | | | | | | | | | | | | | The user bugmen0t was apparently a shared github account with publicly available login. Thus, we can't get LGPL relicensing permission from the people who used this account. To relicense successfully, we have to remove all their changes. This commit should remove 20d1fc13, f26fb009, defbe48d. It also should remove whatever test fragments were copied from the ancient configure, as well as some configure logic (potentially that device path stuff). I think this change still preserves the most important use-cases of OSS: BSDs, and the Linux OSS emulation (the latter for testing only). According to an OSS user, the 4front checks were probably broken anyway. The SunAudio stuff was probably for (Open)Solaris, which is dead. ao_oss.c itself will remain GPL, and still contains bugmen0t changes.
* etc/encoding-profiles: use correct formats for noformatRicardo Constantino2017-06-211-1/+1
| | | | These alias were removed in 937dcc25a.
* README: missing correction from previous commitRicardo Constantino2017-06-211-2/+6
| | | | | Also add links pointing to wiki and issue tracker feature requests for new contributions.
* README: more grammar and spelling correctionsRicardo Constantino2017-06-211-14/+17
| | | | Most of them pointed out and corrected by uau.
* manpage: Remove documentation to use 'I' to show filename on the OSDLeo Izen2017-06-211-3/+0
| | | | | | A relic of mplayer had 'I' as the keybind to show the filename of the currently playing file on the OSD. mpv does not do this by default. This commit removes this incorrect information from the mpv manage.
* m_option: make geometry code GPL-onlywm42017-06-211-0/+32
| | | | | | | | | | | In commit eb22569ff082b, I claimed that the geometry parsing code was rewritten. But I'm not sure if it's rewritten enough, or if copyright claims could still be made. Given that the original code was self-contained, and could be considered a separate work, it's probably safer (and more up to the standards applied to this relicensing) to leave this as GPL code. The rewrite/code move can be seen with: git diff f2dcdca...ccaed5e
* demux_tv.c: add missing copyright headerwm42017-06-211-0/+22
| | | | | The file consists of stream/tv.c contents. Use the copyright header of that file.
* Copyright: fix typowm42017-06-211-1/+1
|
* man/options: correct --{sub,osd}-font examplesRicardo Constantino2017-06-211-2/+2
| | | | Comic Sans is a good font that did nothing wrong.
* input/keycodes: change license to LGPLwm42017-06-203-17/+15
| | | | | All relevant authors have agreed. See 2e84934be7 (the mentioned person has replied and agreed now).
* README.md: spelling correctionsadeshkp2017-06-201-2/+2
|
* audio/format: change license to LGPLwm42017-06-203-24/+15
| | | | | | | | | | | | | | | | | | | | | | | | | Although the origins lie somewhere in libaf, which was written by "anders" and who explicitly disagreed with the LGPL relicensing, we can change the license of these files, because all code was written by "alex", who agreed with the relicensing. The only things that remain from anders' code is the AF_FORMAT_ and af_ prefixes (see e.g. 66f4e563). It was alex who redid this file and added the format identifiers we have today (507121f7). It's also nice to see that alex actually claimed copyright on format.c (221a599f). In commit efb50cab even the bitmask concept (which anders introduced with his early af_format.c code) was removed, and essentially all lines and symbols by anders were dropped. To put it into perspective: the original af_format code was for converting actual sample data and relied on OSS sample format identifiers, mpv's format.c/h provides its own sample formats, but does not do any data conversion. Remove an now inaccurate comment from format.c (it somehow even survived the typo that was present in the original commit). Also remove most of the format.c include statements - most of them are technically anders' code. We keep limits.h though.
* demux: change license to LGPLwm42017-06-203-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | As usual, the history of these files is a bit murky. It starts with the initial commit. (At which some development had already been done, according to the AUTHORS and ChangeLog files at the time, we should be but covered with relicensing agreements, though.) then it goes on with complete lack of modularization, which was cleaned up later (cd68e161). As usual, we don't consider the copyright of the stuff that has been moved out cleanly. There were also contributions to generic code by people who could not be reached or who did not agree to the relicensing, but this was all removed. The only patches that we could not relicense and which were still in the current code in some form are from Dénes Balatoni: 422b0d2a, 32937181. We could not reach him, so commits f34e1a0d and 18905298 remove his additions. It still leaves the demux_control() declaration itself, but we don't consider it copyrightable. It's basically an idiom that existed in MPlayer before that change, applied to the demuxer struct. (We even went as far as making sure to remove all DEMUXER_CTRLs the original author added.) Commit be54f481 might be a bit of a corner case, but this was rewritten, and we consider the old copyright removed long ago.
* demux: get rid of DEMUXER_CTRL_GET_TIME_LENGTHwm42017-06-2012-155/+52
| | | | | | | | | | | | Similar purpose as f34e1a0deea45e. Somehow this is much more natural too, and needs less code. This breaks runtime updates to duration. This could easily be fixed, but no important demuxer does this anyway. Onl