diff movenc.c @ 1238:eb749ae2b181 libavformat

only set fields for mov, reserved for 3gp, mp4
author bcoudurier
date Mon, 07 Aug 2006 14:18:43 +0000
parents fbe88f238d0d
children 18130af77b09
line wrap: on
line diff
--- a/movenc.c	Mon Aug 07 14:15:05 2006 +0000
+++ b/movenc.c	Mon Aug 07 14:18:43 2006 +0000
@@ -605,6 +605,7 @@
 
     put_be16(pb, 0); /* Codec stream version */
     put_be16(pb, 0); /* Codec stream revision (=0) */
+    if (track->mode == MODE_MOV) {
     put_tag(pb, "FFMP"); /* Vendor */
     if(track->enc->codec_id == CODEC_ID_RAWVIDEO) {
         put_be32(pb, 0); /* Temporal Quality */
@@ -613,6 +614,11 @@
         put_be32(pb, 0x200); /* Temporal Quality = normal */
         put_be32(pb, 0x200); /* Spatial Quality = normal */
     }
+    } else {
+        put_be32(pb, 0); /* Reserved */
+        put_be32(pb, 0); /* Reserved */
+        put_be32(pb, 0); /* Reserved */
+    }
     put_be16(pb, track->enc->width); /* Video width */
     put_be16(pb, track->enc->height); /* Video height */
     put_be32(pb, 0x00480000); /* Horizontal resolution 72dpi */
@@ -621,7 +627,8 @@
     put_be16(pb, 1); /* Frame count (= 1) */
 
     memset(compressor_name,0,32);
-    if (track->enc->codec && track->enc->codec->name)
+    /* FIXME not sure, ISO 14496-1 draft where it shall be set to 0 */
+    if (track->mode == MODE_MOV && track->enc->codec && track->enc->codec->name)
         strncpy(compressor_name,track->enc->codec->name,31);
     put_byte(pb, strlen(compressor_name));
     put_buffer(pb, compressor_name, 31);