summaryrefslogtreecommitdiff
path: root/media-sound/loudgain
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 16:24:49 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 16:24:49 -0500
commita3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7 (patch)
tree0c52bbae1c242fbc296bd650fcd1167685f81492 /media-sound/loudgain
parentbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (diff)
downloadbaldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.tar.gz
baldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.tar.xz
baldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.zip
Adding metadata
Diffstat (limited to 'media-sound/loudgain')
-rw-r--r--media-sound/loudgain/Manifest2
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-cmake-4.patch15
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-20190906-manpage-ape.patch62
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-20190918-taglib-1.12.patch239
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-20190930-rgbpm2.patch234
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-pr34-manpage.patch69
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-pr50-ffmpeg6.patch30
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-pr53-print-taglib-version.patch77
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch24
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-github-pr66-ffmpeg7.patch124
-rw-r--r--media-sound/loudgain/files/loudgain-0.6.8-respect-build-flags.patch22
-rw-r--r--media-sound/loudgain/loudgain-0.6.8-r2.ebuild44
-rw-r--r--media-sound/loudgain/loudgain-0.6.8_p20240128-r2.ebuild41
-rw-r--r--media-sound/loudgain/loudgain-0.6.8_p20240128-r3.ebuild47
-rw-r--r--media-sound/loudgain/metadata.xml14
15 files changed, 0 insertions, 1044 deletions
diff --git a/media-sound/loudgain/Manifest b/media-sound/loudgain/Manifest
deleted file mode 100644
index a7d7aed66df3..000000000000
--- a/media-sound/loudgain/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST loudgain-0.6.8.tar.gz 27351854 BLAKE2B 2f4cc5bb6d00a8b5a94183ca04041610ad629a7f869f4a474672316be4c8bb1bd6b1793cd1862f4c3e5b0e977b97d26047ec84792d67b1b4368bd21535c957fe SHA512 e41bb6ee3dd85728b8b59b84a1371a88a439a30166db628fae70abe5c20cf9b6c450ee5b1aaa61c971de124cd9be9dbacac4b50f232f64c076d45aafc79ed94c
-DIST loudgain-079f82c613ea1e3597ad5e2cad077829fd75d2c9.tar.gz 26959123 BLAKE2B 51bb771bc39ff94ddc57422c2069dd2c509af914db4272be8f722cd9ab24245375432afb5ac2b591de4899f7657350a9b736abecee9507ba6340ce189d377370 SHA512 bc0565450faf18569b6c865269c68331cf80fa33f274adedf89744321739c838e315320ec57bf2d6f71d23593ddbec368104df6f8f3932067fa50da5f4023715
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-cmake-4.patch b/media-sound/loudgain/files/loudgain-0.6.8-cmake-4.patch
deleted file mode 100644
index 0d67a8eeefba..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-cmake-4.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Picked 3.31 just because it is the oldest dev-build/cmake in ::gentoo as of 2025-11-19.
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9487ab98a594..a9219cd2cf39 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -3,7 +3,7 @@
- # Modifications Copyright (C) 2019 Matthias C. Hormann <mhormann@gmx.de>
- # This file is released under the 2 clause BSD license, see COPYING
-
--CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-+CMAKE_MINIMUM_REQUIRED(VERSION 3.31)
- PROJECT(loudgain C CXX)
-
- SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/" ${CMAKE_MODULE_PATH})
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-20190906-manpage-ape.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-20190906-manpage-ape.patch
deleted file mode 100644
index 15e051b3b1a2..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-20190906-manpage-ape.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-https://github.com/Moonbase59/loudgain/compare/508b6fd63cfc8b3db67a0eb19d87a036543325f4...d6ae9c08ca0e88cc3caebd499185c26f9c1420da
-(but stripped docs/loudgain.1.html diff since they won't be installed to the system.)
-From 31f46fcc55b56618730e269640d671ce65891612 Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Fri, 6 Sep 2019 18:18:33 +0200
-Subject: [PATCH 1/2] README: Add APE to introduction
-
----
- README.md | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/README.md b/README.md
-index e77fb72..1f82fa2 100644
---- a/README.md
-+++ b/README.md
-@@ -1,6 +1,6 @@
- # loudgain
-
--**loudgain** is a versatile ReplayGain 2.0 loudness normalizer, based on the EBU R128/ITU BS.1770 standard (-18 LUFS) and supports FLAC/Ogg/MP2/MP3/MP4/M4A/ALAC/Opus/ASF/WMA/WAV/WavPack/AIFF audio files. It uses the well-known `mp3gain` commandline syntax but will never modify the actual audio data.
-+**loudgain** is a versatile ReplayGain 2.0 loudness normalizer, based on the EBU R128/ITU BS.1770 standard (-18 LUFS) and supports FLAC/Ogg/MP2/MP3/MP4/M4A/ALAC/Opus/ASF/WMA/WAV/WavPack/AIFF/APE audio files. It uses the well-known `mp3gain` commandline syntax but will never modify the actual audio data.
-
- Just what you ever wanted: The best of mp3gain, ReplayGain 2.0 and Linux combined. **Spread the word!**
-
-
-From d6ae9c08ca0e88cc3caebd499185c26f9c1420da Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Sat, 7 Sep 2019 11:01:09 +0200
-Subject: [PATCH 2/2] man page: Add APE to 's- i'
-
----
- docs/loudgain.1 | 2 +-
- docs/loudgain.1.html | 10 +++++-----
- docs/loudgain.1.md | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/docs/loudgain.1 b/docs/loudgain.1
-index 8f59138..93124b9 100644
---- a/docs/loudgain.1
-+++ b/docs/loudgain.1
-@@ -67,7 +67,7 @@ Delete ReplayGain tags from files\.
- .
- .TP
- \fB\-s i, \-\-tagmode=i\fR
--Write ReplayGain 2\.0 tags to files\. ID3v2 for MP2, MP3, WAV and AIFF; Vorbis Comments for FLAC, Ogg, Speex and Opus; iTunes\-type metadata for MP4/M4A; WMA tags for ASF/WMA; APEv2 tags for WavPack\.
-+Write ReplayGain 2\.0 tags to files\. ID3v2 for MP2, MP3, WAV and AIFF; Vorbis Comments for FLAC, Ogg, Speex and Opus; iTunes\-type metadata for MP4/M4A; WMA tags for ASF/WMA; APEv2 tags for WavPack and APE\.
- .
- .TP
- \fB\-s e, \-\-tagmode=e\fR
-diff --git a/docs/loudgain.1.md b/docs/loudgain.1.md
-index 7a2ed0a..42082e5 100644
---- a/docs/loudgain.1.md
-+++ b/docs/loudgain.1.md
-@@ -57,7 +57,7 @@ Experimental, use with care: WAV (.wav), AIFF (.aiff, .aif, .snd).
- * `-s i, --tagmode=i`:
- Write ReplayGain 2.0 tags to files. ID3v2 for MP2, MP3, WAV and AIFF; Vorbis
- Comments for FLAC, Ogg, Speex and Opus; iTunes-type metadata for MP4/M4A;
-- WMA tags for ASF/WMA; APEv2 tags for WavPack.
-+ WMA tags for ASF/WMA; APEv2 tags for WavPack and APE.
-
- * `-s e, --tagmode=e`:
- like '-s i', plus extra tags (reference, ranges).
-
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-20190918-taglib-1.12.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-20190918-taglib-1.12.patch
deleted file mode 100644
index c87b965b2334..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-20190918-taglib-1.12.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-https://github.com/Moonbase59/loudgain/compare/d6ae9c08ca0e88cc3caebd499185c26f9c1420da...afc54b388232b88935ee725b1a0b677773c128e5
-(but stripped docs/loudgain.1.html diff since they won't be installed to the system.)
-From 0e03353e6d90198204c2edd9ccf9ecaad6a8e7c8 Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Wed, 18 Sep 2019 16:19:22 +0200
-Subject: [PATCH 1/3] Prepare for TagLib 1.12
-
----
- src/tag.cc | 53 +++++++++++++++++++++++++++++++++++++++++++++--------
- 1 file changed, 45 insertions(+), 8 deletions(-)
-
-diff --git a/src/tag.cc b/src/tag.cc
-index c8d3528..16a3716 100644
---- a/src/tag.cc
-+++ b/src/tag.cc
-@@ -56,6 +56,10 @@
-
- #include <taglib.h>
-
-+#define TAGLIB_VERSION (TAGLIB_MAJOR_VERSION * 10000 \
-+ + TAGLIB_MINOR_VERSION * 100 \
-+ + TAGLIB_PATCH_VERSION)
-+
- #include <textidentificationframe.h>
-
- #include <mpegfile.h>
-@@ -204,7 +208,13 @@ bool tag_write_mp3(scan_result *scan, bool do_album, char mode, char *unit,
- if (strip)
- f.strip(TagLib::MPEG::File::APE);
-
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(TagLib::MPEG::File::ID3v2,
-+ strip ? TagLib::MPEG::File::StripOthers : TagLib::MPEG::File::StripNone,
-+ id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save(TagLib::MPEG::File::ID3v2, strip, id3v2version);
-+#endif
- }
-
- bool tag_clear_mp3(scan_result *scan, bool strip, int id3v2version) {
-@@ -217,7 +227,13 @@ bool tag_clear_mp3(scan_result *scan, bool strip, int id3v2version) {
- if (strip)
- f.strip(TagLib::MPEG::File::APE);
-
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(TagLib::MPEG::File::ID3v2,
-+ strip ? TagLib::MPEG::File::StripOthers : TagLib::MPEG::File::StripNone,
-+ id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save(TagLib::MPEG::File::ID3v2, strip, id3v2version);
-+#endif
- }
-
-
-@@ -490,10 +506,17 @@ TagLib::String tagname(TagLib::String key) {
-
- void tag_remove_mp4(TagLib::MP4::Tag *tag) {
- TagLib::String desc;
-- TagLib::MP4::ItemListMap &items = tag->itemListMap();
-+#if TAGLIB_VERSION >= 11200
-+ TagLib::MP4::ItemMap items = tag->itemMap();
-
-- for(TagLib::MP4::ItemListMap::Iterator item = items.begin();
-+ for(TagLib::MP4::ItemMap::Iterator item = items.begin();
- item != items.end(); ++item)
-+#else
-+TagLib::MP4::ItemListMap &items = tag->itemListMap();
-+
-+for(TagLib::MP4::ItemListMap::Iterator item = items.begin();
-+ item != items.end(); ++item)
-+#endif
- {
- desc = item->first.upper();
- if ((desc == tagname(RG_STRING_UPPER[RG_TRACK_GAIN]).upper()) ||
-@@ -715,7 +738,13 @@ bool tag_write_wav(scan_result *scan, bool do_album, char mode, char *unit,
- }
-
- // no stripping
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(TagLib::RIFF::WAV::File::AllTags,
-+ TagLib::RIFF::WAV::File::StripNone,
-+ id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save(TagLib::RIFF::WAV::File::AllTags, false, id3v2version);
-+#endif
- }
-
- bool tag_clear_wav(scan_result *scan, bool strip, int id3v2version) {
-@@ -725,7 +754,13 @@ bool tag_clear_wav(scan_result *scan, bool strip, int id3v2version) {
- tag_remove_wav(tag);
-
- // no stripping
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(TagLib::RIFF::WAV::File::AllTags,
-+ TagLib::RIFF::WAV::File::StripNone,
-+ id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save(TagLib::RIFF::WAV::File::AllTags, false, id3v2version);
-+#endif
- }
-
-
-@@ -804,10 +839,11 @@ bool tag_write_aiff(scan_result *scan, bool do_album, char mode, char *unit,
- }
-
- // no stripping
-- // unfortunately, TagLib::RIFF::AIFF::File::save() doesn’t provide
-- // the "Tags, strip, id3v2version" parameters,
-- // so all files will get the default ID3v2.4 tags. :-(
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save();
-+#endif
- }
-
- bool tag_clear_aiff(scan_result *scan, bool strip, int id3v2version) {
-@@ -817,10 +853,11 @@ bool tag_clear_aiff(scan_result *scan, bool strip, int id3v2version) {
- tag_remove_aiff(tag);
-
- // no stripping
-- // unfortunately, TagLib::RIFF::AIFF::File::save() doesn’t provide
-- // the "Tags, strip, id3v2version" parameters,
-- // so all files will get the default ID3v2.4 tags.
-+#if TAGLIB_VERSION >= 11200
-+ return f.save(id3v2version == 3 ? TagLib::ID3v2::v3 : TagLib::ID3v2::v4);
-+#else
- return f.save();
-+#endif
- }
-
-
-
-From efd0aae91c5c72c85dc63d67613c066a45cc7fdb Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Wed, 18 Sep 2019 18:25:02 +0200
-Subject: [PATCH 2/3] README.md: Explain AIFF ID3v2 options (taglib 1.12)
-
----
- README.md | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/README.md b/README.md
-index 1f82fa2..3d0d05c 100644
---- a/README.md
-+++ b/README.md
-@@ -912,14 +912,15 @@ so we can finalize loudgain's Opus support. Thanks!
- into the "ID3 " chunk. This is a format compatible with _foobar2000_, _Mp3tag_,
- _VLC_ and some others.
-
-- **Note:** Due to a deficiency in _TagLib_, only _ID3v2.4_ tags can currently
-- be written, albeit iTunes and dBPowerAmp can only handle ID3v2.2 or ID3v2.3.
-- Please vote for [TagLib issue #922](https://github.com/taglib/taglib/issues/922).
-+ **Note:** _TagLib_ versions before _1.12_ could only write _ID3v2.4_ tags, albeit
-+ iTunes and dBPowerAmp may only handle ID3v2.2 or ID3v2.3 correctly.
-+ Starting with _TagLib 1.12_, loudgain supports selecting between _ID3v2.3_ and
-+ _ID3v2.4_ (default). Use the `-I 3` (`--id3v2version=3`) and `-I 4` (`--id3v2version=4`)
-+ commandline options for that.
-
- 2. Since ID3v2 tags are written, the `-L` (`--lowercase`) option functions normally.
-
--3. The `-S` (`--striptags`), `-I 3` (`--id3v2version=3`) and `-I 4` (`--id3v2version=4`)
-- options are ignored, even when specified.
-+3. The `-S` (`--striptags`) option will be ignored, even when specified.
-
- 4. **[Uppercase vs. lowercase tags](#uppercase-or-lowercase-replaygain_-tags)**
- is still a problem:
-
-From afc54b388232b88935ee725b1a0b677773c128e5 Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Wed, 18 Sep 2019 18:48:51 +0200
-Subject: [PATCH 3/3] Update help, man page for upcoming TagLib 1.12
-
----
- docs/loudgain.1 | 4 ++--
- docs/loudgain.1.html | 12 ++++++------
- docs/loudgain.1.md | 4 ++--
- src/loudgain.c | 6 +++---
- 4 files changed, 13 insertions(+), 13 deletions(-)
-
-diff --git a/docs/loudgain.1 b/docs/loudgain.1
-index 93124b9..0aaeac2 100644
---- a/docs/loudgain.1
-+++ b/docs/loudgain.1
-@@ -91,11 +91,11 @@ Strip tag types other than ID3v2 from MP2/MP3 files (i\.e\. ID3v1, APEv2)\. Stri
- .
- .TP
- \fB\-I 3, \-\-id3v2version=3\fR
--Write ID3v2\.3 tags to MP2/MP3/WAV files\.
-+Write ID3v2\.3 tags to MP2/MP3/WAV/AIFF files\.
- .
- .TP
- \fB\-I 4, \-\-id3v2version=4\fR
--Write ID3v2\.4 tags to MP2/MP3/WAV files (default)\.
-+Write ID3v2\.4 tags to MP2/MP3/WAV/AIFF files (default)\.
- .
- .TP
- \fB\-o, \-\-output\fR
-diff --git a/docs/loudgain.1.md b/docs/loudgain.1.md
-index 42082e5..5624d7f 100644
---- a/docs/loudgain.1.md
-+++ b/docs/loudgain.1.md
-@@ -77,10 +77,10 @@ Experimental, use with care: WAV (.wav), AIFF (.aiff, .aif, .snd).
- Strip tag types other than APEv2 from WavPack/APE files (i.e. ID3v1).
-
- * `-I 3, --id3v2version=3`:
-- Write ID3v2.3 tags to MP2/MP3/WAV files.
-+ Write ID3v2.3 tags to MP2/MP3/WAV/AIFF files.
-
- * `-I 4, --id3v2version=4`:
-- Write ID3v2.4 tags to MP2/MP3/WAV files (default).
-+ Write ID3v2.4 tags to MP2/MP3/WAV/AIFF files (default).
-
- * `-o, --output`:
- Database-friendly tab-delimited list output (mp3gain-compatible).
-diff --git a/src/loudgain.c b/src/loudgain.c
-index 8d752af..04f40e3 100644
---- a/src/loudgain.c
-+++ b/src/loudgain.c
-@@ -667,7 +667,7 @@ static inline void help(void) {
- printf("%s %s supports writing tags to the following file types:\n", PROJECT_NAME, PROJECT_VER);
- puts(" FLAC (.flac), Ogg (.ogg, .oga, .spx, .opus), MP2 (.mp2), MP3 (.mp3),");
- puts(" MP4 (.mp4, .m4a), ASF/WMA (.asf, .wma), WavPack (.wv), APE (.ape).");
-- puts(" Experimental: WAV (.wav), AIFF (.aiff, .aif).\n");
-+ puts(" Experimental: WAV (.wav), AIFF (.aiff, .aif, .snd).\n");
-
- if (warn_ebu) {
- printf("%sWarning:%s Your EBU R128 library (libebur128) is version %s.\n", COLOR_RED, COLOR_OFF, ebur128_version);
-@@ -707,8 +707,8 @@ static inline void help(void) {
- CMD_CONT("This is non-standard but sometimes needed");
- CMD_HELP("--striptags", "-S", "Strip tag types other than ID3v2 from MP2/MP3");
- CMD_CONT("Strip tag types other than APEv2 from WavPack/APE");
-- CMD_HELP("--id3v2version=3", "-I 3", "Write ID3v2.3 tags to MP2/MP3/WAV files");
-- CMD_HELP("--id3v2version=4", "-I 4", "Write ID3v2.4 tags to MP2/MP3/WAV files (default)");
-+ CMD_HELP("--id3v2version=3", "-I 3", "Write ID3v2.3 tags to MP2/MP3/WAV/AIFF");
-+ CMD_HELP("--id3v2version=4", "-I 4", "Write ID3v2.4 tags to MP2/MP3/WAV/AIFF (default)");
-
- puts("");
-
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-20190930-rgbpm2.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-20190930-rgbpm2.patch
deleted file mode 100644
index eea4f358ee4b..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-20190930-rgbpm2.patch
+++ /dev/null
@@ -1,234 +0,0 @@
-https://github.com/Moonbase59/loudgain/commit/b59e3c520af0b36d09693c70a44ed4d3585f5b8a
-From b59e3c520af0b36d09693c70a44ed4d3585f5b8a Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Wed, 30 Oct 2019 05:12:30 +0100
-Subject: [PATCH] Add multiprocessing rgbpm2 script for mass-tagging
-
----
- bin/rgbpm2 | 178 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 178 insertions(+)
- create mode 100755 bin/rgbpm2
-
-diff --git a/bin/rgbpm2 b/bin/rgbpm2
-new file mode 100755
-index 0000000..0080a9a
---- /dev/null
-+++ b/bin/rgbpm2
-@@ -0,0 +1,178 @@
-+#!/usr/bin/env python
-+# -*- coding: utf-8 -*-
-+
-+# Copyright (c) 2019 Matthias C. Hormann
-+
-+from __future__ import print_function
-+
-+import os
-+import errno
-+import sys
-+import signal
-+import argparse
-+import textwrap
-+import fnmatch
-+import subprocess
-+import multiprocessing
-+
-+def init_worker():
-+ """Initialize workers so they can’t get a KeyboardInterrupt
-+ """
-+ signal.signal(signal.SIGINT, signal.SIG_IGN)
-+
-+def loudgain(args):
-+ """loudgain args
-+ args[0] = folder
-+ args[1] = file extension
-+ args[2:n] = loudgain options
-+ args[n+1:] = filenames
-+ """
-+ print("Working on {} ...".format(os.path.abspath(os.path.join(args[0],
-+ '*' + args[1]))))
-+ try:
-+ retcode = subprocess.check_call(['loudgain', '-q'] + args[2:],
-+ stdout=open(os.devnull, 'wb'))
-+
-+ except subprocess.CalledProcessError as e:
-+ print("loudgain returned status {}, command was:\n{}".format(
-+ e.returncode, subprocess.list2cmdline(e.cmd)), file=sys.stderr)
-+ retcode = e.returncode
-+
-+ except OSError as e:
-+ if e.errno == errno.ENOENT:
-+ print("loudgain not found, but it is required", file=sys.stderr)
-+ else:
-+ print("Execution failed:", e, file=sys.stderr)
-+ retcode = e.errno
-+
-+ return retcode
-+
-+def main():
-+ """Main program
-+ Usage: rgbpm2 [-h] [-v] folder [folder ...]
-+ """
-+ # dict: file extension, loudgain cmdline args (use lowercase extensions)
-+ # see `loudgain -h` for an explanation of options
-+ # '.mp4' deliberately left out: these are doable but usually videos
-+ extensions = {
-+ '.flac': ['-a', '-k', '-s', 'e'],
-+ '.ogg': ['-a', '-k', '-s', 'e'],
-+ '.oga': ['-a', '-k', '-s', 'e'],
-+ '.spx': ['-a', '-k', '-s', 'e'],
-+ '.opus': ['-a', '-k', '-s', 'e'],
-+ '.mp2': ['-I', '3', '-S', '-L', '-a', '-k', '-s', 'e'],
-+ '.mp3': ['-I', '3', '-S', '-L', '-a', '-k', '-s', 'e'],
-+ '.m4a': ['-L', '-a', '-k', '-s', 'e'],
-+ '.wma': ['-L', '-a', '-k', '-s', 'e'],
-+ '.asf': ['-L', '-a', '-k', '-s', 'e'],
-+ '.wav': ['-I', '3', '-L', '-a', '-k', '-s', 'e'],
-+ '.aif': ['-I', '3', '-L', '-a', '-k', '-s', 'e'],
-+ '.aiff': ['-I', '3', '-L', '-a', '-k', '-s', 'e'],
-+ '.wv': ['-S', '-a', '-k', '-s', 'e'],
-+ '.ape': ['-S', '-a', '-k', '-s', 'e']
-+ }
-+
-+ # exclude all folders ending in '[compilations]'
-+ # special characters masked in [] (glob/fnmatch syntax)
-+ excludes = ['*[[]compilations[]]']
-+
-+ parser = argparse.ArgumentParser(
-+ description='ReplayGain album folders recursively, using loudgain.\n' +
-+ 'Files of the same type in the same folder are '
-+ 'considered an album.\n \n' +
-+ textwrap.fill("Supported audio file types: " +
-+ ", ".join(sorted(extensions)), 75),
-+ epilog='Please report any issues to '
-+ 'https://github.com/Moonbase59/loudgain/issues.',
-+ formatter_class=argparse.RawDescriptionHelpFormatter)
-+ parser.add_argument('-v', '--version', action='version',
-+ version='%(prog)s ' + __version__)
-+ parser.add_argument('-n', '--numproc', type=int, choices=range(1, 33),
-+ metavar='1..32', default=multiprocessing.cpu_count(),
-+ help='set max. number of parallel processes (default: %(default)d)')
-+ parser.add_argument('-f', '--follow-links', action='store_true',
-+ help='follow links (default: %(default)s); use with care!')
-+ parser.add_argument('folder', nargs='+',
-+ help='Path of a folder of audio files.')
-+ args = parser.parse_args()
-+
-+ # set number of parallel processes to use
-+ numproc = min(args.numproc, multiprocessing.cpu_count())
-+
-+ # First, check if loudgain exists and show some info
-+ try:
-+ output = subprocess.check_output(["loudgain", "--version"],
-+ stderr=subprocess.STDOUT)
-+ print("Using loudgain v{}, max. {} parallel processes.".format(
-+ output.split()[1], numproc))
-+ except OSError as e:
-+ if e.errno == errno.ENOENT:
-+ # handle file not found error.
-+ print("loudgain executable not found; this is required",
-+ file=sys.stderr)
-+ exit(1)
-+ else:
-+ # Something else went wrong while trying to run `loudgain`
-+ raise
-+
-+ # Traverse folders, set up list of files.
-+ # dict: {folder: {filetype: [files]}}
-+ cluster = dict()
-+ for folder in args.folder:
-+ for root, dirs, files in os.walk(os.path.abspath(os.path.join(
-+ os.getcwd(), folder)), followlinks=args.follow_links, topdown=True):
-+ # remove excluded dirs "in-place", only if topdown=True (default)
-+ for exclude in excludes:
-+ for dir in dirs:
-+ if fnmatch.fnmatch(dir, exclude):
-+ print("Excluding {}".format(os.path.join(root, dir)))
-+ dirs.remove(dir)
-+ # add files with known extensions to cluster
-+ for file in files:
-+ fileName, fileExt = os.path.splitext(file)
-+ if fileExt.lower() in extensions:
-+ cluster.setdefault(root, {}).setdefault(fileExt.lower(),
-+ []).append(file)
-+
-+ # set up the tasks for multiprocesssing
-+ # a task is one loudgain invocation (one folder, same file type)
-+ tasks = []
-+ for folder in cluster:
-+ for ext in cluster[folder]:
-+ filelist = []
-+ for file in cluster[folder][ext]:
-+ filelist.append(os.path.join(folder, file))
-+ tasks.append([folder] + [ext] + extensions[ext] + filelist)
-+
-+ # Set up the parallel task pool
-+ # The initializer function prevents child processes from being aborted
-+ # by KeyboardInterrupt (Ctrl+C).
-+ pool = multiprocessing.Pool(processes=numproc, initializer=init_worker)
-+
-+ # Run the jobs
-+ # The key magic is that we must call results.get() with a timeout, because
-+ # a Condition.wait() without a timeout swallows KeyboardInterrupts.
-+ results = pool.map_async(loudgain, tasks)
-+
-+ while not results.ready():
-+ try:
-+ results.wait(timeout=1)
-+ except KeyboardInterrupt:
-+ pool.terminate()
-+ pool.join()
-+ print("KeyboardInterrupt, all processes aborted!", file=sys.stderr)
-+ exit(1)
-+
-+ # print(results.get())
-+ if not all(ret == 0 for ret in results.get()):
-+ print("Errors occurred!", file=sys.stderr)
-+
-+
-+__version_info__ = ('0', '14')
-+__version__ = '.'.join(__version_info__)
-+
-+APPNAME = "rgbpm2 " + __version__
-+LICENSE = "MIT"
-+
-+if __name__ == '__main__':
-+ main()
-
-https://github.com/Moonbase59/loudgain/commit/41311d5a889aeb40f83fa4283f152d9e23e53a67
-From 41311d5a889aeb40f83fa4283f152d9e23e53a67 Mon Sep 17 00:00:00 2001
-From: Moonbase59 <moonbase@quantentunnel.de>
-Date: Thu, 31 Oct 2019 00:37:59 +0100
-Subject: [PATCH] Flush prints to stdout so they're not buffered
-
----
- bin/rgbpm2 | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/bin/rgbpm2 b/bin/rgbpm2
-index 0080a9a..4c47fea 100755
---- a/bin/rgbpm2
-+++ b/bin/rgbpm2
-@@ -29,6 +29,7 @@ def loudgain(args):
- """
- print("Working on {} ...".format(os.path.abspath(os.path.join(args[0],
- '*' + args[1]))))
-+ sys.stdout.flush()
- try:
- retcode = subprocess.check_call(['loudgain', '-q'] + args[2:],
- stdout=open(os.devnull, 'wb'))
-@@ -105,6 +106,7 @@ def main():
- stderr=subprocess.STDOUT)
- print("Using loudgain v{}, max. {} parallel processes.".format(
- output.split()[1], numproc))
-+ sys.stdout.flush()
- except OSError as e:
- if e.errno == errno.ENOENT:
- # handle file not found error.
-@@ -126,6 +128,7 @@ def main():
- for dir in dirs:
- if fnmatch.fnmatch(dir, exclude):
- print("Excluding {}".format(os.path.join(root, dir)))
-+ sys.stdout.flush()
- dirs.remove(dir)
- # add files with known extensions to cluster
- for file in files:
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-pr34-manpage.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-pr34-manpage.patch
deleted file mode 100644
index 92b77fccdea6..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-pr34-manpage.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-https://github.com/Moonbase59/loudgain/pull/34
-From 3b0bcd99b030908d55796e147eb5e4ab18ca579c Mon Sep 17 00:00:00 2001
-From: Hugh McMaster <hugh.mcmaster@outlook.com>
-Date: Mon, 3 Aug 2020 22:29:38 +1000
-Subject: [PATCH] docs/loudgain.1: Print apostrophes instead of acute accents
-
-This manual page uses the \' groff sequence to print acute accents,
-when you actually just need to print apostrophes.
-
-Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
----
- docs/loudgain.1 | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/docs/loudgain.1 b/docs/loudgain.1
-index 0aaeac2..55d01a2 100644
---- a/docs/loudgain.1
-+++ b/docs/loudgain.1
-@@ -13,7 +13,7 @@
- \fBloudgain\fR is a loudness normalizer that scans music files and calculates loudness\-normalized gain and loudness peak values according to the EBU R128 standard, and can optionally write ReplayGain\-compatible metadata\.
- .
- .P
--loudgain implements a subset of mp3gain\'s command\-line options, which means that it can be used as a drop\-in replacement in some situations\.
-+loudgain implements a subset of mp3gain's command\-line options, which means that it can be used as a drop\-in replacement in some situations\.
- .
- .P
- loudgain will \fInot\fR modify the actual audio data, but instead just write ReplayGain \fItags\fR if so requested\. It is up to the player to interpret these\. (In some players, you need to enable this feature\.)
-@@ -71,19 +71,19 @@ Write ReplayGain 2\.0 tags to files\. ID3v2 for MP2, MP3, WAV and AIFF; Vorbis C
- .
- .TP
- \fB\-s e, \-\-tagmode=e\fR
--like \'\-s i\', plus extra tags (reference, ranges)\.
-+like '\-s i', plus extra tags (reference, ranges)\.
- .
- .TP
- \fB\-s l, \-\-tagmode=l\fR
--like \'\-s e\', but LU units instead of dB\.
-+like '\-s e', but LU units instead of dB\.
- .
- .TP
- \fB\-s s, \-\-tagmode=s\fR
--Don\'t write ReplayGain tags (default)\.
-+Don't write ReplayGain tags (default)\.
- .
- .TP
- \fB\-L, \-\-lowercase\fR
--Force lowercase \'REPLAYGAIN_*\' tags (MP2/MP3/MP4/ASF/WMA/WAV/AIFF only)\. This is non\-standard, but sometimes needed\.
-+Force lowercase 'REPLAYGAIN_*' tags (MP2/MP3/MP4/ASF/WMA/WAV/AIFF only)\. This is non\-standard, but sometimes needed\.
- .
- .TP
- \fB\-S, \-\-striptags\fR
-@@ -107,7 +107,7 @@ Database\-friendly new format tab\-delimited list output\. Ideal for analysis of
- .
- .TP
- \fB\-q, \-\-quiet\fR
--Don\'t print scanning status messages\.
-+Don't print scanning status messages\.
- .
- .SH "RECOMMENDATIONS"
- To give you a head start, here are my personal recommendations for being (almost) universally compatible\.
-@@ -135,7 +135,7 @@ $ loudgain \-S \-a \-k \-s e *\.ape
- .IP "" 0
- .
- .P
--I’ve been happy with these settings for many years now\. Your mileage may vary\.
-+I've been happy with these settings for many years now\. Your mileage may vary\.
- .
- .P
- For easy mass\-tagging, there is a bash script called \fBrgbpm\fR included with loudgain, which follows above recommendations\. You can make a copy, put that into your personal \fB~/bin\fR folder and modify it to whatever \fIyou\fR need\.
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-pr50-ffmpeg6.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-pr50-ffmpeg6.patch
deleted file mode 100644
index 105d4e572154..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-pr50-ffmpeg6.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-https://github.com/Moonbase59/loudgain/pull/50
-From 977332e9e45477b1b41a5af7a2484f92b340413b Mon Sep 17 00:00:00 2001
-From: Hugh McMaster <hugh.mcmaster@outlook.com>
-Date: Thu, 1 Sep 2022 14:44:17 +1000
-Subject: [PATCH] src/scan.c: Only call av_register_all() if using libavformat
- < 58.9.100
-
-This function is deprecated.
-
-Thanks to Leigh Scott for suggesting this patch.
----
- src/scan.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/scan.c b/src/scan.c
-index 85b36b3..ee72cf8 100644
---- a/src/scan.c
-+++ b/src/scan.c
-@@ -69,9 +69,9 @@ int scan_init(unsigned nb_files) {
- * It is now useless
- * https://github.com/FFmpeg/FFmpeg/blob/70d25268c21cbee5f08304da95be1f647c630c15/doc/APIchanges#L86
- */
-- if (avformat_version() < AV_VERSION_INT(58,9,100))
-+#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(58,9,100)
- av_register_all();
--
-+#endif
- av_log_set_callback(scan_av_log);
-
- scan_nb_files = nb_files;
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-pr53-print-taglib-version.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-pr53-print-taglib-version.patch
deleted file mode 100644
index bcfa966d6e7c..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-pr53-print-taglib-version.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-https://github.com/Moonbase59/loudgain/pull/53
-From f15d7dd9e7617e6d2a7c295a9ee83bf9ae93d0e3 Mon Sep 17 00:00:00 2001
-From: sagudev <16504129+sagudev@users.noreply.github.com>
-Date: Sat, 13 Aug 2022 18:27:52 +0200
-Subject: [PATCH] Print taglib version
-
----
- src/loudgain.c | 10 ++++++++++
- src/tag.cc | 6 ++++++
- src/tag.h | 2 ++
- 3 files changed, 18 insertions(+)
-
-diff --git a/src/loudgain.c b/src/loudgain.c
-index 04f40e3..6b6b253 100644
---- a/src/loudgain.c
-+++ b/src/loudgain.c
-@@ -148,6 +148,10 @@ int ebur128_v_major = 0;
- int ebur128_v_minor = 0;
- int ebur128_v_patch = 0;
- char ebur128_version[15] = "";
-+int tag_v_major = 0;
-+int tag_v_minor = 0;
-+int tag_v_patch = 0;
-+char tag_version[15] = "";
- unsigned swr_ver = 0;
- char swr_version[15] = "";
- unsigned lavf_ver = 0;
-@@ -176,6 +180,11 @@ int main(int argc, char *argv[]) {
- bool strip = false; // MP3 ID3v2: strip other tag types?
- int id3v2version = 4; // MP3 ID3v2 version to write; can be 3 or 4
-
-+ // taglib version
-+ tag_get_version(&tag_v_major, &tag_v_minor, &tag_v_patch);
-+ snprintf(tag_version, sizeof(tag_version), "%d.%d.%d",
-+ tag_v_major, tag_v_minor, tag_v_patch);
-+
- // libebur128 version check -- versions before 1.2.4 aren’t recommended
- ebur128_get_version(&ebur128_v_major, &ebur128_v_minor, &ebur128_v_patch);
- snprintf(ebur128_version, sizeof(ebur128_version), "%d.%d.%d",
-@@ -725,6 +734,7 @@ static inline void help(void) {
-
- static inline void version(void) {
- printf("%s %s - using:\n", PROJECT_NAME, PROJECT_VER);
-+ printf(" %s %s\n", "libtag", tag_version);
- printf(" %s %s\n", "libebur128", ebur128_version);
- printf(" %s %s\n", "libavformat", lavf_version);
- printf(" %s %s\n", "libswresample", swr_version);
-diff --git a/src/tag.cc b/src/tag.cc
-index 1c149f3..cd0eaa4 100644
---- a/src/tag.cc
-+++ b/src/tag.cc
-@@ -84,6 +84,12 @@
- #include "tag.h"
- #include "printf.h"
-
-+void tag_get_version(int* major, int* minor, int* patch) {
-+ *major = TAGLIB_MAJOR_VERSION;
-+ *minor = TAGLIB_MINOR_VERSION;
-+ *patch = TAGLIB_PATCH_VERSION;
-+}
-+
- // define possible replaygain tags
-
- enum RG_ENUM {
-diff --git a/src/tag.h b/src/tag.h
-index da80c1e..8d28e18 100644
---- a/src/tag.h
-+++ b/src/tag.h
-@@ -32,6 +32,8 @@
- extern "C" {
- #endif
-
-+void tag_get_version(int* major, int* minor, int* patch);
-+
- bool tag_write_mp3(scan_result *scan, bool do_album, char mode, char *unit,
- bool lowercase, bool strip, int id3v2version);
- bool tag_clear_mp3(scan_result *scan, bool strip, int id3v2version);
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch
deleted file mode 100644
index 964ea969a5c6..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://github.com/Moonbase59/loudgain/pull/65
-From ad9c7f8ddf0907d408b3d2fbf4d00ecb55af8d13 Mon Sep 17 00:00:00 2001
-From: Hugh McMaster <hugh.mcmaster@outlook.com>
-Date: Mon, 29 Jul 2024 23:13:16 +1000
-Subject: [PATCH] src/scan.c: Declare "AVCodec" to be "const AVCodec"
-
-This fixes compilation with GCC-14.
----
- src/scan.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/scan.c b/src/scan.c
-index 85b36b3..e02ed86 100644
---- a/src/scan.c
-+++ b/src/scan.c
-@@ -115,7 +115,7 @@ int scan_file(const char *file, unsigned index) {
-
- AVFormatContext *container = NULL;
-
-- AVCodec *codec;
-+ const AVCodec *codec;
- AVCodecContext *ctx;
-
- AVFrame *frame;
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-github-pr66-ffmpeg7.patch b/media-sound/loudgain/files/loudgain-0.6.8-github-pr66-ffmpeg7.patch
deleted file mode 100644
index f139ae9889c4..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-github-pr66-ffmpeg7.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-https://github.com/Moonbase59/loudgain/pull/66
-From 50741b98fb4b932759f05e8d208d80d93bcc8261 Mon Sep 17 00:00:00 2001
-From: Hugh McMaster <hugh.mcmaster@outlook.com>
-Date: Mon, 29 Jul 2024 23:15:35 +1000
-Subject: [PATCH] src/scan.c: Update for FFmpeg 7.0
-
----
- src/scan.c | 40 +++++++++++++++++++++-------------------
- 1 file changed, 21 insertions(+), 19 deletions(-)
-
-diff --git a/src/scan.c b/src/scan.c
-index 85b36b3..91eb261 100644
---- a/src/scan.c
-+++ b/src/scan.c
-@@ -119,7 +119,7 @@ int scan_file(const char *file, unsigned index) {
- AVCodecContext *ctx;
-
- AVFrame *frame;
-- AVPacket packet;
-+ AVPacket *packet;
-
- SwrContext *swr;
-
-@@ -177,8 +177,8 @@ int scan_file(const char *file, unsigned index) {
- }
-
- // try to get default channel layout (they aren’t specified in .wav files)
-- if (!ctx->channel_layout)
-- ctx->channel_layout = av_get_default_channel_layout(ctx->channels);
-+ if (ctx->ch_layout.order == AV_CHANNEL_ORDER_UNSPEC)
-+ av_channel_layout_default(&ctx->ch_layout, ctx->ch_layout.nb_channels);
-
- // show some information about the file
- // only show bits/sample where it makes sense
-@@ -187,21 +187,21 @@ int scan_file(const char *file, unsigned index) {
- snprintf(infotext, sizeof(infotext), "%d bit, ",
- ctx->bits_per_raw_sample > 0 ? ctx->bits_per_raw_sample : ctx->bits_per_coded_sample);
- }
-- av_get_channel_layout_string(infobuf, sizeof(infobuf), -1, ctx->channel_layout);
-+ av_channel_layout_describe(&ctx->ch_layout, infobuf, sizeof(infobuf));
- ok_printf("Stream #%d: %s, %s%d Hz, %d ch, %s",
-- stream_id, codec->long_name, infotext, ctx->sample_rate, ctx->channels, infobuf);
-+ stream_id, codec->long_name, infotext, ctx->sample_rate, ctx->ch_layout.nb_channels, infobuf);
-
- scan_codecs[index] = codec -> id;
-
-- av_init_packet(&packet);
-+ packet = av_packet_alloc();
-
-- packet.data = buffer;
-- packet.size = buffer_size;
-+ packet->data = buffer;
-+ packet->size = buffer_size;
-
- swr = swr_alloc();
-
- *ebur128 = ebur128_init(
-- ctx -> channels, ctx -> sample_rate,
-+ ctx->ch_layout.nb_channels, ctx->sample_rate,
- EBUR128_MODE_S | EBUR128_MODE_I | EBUR128_MODE_LRA |
- EBUR128_MODE_SAMPLE_PEAK | EBUR128_MODE_TRUE_PEAK
- );
-@@ -222,10 +222,10 @@ int scan_file(const char *file, unsigned index) {
-
- progress_bar(0, 0, 0, 0);
-
-- while (av_read_frame(container, &packet) >= 0) {
-- if (packet.stream_index == stream_id) {
-+ while (av_read_frame(container, packet) >= 0) {
-+ if (packet->stream_index == stream_id) {
-
-- rc = avcodec_send_packet(ctx, &packet);
-+ rc = avcodec_send_packet(ctx, packet);
- if (rc < 0) {
- err_printf("Error while sending a packet to the decoder");
- break;
-@@ -252,7 +252,7 @@ int scan_file(const char *file, unsigned index) {
- av_frame_unref(frame);
- }
-
-- av_packet_unref(&packet);
-+ av_packet_unref(packet);
- }
-
- // complete progress bar for very short files (only cosmetic)
-@@ -263,9 +263,11 @@ int scan_file(const char *file, unsigned index) {
-
- av_frame_free(&frame);
-
-+ av_packet_free(&packet);
-+
- swr_free(&swr);
-
-- avcodec_close(ctx);
-+ avcodec_free_context(&ctx);
-
- avformat_close_input(&container);
-
-@@ -413,12 +415,12 @@ static void scan_frame(ebur128_state *ebur128, AVFrame *frame,
- int out_linesize;
- enum AVSampleFormat out_fmt = AV_SAMPLE_FMT_S16;
-
-- av_opt_set_channel_layout(swr, "in_channel_layout", frame -> channel_layout, 0);
-- av_opt_set_channel_layout(swr, "out_channel_layout", frame -> channel_layout, 0);
-+ av_opt_set_chlayout(swr, "in_chlayout", &frame->ch_layout, 0);
-+ av_opt_set_chlayout(swr, "out_chlayout", &frame->ch_layout, 0);
-
- // add channel count to properly handle .wav reading
-- av_opt_set_int(swr, "in_channel_count", frame -> channels, 0);
-- av_opt_set_int(swr, "out_channel_count", frame -> channels, 0);
-+ av_opt_set_int(swr, "in_channel_count", frame->ch_layout.nb_channels, 0);
-+ av_opt_set_int(swr, "out_channel_count", frame->ch_layout.nb_channels, 0);
-
- av_opt_set_int(swr, "in_sample_rate", frame -> sample_rate, 0);
- av_opt_set_int(swr, "out_sample_rate", frame -> sample_rate, 0);
-@@ -434,7 +436,7 @@ static void scan_frame(ebur128_state *ebur128, AVFrame *frame,
- }
-
- out_size = av_samples_get_buffer_size(
-- &out_linesize, frame -> channels, frame -> nb_samples, out_fmt, 0
-+ &out_linesize, frame->ch_layout.nb_channels, frame->nb_samples, out_fmt, 0
- );
-
- out_data = av_malloc(out_size);
diff --git a/media-sound/loudgain/files/loudgain-0.6.8-respect-build-flags.patch b/media-sound/loudgain/files/loudgain-0.6.8-respect-build-flags.patch
deleted file mode 100644
index 9c1d475fe1fe..000000000000
--- a/media-sound/loudgain/files/loudgain-0.6.8-respect-build-flags.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Respect CFLAGS and CXXFLAGS provided by the package manager.
-https://bugs.gentoo.org/952032
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9487ab98a594..a8e1bed7a527 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -68,14 +68,6 @@ TARGET_LINK_LIBRARIES(loudgain
- ${LTAG_LIBRARIES}
- )
-
--SET_TARGET_PROPERTIES(loudgain PROPERTIES
-- COMPILE_FLAGS "-Wall -pedantic -g"
--)
--
--SET(CMAKE_C_FLAGS "-std=gnu99 -D_GNU_SOURCE")
--
--SET(CMAKE_CXX_FLAGS "-std=gnu++11 -D_GNU_SOURCE")
--
- INSTALL(TARGETS loudgain DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
-
- INSTALL(FILES
diff --git a/media-sound/loudgain/loudgain-0.6.8-r2.ebuild b/media-sound/loudgain/loudgain-0.6.8-r2.ebuild
deleted file mode 100644
index f5c5ee4948d7..000000000000
--- a/media-sound/loudgain/loudgain-0.6.8-r2.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="Versatile ReplayGain 2.0 loudness normalizer"
-HOMEPAGE="https://github.com/Moonbase59/loudgain"
-SRC_URI="https://github.com/Moonbase59/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-#REQUIRED_USE=""
-
-# Bug 922026: `av_register_all` is deprecated and maybe not present in ffmpeg-6
-# (changelog: <https://github.com/FFmpeg/FFmpeg/blob/70d25268c21cbee5f08304da95be1f647c630c15/doc/APIchanges#L86>).
-# <https://ffmpeg.org/pipermail/ffmpeg-devel/2018-February/225051.html> says these
-# functions "don't do anything" so simply removing these call would work. However,
-# loudgain is not updated for some years and I (ebuild maintainer) am not sure
-# if it would work with ffmpeg-6, so restricting to <ffmpeg-5 here.
-COMMON_DEPEND="
- <media-video/ffmpeg-5
- media-libs/libebur128
- media-libs/taglib
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_prepare() {
- sed -e 's/^SET(CMAKE_C_FLAGS "/SET(CMAKE_C_FLAGS "${CMAKE_C_CFLAGS} /' \
- -e 's/^SET(CMAKE_CXX_FLAGS "/SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /' \
- -e 's/^\(\s*COMPILE_FLAGS.*\) -g\([\s"]\)$/\1\2/' \
- -i CMakeLists.txt || die "cannot patch CMakeLists.txt"
- cat CMakeLists.txt
-
- cmake_src_prepare
-}
-
-src_install() {
- cmake_src_install
- dodoc README.md
-}
diff --git a/media-sound/loudgain/loudgain-0.6.8_p20240128-r2.ebuild b/media-sound/loudgain/loudgain-0.6.8_p20240128-r2.ebuild
deleted file mode 100644
index e6560948206e..000000000000
--- a/media-sound/loudgain/loudgain-0.6.8_p20240128-r2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-MY_COMMIT="079f82c613ea1e3597ad5e2cad077829fd75d2c9"
-MY_P="${PN}-${MY_COMMIT}"
-
-DESCRIPTION="Versatile ReplayGain 2.0 loudness normalizer"
-HOMEPAGE="https://github.com/Moonbase59/loudgain"
-SRC_URI="https://github.com/Moonbase59/${PN}/archive/${MY_COMMIT}.tar.gz -> ${MY_P}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-#REQUIRED_USE=""
-
-COMMON_DEPEND="
- media-video/ffmpeg:=
- media-libs/libebur128
- media-libs/taglib
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-PATCHES=(
- "${FILESDIR}/loudgain-0.6.8-github-pr34-manpage.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr50-ffmpeg6.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr53-print-taglib-version.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr66-ffmpeg7.patch"
- "${FILESDIR}/loudgain-0.6.8-respect-build-flags.patch"
-)
-
-src_install() {
- cmake_src_install
- dodoc README.md
-}
diff --git a/media-sound/loudgain/loudgain-0.6.8_p20240128-r3.ebuild b/media-sound/loudgain/loudgain-0.6.8_p20240128-r3.ebuild
deleted file mode 100644
index d28ed69bf328..000000000000
--- a/media-sound/loudgain/loudgain-0.6.8_p20240128-r3.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-MY_PV="$(ver_cut 1-3)"
-MY_P="${PN}-${MY_PV}"
-DESCRIPTION="Versatile ReplayGain 2.0 loudness normalizer"
-HOMEPAGE="https://github.com/Moonbase59/loudgain"
-SRC_URI="https://github.com/Moonbase59/${PN}/archive/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-#REQUIRED_USE=""
-
-COMMON_DEPEND="
- media-video/ffmpeg:=
- media-libs/libebur128
- media-libs/taglib
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-PATCHES=(
- "${FILESDIR}/loudgain-0.6.8-github-20190906-manpage-ape.patch"
- "${FILESDIR}/loudgain-0.6.8-github-20190918-taglib-1.12.patch"
- "${FILESDIR}/loudgain-0.6.8-github-20190930-rgbpm2.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr34-manpage.patch"
- # Bug 922026
- "${FILESDIR}/loudgain-0.6.8-github-pr50-ffmpeg6.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr53-print-taglib-version.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr65-ffmpeg6-gcc14.patch"
- "${FILESDIR}/loudgain-0.6.8-github-pr66-ffmpeg7.patch"
- "${FILESDIR}/loudgain-0.6.8-respect-build-flags.patch"
- # Bug 951350
- "${FILESDIR}/loudgain-0.6.8-cmake-4.patch"
-)
-
-src_install() {
- cmake_src_install
- dobin bin/rgbpm2
- dodoc README.md
-}
diff --git a/media-sound/loudgain/metadata.xml b/media-sound/loudgain/metadata.xml
deleted file mode 100644
index f082383b0d25..000000000000
--- a/media-sound/loudgain/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lo48576@hard-wi.red</email>
- <name>YOSHIOKA Takuma</name>
- </maintainer>
- <upstream>
- <remote-id type="github">Moonbase59/loudgain</remote-id>
- </upstream>
- <longdescription lang="en">
- loudgain is a versatile ReplayGain 2.0 loudness normalizer, based on the EBU R128/ITU BS.1770 standard (-18 LUFS) and supports FLAC/Ogg/MP2/MP3/MP4/M4A/ALAC/Opus/ASF/WMA/WAV/WavPack/AIFF/APE audio files. It uses the well-known mp3gain commandline syntax but will never modify the actual audio data.
- </longdescription>
-</pkgmetadata>