Bug#1072419: gpac: FTBFS with ffmpeg 7.0: filters/ff_common.c:777:14: error: ‘AV_OPT_TYPE_CHANNEL_LAYOUT’ undeclared (first use in this function); did you mean ‘AV_OPT_TYPE_CHLAYOUT’?
Source: gpac
Version: 2.2.1+dfsg1-3.1
Severity: important
Tags: trixie sid ftbfs
Usertags: ffmpeg-7.0
Hi,
during a rebuild of the reverse dependencies for the transition to
ffmpeg 7.0, your package failed to build
Relevant part (hopefully):
> gcc -I"/<<PKGBUILDDIR>>/include" -O2 -Wall -fPIC -DPIC -I/usr/include/mozjs -DXP_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -fno-strict-aliasing -Wno-pointer-sign -fPIC -DPIC -std=gnu99 -Wno-deprecated -Wno-deprecated-declarations -Wno-int-in-bool-context -DGPAC_HAVE_CONFIG_H -I"/<<PKGBUILDDIR>>" -fvisibility="hidden" -g -I/usr/include/aarch64-linux-gnu -c -o filters/ff_avf.o filters/ff_avf.c
> filters/ff_common.c: In function ‘ffmpeg_arg_translate’:
> filters/ff_common.c:777:14: error: ‘AV_OPT_TYPE_CHANNEL_LAYOUT’ undeclared (first use in this function); did you mean ‘AV_OPT_TYPE_CHLAYOUT’?
> 777 | case AV_OPT_TYPE_CHANNEL_LAYOUT:
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~
> | AV_OPT_TYPE_CHLAYOUT
> filters/ff_common.c:777:14: note: each undeclared identifier is reported only once for each function it appears in
> filters/ff_common.c: In function ‘ffmpeg_codec_par_from_gpac’:
> filters/ff_common.c:2051:32: error: ‘AVCodecParameters’ has no member named ‘channels’
> 2051 | if (p) codecpar->channels = p->value.uint;
> | ^~
> filters/ff_common.c:2065:34: error: ‘AVCodecParameters’ has no member named ‘channels’
> 2065 | else if (codecpar->channels==2)
> | ^~
> filters/ff_avf.c: In function ‘ffavf_process’:
> filters/ff_avf.c:575:45: error: ‘AVFrame’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 575 | ctx->frame->channel_layout = ipid->ch_layout;
> | ^~~~~~~~~~~~~~
> | ch_layout
> filters/ff_avf.c:576:43: error: ‘AVFrame’ has no member named ‘channels’
> 576 | ctx->frame->channels = ipid->nb_ch;
> | ^~
> filters/ff_common.c:2067:27: error: ‘AVCodecParameters’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 2067 | codecpar->channel_layout = ffmpeg_channel_layout_from_gpac(ch_layout);
> | ^~~~~~~~~~~~~~
> | ch_layout
> filters/ff_avf.c:720:41: error: ‘AVFrame’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 720 | else if (frame->channel_layout!=opid->ch_layout) {}
> | ^~~~~~~~~~~~~~
> | ch_layout
> filters/ff_avf.c:721:39: error: ‘AVFrame’ has no member named ‘channels’
> 721 | else if (frame->channels != opid->nb_ch) {}
> | ^~
> filters/ff_avf.c:727:91: error: ‘AVFrame’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 727 | u64 gpac_ch_layout = ffmpeg_channel_layout_to_gpac(frame->channel_layout);
> | ^~~~~~~~~~~~~~
> | ch_layout
> In file included from filters/ff_common.h:27,
> from filters/ff_avf.c:30:
> filters/ff_avf.c:730:116: error: ‘AVFrame’ has no member named ‘channels’
> 730 | gf_filter_pid_set_property(opid->io_pid, GF_PROP_PID_NUM_CHANNELS, &PROP_UINT(frame->channels));
> | ^~
> /<<PKGBUILDDIR>>/include/gpac/filters.h:1473:78: note: in definition of macro ‘PROP_UINT’
> 1473 | #define PROP_UINT(_val) (GF_PropertyValue){.type=GF_PROP_UINT, .value.uint = _val}
> | ^~~~
> filters/ff_avf.c:736:58: error: ‘AVFrame’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 736 | opid->ch_layout = frame->channel_layout;
> | ^~~~~~~~~~~~~~
> | ch_layout
> filters/ff_avf.c:737:52: error: ‘AVFrame’ has no member named ‘channels’
> 737 | opid->nb_ch = frame->channels;
> | ^~
> filters/ff_common.c: In function ‘ffmpeg_codec_par_to_gpac’:
> filters/ff_common.c:2125:21: error: ‘AVCodecParameters’ has no member named ‘channels’
> 2125 | if (codecpar->channels) {
> | ^~
> In file included from filters/ff_common.h:27,
> from filters/ff_common.c:30:
> filters/ff_common.c:2126:95: error: ‘AVCodecParameters’ has no member named ‘channels’
> 2126 | gf_filter_pid_set_property(opid, GF_PROP_PID_NUM_CHANNELS, &PROP_UINT(codecpar->channels));
> | ^~
> /<<PKGBUILDDIR>>/include/gpac/filters.h:1473:78: note: in definition of macro ‘PROP_UINT’
> 1473 | #define PROP_UINT(_val) (GF_PropertyValue){.type=GF_PROP_UINT, .value.uint = _val}
> | ^~~~
> filters/ff_common.c:2127:31: error: ‘AVCodecParameters’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 2127 | if (codecpar->channel_layout) {
> | ^~~~~~~~~~~~~~
> | ch_layout
> filters/ff_avf.c: In function ‘ffavf_configure_pid’:
> filters/ff_avf.c:882:45: error: implicit declaration of function ‘av_get_default_channel_layout’ [-Werror=implicit-function-declaration]
> 882 | if (!ch_layout) ch_layout = av_get_default_channel_layout(p->value.uint);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> filters/ff_common.c:2128:142: error: ‘AVCodecParameters’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 2128 | gf_filter_pid_set_property(opid, GF_PROP_PID_CHANNEL_LAYOUT, &PROP_LONGUINT( ffmpeg_channel_layout_to_gpac(codecpar->channel_layout) ));
> | ^~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/include/gpac/filters.h:1481:87: note: in definition of macro ‘PROP_LONGUINT’
> 1481 | #define PROP_LONGUINT(_val) (GF_PropertyValue){.type=GF_PROP_LUINT, .value.longuint = _val}
> | ^~~~
> cc1: some warnings being treated as errors
> make[2]: *** [../config.mak:180: filters/ff_avf.o] Error 1
The full build log is available from:
https://people.debian.org/~sramacher/ffmpeg-7.0/gpac_arm64.build
ffmpeg 7.0 is available in experimental.
Cheers
--
Sebastian Ramacher
Reply to: