Opened 22 months ago

Last modified 22 months ago

#9830 reopened defect

Reuse of linklabel as input pad silently uses first unused input stream

Reported by: janezkuhar Owned by:
Priority: important Component: avfilter
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
How to reproduce:

% ffmpeg -i INPUT.mp4 -i test_logo.png -filter_complex "overlay=x=(main_w-overlay_w)/2:y=(main_h-overlay_h)/2,split=outputs=6[v0][v1][v2][v3][v4][v5]; [v0][v1][v2]hstack=inputs=3[top]; [v3][v4][v5]hstack=inputs=3[bottom]; [top][bottom]vstack=inputs=2" OUTPUT.mp4

ffmpeg version 4.3.4-0+deb11u1 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10 (Debian 10.2.1-6)

Change History (7)

comment:2 by Elon Musk, 22 months ago

Resolution: invalid
Status: newclosed

Use split filters, any other way is not supported.

comment:3 by Gyan, 22 months ago

Resolution: invalid
Status: closedreopened
Summary: Overlaying an image to multiple streams doesn't work as expected (only the first call of the overlay gets the overlay)Reuse of linklabel as input pad silently uses first unused input stream

The OP doesn't specify the bug clearly.

Here's an example command:

ffmpeg -i hd720.mp4 -i hd1080.mp4 -filter_complex "[1]hue=s=0[v];[v][v]concat" out.mp4

Only a single stream with label v is generated from hd1080.mp4. It is referenced twice as input in the concat filter. The concat filter should either repeat the hue-processed stream or error out. Instead, it tries to concat hd720.mp4 as the 2nd stream. But the user did not type [0], or omit the 2nd input pad.

avfilter_graph_parse2 should fail this graph.

Last edited 22 months ago by Gyan (previous) (diff)

in reply to:  2 comment:4 by janezkuhar, 22 months ago

Replying to Elon Musk:

Use split filters, any other way is not supported.

Thank you for this, and apologies for the meaningless report.

comment:5 by janezkuhar, 22 months ago

Resolution: invalid
Status: reopenedclosed

comment:6 by Gyan, 22 months ago

Resolution: invalid
Status: closedreopened

comment:7 by Gyan, 22 months ago

Component: ffmpegavfilter
Priority: normalimportant
Reproduced by developer: set
Version: git-master
Note: See TracTickets for help on using tickets.