Mercurial > libavcodec.hg
comparison ac3_parser.c @ 12111:6e15ce7ca0ca libavcodec
ac3: make the value of codec_id during (E-)AC-3 parsing stay CODEC_ID_EAC3
if any E-AC-3 frames have been detected instead of switching back and forth for
AC-3 core + dependent E-AC-3 substream(s).
Fixes Issue 2022.
author | jbr |
---|---|
date | Wed, 07 Jul 2010 23:52:24 +0000 |
parents | ba5d9a97ab2f |
children | ee740a4e80c5 |
comparison
equal
deleted
inserted
replaced
12110:eb5059b0a051 | 12111:6e15ce7ca0ca |
---|---|
179 hdr_info->channels = hdr.channels; | 179 hdr_info->channels = hdr.channels; |
180 hdr_info->channel_layout = hdr.channel_layout; | 180 hdr_info->channel_layout = hdr.channel_layout; |
181 hdr_info->samples = hdr.num_blocks * 256; | 181 hdr_info->samples = hdr.num_blocks * 256; |
182 if(hdr.bitstream_id>10) | 182 if(hdr.bitstream_id>10) |
183 hdr_info->codec_id = CODEC_ID_EAC3; | 183 hdr_info->codec_id = CODEC_ID_EAC3; |
184 else | 184 else if (hdr_info->codec_id == CODEC_ID_NONE) |
185 hdr_info->codec_id = CODEC_ID_AC3; | 185 hdr_info->codec_id = CODEC_ID_AC3; |
186 | 186 |
187 *need_next_header = (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); | 187 *need_next_header = (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); |
188 *new_frame_start = (hdr.frame_type != EAC3_FRAME_TYPE_DEPENDENT); | 188 *new_frame_start = (hdr.frame_type != EAC3_FRAME_TYPE_DEPENDENT); |
189 return hdr.frame_size; | 189 return hdr.frame_size; |