Mercurial > libavcodec.hg
comparison ac3_parser.c @ 6539:04763b6fd4f0 libavcodec
removal of stream_type in AACAC3ParseContext and adding AACAC3FrameFlag
| author | bwolowiec |
|---|---|
| date | Fri, 28 Mar 2008 19:59:58 +0000 |
| parents | 5d9fe8d17643 |
| children | b0d44aec1ec0 |
comparison
equal
deleted
inserted
replaced
| 6538:b8f886bce6f5 | 6539:04763b6fd4f0 |
|---|---|
| 121 } | 121 } |
| 122 | 122 |
| 123 return 0; | 123 return 0; |
| 124 } | 124 } |
| 125 | 125 |
| 126 static int ac3_sync(AACAC3ParseContext *hdr_info) | 126 static int ac3_sync(AACAC3ParseContext *hdr_info, AACAC3FrameFlag *flag) |
| 127 { | 127 { |
| 128 int err; | 128 int err; |
| 129 AC3HeaderInfo hdr; | 129 AC3HeaderInfo hdr; |
| 130 | 130 |
| 131 err = ff_ac3_parse_header(hdr_info->inbuf, &hdr); | 131 err = ff_ac3_parse_header(hdr_info->inbuf, &hdr); |
| 135 | 135 |
| 136 hdr_info->sample_rate = hdr.sample_rate; | 136 hdr_info->sample_rate = hdr.sample_rate; |
| 137 hdr_info->bit_rate = hdr.bit_rate; | 137 hdr_info->bit_rate = hdr.bit_rate; |
| 138 hdr_info->channels = hdr.channels; | 138 hdr_info->channels = hdr.channels; |
| 139 hdr_info->samples = AC3_FRAME_SIZE; | 139 hdr_info->samples = AC3_FRAME_SIZE; |
| 140 | |
| 141 switch(hdr.stream_type){ | |
| 142 case EAC3_STREAM_TYPE_INDEPENDENT: | |
| 143 *flag = FRAME_START; | |
| 144 break; | |
| 145 case EAC3_STREAM_TYPE_DEPENDENT: | |
| 146 *flag = FRAME_CONTINUATION; | |
| 147 break; | |
| 148 case EAC3_STREAM_TYPE_AC3_CONVERT: | |
| 149 *flag = FRAME_COMPLETE; | |
| 150 break; | |
| 151 } | |
| 140 return hdr.frame_size; | 152 return hdr.frame_size; |
| 141 } | 153 } |
| 142 | 154 |
| 143 static av_cold int ac3_parse_init(AVCodecParserContext *s1) | 155 static av_cold int ac3_parse_init(AVCodecParserContext *s1) |
| 144 { | 156 { |
