[FFmpeg-trac] #7564(avfilter:new): hwdownload fails when size changes
FFmpeg
trac at avcodec.org
Mon Nov 26 10:22:19 EET 2018
#7564: hwdownload fails when size changes
------------------------------------+------------------------------------
Reporter: msiders | Owner:
Type: defect | Status: new
Priority: normal | Component: avfilter
Version: git-master | Resolution:
Keywords: hwdownload | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
------------------------------------+------------------------------------
Comment (by msiders):
Replying to [comment:4 oromit]:
> Hwdownload shouldn't need to catch anything, as you are changing the
settings on the last scale filter in the chain, so nothing changes for any
of the hw related filters, or am I missing something?
Hi oromit,
With all due respect... yes you missed all! ;-)
Parsed_scale_2 is the '''first''' "scale" filter in the graph.
This is what's happening:
- The hw decoder (used only to enable the hwaccel) is decoding.
- We do a hwdownload to move to RAM.
- We do a software scale (aka Parsed_scale_2).
- We upload to GPU.
- We download from GPU.
- Finally, only to maintain the resolution in the final output, we do a
second reescale and encode.
And all works as expected. As all filters catch the change in the size...
except for the "hwdownload". Why I know it?
- Because if we interpose another rescale (in this case in gpu, with
"scale_cuda") in between the "hwupload" and the "hwdownload" then the
output is correct. This happens because the "hwupload" catch the size
change, and as the "hwdownload" doesn't see any size change, then nothing
fails.
Please, don't focuse in this "example". I created it to demonstrate the
bug! I see the problem when using a GPU reescaler chaging the size on-the-
fly. It's an unobserved bug so far.
To be more clear, I attach to images. The "before.png" is the output
before the command. The second "after.png" is when the error appears after
executing the command "Parsed_scale_2 -1 w 200".
Regards.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7564#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list