Mercurial > libavformat.hg
comparison matroskaenc.c @ 2482:d13c92b200a8 libavformat
Simplify put_ebml_id()
author | conrad |
---|---|
date | Wed, 05 Sep 2007 00:24:36 +0000 |
parents | 3d34222171b2 |
children | d5428813739d |
comparison
equal
deleted
inserted
replaced
2481:3d34222171b2 | 2482:d13c92b200a8 |
---|---|
72 return (av_log2(id+1)-1)/7+1; | 72 return (av_log2(id+1)-1)/7+1; |
73 } | 73 } |
74 | 74 |
75 static void put_ebml_id(ByteIOContext *pb, unsigned int id) | 75 static void put_ebml_id(ByteIOContext *pb, unsigned int id) |
76 { | 76 { |
77 if (id >= 0x3fffff) | 77 int i = ebml_id_size(id); |
78 put_byte(pb, id >> 24); | 78 while (i--) |
79 if (id >= 0x7fff) | 79 put_byte(pb, id >> (i*8)); |
80 put_byte(pb, id >> 16); | |
81 if (id >= 0xff) | |
82 put_byte(pb, id >> 8); | |
83 put_byte(pb, id); | |
84 } | 80 } |
85 | 81 |
86 /** | 82 /** |
87 * Write an EBML size meaning "unknown size" | 83 * Write an EBML size meaning "unknown size" |
88 * | 84 * |