]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/af_ladspa.c
Merge commit 'ad0560fe7491a85c3e71d5a3d6a0443f10b33ab1'
[ffmpeg] / libavfilter / af_ladspa.c
index 3ceb91e739eb274504f24475364d055eae31c6c5..7578a385ff6d10c25897b32a7472fc0b3fbfc36c 100644 (file)
@@ -612,6 +612,8 @@ static int query_formats(AVFilterContext *ctx)
 
         ff_set_common_channel_layouts(ctx, layouts);
     } else {
+        AVFilterLink *outlink = ctx->outputs[0];
+
         if (s->nb_inputs >= 1) {
             AVFilterLink *inlink = ctx->inputs[0];
             int64_t inlayout = FF_COUNT2LAYOUT(s->nb_inputs);
@@ -619,10 +621,12 @@ static int query_formats(AVFilterContext *ctx)
             layouts = NULL;
             ff_add_channel_layout(&layouts, inlayout);
             ff_channel_layouts_ref(layouts, &inlink->out_channel_layouts);
+
+            if (!s->nb_outputs)
+                ff_channel_layouts_ref(layouts, &outlink->in_channel_layouts);
         }
 
         if (s->nb_outputs >= 1) {
-            AVFilterLink *outlink = ctx->outputs[0];
             int64_t outlayout = FF_COUNT2LAYOUT(s->nb_outputs);
 
             layouts = NULL;