[FFmpeg-cvslog] r13774 - trunk/libavformat/movenc.c

bcoudurier subversion
Sun Jun 15 03:38:39 CEST 2008


Author: bcoudurier
Date: Sun Jun 15 03:38:38 2008
New Revision: 13774

Log:
set correct ftyp minor version for 3gp/2

Modified:
   trunk/libavformat/movenc.c

Modified: trunk/libavformat/movenc.c
==============================================================================
--- trunk/libavformat/movenc.c	(original)
+++ trunk/libavformat/movenc.c	Sun Jun 15 03:38:38 2008
@@ -1379,6 +1379,7 @@ static int mov_write_ftyp_tag(ByteIOCont
     MOVContext *mov = s->priv_data;
     offset_t pos = url_ftell(pb);
     int has_h264 = 0, has_video = 0;
+    int minor = 0x200;
     int i;
 
     for (i = 0; i < s->nb_streams; i++) {
@@ -1392,11 +1393,13 @@ static int mov_write_ftyp_tag(ByteIOCont
     put_be32(pb, 0); /* size */
     put_tag(pb, "ftyp");
 
-    if (mov->mode == MODE_3GP)
-        put_tag(pb, has_h264 ? "3gp6":"3gp4");
-    else if (mov->mode & MODE_3G2)
-        put_tag(pb, has_h264 ? "3g2b":"3g2a");
-    else if (mov->mode == MODE_PSP)
+    if (mov->mode == MODE_3GP) {
+        put_tag(pb, has_h264 ? "3gp6"  : "3gp4");
+        minor =     has_h264 ?   0x100 :   0x200;
+    } else if (mov->mode & MODE_3G2) {
+        put_tag(pb, has_h264 ? "3g2b"  : "3g2a");
+        minor =     has_h264 ? 0x20000 : 0x10000;
+    }else if (mov->mode == MODE_PSP)
         put_tag(pb, "MSNV");
     else if (mov->mode == MODE_MP4)
         put_tag(pb, "isom");
@@ -1405,7 +1408,7 @@ static int mov_write_ftyp_tag(ByteIOCont
     else
         put_tag(pb, "qt  ");
 
-    put_be32(pb, 0x200);
+    put_be32(pb, minor);
 
     if(mov->mode == MODE_MOV)
         put_tag(pb, "qt  ");




More information about the ffmpeg-cvslog mailing list