Mercurial > libavcodec.hg
comparison alac.c @ 5276:0d71d658b19f libavcodec
Use proper bytestream functions
author | vitor |
---|---|
date | Tue, 10 Jul 2007 17:50:44 +0000 |
parents | b51c25603164 |
children | d2a7fc14345c |
comparison
equal
deleted
inserted
replaced
5275:91416b4f1929 | 5276:0d71d658b19f |
---|---|
53 */ | 53 */ |
54 | 54 |
55 | 55 |
56 #include "avcodec.h" | 56 #include "avcodec.h" |
57 #include "bitstream.h" | 57 #include "bitstream.h" |
58 #include "bytestream.h" | |
58 | 59 |
59 #define ALAC_EXTRADATA_SIZE 36 | 60 #define ALAC_EXTRADATA_SIZE 36 |
60 #define MAX_CHANNELS 2 | 61 #define MAX_CHANNELS 2 |
61 | 62 |
62 typedef struct { | 63 typedef struct { |
114 | 115 |
115 if(AV_RB32(ptr) >= UINT_MAX/4){ | 116 if(AV_RB32(ptr) >= UINT_MAX/4){ |
116 av_log(alac->avctx, AV_LOG_ERROR, "setinfo_max_samples_per_frame too large\n"); | 117 av_log(alac->avctx, AV_LOG_ERROR, "setinfo_max_samples_per_frame too large\n"); |
117 return -1; | 118 return -1; |
118 } | 119 } |
119 alac->setinfo_max_samples_per_frame = AV_RB32(ptr); /* buffer size / 2 ? */ | 120 |
120 ptr += 4; | 121 /* buffer size / 2 ? */ |
122 alac->setinfo_max_samples_per_frame = bytestream_get_be32(&ptr); | |
121 alac->setinfo_7a = *ptr++; | 123 alac->setinfo_7a = *ptr++; |
122 alac->setinfo_sample_size = *ptr++; | 124 alac->setinfo_sample_size = *ptr++; |
123 alac->setinfo_rice_historymult = *ptr++; | 125 alac->setinfo_rice_historymult = *ptr++; |
124 alac->setinfo_rice_initialhistory = *ptr++; | 126 alac->setinfo_rice_initialhistory = *ptr++; |
125 alac->setinfo_rice_kmodifier = *ptr++; | 127 alac->setinfo_rice_kmodifier = *ptr++; |
126 alac->setinfo_7f = *ptr++; // channels? | 128 alac->setinfo_7f = *ptr++; // channels? |
127 alac->setinfo_80 = AV_RB16(ptr); | 129 alac->setinfo_80 = bytestream_get_be16(&ptr); |
128 ptr += 2; | 130 /* max coded frame size */ |
129 alac->setinfo_82 = AV_RB32(ptr); // max coded frame size | 131 alac->setinfo_82 = bytestream_get_be32(&ptr); |
130 ptr += 4; | 132 /* bitrate ? */ |
131 alac->setinfo_86 = AV_RB32(ptr); // bitrate ? | 133 alac->setinfo_86 = bytestream_get_be32(&ptr); |
132 ptr += 4; | 134 /* samplerate */ |
133 alac->setinfo_8a_rate = AV_RB32(ptr); // samplerate | 135 alac->setinfo_8a_rate = bytestream_get_be32(&ptr); |
134 ptr += 4; | |
135 | 136 |
136 allocate_buffers(alac); | 137 allocate_buffers(alac); |
137 | 138 |
138 return 0; | 139 return 0; |
139 } | 140 } |