mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-11 17:55:21 +00:00
lavc/vaapi_encode: add EQUAL_MULTI_ROWS support for slice structure
VA_ENC_SLICE_STRUCTURE_EQUAL_MULTI_ROWS is added to in the latest
libva (1.8.0) which matches the hardware behaviour:
/** \brief Driver supports any number of rows per slice but they must
* be the same for all slices except for the last one, which must be
* equal or smaller to the previous slices.
*/
And VA_ENC_SLICE_STRUCTURE_EQUAL_ROWS is kind of deprecated for iHD
since it's somehow introduced in [1] which is misleading from what we
actually handles.
[1]<0e6d5441f1
>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
This commit is contained in:
parent
91a9f86edf
commit
489c5db079
@ -1900,6 +1900,9 @@ static av_cold int vaapi_encode_init_slice_structure(AVCodecContext *avctx)
|
||||
req_slices = avctx->slices;
|
||||
}
|
||||
if (slice_structure & VA_ENC_SLICE_STRUCTURE_ARBITRARY_ROWS ||
|
||||
#if VA_CHECK_VERSION(1, 8, 0)
|
||||
slice_structure & VA_ENC_SLICE_STRUCTURE_EQUAL_MULTI_ROWS ||
|
||||
#endif
|
||||
slice_structure & VA_ENC_SLICE_STRUCTURE_ARBITRARY_MACROBLOCKS) {
|
||||
ctx->nb_slices = req_slices;
|
||||
ctx->slice_size = ctx->slice_block_rows / ctx->nb_slices;
|
||||
|
Loading…
Reference in New Issue
Block a user