Add CODEC_ID_MOV_TEXT and use it instead of modifying the stream in the mov demuxer.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 27 Jan 2008 19:57:04 +0000 (19:57 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 27 Jan 2008 19:57:04 +0000 (19:57 +0000)
Originally committed as revision 11638 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/avcodec.h
libavformat/isom.c
libavformat/mov.c

index f8c8178..77f42ef 100644 (file)
@@ -283,6 +283,7 @@ enum CodecID {
     CODEC_ID_TEXT,  ///< raw UTF-8 text
     CODEC_ID_XSUB,
     CODEC_ID_SSA,
+    CODEC_ID_MOV_TEXT,
 
     /* other specific kind of codecs (generaly used for attachments) */
     CODEC_ID_TTF= 0x18000,
index c0af2d2..5a67aec 100644 (file)
@@ -169,7 +169,7 @@ const AVCodecTag codec_movaudio_tags[] = {
 };
 
 const AVCodecTag ff_codec_movsubtitle_tags[] = {
-    { CODEC_ID_TEXT, MKTAG('t', 'e', 'x', 't') },
+    { CODEC_ID_MOV_TEXT, MKTAG('t', 'e', 'x', 't') },
     { CODEC_ID_NONE, 0 },
 };
 
index cc3dc70..f39d9a2 100644 (file)
@@ -1543,12 +1543,6 @@ static int mov_read_packet(AVFormatContext *s, AVPacket *pkt)
     } else {
 #endif
         av_get_packet(s->pb, pkt, sample->size);
-        if (s->streams[sc->ffindex]->codec->codec_id == CODEC_ID_TEXT) {
-            int textlen = FFMIN(AV_RB16(pkt->data), sample->size - 2);
-            textlen = FFMAX(textlen, 0);
-            memmove(pkt->data, pkt->data + 2, textlen);
-            pkt->size = textlen;
-        }
 #ifdef CONFIG_DV_DEMUXER
         if (mov->dv_demux) {
             void *pkt_destruct_func = pkt->destruct;