[FFmpeg-devel] [PATCH 38/42] fftools/ffmpeg: add support for multiview video

Anton Khirnov anton at khirnov.net
Tue Sep 3 12:47:12 EEST 2024


Quoting James Almer (2024-08-31 15:56:24)
> On 8/31/2024 4:44 AM, Anton Khirnov wrote:
> > Quoting James Almer (2024-08-30 02:40:49)
> >> On 8/29/2024 8:26 PM, Michael Niedermayer wrote:
> >>> On Tue, Aug 27, 2024 at 05:05:18PM +0200, Anton Khirnov wrote:
> >>>> This extends the syntax for specifying input streams in -map and complex
> >>>> filtergraph labels, to allow selecting a view by view ID, index, or
> >>>> position. The corresponding decoder is then set up to decode the
> >>>> appropriate view and send frames for that view to the correct
> >>>> filtergraph input(s).
> >>>> ---
> >>>>    doc/ffmpeg.texi           |  30 +++-
> >>>>    fftools/cmdutils.c        |   2 +-
> >>>>    fftools/cmdutils.h        |   2 +
> >>>>    fftools/ffmpeg.h          |  45 ++++-
> >>>>    fftools/ffmpeg_dec.c      | 355 +++++++++++++++++++++++++++++++++++++-
> >>>>    fftools/ffmpeg_demux.c    |  24 ++-
> >>>>    fftools/ffmpeg_filter.c   |  71 +++++---
> >>>>    fftools/ffmpeg_mux_init.c |  29 +++-
> >>>>    fftools/ffmpeg_opt.c      |  70 +++++++-
> >>>>    9 files changed, 575 insertions(+), 53 deletions(-)
> >>>
> >>> breaks build on mingw64
> >>>
> >>> src/fftools/ffmpeg_dec.c: In function ‘packet_decode’:
> >>> src/fftools/ffmpeg_dec.c:811:19: error: implicit declaration of function ‘ffs’ [-Werror=implicit-function-declaration]
> >>>     811 |             pos = ffs(outputs_mask) - 1;
> >>>         |                   ^~~
> >>> cc1: some warnings being treated as errors
> >>> make: *** [src/ffbuild/common.mak:81: fftools/ffmpeg_dec.o] Error 1
> >>> make: *** Waiting for unfinished jobs....
> >>>
> >>> thx
> >>
> >> Would ff_clz(outputs_mask) work here?
> > 
> > In principle yes, but it's private and I'd rather not include a private
> > header in ffmpeg CLI.
> > 
> > We could either make it public, or I could add a ffs() implementation
> > for Windows to compat/. Anyone has a preference?
> 
> I think i prefer making ff_clz public in common.h.

common.h is the wrong place for anything

> It has an optimized version not exclusive to Windows using a gcc/clang
> builtin, and even one specific for riscv.

Which would not be visible to ffmpeg CLI anyway.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list