Signed-off-by: Vittorio Giovara <[email protected]>
---
libavformat/apc.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/libavformat/apc.c b/libavformat/apc.c
index 40ecdf2c5d..8a8a5c3491 100644
--- a/libavformat/apc.c
+++ b/libavformat/apc.c
@@ -36,6 +36,7 @@ static int apc_read_header(AVFormatContext *s)
{
AVIOContext *pb = s->pb;
AVStream *st;
+ int channels;
avio_rl32(pb); /* CRYO */
avio_rl32(pb); /* _APC */
@@ -60,16 +61,11 @@ static int apc_read_header(AVFormatContext *s)
/* initial predictor values for adpcm decoder */
avio_read(pb, st->codecpar->extradata, 2 * 4);
- if (avio_rl32(pb)) {
- st->codecpar->channels = 2;
- st->codecpar->channel_layout = AV_CH_LAYOUT_STEREO;
- } else {
- st->codecpar->channels = 1;
- st->codecpar->channel_layout = AV_CH_LAYOUT_MONO;
- }
+ channels = avio_rl32(pb) + 1;
+ av_channel_layout_default(&st->codecpar->ch_layout, channels);
st->codecpar->bits_per_coded_sample = 4;
- st->codecpar->bit_rate = st->codecpar->bits_per_coded_sample *
st->codecpar->channels
+ st->codecpar->bit_rate = st->codecpar->bits_per_coded_sample * channels
* st->codecpar->sample_rate;
st->codecpar->block_align = 1;
--
2.12.0
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel