On Tue, May 12, 2020 at 9:49 PM Linjie Fu <linjie...@intel.com> wrote: > > 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] however misleading from what we > actually handle, and one row per slice would not get a good quality. > > Caps query support in driver is WIP, and this would fix the multi slice > encoding for VAEntrypointEncSliceLP. > > [1]<https://github.com/intel/libva/commit/0e6d5441f19bdc674b4da3169d614d10fd644778> > > Signed-off-by: Linjie Fu <linjie...@intel.com> > --- > libavcodec/vaapi_encode.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/libavcodec/vaapi_encode.c b/libavcodec/vaapi_encode.c > index cb05ebd..234618a 100644 > --- a/libavcodec/vaapi_encode.c > +++ b/libavcodec/vaapi_encode.c > @@ -1888,6 +1888,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; > -- > 2.7.4
Full support is provided in libva[1] and media-driver[2], and we've observed it works for multi slice encoding for AVC. (300+ cases) Prefer to apply this soon with commit message refined. - Linjie [1] https://github.com/intel/libva/commit/0e6d5441f19bdc674b4da3169d614d10fd644778 [2] https://github.com/intel/media-driver/commit/c63d4b1dbed4ed186e4c4ea67a3e3601367d9a8e _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".