summaryrefslogtreecommitdiffstats
path: root/libavcodec/vaapi_decode.c
Commit message (Collapse)AuthorAgeFilesLines
* vaapi: Make the decode profile matching more explicitMark Thompson2017-12-021-9/+9
| | | | | Also fixes a bug where it could attempt to decode with an unsupported codec if allow-profile-mismatch was set.
* vaapi: Always free parameter buffers after vaEndPicture() with libva2Mark Thompson2017-10-251-2/+2
| | | | | | This is an ABI change in libva2: previously the Intel driver had this behaviour and it was implemented as a driver quirk, but now it is part of the specification so all drivers must do it.
* vaapi: Remove H.264 baseline profileMark Thompson2017-10-241-1/+0
| | | | | | This has been deprecated in libva2 because hardware does not and will not support it. Therefore never consider it for decode, and for encode assume the user meant constrained baseline profile instead.
* lavc: external hardware frame pool initializationwm42017-10-191-115/+101
| | | | | | | | | | | | This adds a new API, which allows the API user to query the required AVHWFramesContext parameters. This also reduces code duplication across the hwaccels by introducing ff_decode_get_hw_frames_ctx(), which uses the new API function. It takes care of initializing the hw_frames_ctx if needed, and does additional error handling and API usage checking. Support for VDA and Cuvid missing. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vaapi: Add external control of allow-profile-mismatchMark Thompson2017-04-261-9/+2
| | | | Uses the just-added ALLOW_PROFILE_MISMATCH flag.
* vaapi: Implement device-only setupMark Thompson2017-02-131-18/+111
| | | | | In this case, the user only supplies a device and the frame context is allocated internally by lavc.
* vaapi_decode: use the correct logging contextAnton Khirnov2016-12-191-3/+3
|
* hevcdec: add a VAAPI hwaccelAnton Khirnov2016-12-191-0/+1
| | | | | Partially based on a patch by Timo Rothenpieler <timo@rothenpieler.org>. Additional scaling list handling fix by Jun Zhao <mypopydev@gmail.com>.
* vaapi_decode: Remove vestigial unmap codeMark Thompson2016-10-241-4/+1
| | | | | | | The buffer map/unmap code was in an early version of this before it was committed, but the unmap was never removed. While wrong, this was harmless (and therefore unnoticed) because the buffers can't be mapped at this point - all drivers just did nothing with the call.
* vaapi_decode: Clear parameter buffers to fix picture reuseMark Thompson2016-10-241-0/+1
| | | | | | When decoding interlaced pictures, the structure is reused to render to the same surface twice. The parameter buffers were not being cleared, which caused the i965 driver to error out.
* vaapi_decode: Ignore the profile when not usefulMark Thompson2016-09-081-1/+2
| | | | | Enables VP8 decoding - the decoder places the the bitstream version in the profile field, which we want to ignore.
* lavc: Remove old vaapi decode infrastructureMark Thompson2016-08-301-32/+46
| | | | | Deprecates struct vaapi_context and the installed header vaapi.h, to be removed at the next version bump.
* lavc: Rewrite VAAPI decode infrastructureMark Thompson2016-08-301-0/+534
Moves much of the setup logic for VAAPI decoding into lavc; the user now need only provide the hw_frames_ctx.
OpenPOWER on IntegriCloud