Opened 3 years ago

Closed 3 years ago

#2375 closed defect (fixed)

FFmpeg 4.4 "Rao" API changes break build

Reported by: bug Owned by: beastd
Priority: high Component: undetermined
Version: HEAD Severity: blocker
Keywords: ffmpeg Cc: Yury
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

Summary of the bug:

ffmpeg API changes break builds in the following files:

libmpcodecs/ad_spdif.c
libmpdemux/demux_lavf.c
sub/av_sub.c
libmpcodecs/vf_uspp.c:

Has this been discussed anywhere else? Is this a duplicate?

How to reproduce: (e.g.: AVStream API change)

Fresh checkout: svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer

Build pipeline: svn update && nice -- ./configure && nice -- make

At revision 38305.
No FFmpeg checkout, press enter to download one with git or CTRL+C to abort

Cloning into 'ffmpeg'...

...

cc -MMD -MP -Wundef -Wall -Wno-switch -Wno-parentheses -Wpointer-arith -Wredundant-decls -Werror=format-security -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99 -Werror-implicit-function-declaration -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ISOC99_SOURCE -I. -Iffmpeg -O4 -march=native -mtune=native -pipe -ffast-math -fomit-frame-pointer -fno-tree-vectorize -fno-asynchronous-unwind-tables -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -w -fpie -DPIC -D_REENTRANT -I/usr/include/p11-kit-1 -I/usr/include/kde/artsc -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -D_REENTRANT -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/sysprof-4 -pthread -DZLIB_CONST -I/usr/include/libxml2 -c -o libmpcodecs/ad_spdif.o libmpcodecs/ad_spdif.c
libmpcodecs/ad_spdif.c: In function 'init':
libmpcodecs/ad_spdif.c:129:33: error: 'AVStream' has no member named 'codec'

129 | lavf_ctx->streams[0]->codec->codec_id = fmt_id_type[i].id;

| ~

libmpcodecs/ad_spdif.c:164:33: error: 'AVStream' has no member named 'codec'

164 | switch (lavf_ctx->streams[0]->codec->codec_id) {

| ~

make: * [Makefile:728: libmpcodecs/ad_spdif.o] Error 1

Change History (4)

comment:1 by beastd, 3 years ago

Status: newopen

MPlayer currently fails to build with FFmpeg versions after the recent major bumps.

We are working on this at the moment.

An intial attempt to fix mplayer (not mencoder) was sent by Reimar on the developer list:

https://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2021-April/073982.html

comment:2 by beastd, 3 years ago

make mplayer should be working again after MPlayer SVN r38306 .

Build of mencoder is still failing. There is a patch for muxer_lavf on the mplayer-dev-eng mailing list, so ve_lavc is the last thing left to fix to make mencoder build again.

comment:3 by beastd, 3 years ago

Cc: Yury added

comment:4 by beastd, 3 years ago

Resolution: fixed
Status: openclosed

The build should be fixed since MPlayer SVN r38312 .

If the build still fails, feel free to re-open this ticket.

Thanks for reporting this issue.

Note: See TracTickets for help on using tickets.