summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjstebbins <[email protected]>2015-02-24 21:40:24 +0000
committerjstebbins <[email protected]>2015-02-24 21:40:24 +0000
commit7e6a28f65c7670a9928fd2b8e72aa247d900db28 (patch)
tree259a3618d1b98147a1e572ec71df1410b7702b25
parent0b3c9ac8927fccec68069665312d14336e6f0769 (diff)
mkv: mark "default" subtitle tracks with both default and forced flags
Makes "default" do the right thing in plex git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6941 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r--contrib/ffmpeg/A01-mkv-forced-flag.patch13
-rw-r--r--libhb/muxavformat.c3
2 files changed, 15 insertions, 1 deletions
diff --git a/contrib/ffmpeg/A01-mkv-forced-flag.patch b/contrib/ffmpeg/A01-mkv-forced-flag.patch
new file mode 100644
index 000000000..e18590d50
--- /dev/null
+++ b/contrib/ffmpeg/A01-mkv-forced-flag.patch
@@ -0,0 +1,13 @@
+diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
+index cab43f4..8688616 100644
+--- a/libavformat/matroskaenc.c
++++ b/libavformat/matroskaenc.c
+@@ -769,6 +769,8 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
+ // if we need to clear it.
+ if (!(st->disposition & AV_DISPOSITION_DEFAULT))
+ put_ebml_uint(pb, MATROSKA_ID_TRACKFLAGDEFAULT, !!(st->disposition & AV_DISPOSITION_DEFAULT));
++ if (st->disposition & AV_DISPOSITION_FORCED)
++ put_ebml_uint(pb, MATROSKA_ID_TRACKFLAGFORCED, !!(st->disposition & AV_DISPOSITION_FORCED));
+
+ if (codec->codec_type == AVMEDIA_TYPE_AUDIO && codec->initial_padding) {
+ mkv->tracks[i].ts_offset = av_rescale_q(codec->initial_padding,
diff --git a/libhb/muxavformat.c b/libhb/muxavformat.c
index 13f9e9832..389277319 100644
--- a/libhb/muxavformat.c
+++ b/libhb/muxavformat.c
@@ -776,7 +776,8 @@ static int avformatInit( hb_mux_object_t * m )
if ( ii == subtitle_default )
{
- track->st->disposition |= AV_DISPOSITION_DEFAULT;
+ track->st->disposition |= AV_DISPOSITION_DEFAULT |
+ AV_DISPOSITION_FORCED;
}
lang = lookup_lang_code(job->mux, subtitle->iso639_2 );