[FFmpeg-devel] [PATCH v3] lavf/vf_find_rect: add the dual input support function

Michael Niedermayer michael at niedermayer.cc
Fri Jun 28 10:49:27 EEST 2019

On Thu, Jun 27, 2019 at 05:40:31PM +0800, lance.lmwang at gmail.com wrote:
> From: Limin Wang <lance.lmwang at gmail.com>
> Please using the below command for the testing:
> ./ffmpeg -i input.ts -i ref.png -filter_complex find_rect,cover_rect=cover.jpg:mode=cover output.ts
> I have updated the help document for the function change.
> Reviewed-by: Moritz Barsnick <barsnick at gmx.net>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
>  doc/filters.texi           |  12 +--
>  libavfilter/version.h      |   2 +-
>  libavfilter/vf_find_rect.c | 173 +++++++++++++++++++++++--------------
>  3 files changed, 118 insertions(+), 69 deletions(-)
> diff --git a/doc/filters.texi b/doc/filters.texi
> index 2d9af46a6b..92e1dee07e 100644
> --- a/doc/filters.texi
> +++ b/doc/filters.texi
> @@ -10156,12 +10156,14 @@ Set color for pixels in fixed mode. Default is @var{black}.
>  Find a rectangular object
> +This filter takes in two video inputs, the first input is considered
> +the "main" source and is passed unchanged to the output. The "second"
> +input is used as a rectangular object for finding. Now the "second"
> +input will be auto converted to gray8 format.
> +
>  It accepts the following options:
>  @table @option
> - at item object
> -Filepath of the object image, needs to be in gray8.
> -
>  @item threshold
>  Detection threshold, default is 0.5.
> @@ -10178,7 +10180,7 @@ Specifies the rectangle in which to search.
>  @item
>  Cover a rectangular object by the supplied image of a given video using @command{ffmpeg}:
>  @example
> -ffmpeg -i file.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv
> +ffmpeg -i file.ts -i newref.pgm -filter_complex find_rect,cover_rect=cover.jpg:mode=cover new.mkv

It will be needed to support the old syntax until the next 2 major API bumps
at minimum.
That is first it would need to be deprecated and then we need 2 major API bumps
before it can be removed.
Keep in mind users both of the command line tools as well as the API would
need to have their scripts / software updated/changed for this.
also to make the transition easy both variants should be supported at the
samw time so people can switch to the new syntax "immedeatly" and do not
need to time it with a specific version bump
Yes i know thats a bit annoying ...

Theres of course no need to support newly added features with the old syntax


Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If a bugfix only changes things apparently unrelated to the bug with no
further explanation, that is a good sign that the bugfix is wrong.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190628/72ad1be1/attachment.sig>

More information about the ffmpeg-devel mailing list