From 44d8ec9272ad265aae02b064a0c5f4a80db5a107 Mon Sep 17 00:00:00 2001 From: Uoti Urpala Date: Thu, 16 Aug 2012 18:21:21 +0300 Subject: sd_lavc: use subtitle framework for former av_sub.c code Change libavcodec subtitle decoding code (used for some bitmap subtitle types) to use the same decoding framework as sd_ass. The functionality that was previously in av_sub.c and was directly called from mplayer.c is now in sd_lavc.c. Conflicts: mplayer.c sub/av_sub.h sub/sd_lavc.c Merged from mplayer2. The remaining use of is_av_sub() is replaced by a check whether a subtitle decoder is active, which should give the same results. --- sub/dec_sub.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sub/dec_sub.c') diff --git a/sub/dec_sub.c b/sub/dec_sub.c index 6a6d1d77e5..7528e90e58 100644 --- a/sub/dec_sub.c +++ b/sub/dec_sub.c @@ -27,6 +27,7 @@ #include "options.h" extern const struct sd_functions sd_ass; +extern const struct sd_functions sd_lavc; void sub_init(struct sh_sub *sh, struct osd_state *osd) { @@ -36,8 +37,11 @@ void sub_init(struct sh_sub *sh, struct osd_state *osd) if (opts->ass_enabled && is_text_sub(sh->type)) sh->sd_driver = &sd_ass; #endif + if (strchr("bpx", sh->type)) + sh->sd_driver = &sd_lavc; if (sh->sd_driver) { - sh->sd_driver->init(sh, osd); + if (sh->sd_driver->init(sh, osd) < 0) + return; sh->initialized = true; sh->active = true; } -- cgit v1.2.3