Bug#1004813: retroarch: FTBFS with ffmpeg 5.0

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


Source: retroarch
Version: 1.7.3+dfsg1-1.1
Severity: important
X-Debbugs-Cc: sramacher at debian.org
Tags: sid bookworm ftbfs
Usertags: ffmpeg5.0

retroarch FTBFS with ffmpeg 5.0 in experimental:

MOC ui/drivers/qt/ui_qt_load_core_window.h
CXX obj-unix/release/ui/drivers/moc_ui_qt.cpp
record/drivers/record_ffmpeg.c: In function ‘ffmpeg_init_audio’:
record/drivers/record_ffmpeg.c:321:37: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  321 |    AVCodec *codec                 = avcodec_find_encoder_by_name(
      |                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
record/drivers/record_ffmpeg.c: In function ‘ffmpeg_init_video’:
record/drivers/record_ffmpeg.c:410:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  410 |       codec = avcodec_find_encoder_by_name(params->vcodec);
      |             ^
record/drivers/record_ffmpeg.c:415:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  415 |       codec = avcodec_find_encoder_by_name("libx264rgb");
      |             ^
record/drivers/record_ffmpeg.c:525:11: warning: implicit declaration of function ‘avpicture_get_size’ [-Wimplicit-function-declaration]
  525 |    size = avpicture_get_size(video->pix_fmt, param->out_width,
      |           ^~~~~~~~~~~~~~~~~~
record/drivers/record_ffmpeg.c:530:4: warning: implicit declaration of function ‘avpicture_fill’ [-Wimplicit-function-declaration]
  530 |    avpicture_fill((AVPicture*)video->conv_frame, video->conv_frame_buf,
      |    ^~~~~~~~~~~~~~
record/drivers/record_ffmpeg.c:530:20: error: ‘AVPicture’ undeclared (first use in this function); did you mean ‘AVPictureType’?
  530 |    avpicture_fill((AVPicture*)video->conv_frame, video->conv_frame_buf,
      |                    ^~~~~~~~~
      |                    AVPictureType
record/drivers/record_ffmpeg.c:530:20: note: each undeclared identifier is reported only once for each function it appears in
record/drivers/record_ffmpeg.c:530:30: error: expected expression before ‘)’ token
  530 |    avpicture_fill((AVPicture*)video->conv_frame, video->conv_frame_buf,
      |                              ^
record/drivers/record_ffmpeg.c: In function ‘ffmpeg_init_muxer_pre’:
record/drivers/record_ffmpeg.c:622:18: error: ‘AVFormatContext’ has no member named ‘filename’
  622 |    av_strlcpy(ctx->filename, handle->params.filename, sizeof(ctx->filename));
      |                  ^~
record/drivers/record_ffmpeg.c:622:65: error: ‘AVFormatContext’ has no member named ‘filename’
  622 |    av_strlcpy(ctx->filename, handle->params.filename, sizeof(ctx->filename));
      |                                                                 ^~
record/drivers/record_ffmpeg.c:627:47: error: ‘AVFormatContext’ has no member named ‘filename’
  627 |       ctx->oformat = av_guess_format(NULL, ctx->filename, NULL);
      |                                               ^~
record/drivers/record_ffmpeg.c:632:31: error: ‘AVFormatContext’ has no member named ‘filename’
  632 |    if (avio_open(&ctx->pb, ctx->filename, AVIO_FLAG_WRITE) < 0)
      |                               ^~
record/drivers/record_ffmpeg.c: In function ‘ffmpeg_init_muxer_post’:
record/drivers/record_ffmpeg.c:647:10: error: ‘AVStream’ has no member named ‘codec’
  647 |    stream->codec = handle->video.codec;
      |          ^~
record/drivers/record_ffmpeg.c:648:30: error: ‘AVStream’ has no member named ‘codec’
  648 |    stream->time_base = stream->codec->time_base;
      |                              ^~
record/drivers/record_ffmpeg.c:657:13: error: ‘AVStream’ has no member named ‘codec’
  657 |       stream->codec = handle->audio.codec;
      |             ^~
record/drivers/record_ffmpeg.c:658:33: error: ‘AVStream’ has no member named ‘codec’
  658 |       stream->time_base = stream->codec->time_base;
      |                                 ^~
record/drivers/record_ffmpeg.c: In function ‘ffmpeg_new’:
record/drivers/record_ffmpeg.c:790:4: warning: implicit declaration of function ‘av_register_all’ [-Wimplicit-function-declaration]
  790 |    av_register_all();
      |    ^~~~~~~~~~~~~~~
record/drivers/record_ffmpeg.c: In function ‘encode_video’:
record/drivers/record_ffmpeg.c:949:8: warning: implicit declaration of function ‘avcodec_encode_video2’; did you mean ‘avcodec_encode_subtitle’? [-Wimplicit-function-declaration]
  949 |    if (avcodec_encode_video2(handle->video.codec, pkt, frame, &got_packet) < 0)
      |        ^~~~~~~~~~~~~~~~~~~~~
      |        avcodec_encode_subtitle
record/drivers/record_ffmpeg.c: In function ‘encode_audio’:
record/drivers/record_ffmpeg.c:1116:8: warning: implicit declaration of function ‘avcodec_encode_audio2’; did you mean ‘avcodec_encode_subtitle’? [-Wimplicit-function-declaration]
 1116 |    if (avcodec_encode_audio2(handle->audio.codec,
      |        ^~~~~~~~~~~~~~~~~~~~~
      |        avcodec_encode_subtitle
make[2]: *** [Makefile:191: obj-unix/release/record/drivers/record_ffmpeg.o] Error 1
make[2]: *** Waiting for unfinished jobs....
network/netplay/netplay_io.c: In function ‘netplay_announce_nat_traversal’:
network/netplay/netplay_io.c:2016:36: warning: ‘%s’ directive output may be truncated writing up to 4095 bytes into a region of size 510 [-Wformat-truncation=]
 2016 |    snprintf(msg, sizeof(msg), "%s: %s:%s\n",
      |                                    ^~
 2017 |          msg_hash_to_str(MSG_PUBLIC_ADDRESS),
 2018 |          host, port);
      |          ~~~~                       
In file included from /usr/include/stdio.h:866,
                 from network/netplay/netplay_io.c:19:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 5 or more bytes (assuming 4105) into a destination of size 512
   71 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   72 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   73 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘libretro_ffmpeg_retro_init’:
cores/libretro-ffmpeg/ffmpeg_core.c:216:4: warning: implicit declaration of function ‘av_register_all’; did you mean ‘avdevice_register_all’? [-Wimplicit-function-declaration]
  216 |    av_register_all();
      |    ^~~~~~~~~~~~~~~
      |    avdevice_register_all
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘open_codec’:
cores/libretro-ffmpeg/ffmpeg_core.c:759:62: error: ‘AVStream’ has no member named ‘codec’
  759 |    AVCodec *codec = avcodec_find_decoder(fctx->streams[index]->codec->codec_id);
      |                                                              ^~
cores/libretro-ffmpeg/ffmpeg_core.c:767:31: error: ‘AVStream’ has no member named ‘codec’
  767 |    *ctx = fctx->streams[index]->codec;
      |                               ^~
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘open_codecs’:
cores/libretro-ffmpeg/ffmpeg_core.c:852:31: error: ‘AVStream’ has no member named ‘codec’
  852 |       switch (fctx->streams[i]->codec->codec_type)
      |                               ^~
cores/libretro-ffmpeg/ffmpeg_core.c:866:54: error: ‘AVStream’ has no member named ‘codec’
  866 |                   && !codec_is_image(fctx->streams[i]->codec->codec_id))
      |                                                      ^~
cores/libretro-ffmpeg/ffmpeg_core.c:902:54: error: ‘AVStream’ has no member named ‘codec’
  902 |                AVCodecContext *ctx = fctx->streams[i]->codec;
      |                                                      ^~
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘decode_video’:
cores/libretro-ffmpeg/ffmpeg_core.c:1002:18: warning: implicit declaration of function ‘avcodec_decode_video2’; did you mean ‘avcodec_decode_subtitle2’? [-Wimplicit-function-declaration]
 1002 |    int ret     = avcodec_decode_video2(vctx, frame, &got_ptr, pkt);
      |                  ^~~~~~~~~~~~~~~~~~~~~
      |                  avcodec_decode_subtitle2
cores/libretro-ffmpeg/ffmpeg_core.c:1010:13: warning: implicit declaration of function ‘av_frame_get_colorspace’ [-Wimplicit-function-declaration]
 1010 |             av_frame_get_colorspace(frame), av_frame_get_color_range(frame));
      |             ^~~~~~~~~~~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c:1010:45: warning: implicit declaration of function ‘av_frame_get_color_range’ [-Wimplicit-function-declaration]
 1010 |             av_frame_get_colorspace(frame), av_frame_get_color_range(frame));
      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘decode_audio’:
cores/libretro-ffmpeg/ffmpeg_core.c:1031:17: warning: implicit declaration of function ‘avcodec_decode_audio4’; did you mean ‘avcodec_decode_subtitle2’? [-Wimplicit-function-declaration]
 1031 |       int ret = avcodec_decode_audio4(ctx, frame, &got_ptr, &pkt_tmp);
      |                 ^~~~~~~~~~~~~~~~~~~~~
      |                 avcodec_decode_subtitle2
cores/libretro-ffmpeg/ffmpeg_core.c:1055:13: warning: implicit declaration of function ‘av_frame_get_best_effort_timestamp’ [-Wimplicit-function-declaration]
 1055 |       pts = av_frame_get_best_effort_timestamp(frame);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c: In function ‘decode_thread’:
cores/libretro-ffmpeg/ffmpeg_core.c:1200:20: warning: implicit declaration of function ‘avpicture_get_size’ [-Wimplicit-function-declaration]
 1200 |       frame_size = avpicture_get_size(PIX_FMT_RGB32, media.width, media.height);
      |                    ^~~~~~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c:1203:7: warning: implicit declaration of function ‘avpicture_fill’ [-Wimplicit-function-declaration]
 1203 |       avpicture_fill((AVPicture*)conv_frame, (const uint8_t*)conv_frame_buf,
      |       ^~~~~~~~~~~~~~
cores/libretro-ffmpeg/ffmpeg_core.c:1203:23: error: ‘AVPicture’ undeclared (first use in this function); did you mean ‘AVPictureType’?
 1203 |       avpicture_fill((AVPicture*)conv_frame, (const uint8_t*)conv_frame_buf,
      |                       ^~~~~~~~~
      |                       AVPictureType
cores/libretro-ffmpeg/ffmpeg_core.c:1203:23: note: each undeclared identifier is reported only once for each function it appears in
cores/libretro-ffmpeg/ffmpeg_core.c:1203:33: error: expected expression before ‘)’ token
 1203 |       avpicture_fill((AVPicture*)conv_frame, (const uint8_t*)conv_frame_buf,
      |                                 ^
cores/libretro-ffmpeg/ffmpeg_core.c:1345:7: warning: implicit declaration of function ‘av_free_packet’; did you mean ‘av_get_packet’? [-Wimplicit-function-declaration]
 1345 |       av_free_packet(&pkt);
      |       ^~~~~~~~~~~~~~
      |       av_get_packet
make[2]: *** [Makefile:191: obj-unix/release/cores/libretro-ffmpeg/ffmpeg_core.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/pkg-games-devel/attachments/20220201/d340a261/attachment.sig>


More information about the Pkg-games-devel mailing list