[FFmpeg-devel] [PATCH 169/281] westwood: convert to new channel layout API

James Almer jamrial at gmail.com
Thu Jan 13 04:00:16 EET 2022


From: Vittorio Giovara <vittorio.giovara at gmail.com>

Signed-off-by: Vittorio Giovara <vittorio.giovara at gmail.com>
Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavformat/westwood_aud.c    | 10 ++++------
 libavformat/westwood_audenc.c |  2 +-
 libavformat/westwood_vqa.c    |  2 +-
 3 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/libavformat/westwood_aud.c b/libavformat/westwood_aud.c
index ff51e8bd36..9896bd46df 100644
--- a/libavformat/westwood_aud.c
+++ b/libavformat/westwood_aud.c
@@ -118,9 +118,7 @@ static int wsaud_read_header(AVFormatContext *s)
     }
     avpriv_set_pts_info(st, 64, 1, sample_rate);
     st->codecpar->codec_type  = AVMEDIA_TYPE_AUDIO;
-    st->codecpar->channels    = channels;
-    st->codecpar->channel_layout = channels == 1 ? AV_CH_LAYOUT_MONO :
-                                                   AV_CH_LAYOUT_STEREO;
+    av_channel_layout_default(&st->codecpar->ch_layout, channels);
     st->codecpar->sample_rate = sample_rate;
 
     return 0;
@@ -164,14 +162,14 @@ static int wsaud_read_packet(AVFormatContext *s,
         if (ret != chunk_size)
             return AVERROR(EIO);
 
-        if (st->codecpar->channels <= 0) {
+        if (st->codecpar->ch_layout.nb_channels <= 0) {
             av_log(s, AV_LOG_ERROR, "invalid number of channels %d\n",
-                   st->codecpar->channels);
+                   st->codecpar->ch_layout.nb_channels);
             return AVERROR_INVALIDDATA;
         }
 
         /* 2 samples/byte, 1 or 2 samples per frame depending on stereo */
-        pkt->duration = (chunk_size * 2) / st->codecpar->channels;
+        pkt->duration = (chunk_size * 2) / st->codecpar->ch_layout.nb_channels;
     }
     pkt->stream_index = st->index;
 
diff --git a/libavformat/westwood_audenc.c b/libavformat/westwood_audenc.c
index 597d68350f..a2401eff5a 100644
--- a/libavformat/westwood_audenc.c
+++ b/libavformat/westwood_audenc.c
@@ -77,7 +77,7 @@ static int wsaud_write_header(AVFormatContext *ctx)
     a->size = 0;
 
     /* Flag if we have stereo data. */
-    if (st->codecpar->channels == 2)
+    if (st->codecpar->ch_layout.nb_channels == 2)
         flags |= 1;
 
     /* This flags that the file contains 16 bit samples rather than 8 bit
diff --git a/libavformat/westwood_vqa.c b/libavformat/westwood_vqa.c
index 9d116060a3..ed5c1a3416 100644
--- a/libavformat/westwood_vqa.c
+++ b/libavformat/westwood_vqa.c
@@ -226,7 +226,7 @@ static int wsvqa_read_packet(AVFormatContext *s,
                         wsvqa->bps = 8;
                     st->codecpar->sample_rate = wsvqa->sample_rate;
                     st->codecpar->bits_per_coded_sample = wsvqa->bps;
-                    st->codecpar->channels = wsvqa->channels;
+                    av_channel_layout_default(&st->codecpar->ch_layout, wsvqa->channels);
                     st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO;
 
                     avpriv_set_pts_info(st, 64, 1, st->codecpar->sample_rate);
-- 
2.34.1



More information about the ffmpeg-devel mailing list