From owner-svn-ports-all@freebsd.org Fri May 4 11:41:15 2018 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2C7EFAA231; Fri, 4 May 2018 11:41:14 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A5B1F845E5; Fri, 4 May 2018 11:41:14 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A0AA0663E; Fri, 4 May 2018 11:41:14 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w44BfEcX058070; Fri, 4 May 2018 11:41:14 GMT (envelope-from jbeich@FreeBSD.org) Received: (from jbeich@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w44BfEjT058068; Fri, 4 May 2018 11:41:14 GMT (envelope-from jbeich@FreeBSD.org) Message-Id: <201805041141.w44BfEjT058068@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jbeich set sender to jbeich@FreeBSD.org using -f From: Jan Beich Date: Fri, 4 May 2018 11:41:14 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r469020 - in head/audio/libgroove: . files X-SVN-Group: ports-head X-SVN-Commit-Author: jbeich X-SVN-Commit-Paths: in head/audio/libgroove: . files X-SVN-Commit-Revision: 469020 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 May 2018 11:41:15 -0000 Author: jbeich Date: Fri May 4 11:41:14 2018 New Revision: 469020 URL: https://svnweb.freebsd.org/changeset/ports/469020 Log: audio/libgroove: unbreak with ffmpeg 4.0 groove/encoder.c:619:59: error: use of undeclared identifier 'CODEC_CAP_VARIABLE_FRAME_SIZE' e->sink->buffer_sample_count = (codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) ? ^ groove/file.c:284:66: error: use of undeclared identifier 'FF_INPUT_BUFFER_PADDING_SIZE' uint64_t extra_size = (uint64_t)icodec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE; ^ groove/playlist.c:189:63: error: use of undeclared identifier 'CODEC_CAP_DELAY' if (!pkt_temp->data && dec->codec->capabilities & CODEC_CAP_DELAY) ^ groove/playlist.c:574:55: error: use of undeclared identifier 'CODEC_CAP_DELAY' if (f->audio_st->codec->codec->capabilities & CODEC_CAP_DELAY) { ^ groove/playlist.c:990:22: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->volume_filter = avfilter_get_by_name("volume"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ groove/playlist.c:997:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->compand_filter = avfilter_get_by_name("compand"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ groove/playlist.c:1004:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->abuffer_filter = avfilter_get_by_name("abuffer"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ groove/playlist.c:1011:22: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->asplit_filter = avfilter_get_by_name("asplit"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ groove/playlist.c:1018:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->aformat_filter = avfilter_get_by_name("aformat"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ groove/playlist.c:1025:27: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] p->abuffersink_filter = avfilter_get_by_name("abuffersink"); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PR: 227726 Reported by: antoine (via exp-run) Added: head/audio/libgroove/files/patch-ffmpeg4 (contents, props changed) Modified: head/audio/libgroove/Makefile (contents, props changed) Modified: head/audio/libgroove/Makefile ============================================================================== --- head/audio/libgroove/Makefile Fri May 4 11:40:59 2018 (r469019) +++ head/audio/libgroove/Makefile Fri May 4 11:41:14 2018 (r469020) @@ -12,8 +12,6 @@ COMMENT= Audio dispatching library LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BROKEN= fails to build with ffmpeg 4.0 - LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libchromaprint.so:audio/chromaprint \ libebur128.so:audio/libebur128 \ Added: head/audio/libgroove/files/patch-ffmpeg4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/libgroove/files/patch-ffmpeg4 Fri May 4 11:41:14 2018 (r469020) @@ -0,0 +1,92 @@ +groove/encoder.c:619:59: error: use of undeclared identifier 'CODEC_CAP_VARIABLE_FRAME_SIZE' + e->sink->buffer_sample_count = (codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) ? + ^ +groove/file.c:284:66: error: use of undeclared identifier 'FF_INPUT_BUFFER_PADDING_SIZE' + uint64_t extra_size = (uint64_t)icodec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE; + ^ +groove/playlist.c:189:63: error: use of undeclared identifier 'CODEC_CAP_DELAY' + if (!pkt_temp->data && dec->codec->capabilities & CODEC_CAP_DELAY) + ^ +groove/playlist.c:574:55: error: use of undeclared identifier 'CODEC_CAP_DELAY' + if (f->audio_st->codec->codec->capabilities & CODEC_CAP_DELAY) { + ^ +groove/playlist.c:990:22: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->volume_filter = avfilter_get_by_name("volume"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +groove/playlist.c:997:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->compand_filter = avfilter_get_by_name("compand"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +groove/playlist.c:1004:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->abuffer_filter = avfilter_get_by_name("abuffer"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +groove/playlist.c:1011:22: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->asplit_filter = avfilter_get_by_name("asplit"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +groove/playlist.c:1018:23: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->aformat_filter = avfilter_get_by_name("aformat"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +groove/playlist.c:1025:27: error: assigning to 'AVFilter *' (aka 'struct AVFilter *') from 'const AVFilter *' (aka 'const struct AVFilter *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] + p->abuffersink_filter = avfilter_get_by_name("abuffersink"); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +--- groove/encoder.c.orig 2015-05-26 01:32:01 UTC ++++ groove/encoder.c +@@ -616,7 +616,7 @@ int groove_encoder_attach(struct GrooveEncoder *encode + + e->sink->audio_format = encoder->actual_audio_format; + e->sink->buffer_size = encoder->sink_buffer_size; +- e->sink->buffer_sample_count = (codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) ? ++ e->sink->buffer_sample_count = (codec->capabilities & AV_CODEC_CAP_VARIABLE_FRAME_SIZE) ? + 0 : e->stream->codec->frame_size; + e->sink->gain = encoder->gain; + +--- groove/file.c.orig 2015-05-26 01:32:01 UTC ++++ groove/file.c +@@ -281,7 +281,7 @@ int groove_file_save(struct GrooveFile *file) { + ocodec->rc_buffer_size = icodec->rc_buffer_size; + ocodec->field_order = icodec->field_order; + +- uint64_t extra_size = (uint64_t)icodec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE; ++ uint64_t extra_size = (uint64_t)icodec->extradata_size + AV_INPUT_BUFFER_PADDING_SIZE; + if (extra_size > INT_MAX) { + cleanup_save(file); + av_log(NULL, AV_LOG_ERROR, "codec extra size too big\n"); +--- groove/playlist.c.orig 2015-05-26 01:32:01 UTC ++++ groove/playlist.c +@@ -54,12 +54,12 @@ struct GroovePlaylistPrivate { + AVFilterGraph *filter_graph; + AVFilterContext *abuffer_ctx; + +- AVFilter *volume_filter; +- AVFilter *compand_filter; +- AVFilter *abuffer_filter; +- AVFilter *asplit_filter; +- AVFilter *aformat_filter; +- AVFilter *abuffersink_filter; ++ const AVFilter *volume_filter; ++ const AVFilter *compand_filter; ++ const AVFilter *abuffer_filter; ++ const AVFilter *asplit_filter; ++ const AVFilter *aformat_filter; ++ const AVFilter *abuffersink_filter; + + pthread_mutex_t drain_cond_mutex; + int drain_cond_mutex_inited; +@@ -186,7 +186,7 @@ static int audio_decode_frame(struct GroovePlaylist *p + + if (!got_frame) { + // stop sending empty packets if the decoder is finished +- if (!pkt_temp->data && dec->codec->capabilities & CODEC_CAP_DELAY) ++ if (!pkt_temp->data && dec->codec->capabilities & AV_CODEC_CAP_DELAY) + return 0; + continue; + } +@@ -571,7 +571,7 @@ static int decode_one_frame(struct GroovePlaylist *pla + pthread_mutex_unlock(&f->seek_mutex); + + if (f->eof) { +- if (f->audio_st->codec->codec->capabilities & CODEC_CAP_DELAY) { ++ if (f->audio_st->codec->codec->capabilities & AV_CODEC_CAP_DELAY) { + av_init_packet(pkt); + pkt->data = NULL; + pkt->size = 0;