summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Arndt2018-03-15 21:45:52 +0100
committerChristopher Arndt2018-03-15 21:48:37 +0100
commit5eec02837a7a159f426a45ef357c95db5cb75263 (patch)
treead44ca7e5f3d09c22cd94aa208318cd8633b2446
downloadaur-5eec02837a7a159f426a45ef357c95db5cb75263.tar.gz
Add new package hydrogen-drumkits-flac
Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
-rw-r--r--.SRCINFO69
-rw-r--r--.gitignore7
-rw-r--r--ChangeLog7
-rw-r--r--PKGBUILD121
-rwxr-xr-xconvert-samples.py60
5 files changed, 264 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..43ebd1e70da6
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,69 @@
+pkgbase = hydrogen-drumkits-flac
+ pkgdesc = Hydrogen drum kits (FLAC format)
+ pkgver = 20180312
+ pkgrel = 1
+ url = http://www.hydrogen-music.org/hcms/node/16
+ changelog = ChangeLog
+ arch = any
+ license = GPL2
+ makedepends = flac
+ makedepends = python
+ makedepends = sox
+ depends = hydrogen
+ source = convert-samples.py
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/3355606kit.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/BJA_Pacific.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Boss_DR-110.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/circAfrique v4.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Classic-626.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Classic-808.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/ColomboAcousticDrumkit.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/DeathMetal.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/EasternHop-1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/ElectricEmpireKit.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/ErnysPercussion.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/ForzeeStereo.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/HardElectro1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/HipHop-1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/HipHop-2.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/K-27_Trash_Kit.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Millo-Drums_v.1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Millo_MultiLayered2.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Millo_MultiLayered3.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/SF3007-2011-Set-03.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Synthie-1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/TD-7kit.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/Techno-1.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/TR808909.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/VariBreaks.h2drumkit
+ source = http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries/YamahaVintageKit.h2drumkit
+ md5sums = 7508aac4c4f75352c96f97509b13997a
+ md5sums = 5dad41a4f0fb5a9fda0af98b9f553060
+ md5sums = cde7a74a06edde3b5f85435c29909891
+ md5sums = f528892879ee04621055c4a3f12166c1
+ md5sums = e9d8604d2089abc764e54d1f209900b7
+ md5sums = 86dbdb8d2f9b12690e92211d36c6fe7d
+ md5sums = c08d5093fc28a30a7542f0c89493e807
+ md5sums = cb11827e185ab5a6906967901495884b
+ md5sums = 0465025dcf6659657b773874d168c27b
+ md5sums = 8750fcbe186e49a89bc18a9237ee6604
+ md5sums = df1bd778148cc25d8f63a8cc7aa91fcb
+ md5sums = 0e96f5971d5db887a186d5739c12ab77
+ md5sums = c6cd87bf54e0a760c5f4fecbff979100
+ md5sums = f953edf3f4227d786df59b544370e379
+ md5sums = 7f52d6ac56a31f5b618657d40d4eb86e
+ md5sums = 217f38ebf2849b20ff3a5dca1994be08
+ md5sums = f445c60d4625a6bfe6bb9dbac1ac0aa7
+ md5sums = 4c895d59c3bc5f3322d14789de345be2
+ md5sums = 2da5b8ee87bce3e67464c61ba0b722dd
+ md5sums = 79ca7360784ec72959aa07c3c584d76c
+ md5sums = f0b243f7bbc0c4c04977b2efa96a07b4
+ md5sums = 33f02627ac1489e4ab52c5f078c538b9
+ md5sums = 635274624e0a739c51b70f72a58cfcec
+ md5sums = f91912fc88361dd8954c11f2e602aa25
+ md5sums = 1db9cce82fbdaebac1ab4608be5853ea
+ md5sums = a9c305829cd23c28ffd1647cb5c0bdfd
+ md5sums = 8f63997dd789179fa009f84cc515fb3e
+
+pkgname = hydrogen-drumkits-flac
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..91b3aa6d3cc9
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+pkg/
+src/
+.AURINFO
+*.h2drumkit
+hydrogen-drumkits-flac-*.tar.xz
+hydrogen-drumkits-flac-*.src.tar.gz
+
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 000000000000..e0c815b93e50
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,7 @@
+2018-03-15 Christopher Arndt <chris@chrisarndt.de>
+
+ * 20180312-1:
+ package forked from 'hydrogen-drumkits'
+ add ForzeeStereo drumkit
+ add SF3007-2011-Set-03 drumkit
+ convert all samples to FLAC during package build
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..d0ae6fa51eee
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,121 @@
+# Maintainer: Christopher Arndt <aur -at- chrisarndt -dot- de>
+# Contributor: Daniele Paolella <danielepaolella@email.it>
+# Contributor: Artem Borisovskiy
+
+pkgname="hydrogen-drumkits-flac"
+pkgver=20180312
+pkgrel=1
+pkgdesc="Hydrogen drum kits (FLAC format)"
+arch=(any)
+url="http://www.hydrogen-music.org/hcms/node/16"
+license=('GPL2')
+depends=('hydrogen')
+makedepends=('flac' 'python' 'sox')
+changelog=ChangeLog
+_sourcebase=http://downloads.sourceforge.net/project/hydrogen/Sound%20Libraries/Main%20sound%20libraries
+source=(
+ convert-samples.py
+ $_sourcebase/3355606kit.h2drumkit
+ $_sourcebase/BJA_Pacific.h2drumkit
+ $_sourcebase/Boss_DR-110.h2drumkit
+ "$_sourcebase/circAfrique v4.h2drumkit"
+ $_sourcebase/Classic-626.h2drumkit
+ $_sourcebase/Classic-808.h2drumkit
+ $_sourcebase/ColomboAcousticDrumkit.h2drumkit
+ $_sourcebase/DeathMetal.h2drumkit
+ $_sourcebase/EasternHop-1.h2drumkit
+ $_sourcebase/ElectricEmpireKit.h2drumkit
+ $_sourcebase/ErnysPercussion.h2drumkit
+ $_sourcebase/ForzeeStereo.h2drumkit
+ $_sourcebase/HardElectro1.h2drumkit
+ $_sourcebase/HipHop-1.h2drumkit
+ $_sourcebase/HipHop-2.h2drumkit
+ $_sourcebase/K-27_Trash_Kit.h2drumkit
+ $_sourcebase/Millo-Drums_v.1.h2drumkit
+ $_sourcebase/Millo_MultiLayered2.h2drumkit
+ $_sourcebase/Millo_MultiLayered3.h2drumkit
+ $_sourcebase/SF3007-2011-Set-03.h2drumkit
+ $_sourcebase/Synthie-1.h2drumkit
+ $_sourcebase/TD-7kit.h2drumkit
+ $_sourcebase/Techno-1.h2drumkit
+ $_sourcebase/TR808909.h2drumkit
+ $_sourcebase/VariBreaks.h2drumkit
+ $_sourcebase/YamahaVintageKit.h2drumkit
+)
+md5sums=('7508aac4c4f75352c96f97509b13997a'
+ '5dad41a4f0fb5a9fda0af98b9f553060'
+ 'cde7a74a06edde3b5f85435c29909891'
+ 'f528892879ee04621055c4a3f12166c1'
+ 'e9d8604d2089abc764e54d1f209900b7'
+ '86dbdb8d2f9b12690e92211d36c6fe7d'
+ 'c08d5093fc28a30a7542f0c89493e807'
+ 'cb11827e185ab5a6906967901495884b'
+ '0465025dcf6659657b773874d168c27b'
+ '8750fcbe186e49a89bc18a9237ee6604'
+ 'df1bd778148cc25d8f63a8cc7aa91fcb'
+ '0e96f5971d5db887a186d5739c12ab77'
+ 'c6cd87bf54e0a760c5f4fecbff979100'
+ 'f953edf3f4227d786df59b544370e379'
+ '7f52d6ac56a31f5b618657d40d4eb86e'
+ '217f38ebf2849b20ff3a5dca1994be08'
+ 'f445c60d4625a6bfe6bb9dbac1ac0aa7'
+ '4c895d59c3bc5f3322d14789de345be2'
+ '2da5b8ee87bce3e67464c61ba0b722dd'
+ '79ca7360784ec72959aa07c3c584d76c'
+ 'f0b243f7bbc0c4c04977b2efa96a07b4'
+ '33f02627ac1489e4ab52c5f078c538b9'
+ '635274624e0a739c51b70f72a58cfcec'
+ 'f91912fc88361dd8954c11f2e602aa25'
+ '1db9cce82fbdaebac1ab4608be5853ea'
+ 'a9c305829cd23c28ffd1647cb5c0bdfd'
+ '8f63997dd789179fa009f84cc515fb3e')
+
+_drumkitsdir="/usr/share/hydrogen/data/drumkits"
+_drumkits=(
+ '3355606kit'
+ 'BJA_Pacific'
+ 'Boss_DR-110'
+ 'circAfrique v4'
+ 'Classic-626'
+ 'Classic-808'
+ 'ColomboAcousticDrumkit'
+ 'DeathMetal'
+ 'EasternHop-1'
+ 'ElectricEmpireKit'
+ 'ErnysPercussion'
+ 'ForzeeStereo'
+ 'HardElectro1'
+ 'HipHop-1'
+ 'HipHop-2'
+ 'K-27_Trash_Kit'
+ 'Millo-Drums_v.1'
+ 'Millo_MultiLayered2'
+ 'Millo_MultiLayered3'
+ 'SF3007-2011-Set-03'
+ 'Synthie-1'
+ 'TD-7kit'
+ 'Techno-1'
+ 'TR808909'
+ 'VariBreaks'
+ 'YamahaVintageKit'
+)
+
+build() {
+ cd "${srcdir}"
+ chmod +x convert-samples.py
+ ./convert-samples.py "${_drumkits[@]}"
+}
+
+package() {
+ install -d -m 755 "${pkgdir}${_drumkitsdir}"
+
+ for drumkit in "${_drumkits[@]}"; do
+ cp -rp "${srcdir}/${drumkit}" "${pkgdir}${_drumkitsdir}"
+ done
+
+ plain "Removing superfluous files..."
+ find "${pkgdir}${_drumkitsdir}" -name LICENCE -delete
+ find "${pkgdir}${_drumkitsdir}" -name "._*" -delete
+ find "${pkgdir}${_drumkitsdir}" -type d -exec chmod 755 {} \;
+ find "${pkgdir}${_drumkitsdir}" -type f -exec chmod 644 {} \;
+}
diff --git a/convert-samples.py b/convert-samples.py
new file mode 100755
index 000000000000..ac45a1320e60
--- /dev/null
+++ b/convert-samples.py
@@ -0,0 +1,60 @@
+#!/usr/bin/env python
+#
+# convert all drumkit WAV files to FLAC
+#
+
+import os
+import sys
+from glob import glob
+from os.path import basename, exists, join, splitext
+from shutil import copyfile
+from subprocess import check_call, check_output, DEVNULL
+
+tempdir = os.environ.get("TMP", "/tmp")
+
+for drumkit in sys.argv[1:]:
+ drumkit_xml = join(drumkit, "drumkit.xml")
+
+ if not exists(drumkit_xml):
+ print("Drumkit {} not found. Skipping it.".format(drumkit))
+ continue
+
+ print("Converting samples to FLAC format in drumkit {}...".format(drumkit))
+
+ for orig in glob(join(drumkit, "*.[Ww][Aa][Vv]")) + glob(join(drumkit, "*.[Aa][Ii][Ff][Ff]")):
+ fn = basename(orig)
+ bn, ext = splitext(fn)
+ flac = "{}.flac".format(bn)
+
+ if exists(orig) and not exists(join(drumkit, flac)):
+ bbs = check_output(["soxi", "-b", orig]).strip()
+
+ if int(bbs) > 24:
+ print("Reducing sample size of '{}' to 24 bit ...".format(fn))
+ temp = check_output(["mktemp", join(tempdir, "hydrogen-drumkits.XXXXXX." + ext)]).strip()
+
+ try:
+ check_call(["sox", orig, "-b", "24", "-e", "signed-integer", temp])
+ except:
+ print("Could not reduce sample size of '{}'.".format(fn))
+ continue
+ else:
+ copyfile(temp, orig)
+ os.unlink(temp)
+
+ try:
+ check_call(["flac", "-s", "-8", "--keep-foreign-metadata", orig], stdout=DEVNULL,
+ stderr=DEVNULL)
+ except:
+ print("Could not convert '{}', keeping file in WAV format.".format(orig))
+ try:
+ os.unlink(join(drumkit, flac))
+ except: pass
+ else:
+ with open(drumkit_xml) as fp:
+ xml = fp.read()
+
+ with open(drumkit_xml, 'w') as fp:
+ fp.write(xml.replace(fn, flac))
+
+ os.unlink(orig)