diff mbox series

[FFmpeg-devel,019/281] aea: convert to new channel layout API

Message ID 20220113015101.4-20-jamrial@gmail.com
State New
Headers show
Series New channel layout API | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_ppc success Make finished
andriy/make_fate_ppc success Make fate finished
andriy/make_aarch64_jetson success Make finished
andriy/make_fate_aarch64_jetson success Make fate finished
andriy/make_armv7_RPi4 success Make finished
andriy/make_fate_armv7_RPi4 success Make fate finished

Commit Message

James Almer Jan. 13, 2022, 1:49 a.m. UTC
From: Vittorio Giovara <vittorio.giovara@gmail.com>

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavformat/aea.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/libavformat/aea.c b/libavformat/aea.c
index 14d0840cf3..f4b39e4f9e 100644
--- a/libavformat/aea.c
+++ b/libavformat/aea.c
@@ -62,12 +62,13 @@  static int aea_read_probe(const AVProbeData *p)
 static int aea_read_header(AVFormatContext *s)
 {
     AVStream *st = avformat_new_stream(s, NULL);
+    int channels;
     if (!st)
         return AVERROR(ENOMEM);
 
     /* Parse the amount of channels and skip to pos 2048(0x800) */
     avio_skip(s->pb, 264);
-    st->codecpar->channels = avio_r8(s->pb);
+    channels = avio_r8(s->pb);
     avio_skip(s->pb, 1783);
 
 
@@ -76,14 +77,14 @@  static int aea_read_header(AVFormatContext *s)
     st->codecpar->sample_rate    = 44100;
     st->codecpar->bit_rate       = 292000;
 
-    if (st->codecpar->channels != 1 && st->codecpar->channels != 2) {
-        av_log(s, AV_LOG_ERROR, "Channels %d not supported!\n", st->codecpar->channels);
+    if (channels != 1 && channels != 2) {
+        av_log(s, AV_LOG_ERROR, "Channels %d not supported!\n", channels);
         return AVERROR_INVALIDDATA;
     }
 
-    st->codecpar->channel_layout = (st->codecpar->channels == 1) ? AV_CH_LAYOUT_MONO : AV_CH_LAYOUT_STEREO;
+    av_channel_layout_default(&st->codecpar->ch_layout, channels);
 
-    st->codecpar->block_align = AT1_SU_SIZE * st->codecpar->channels;
+    st->codecpar->block_align = AT1_SU_SIZE * st->codecpar->ch_layout.nb_channels;
     return 0;
 }