lavfi: Always propagate hw_frames_ctx through links
authorMark Thompson <sw@jkqxz.net>
Tue, 25 Oct 2016 19:42:27 +0000 (20:42 +0100)
committerMark Thompson <sw@jkqxz.net>
Wed, 2 Nov 2016 20:29:05 +0000 (20:29 +0000)
commite3fb74f7f9a8f1895381355f40c92cac3c1023d9
treedce587b453a0bab8086d95a1cc5bda4517d0a346
parent7e2561fa8313982aa21f7657953eedeeb33b210d
lavfi: Always propagate hw_frames_ctx through links

Also adds a new flag to mark filters which are aware of hwframes and
will perform this task themselves, and marks all appropriate filters
with this flag.

This is required to allow software-mapped hardware frames to work,
because we need to have the frames context available for any later
mapping operation in the filter graph.

The output from the filter graph should only propagate further to an
encoder if the hardware format actually matches the visible format
(mapped frames are valid here and have an hw_frames_ctx, but this
should not be given to the encoder as its hardware context).
avconv.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/internal.h
libavfilter/vf_deinterlace_qsv.c
libavfilter/vf_hwdownload.c
libavfilter/vf_hwupload.c
libavfilter/vf_hwupload_cuda.c
libavfilter/vf_scale_npp.c
libavfilter/vf_scale_qsv.c
libavfilter/vf_scale_vaapi.c