OSDN Git Service

lavfi/asetnsamples: unbreak for >8 channels
authorPaul B Mahol <onemda@gmail.com>
Sat, 13 Jul 2013 21:59:13 +0000 (21:59 +0000)
committerPaul B Mahol <onemda@gmail.com>
Sat, 13 Jul 2013 21:59:13 +0000 (21:59 +0000)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavfilter/af_asetnsamples.c

index 25e062a..e4c77ab 100644 (file)
@@ -73,9 +73,8 @@ static av_cold void uninit(AVFilterContext *ctx)
 static int config_props_output(AVFilterLink *outlink)
 {
     ASNSContext *asns = outlink->src->priv;
-    int nb_channels = av_get_channel_layout_nb_channels(outlink->channel_layout);
 
-    asns->fifo = av_audio_fifo_alloc(outlink->format, nb_channels, asns->nb_out_samples);
+    asns->fifo = av_audio_fifo_alloc(outlink->format, outlink->channels, asns->nb_out_samples);
     if (!asns->fifo)
         return AVERROR(ENOMEM);
     outlink->flags |= FF_LINK_FLAG_REQUEST_LOOP;
@@ -109,7 +108,7 @@ static int push_samples(AVFilterLink *outlink)
 
     if (nb_pad_samples)
         av_samples_set_silence(outsamples->extended_data, nb_out_samples - nb_pad_samples,
-                               nb_pad_samples, av_get_channel_layout_nb_channels(outlink->channel_layout),
+                               nb_pad_samples, outlink->channels,
                                outlink->format);
     outsamples->nb_samples     = nb_out_samples;
     outsamples->channel_layout = outlink->channel_layout;