]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/af_aresample.c
lavfi/histogram: make it C90 compliant
[ffmpeg] / libavfilter / af_aresample.c
index 17b7630b5a6a15eda4e2d15fd795afcd647c3f1c..2e3867efda689bc15cf1fa689f40772eac92d742 100644 (file)
@@ -98,7 +98,7 @@ static int query_formats(AVFilterContext *ctx)
     AVFilterFormats        *out_formats;
     AVFilterFormats        *in_samplerates  = ff_all_samplerates();
     AVFilterFormats        *out_samplerates;
-    AVFilterChannelLayouts *in_layouts      = ff_all_channel_layouts();
+    AVFilterChannelLayouts *in_layouts      = ff_all_channel_counts();
     AVFilterChannelLayouts *out_layouts;
 
     ff_formats_ref  (in_formats,      &inlink->out_formats);
@@ -121,7 +121,7 @@ static int query_formats(AVFilterContext *ctx)
     if(out_layout) {
         out_layouts = avfilter_make_format64_list((int64_t[]){ out_layout, -1 });
     } else
-        out_layouts = ff_all_channel_layouts();
+        out_layouts = ff_all_channel_counts();
     ff_channel_layouts_ref(out_layouts, &outlink->in_channel_layouts);
 
     return 0;
@@ -145,6 +145,10 @@ static int config_output(AVFilterLink *outlink)
                                         0, ctx);
     if (!aresample->swr)
         return AVERROR(ENOMEM);
+    if (!inlink->channel_layout)
+        av_opt_set_int(aresample->swr, "ich", inlink->channels, 0);
+    if (!outlink->channel_layout)
+        av_opt_set_int(aresample->swr, "och", outlink->channels, 0);
 
     ret = swr_init(aresample->swr);
     if (ret < 0)
@@ -164,9 +168,9 @@ static int config_output(AVFilterLink *outlink)
     av_get_channel_layout_string(inchl_buf,  sizeof(inchl_buf),  -1, inlink ->channel_layout);
     av_get_channel_layout_string(outchl_buf, sizeof(outchl_buf), -1, outlink->channel_layout);
 
-    av_log(ctx, AV_LOG_VERBOSE, "chl:%s fmt:%s r:%dHz -> chl:%s fmt:%s r:%dHz\n",
-           inchl_buf,  av_get_sample_fmt_name(inlink->format),  inlink->sample_rate,
-           outchl_buf, av_get_sample_fmt_name(outlink->format), outlink->sample_rate);
+    av_log(ctx, AV_LOG_VERBOSE, "ch:%d chl:%s fmt:%s r:%dHz -> ch:%d chl:%s fmt:%s r:%dHz\n",
+           inlink ->channels, inchl_buf,  av_get_sample_fmt_name(inlink->format),  inlink->sample_rate,
+           outlink->channels, outchl_buf, av_get_sample_fmt_name(outlink->format), outlink->sample_rate);
     return 0;
 }