0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 03:52:22 +02:00
mpv/sub
wm4 6b1374b203 sd_ass: change license to LGPL
All contributors of the code used for sd_ass.c agreed to the LGPL
relicensing. Some code has a very chaotic history, due to MPlayer
subtitle handling being awful, chaotic, and having been refactored a
dozen of times. Most of the subtitle code was actually rewritten from
scratch (a few times), and the initial sd_ass.c was pretty tiny. So we
should be fine, but it's still a good idea to look at this closely.
Potentially problematic cases of old code leaking into sd_ass.c are
mentioned below.

Some code originates from demux_mkv. Most of this was added by eugeni,
and later moved into mplayer.c or mpcommon.c. The old demux_mkv ASS/SSA
subtitle code is somewhat dangerous from a legal perspective, because it
involves 2 patches by a certain Tristan/z80, who disagreed with LGPL,
and who told us to "rewrite" parts we need. These patches were for
converting the ASS packet data to the old MPlayer text subtitle data
structures. None of that survived in the current code base.

Moving the subtitle handling out of demux_mkv happened in the following
commits: bdb6a07d2a, de73d4dd97, 61e4a80191. The code by
z80 was removed in b44202b69f.

At this time, the z80 code was located in mplayer.c and subreader.c.
The code was fully removed, being unnecessary due to the entire old
subtitle rendering code being removed. This adds a ass_to_plaintext(),
function, which replaces the old ASS tag stripping code in
sub_add_text(), which was based on the z80 code. The new function was
intended to strip ASS tags in a correct way, instead of somehow
dealing with other subtitle types (like HTML-style SRT tags), so it
was written from scratch.

Another potential issue is the --sub-fix-timing option is based on
-overlapsub added in d459e64463. But the implementation is new, and
no code from that commit is used in sd_ass.c. The new implementation
started out in 64b1374a44. (The following commit, bd45eb468c
removes the original code that was replaced.) The code was later
moved into sd_ass.c.

The --sub-fps option has a similar history.
2017-04-20 12:53:24 +02:00
..
ass_mp.c ass_mp: change license to LGPL 2017-04-20 12:53:09 +02:00
ass_mp.h ass_mp: change license to LGPL 2017-04-20 12:53:09 +02:00
dec_sub.c player: add experimental stream recording feature 2017-02-07 17:05:17 +01:00
dec_sub.h player: add experimental stream recording feature 2017-02-07 17:05:17 +01:00
draw_bmp.c mp_image: split colorimetry metadata into its own struct 2016-07-03 19:42:52 +02:00
draw_bmp.h csputils: get rid of mp_csp_details 2015-01-06 16:50:58 +01:00
filter_sdh.c filter_sdh: remove pointless set_pos function 2017-04-20 08:22:46 +02:00
img_convert.c sub: move RGBA scaling to vo_vaapi 2016-07-03 19:32:43 +02:00
img_convert.h sub: move RGBA scaling to vo_vaapi 2016-07-03 19:32:43 +02:00
lavc_conv.c lavc_conv: pass pkt_timebase to ffmpeg 2017-02-18 12:53:11 +01:00
osd_dummy.c command: shorten long playlists on OSD 2017-01-26 18:24:53 +01:00
osd_font.otf sub/osd_font.otf: fix fontforge errors/warnings 2017-04-19 20:18:24 +01:00
osd_libass.c command: shorten long playlists on OSD 2017-01-26 18:24:53 +01:00
osd_state.h osd: move some internal declarations to internal headers 2017-01-26 16:34:31 +01:00
osd.c sub: add justify of subtitles 2017-02-01 16:42:58 +01:00
osd.h sub: add justify of subtitles 2017-02-01 16:42:58 +01:00
sd_ass.c sd_ass: change license to LGPL 2017-04-20 12:53:24 +02:00
sd_lavc.c sub: add option to force using video resolution for image subtitles 2017-01-23 15:55:09 +01:00
sd.h sub: add SDH subtitle filter 2017-03-25 15:04:05 +01:00