[FFmpeg-devel] [PATCH v3 0/7] Merge lazy filter initialization in ffmpeg CLI

wm4 nfxjfg at googlemail.com
Thu Mar 2 10:53:02 EET 2017


These patches merge the previously skipped Libav commits, which made
avconv lazily initialize libavfilter graphs. This means the filters
are initialized with the actual output format, instead of whatever
libavformat reports.

It's a prerequisite to making hardware decoding support saner, as
hardware decoders will output a different pixfmt than the software
format reported by libavformat. This can be seen on ffmpeg_qsv.c
and ffmpeg_cuvid.c, which don't lose any functionality, even though
half of the code is removed.

There are some differences in how ffmpeg.c and avconv.c filter-flow
works. Also, avconv.c doesn't have sub2video. Relatively intrusive
changes were required.

I will push this tomorrow, except if critical failures are found.

Anton Khirnov (4):
  ffmpeg: do packet ts rescaling in write_packet()
  ffmpeg: init filtergraphs only after we have a frame on each input
  ffmpeg: move flushing the queued frames to configure_filtergraph()
  ffmpeg: restructure sending EOF to filters

Timo Rothenpieler (1):
  ffmpeg_cuvid: adapt for recent filter graph initialization changes

wm4 (2):
  ffmpeg: make sure packets put into the muxing FIFO are refcounted
  ffmpeg: fix printing of filter input/output names

 doc/libav-merge.txt                                |   1 -
 ffmpeg.c                                           | 409 +++++++++++++--------
 ffmpeg.h                                           |  22 +-
 ffmpeg_cuvid.c                                     | 142 ++-----
 ffmpeg_filter.c                                    | 112 +++---
 ffmpeg_opt.c                                       |  44 ---
 ffmpeg_qsv.c                                       |  82 -----
 tests/ref/fate/binsub-movtextenc                   |   2 +-
 .../fate/exr-rgb-scanline-pxr24-half-uint32-13x9   |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44-12x8-l1  |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44-12x8-l2  |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44-13x9-l1  |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44-13x9-l2  |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44a-12x8-l1 |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44a-12x8-l2 |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44a-13x9-l1 |   2 +-
 .../fate/exr-rgba-scanline-float-half-b44a-13x9-l2 |   2 +-
 tests/ref/fate/sub2video                           |  88 ++---
 tests/ref/fate/vp8-size-change                     |  62 ++--
 tests/ref/lavf/ffm                                 |   2 +-
 tests/ref/lavf/mxf                                 |   6 +-
 21 files changed, 442 insertions(+), 548 deletions(-)

-- 
2.11.0



More information about the ffmpeg-devel mailing list