[FFmpeg-devel] [PATCH 210/281] ffwavesynth: convert to new channel layout API

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


From: Anton Khirnov <anton at khirnov.net>

Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavcodec/ffwavesynth.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/ffwavesynth.c b/libavcodec/ffwavesynth.c
index a1211facb9..229a89663d 100644
--- a/libavcodec/ffwavesynth.c
+++ b/libavcodec/ffwavesynth.c
@@ -314,7 +314,7 @@ static av_cold int wavesynth_init(AVCodecContext *avc)
     struct wavesynth_context *ws = avc->priv_data;
     int i, r;
 
-    if (avc->channels > WS_MAX_CHANNELS) {
+    if (avc->ch_layout.nb_channels > WS_MAX_CHANNELS) {
         av_log(avc, AV_LOG_ERROR,
                "This implementation is limited to %d channels.\n",
                WS_MAX_CHANNELS);
@@ -438,11 +438,11 @@ static int wavesynth_decode(AVCodecContext *avc, void *rframe, int *rgot_frame,
         return r;
     pcm = (int16_t *)frame->data[0];
     for (s = 0; s < duration; s++, ts+=(uint64_t)1) {
-        memset(channels, 0, avc->channels * sizeof(*channels));
+        memset(channels, 0, avc->ch_layout.nb_channels * sizeof(*channels));
         if (ts >= ws->next_ts)
             wavesynth_enter_intervals(ws, ts);
         wavesynth_synth_sample(ws, ts, channels);
-        for (c = 0; c < avc->channels; c++)
+        for (c = 0; c < avc->ch_layout.nb_channels; c++)
             *(pcm++) = channels[c] >> 16;
     }
     ws->cur_ts += (uint64_t)duration;
-- 
2.34.1



More information about the ffmpeg-devel mailing list