]> git.sesse.net Git - ffmpeg/commit
ffmpeg: Don't require a known device to pass a frames context to an encoder
authorMark Thompson <sw@jkqxz.net>
Tue, 28 Apr 2020 22:56:42 +0000 (23:56 +0100)
committerMark Thompson <sw@jkqxz.net>
Sun, 3 May 2020 15:04:27 +0000 (16:04 +0100)
commit706ed34ce7aca7be4adab69a55dab02f4573591a
tree083945cd61e0b9d59916088741d4581b7f55b688
parent1a9684c08a631b600353e946d67188a715243abe
ffmpeg: Don't require a known device to pass a frames context to an encoder

The previous code here did not handle passing a frames context when
ffmpeg itself did not know about the device it came from (for example,
because it was created by device derivation inside a filter graph), which
would break encoders requiring that input.  Fix that by checking for HW
frames and device context methods independently, and prefer to use a
frames context method if possible.  At the same time, revert the encoding
additions to the device matching function because the additional
complexity was not relevant to decoding.

Also fixes #8637, which is the same case but with the device creation
hidden in the ad-hoc libmfx setup code.
fftools/ffmpeg_hw.c