changeset 1056:4af4c74a4548 libavformat

get avcC profile and level indication from sps (from handbrake)
author bcoudurier
date Fri, 14 Apr 2006 09:54:17 +0000
parents faa09c43a3d6
children 6c53db379305
files movenc.c
diffstat 1 files changed, 8 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/movenc.c	Thu Apr 13 13:21:20 2006 +0000
+++ b/movenc.c	Fri Apr 14 09:54:17 2006 +0000
@@ -433,13 +433,6 @@
             buf = track->vosData;
             end = track->vosData + track->vosLen;
 
-            put_byte(pb, 1); /* version */
-            put_byte(pb, 77); /* profile */
-            put_byte(pb, 64); /* profile compat */
-            put_byte(pb, 30); /* level */
-            put_byte(pb, 0xff); /* 6 bits reserved (111111) + 2 bits nal size length - 1 (11) */
-            put_byte(pb, 0xe1); /* 3 bits reserved (111) + 5 bits number of sps (00001) */
-
             /* look for sps and pps */
             while (buf < end) {
                 unsigned int size;
@@ -457,6 +450,14 @@
             }
             assert(sps);
             assert(pps);
+
+            put_byte(pb, 1); /* version */
+            put_byte(pb, sps[1]); /* profile */
+            put_byte(pb, sps[2]); /* profile compat */
+            put_byte(pb, sps[3]); /* level */
+            put_byte(pb, 0xff); /* 6 bits reserved (111111) + 2 bits nal size length - 1 (11) */
+            put_byte(pb, 0xe1); /* 3 bits reserved (111) + 5 bits number of sps (00001) */
+
             put_be16(pb, sps_size);
             put_buffer(pb, sps, sps_size);
             put_byte(pb, 1); /* number of pps */