Bug#1072415: gmerlin-encoders: FTBFS with ffmpeg 7.0: codec.c:340:8: error: ‘AVCodecContext’ has no member named ‘channels’
Source: gmerlin-encoders
Version: 2.0.0~svn6278-4
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):
> /bin/bash ../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/aarch64-linux-gnu -I/usr/include/aarch64-linux-gnu -DLOCALE_DIR=\"/usr/share/locale\" -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -D_REENTRANT -D_FILE_OFFSET_BITS=64 -O3 -fomit-frame-pointer -ffast-math -I/usr/include/libxml2 -Wall -Wmissing-declarations -Wdeclaration-after-statement -c -o codec.lo codec.c
> libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../include -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/aarch64-linux-gnu -I/usr/include/aarch64-linux-gnu -DLOCALE_DIR=\"/usr/share/locale\" -g -O2 -Werror=implicit-function-declaration "-ffile-prefix-map=/<<PKGBUILDDIR>>=." -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -D_REENTRANT -D_FILE_OFFSET_BITS=64 -O3 -fomit-frame-pointer -ffast-math -I/usr/include/libxml2 -Wall -Wmissing-declarations -Wdeclaration-after-statement -c codec.c -fPIC -DPIC -o .libs/codec.o
> codec.c: In function ‘find_encoder’:
> codec.c:54:19: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> 54 | if(!(ctx->codec = avcodec_find_encoder(ctx->id)))
> | ^
> codec.c: In function ‘flush_audio’:
> codec.c:212:3: warning: ‘av_init_packet’ is deprecated [-Wdeprecated-declarations]
> 212 | av_init_packet(&pkt);
> | ^~~~~~~~~~~~~~
> In file included from /usr/include/aarch64-linux-gnu/libavcodec/codec_par.h:33,
> from /usr/include/aarch64-linux-gnu/libavformat/avformat.h:312,
> from ffmpeg_common.h:24,
> from codec.c:22:
> /usr/include/aarch64-linux-gnu/libavcodec/packet.h:653:6: note: declared here
> 653 | void av_init_packet(AVPacket *pkt);
> | ^~~~~~~~~~~~~~
> codec.c:255:5: warning: ‘av_init_packet’ is deprecated [-Wdeprecated-declarations]
> 255 | av_init_packet(&pkt);
> | ^~~~~~~~~~~~~~
> /usr/include/aarch64-linux-gnu/libavcodec/packet.h:653:6: note: declared here
> 653 | void av_init_packet(AVPacket *pkt);
> | ^~~~~~~~~~~~~~
> codec.c: In function ‘bg_ffmpeg_set_audio_format_avctx’:
> codec.c:340:8: error: ‘AVCodecContext’ has no member named ‘channels’
> 340 | avctx->channels = fmt->num_channels;
> | ^~
> codec.c: In function ‘bg_ffmpeg_set_audio_format_params’:
> codec.c:350:8: error: ‘AVCodecParameters’ has no member named ‘channels’
> 350 | avctx->channels = fmt->num_channels;
> | ^~
> codec.c: In function ‘bg_ffmpeg_codec_open_audio’:
> codec.c:370:15: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
> 370 | ctx->avctx->channel_layout =
> | ^~~~~~~~~~~~~~
> | ch_layout
> codec.c:405:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> 405 | ((ofmt = guess_format(ctx->format->short_name, NULL, NULL)) &&
> | ^
> codec.c: In function ‘flush_video’:
> codec.c:509:5: warning: ‘av_init_packet’ is deprecated [-Wdeprecated-declarations]
> 509 | av_init_packet(&pkt);
> | ^~~~~~~~~~~~~~
> /usr/include/aarch64-linux-gnu/libavcodec/packet.h:653:6: note: declared here
> 653 | void av_init_packet(AVPacket *pkt);
> | ^~~~~~~~~~~~~~
> codec.c: In function ‘bg_ffmpeg_codec_open_video’:
> codec.c:744:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> 744 | ((ofmt = guess_format(ctx->format->short_name, NULL, NULL)) &&
> | ^
> make[3]: *** [Makefile:670: codec.lo] Error 1
The full build log is available from:
https://people.debian.org/~sramacher/ffmpeg-7.0/gmerlin-encoders_arm64.build
ffmpeg 7.0 is available in experimental.
Cheers
--
Sebastian Ramacher
Reply to: