summaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorPhilip Langdale <philipl@overt.org>2012-08-11 20:29:20 -0700
committerPhilip Langdale <philipl@overt.org>2012-08-25 13:15:41 -0700
commit2626cc4580bfd560c6983338d77b2c11c16af94f (patch)
tree629bfe3149d8c7fda656e9b00f6b752ca902635f /libavformat
parent0bb37bbc0f55f157cb763428baca9b63d3e81108 (diff)
downloadffmpeg-streaming-2626cc4580bfd560c6983338d77b2c11c16af94f.zip
ffmpeg-streaming-2626cc4580bfd560c6983338d77b2c11c16af94f.tar.gz
matroska: Mark S_TEXT/UTF-8 as Subrip encoded subtitles.
While not explicitly stated in the specs, the original author has stated that S_TEXT/UTF-8 is expected to be text using Subrip markup, but without Subrip in-band timing. So, now that we have a decoder that conforms to this expectation, let's use it. Note that this change will impact tools that use libavformat. If they expect srt subtitles to have CODEC_ID_TEXT, they must be adjusted to expect CODEC_ID_SUBRIP. The actual content is, obviously, unchanged. Signed-off-by: Philip Langdale <philipl@overt.org>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/matroska.c1
-rw-r--r--libavformat/matroskadec.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/matroska.c b/libavformat/matroska.c
index b386d74..b016491 100644
--- a/libavformat/matroska.c
+++ b/libavformat/matroska.c
@@ -53,6 +53,7 @@ const CodecTags ff_mkv_codec_tags[]={
{"A_VORBIS" , AV_CODEC_ID_VORBIS},
{"A_WAVPACK4" , AV_CODEC_ID_WAVPACK},
+ {"S_TEXT/UTF8" , AV_CODEC_ID_SUBRIP},
{"S_TEXT/UTF8" , AV_CODEC_ID_TEXT},
{"S_TEXT/UTF8" , AV_CODEC_ID_SRT},
{"S_TEXT/ASCII" , AV_CODEC_ID_TEXT},
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 41375e3..1d0dbb3 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -2105,7 +2105,7 @@ static int matroska_parse_block(MatroskaDemuxContext *matroska, uint8_t *data,
else
pkt->pts = timecode;
pkt->pos = pos;
- if (st->codec->codec_id == AV_CODEC_ID_TEXT)
+ if (st->codec->codec_id == AV_CODEC_ID_SUBRIP)
pkt->convergence_duration = lace_duration;
else if (track->type != MATROSKA_TRACK_TYPE_SUBTITLE)
pkt->duration = lace_duration;
OpenPOWER on IntegriCloud