[FFmpeg-soc] [soc]: r533 - matroska/matroskaenc.c

conrad subversion at mplayerhq.hu
Thu Jul 26 02:05:34 CEST 2007


Author: conrad
Date: Thu Jul 26 02:05:34 2007
New Revision: 533

Log:
Move writing Xiph-style sizes to its own function


Modified:
   matroska/matroskaenc.c

Modified: matroska/matroskaenc.c
==============================================================================
--- matroska/matroskaenc.c	(original)
+++ matroska/matroskaenc.c	Thu Jul 26 02:05:34 2007
@@ -178,6 +178,14 @@ static void end_ebml_master(ByteIOContex
     url_fseek(pb, pos, SEEK_SET);
 }
 
+static void put_xiph_size(ByteIOContext *pb, int size)
+{
+    int i;
+    for (i = 0; i < size / 255; i++)
+        put_byte(pb, 255);
+    put_byte(pb, size % 255);
+}
+
 // initializes a mkv_seekhead element to be ready to index level 1 matroska elements
 // if numelements is greater than 0, it reserves enough space for that many elements
 // at the current file position and writes the seekhead there, otherwise the seekhead
@@ -331,7 +339,7 @@ static int put_xiph_codecpriv(ByteIOCont
     uint8_t *header_start[3];
     int header_len[3];
     int first_header_size;
-    int j, k;
+    int j;
 
     if (codec->codec_id == CODEC_ID_VORBIS)
         first_header_size = 30;
@@ -347,9 +355,7 @@ static int put_xiph_codecpriv(ByteIOCont
     codecprivate = start_ebml_master(pb, MATROSKA_ID_CODECPRIVATE);
     put_byte(pb, 2);                    // number packets - 1
     for (j = 0; j < 2; j++) {
-        for (k = 0; k < header_len[j] / 255; k++)
-            put_byte(pb, 255);
-        put_byte(pb, header_len[j] % 255);
+        put_xiph_size(pb, header_len[j]);
     }
     for (j = 0; j < 3; j++)
         put_buffer(pb, header_start[j], header_len[j]);



More information about the FFmpeg-soc mailing list