Mercurial > libavcodec.hg
comparison mpegaudio_parser.c @ 5051:b908c67063c8 libavcodec
add a ff_ prefix to some mpegaudio funcs
author | aurel |
---|---|
date | Sun, 20 May 2007 15:11:55 +0000 |
parents | a5f6fbc9fa66 |
children | bff60ecc02f9 |
comparison
equal
deleted
inserted
replaced
5050:a5f6fbc9fa66 | 5051:b908c67063c8 |
---|---|
42 #define SAME_HEADER_MASK \ | 42 #define SAME_HEADER_MASK \ |
43 (0xffe00000 | (3 << 17) | (3 << 10) | (3 << 19)) | 43 (0xffe00000 | (3 << 17) | (3 << 10) | (3 << 19)) |
44 | 44 |
45 /* useful helper to get mpeg audio stream infos. Return -1 if error in | 45 /* useful helper to get mpeg audio stream infos. Return -1 if error in |
46 header, otherwise the coded frame size in bytes */ | 46 header, otherwise the coded frame size in bytes */ |
47 int mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_rate) | 47 int ff_mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_rate) |
48 { | 48 { |
49 MPADecodeContext s1, *s = &s1; | 49 MPADecodeContext s1, *s = &s1; |
50 s1.avctx = avctx; | 50 s1.avctx = avctx; |
51 | 51 |
52 if (ff_mpa_check_header(head) != 0) | 52 if (ff_mpa_check_header(head) != 0) |
53 return -1; | 53 return -1; |
54 | 54 |
55 if (decode_header(s, head) != 0) { | 55 if (ff_mpegaudio_decode_header(s, head) != 0) { |
56 return -1; | 56 return -1; |
57 } | 57 } |
58 | 58 |
59 switch(s->layer) { | 59 switch(s->layer) { |
60 case 1: | 60 case 1: |
125 if ((s->inbuf_ptr - s->inbuf) >= MPA_HEADER_SIZE) { | 125 if ((s->inbuf_ptr - s->inbuf) >= MPA_HEADER_SIZE) { |
126 got_header: | 126 got_header: |
127 header = (s->inbuf[0] << 24) | (s->inbuf[1] << 16) | | 127 header = (s->inbuf[0] << 24) | (s->inbuf[1] << 16) | |
128 (s->inbuf[2] << 8) | s->inbuf[3]; | 128 (s->inbuf[2] << 8) | s->inbuf[3]; |
129 | 129 |
130 ret = mpa_decode_header(avctx, header, &sr); | 130 ret = ff_mpa_decode_header(avctx, header, &sr); |
131 if (ret < 0) { | 131 if (ret < 0) { |
132 s->header_count= -2; | 132 s->header_count= -2; |
133 /* no sync found : move by one byte (inefficient, but simple!) */ | 133 /* no sync found : move by one byte (inefficient, but simple!) */ |
134 memmove(s->inbuf, s->inbuf + 1, s->inbuf_ptr - s->inbuf - 1); | 134 memmove(s->inbuf, s->inbuf + 1, s->inbuf_ptr - s->inbuf - 1); |
135 s->inbuf_ptr--; | 135 s->inbuf_ptr--; |
144 s->header_count++; | 144 s->header_count++; |
145 s->frame_size = ret; | 145 s->frame_size = ret; |
146 | 146 |
147 #if 0 | 147 #if 0 |
148 /* free format: prepare to compute frame size */ | 148 /* free format: prepare to compute frame size */ |
149 if (decode_header(s, header) == 1) { | 149 if (ff_mpegaudio_decode_header(s, header) == 1) { |
150 s->frame_size = -1; | 150 s->frame_size = -1; |
151 } | 151 } |
152 #endif | 152 #endif |
153 } | 153 } |
154 if(s->header_count > 1) | 154 if(s->header_count > 1) |
197 s->free_format_frame_size -= padding * 4; | 197 s->free_format_frame_size -= padding * 4; |
198 else | 198 else |
199 s->free_format_frame_size -= padding; | 199 s->free_format_frame_size -= padding; |
200 dprintf(avctx, "free frame size=%d padding=%d\n", | 200 dprintf(avctx, "free frame size=%d padding=%d\n", |
201 s->free_format_frame_size, padding); | 201 s->free_format_frame_size, padding); |
202 decode_header(s, header1); | 202 ff_mpegaudio_decode_header(s, header1); |
203 goto next_data; | 203 goto next_data; |
204 } | 204 } |
205 p++; | 205 p++; |
206 } | 206 } |
207 /* not found: simply increase pointers */ | 207 /* not found: simply increase pointers */ |