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 */ |
