From: François Cartegnie Date: Tue, 24 Sep 2024 11:53:11 +0000 (+0700) Subject: codec: x265: handle 4.0 encoding API change X-Git-Tag: archive/raspbian/3.0.21-7+rpi1^2~49 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e75dc3460950f93b555533232e1e3b065283cf2c;p=vlc.git codec: x265: handle 4.0 encoding API change refs #28799 (cherry picked from commit 83e2c3955a563b60f74f05cea57e3ab5f447c8fb) Gbp-Pq: Name 0077-codec-x265-handle-4.0-encoding-API-change.patch --- diff --git a/modules/codec/x265.c b/modules/codec/x265.c index 2943ea6e..50fe3285 100644 --- a/modules/codec/x265.c +++ b/modules/codec/x265.c @@ -74,6 +74,11 @@ static block_t *Encode(encoder_t *p_enc, picture_t *p_pict) x265_picture pic; x265_picture_init(&p_sys->param, &pic); +#ifdef MAX_SCALABLE_LAYERS + /* Handle API changes for scalable layers output in x265 4.0 */ + x265_picture *pics[MAX_SCALABLE_LAYERS] = {NULL}; + pics[0] = &pic; +#endif if (likely(p_pict)) { pic.pts = p_pict->date; @@ -92,8 +97,13 @@ static block_t *Encode(encoder_t *p_enc, picture_t *p_pict) x265_nal *nal; uint32_t i_nal = 0; +#ifdef MAX_SCALABLE_LAYERS + x265_encoder_encode(p_sys->h, &nal, &i_nal, + likely(p_pict) ? &pic : NULL, pics); +#else x265_encoder_encode(p_sys->h, &nal, &i_nal, likely(p_pict) ? &pic : NULL, &pic); +#endif if (!i_nal) return NULL;