packages: Add ebu-norm
This commit is contained in:
parent
0bef626837
commit
cbc9975aa8
@ -145,4 +145,7 @@ key-mapper = prev.callPackage ./tools/games/key-mapper {};
|
||||
|
||||
buildInputs = old.buildInputs ++ [ prev.taglib prev.libsForQt5.qtkeychain ];
|
||||
});
|
||||
|
||||
sound-gambit = prev.callPackage tools/audio/sound-gambit {};
|
||||
ebu-norm = prev.callPackage tools/audio/ebu-norm {};
|
||||
}
|
||||
|
111
packages/tools/audio/ebu-norm/0000-remove-dep-check.patch
Normal file
111
packages/tools/audio/ebu-norm/0000-remove-dep-check.patch
Normal file
@ -0,0 +1,111 @@
|
||||
diff --git a/ebu-norm b/ebu-norm
|
||||
index ab5fdfe..57d4ca8 100755
|
||||
--- a/ebu-norm
|
||||
+++ b/ebu-norm
|
||||
@@ -12,21 +12,6 @@ THR=-1
|
||||
# sound-gambit release time (default 10, range 1 to 1000)
|
||||
REL=10
|
||||
|
||||
-# Check availability of dependencies
|
||||
-function checkAvail()
|
||||
-{
|
||||
- which "$1" >/dev/null 2>&1
|
||||
- ret=$?
|
||||
- if [ $ret -ne 0 ]
|
||||
- then
|
||||
- echo "tool \"$1\" not found." >&2
|
||||
- exit 1
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-for tool in {ffmpeg,bc,sound-gambit}; \
|
||||
- do checkAvail "$tool"; done
|
||||
-
|
||||
#Check for audio files
|
||||
NUMARG=0
|
||||
for file in "$@"; do
|
||||
diff --git a/ebu-plot b/ebu-plot
|
||||
index 5fb7438..4612fff 100755
|
||||
--- a/ebu-plot
|
||||
+++ b/ebu-plot
|
||||
@@ -23,21 +23,6 @@ then
|
||||
fi
|
||||
done
|
||||
|
||||
-# Check availability of dependencies
|
||||
-function checkAvail()
|
||||
-{
|
||||
- which "$1" >/dev/null 2>&1
|
||||
- ret=$?
|
||||
- if [ $ret -ne 0 ]
|
||||
- then
|
||||
- echo "tool \"$1\" not found." >&2
|
||||
- exit 1
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-for tool in {pwsh,ffmpeg,gnuplot}; \
|
||||
- do checkAvail "$tool"; done
|
||||
-
|
||||
# Command usage check
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
@@ -82,4 +67,4 @@ echo "Done!"
|
||||
echo
|
||||
echo "Skipped items: $SKIPPED"
|
||||
cat $SKIPFILE
|
||||
-rm $SKIPFILE
|
||||
\ No newline at end of file
|
||||
+rm $SKIPFILE
|
||||
diff --git a/ebu-scan b/ebu-scan
|
||||
index 11736d6..8190223 100755
|
||||
--- a/ebu-scan
|
||||
+++ b/ebu-scan
|
||||
@@ -4,21 +4,6 @@
|
||||
|
||||
# Usage: ebu-scan <input files>.
|
||||
|
||||
-# Check availability of dependencies
|
||||
-function checkAvail()
|
||||
-{
|
||||
- which "$1" >/dev/null 2>&1
|
||||
- ret=$?
|
||||
- if [ $ret -ne 0 ]
|
||||
- then
|
||||
- echo "tool \"$1\" not found." >&2
|
||||
- exit 1
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-for tool in ffmpeg ; \
|
||||
- do checkAvail "$tool"; done
|
||||
-
|
||||
#Check for audio files and enumerate
|
||||
NUMARG=0
|
||||
for file in "$@"; do
|
||||
diff --git a/tp-norm b/tp-norm
|
||||
index b8e4997..894f440 100755
|
||||
--- a/tp-norm
|
||||
+++ b/tp-norm
|
||||
@@ -6,21 +6,6 @@
|
||||
# Option:
|
||||
# -t Specify true peak target, e.g. -t -2
|
||||
|
||||
-# Check availability of dependencies
|
||||
-function checkAvail()
|
||||
-{
|
||||
- which "$1" >/dev/null 2>&1
|
||||
- ret=$?
|
||||
- if [ $ret -ne 0 ]
|
||||
- then
|
||||
- echo "tool \"$1\" not found." >&2
|
||||
- exit 1
|
||||
- fi
|
||||
-}
|
||||
-
|
||||
-for tool in {ffmpeg,bc}; \
|
||||
- do checkAvail "$tool"; done
|
||||
-
|
||||
#Check for audio files
|
||||
NUMARG=0
|
||||
for file in "$@"; do
|
41
packages/tools/audio/ebu-norm/default.nix
Normal file
41
packages/tools/audio/ebu-norm/default.nix
Normal file
@ -0,0 +1,41 @@
|
||||
{ stdenv, ffmpeg, sound-gambit, gawk, bc, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ebu-norm";
|
||||
version = "2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chrismhampson";
|
||||
repo = "ebu-norm";
|
||||
rev = "v${version}";
|
||||
sha256 = "120rpi0k3rq0v50ia9cyailgnx5wvpgkzbp8vi74xmr3c0lf26r4";
|
||||
};
|
||||
|
||||
patches = [ ./0000-remove-dep-check.patch ];
|
||||
|
||||
buildInputs = [
|
||||
ffmpeg sound-gambit gawk bc
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
for file in ebu-scan ebu-plot ebu-norm tp-norm; do
|
||||
sed --in-place \
|
||||
-e "s|ffmpeg|${ffmpeg}/bin/ffmpeg|g" \
|
||||
-e "s|bc|${bc}/bin/bc|g" \
|
||||
-e "s|sound-gambit|${sound-gambit}/bin/sound-gambit|g" \
|
||||
$file
|
||||
done
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp {ebu-scan,ebu-plot,ebu-norm,tp-norm} $out/bin/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An advanced, professional batch normalizer and scanner for EBU R 128 and other target levels.";
|
||||
homepage = "https://github.com/chrismhampson/ebu-norm";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
26
packages/tools/audio/sound-gambit/default.nix
Normal file
26
packages/tools/audio/sound-gambit/default.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ stdenv, lib, libsndfile, gnumake, pkg-config, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sound-gambit";
|
||||
version = "0.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "x42";
|
||||
repo = "sound-gambit";
|
||||
rev = "v${version}";
|
||||
sha256 = "18yf7sp6r8gqlifs9zq23ddsi5d46i6sadnh6jnvll3mhgm0h8bv";
|
||||
};
|
||||
|
||||
buildInputs = [ libsndfile pkg-config ];
|
||||
|
||||
makeFlags = [
|
||||
"PREFIX=${placeholder "out"}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Audio File Peak Limiter";
|
||||
homepage = "https://github.com/x42/sound-gambit";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue
Block a user