This is something of a hack. It allocates a new hwframe context for the target format, then maps it back to the source link and overwrites the input link hw_frames_ctx so that the previous filter will receive the frames we want from ff_get_video_buffer(). It may fail if the previous filter imposes any additional constraints on the frames it wants to use as output.
(cherry picked from commit 81a4cb8e58636d4efd200c2b4fec786a7e948d8b)
d81be0a vf_hwmap: Add reverse mapping for hardware frames
libavfilter/vf_hwmap.c | 68 ++++++++++++++++++++++++++++++++++++++++++++------
1 file changed, 61 insertions(+), 7 deletions(-)