[FFmpeg-devel] [PATCH 4/4] avcodec/libx265: encode dovi RPUs

Jan Ekström jeebjp at gmail.com
Wed Mar 20 23:22:03 EET 2024


On Wed, Mar 20, 2024 at 9:30 PM Michael Niedermayer
<michael at niedermayer.cc> wrote:
>
> On Tue, Mar 19, 2024 at 08:16:42PM +0100, Niklas Haas wrote:
> > From: Niklas Haas <git at haasn.dev>
> >
> > libx265 supports these natively, we just need to forward them to the
> > x265picture.
> > ---
> >  libavcodec/libx265.c | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
>
> breaks build here
>
> CC      libavcodec/libx265.o
> libavcodec/libx265.c: In function ‘free_picture’:
> libavcodec/libx265.c:563:16: error: ‘x265_picture {aka struct x265_picture}’ has no member named ‘rpu’
>      av_free(pic->rpu.payload);
>                 ^~
> libavcodec/libx265.c: In function ‘libx265_encode_frame’:
> libavcodec/libx265.c:701:20: error: ‘x265_picture {aka struct x265_picture}’ has no member named ‘rpu’
>              x265pic.rpu.payload = av_memdup(sd->data, sd->size);
>                     ^
> libavcodec/libx265.c:702:25: error: ‘x265_picture {aka struct x265_picture}’ has no member named ‘rpu’
>              if (!x265pic.rpu.payload) {
>                          ^
> libavcodec/libx265.c:706:20: error: ‘x265_picture {aka struct x265_picture}’ has no member named ‘rpu’
>              x265pic.rpu.payloadSize = sd->size;
>                     ^
> ffbuild/common.mak:81: recipe for target 'libavcodec/libx265.o' failed
> make: *** [libavcodec/libx265.o] Error 1
>

The RPU structure and its location in x265_picture was added in
5a7d027d82821a8b4d9c768d6b8fb0560557e2bd , bumping X265_BUILD to 167
(2018-09-27) .

Configure check is currently for 89, and we already check in the
wrapper for 130 and 159. So possibly it makes sense to just bump the
requirement to a version from 2018? Otherwise just another #if
X265_BUILD >= 167 ?

Jan


More information about the ffmpeg-devel mailing list