[R-pkg-team] Bug#1004814: r-cran-av: FTBFS with ffmpeg 5.0

Sebastian Ramacher sramacher at debian.org
Tue Feb 1 22:22:51 GMT 2022


Source: r-cran-av
Version: 0.6.0+dfsg-1
Severity: important
X-Debbugs-Cc: sramacher at debian.org
Tags: sid bookworm ftbfs
Usertags: ffmpeg5.0

r-cran-av FTBFS with ffmpeg 5.0 in experimental:

gcc -std=gnu99 -std=gnu11 -I"/usr/share/R/include" -DNDEBUG -I/usr/include/x86_64-linux-gnu    -fvisibility=hidden -fpic  -g -O2 -ffile-prefix-map=/build/r-base-PT7Nxy/r-base-4.1.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c fft.c -o fft.o
fft.c:17:3: error: unknown type name ‘AVCodecContext’
   17 |   AVCodecContext *decoder;
      |   ^~~~~~~~~~~~~~
fft.c:64:72: error: unknown type name ‘AVCodecContext’; did you mean ‘AVIODirContext’?
   64 | static input_container * new_input_container(AVFormatContext *demuxer, AVCodecContext *decoder, AVStream *stream){
      |                                                                        ^~~~~~~~~~~~~~
      |                                                                        AVIODirContext
fft.c: In function ‘close_input’:
fft.c:76:3: warning: implicit declaration of function ‘avcodec_close’; did you mean ‘avio_close’? [-Wimplicit-function-declaration]
   76 |   avcodec_close(input->decoder);
      |   ^~~~~~~~~~~~~
      |   avio_close
fft.c:77:3: warning: implicit declaration of function ‘avcodec_free_context’; did you mean ‘avformat_free_context’? [-Wimplicit-function-declaration]
   77 |   avcodec_free_context(&(input->decoder));
      |   ^~~~~~~~~~~~~~~~~~~~
      |   avformat_free_context
fft.c: In function ‘open_input’:
fft.c:136:20: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  136 |   AVCodec *codec = avcodec_find_decoder(stream->codecpar->codec_id);
      |                    ^~~~~~~~~~~~~~~~~~~~
fft.c:138:3: error: unknown type name ‘AVCodecContext’; use ‘struct’ keyword to refer to the type
  138 |   AVCodecContext *decoder = avcodec_alloc_context3(codec);
      |   ^~~~~~~~~~~~~~
      |   struct 
fft.c:138:29: warning: implicit declaration of function ‘avcodec_alloc_context3’; did you mean ‘avio_alloc_context’? [-Wimplicit-function-declaration]
  138 |   AVCodecContext *decoder = avcodec_alloc_context3(codec);
      |                             ^~~~~~~~~~~~~~~~~~~~~~
      |                             avio_alloc_context
fft.c:138:29: warning: initialization of ‘int *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
fft.c:139:11: warning: implicit declaration of function ‘avcodec_parameters_to_context’; did you mean ‘avcodec_parameters_copy’? [-Wimplicit-function-declaration]
  139 |   bail_if(avcodec_parameters_to_context(decoder, stream->codecpar), "avcodec_parameters_to_context");
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |           avcodec_parameters_copy
fft.c:140:11: warning: implicit declaration of function ‘avcodec_open2’; did you mean ‘avio_open2’? [-Wimplicit-function-declaration]
  140 |   bail_if(avcodec_open2(decoder, codec, NULL), "avcodec_open2 (audio)");
      |           ^~~~~~~~~~~~~
      |           avio_open2
fft.c:141:15: error: request for member ‘channel_layout’ in something not a structure or union
  141 |   if (!decoder->channel_layout) /* Is this needed ?*/
      |               ^~
fft.c:142:12: error: request for member ‘channel_layout’ in something not a structure or union
  142 |     decoder->channel_layout = av_get_default_channel_layout(decoder->channels);
      |            ^~
fft.c:142:68: error: request for member ‘channels’ in something not a structure or union
  142 |     decoder->channel_layout = av_get_default_channel_layout(decoder->channels);
      |                                                                    ^~
fft.c:143:10: warning: implicit declaration of function ‘new_input_container’ [-Wimplicit-function-declaration]
  143 |   return new_input_container(demuxer, decoder, demuxer->streams[si]);
      |          ^~~~~~~~~~~~~~~~~~~
fft.c:143:10: warning: returning ‘int’ from a function with return type ‘input_container *’ makes pointer from integer without a cast [-Wint-conversion]
  143 |   return new_input_container(demuxer, decoder, demuxer->streams[si]);
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fft.c: At top level:
fft.c:162:37: error: unknown type name ‘AVCodecContext’; did you mean ‘AVIODirContext’?
  162 | static SwrContext *create_resampler(AVCodecContext *decoder, int64_t sample_rate, int64_t layout, enum AVSampleFormat fmt){
      |                                     ^~~~~~~~~~~~~~
      |                                     AVIODirContext
fft.c:169:41: error: unknown type name ‘AVCodecContext’; did you mean ‘AVIODirContext’?
  169 | static SwrContext *create_resampler_fft(AVCodecContext *decoder, int64_t sample_rate){
      |                                         ^~~~~~~~~~~~~~
      |                                         AVIODirContext
fft.c:173:41: error: unknown type name ‘AVCodecContext’; did you mean ‘AVIODirContext’?
  173 | static SwrContext *create_resampler_bin(AVCodecContext *decoder, int64_t sample_rate, int channels){
      |                                         ^~~~~~~~~~~~~~
      |                                         AVIODirContext
fft.c: In function ‘run_fft’:
fft.c:217:17: warning: implicit declaration of function ‘avcodec_receive_frame’; did you mean ‘avcodec_profile_name’? [-Wimplicit-function-declaration]
  217 |       int ret = avcodec_receive_frame(input->decoder, frame);
      |                 ^~~~~~~~~~~~~~~~~~~~~
      |                 avcodec_profile_name
fft.c:221:19: warning: implicit declaration of function ‘avcodec_send_packet’; did you mean ‘av_append_packet’? [-Wimplicit-function-declaration]
  221 |           bail_if(avcodec_send_packet(input->decoder, NULL), "avcodec_send_packet (flush)");
      |                   ^~~~~~~~~~~~~~~~~~~
      |                   av_append_packet
fft.c: In function ‘run_bin’:
fft.c:294:3: error: unknown type name ‘AVCodecContext’; use ‘struct’ keyword to refer to the type
  294 |   AVCodecContext *decoder = input->decoder;
      |   ^~~~~~~~~~~~~~
      |   struct 
fft.c:295:24: warning: implicit declaration of function ‘av_get_audio_frame_duration’; did you mean ‘av_get_audio_frame_duration2’? [-Wimplicit-function-declaration]
  295 |   int max_frame_size = av_get_audio_frame_duration(decoder, 0);
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                        av_get_audio_frame_duration2
fft.c:297:72: error: request for member ‘codec’ in something not a structure or union
  297 |     REprintf("Unknown frame size for input audio format: %s\n", decoder->codec->name);
      |                                                                        ^~
fft.c: In function ‘R_audio_fft’:
fft.c:364:3: error: unknown type name ‘AVCodecContext’; use ‘struct’ keyword to refer to the type
  364 |   AVCodecContext *decoder = output->input->decoder;
      |   ^~~~~~~~~~~~~~
      |   struct 
fft.c:365:88: error: request for member ‘sample_rate’ in something not a structure or union
  365 |   int output_sample_rate = Rf_length(sample_rate) ? Rf_asInteger(sample_rate) : decoder->sample_rate;
      |                                                                                        ^~
fft.c:366:17: warning: implicit declaration of function ‘create_resampler_fft’ [-Wimplicit-function-declaration]
  366 |   output->swr = create_resampler_fft(decoder, output_sample_rate);
      |                 ^~~~~~~~~~~~~~~~~~~~
fft.c:366:15: warning: assignment to ‘SwrContext *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  366 |   output->swr = create_resampler_fft(decoder, output_sample_rate);
      |               ^
fft.c: In function ‘R_audio_bin’:
fft.c:392:3: error: unknown type name ‘AVCodecContext’; use ‘struct’ keyword to refer to the type
  392 |   AVCodecContext *decoder = output->input->decoder;
      |   ^~~~~~~~~~~~~~
      |   struct 
fft.c:393:88: error: request for member ‘sample_rate’ in something not a structure or union
  393 |   int output_sample_rate = Rf_length(sample_rate) ? Rf_asInteger(sample_rate) : decoder->sample_rate;
      |                                                                                        ^~
fft.c:394:79: error: request for member ‘channels’ in something not a structure or union
  394 |   int output_channels = Rf_length(channels) ? Rf_asInteger(channels) : decoder->channels;
      |                                                                               ^~
fft.c:396:17: warning: implicit declaration of function ‘create_resampler_bin’ [-Wimplicit-function-declaration]
  396 |   output->swr = create_resampler_bin(output->input->decoder, output_sample_rate, output_channels);
      |                 ^~~~~~~~~~~~~~~~~~~~
fft.c:396:15: warning: assignment to ‘SwrContext *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  396 |   output->swr = create_resampler_bin(output->input->decoder, output_sample_rate, output_channels);
      |               ^
make[1]: *** [/usr/lib/R/etc/Makeconf:168: fft.o] Error 1

Cheers
-- 
Sebastian Ramacher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/r-pkg-team/attachments/20220201/fdf8a933/attachment.sig>


More information about the R-pkg-team mailing list