summaryrefslogtreecommitdiff
path: root/libavcodec/vaapi_encode.h
Commit message (Collapse)AuthorAge
* vaapi_encode: Remove common priv_data and options fieldsMark Thompson2018-08-27
| | | | | The codec-specific context now contains both the common context and the codec-specific options directly.
* lavc/vaapi_encode: Change the slice/parameter buffers to dynamic alloc.Jun Zhao2017-08-28
| | | | | | | | Change the slice/parameter buffers to be allocated dynamically. Signed-off-by: Wang, Yi A <yi.a.wang@intel.com> Signed-off-by: Jun Zhao <jun.zhao@intel.com> Signed-off-by: Mark Thompson <sw@jkqxz.net>
* vaapi_encode: Move quality option to common codeMark Thompson2017-08-20
| | | | | | | | | | | Use AVCodecContext.compression_level rather than a private option, replacing the H.264-specific quality option (which stays only for compatibility). This now works with the H.265 encoder in the i965 driver, as well as the existing cases with the H.264 encoder. (cherry picked from commit 19388a7200e5d99c703271f05dba1c806720e808)
* vaapi_encode: Pass framerate parameters to driverMark Thompson2017-02-08
| | | | | | | | | Only do this when building for a recent VAAPI version - initial driver implementations were confused about the interpretation of the framerate field, but hopefully this will be consistent everywhere once 0.40.0 is released. (cherry picked from commit ff35aa8ca4069bf1543adeec4c28e51e4a012eee)
* vaapi_encode: Add MPEG-2 supportMark Thompson2017-02-08
| | | | (cherry picked from commit ca6ae3b77a7e6600e517723b90e57527a47809de)
* vaapi_encode: Support forcing IDR frames via AVFrame.pict_typeMark Thompson2017-02-08
| | | | (cherry picked from commit a3c3a5eac20a51d402c332cdf5220fff40a7943f)
* vaapi_encode: Fix GOP sizingMark Thompson2017-02-08
| | | | | | | | This change makes the configured GOP size be respected exactly - previously the value could be exceeded slightly due to flaws in the frame type selection logic. (cherry picked from commit 37fab0661a760b2a9d727939d72e629acee1a6ef)
* vaapi_encode: Write sequence header as extradataMark Thompson2016-12-05
| | | | | | | Only works if packed headers are supported, where we can know the output before generating the first frame. (cherry picked from commit 0cf86fabfa5820596cca2cfead63c6f8df76c3f2)
* vaapi_encode: Check packed header capabilitiesMark Thompson2016-11-21
| | | | | | | This improves behaviour with drivers which do not support packed headers, such as AMD VCE on mesa/gallium. (cherry picked from commit 892bbbcdc171ff0d08d69636a240ffb95f54243c)
* vaapi_encode: Refactor initialisationMark Thompson2016-11-21
| | | | | | | | | | This allows better checking of capabilities and will make it easier to add more functionality later. It also commonises some duplicated code around rate control setup and adds more comments explaining the internals. (cherry picked from commit 80a5d05108cb218e8cd2e25c6621a3bfef0a832e)
* Merge commit '8a62d2c28fbacd1ae20c35887a1eecba2be14371'Hendrik Leppkes2016-11-13
|\ | | | | | | | | | | | | * commit '8a62d2c28fbacd1ae20c35887a1eecba2be14371': vaapi_encode: Maintain a pool of bitstream output buffers Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * vaapi_encode: Maintain a pool of bitstream output buffersMark Thompson2016-06-26
| | | | | | | | | | | | | | | | | | Previously we would allocate a new one for every frame. This instead maintains an AVBufferPool of them to use as-needed. Also makes the maximum size of an output buffer adapt to the frame size - the fixed upper bound was a bit too easy to hit when encoding large pictures at high quality.
* | Merge commit '19d7667a81499d4357ec8e0851701e17c238e584'Clément Bœsch2016-06-29
|\| | | | | | | | | | | | | * commit '19d7667a81499d4357ec8e0851701e17c238e584': vaapi_encode: Add support for writing arbitrary additional packed headers Merged-by: Clément Bœsch <clement@stupeflix.com>
| * vaapi_encode: Add support for writing arbitrary additional packed headersMark Thompson2016-06-09
| |
* | Merge commit '92fdea37477b5a2d1329e5ef0773e24473fa8f12'Derek Buitenhuis2016-05-11
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are all trivial to merge. * commit '92fdea37477b5a2d1329e5ef0773e24473fa8f12': vaapi_h265: Add -qp option, use it to replace use of -global_quality vaapi_h265: Add constant-bitrate encode support vaapi_h264: Add encode quality option (for quality-speed tradeoff) vaapi_h264: Add -qp option, use it to replace use of -global_quality vaapi_encode: Add support for codec-local options vaapi_h264: Add constant-bitrate encode support vaapi_encode: Refactor slightly to allow easier setting of global options Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * vaapi_encode: Add support for codec-local optionsMark Thompson2016-04-15
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * vaapi_encode: Refactor slightly to allow easier setting of global optionsMark Thompson2016-04-15
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit '104c804bcaac24b52eb51ed17df2fb311e6ae73e'Derek Buitenhuis2016-05-08
|/ | | | | | | * commit '104c804bcaac24b52eb51ed17df2fb311e6ae73e': lavc: VAAPI encode common infrastructure Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* lavc: VAAPI encode common infrastructureMark Thompson2016-03-30
Signed-off-by: Anton Khirnov <anton@khirnov.net>