[Pkg-alsa-devel] Bug#1072398: alsa-plugins: FTBFS with ffmpeg 7.0: pcm_a52.c:672:29: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?

Sebastian Ramacher sramacher at debian.org
Sun Jun 2 14:14:54 BST 2024


Source: alsa-plugins
Version: 1.2.7.1-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):
> /bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..   -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g  -I/usr/include/aarch64-linux-gnu  -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o pcm_a52.lo pcm_a52.c
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -I/usr/include/aarch64-linux-gnu -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c pcm_a52.c  -fPIC -DPIC -o .libs/pcm_a52.o
> pcm_a52.c: In function ‘a52_free’:
> pcm_a52.c:631:17: warning: ‘avcodec_close’ is deprecated [-Wdeprecated-declarations]
>   631 |                 avcodec_close(rec->avctx);
>       |                 ^~~~~~~~~~~~~
> In file included from pcm_a52.c:28:
> /usr/include/aarch64-linux-gnu/libavcodec/avcodec.h:2387:5: note: declared here
>  2387 | int avcodec_close(AVCodecContext *avctx);
>       |     ^~~~~~~~~~~~~
> pcm_a52.c: In function ‘set_channel_layout’:
> pcm_a52.c:672:29: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   672 |                 rec->avctx->channel_layout = AV_CH_LAYOUT_STEREO;
>       |                             ^~~~~~~~~~~~~~
>       |                             ch_layout
> pcm_a52.c:675:29: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   675 |                 rec->avctx->channel_layout = AV_CH_LAYOUT_QUAD;
>       |                             ^~~~~~~~~~~~~~
>       |                             ch_layout
> pcm_a52.c:678:29: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   678 |                 rec->avctx->channel_layout = AV_CH_LAYOUT_5POINT1;
>       |                             ^~~~~~~~~~~~~~
>       |                             ch_layout
> pcm_a52.c: In function ‘alloc_input_buffer’:
> pcm_a52.c:698:19: error: ‘AVFrame’ has no member named ‘channels’
>   698 |         rec->frame->channels = rec->avctx->channels;
>       |                   ^~
> pcm_a52.c:698:42: error: ‘AVCodecContext’ has no member named ‘channels’
>   698 |         rec->frame->channels = rec->avctx->channels;
>       |                                          ^~
> pcm_a52.c:699:21: error: ‘AVFrame’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   699 |         rec->frame->channel_layout = rec->avctx->channel_layout;
>       |                     ^~~~~~~~~~~~~~
>       |                     ch_layout
> pcm_a52.c:699:50: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
>   699 |         rec->frame->channel_layout = rec->avctx->channel_layout;
>       |                                                  ^~~~~~~~~~~~~~
>       |                                                  ch_layout
> pcm_a52.c: In function ‘a52_prepare’:
> pcm_a52.c:734:19: error: ‘AVCodecContext’ has no member named ‘channels’
>   734 |         rec->avctx->channels = io->channels;
>       |                   ^~
> pcm_a52.c: In function ‘_snd_pcm_a52_open’:
> pcm_a52.c:1124:28: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
>  1124 |                 rec->codec = avcodec_find_encoder_by_name(avcodec);
>       |                            ^
> pcm_a52.c:1126:28: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
>  1126 |                 rec->codec = avcodec_find_encoder_by_name("ac3_fixed");
>       |                            ^
> pcm_a52.c:1128:36: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
>  1128 |                         rec->codec = avcodec_find_encoder_by_name("ac3");
>       |                                    ^
> pcm_a52.c:1131:28: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
>  1131 |                 rec->codec = avcodec_find_encoder(AV_CODEC_ID_AC3);
>       |                            ^
> make[3]: *** [Makefile:469: pcm_a52.lo] Error 1


The full build log is available from:
https://people.debian.org/~sramacher/ffmpeg-7.0/alsa-plugins_arm64.build

ffmpeg 7.0 is available in experimental.

Cheers
-- 
Sebastian Ramacher



More information about the Pkg-alsa-devel mailing list