diff options
author | Christopher Arndt | 2018-03-15 21:45:52 +0100 |
---|---|---|
committer | Christopher Arndt | 2018-03-15 21:48:37 +0100 |
commit | 5eec02837a7a159f426a45ef357c95db5cb75263 (patch) | |
tree | ad44ca7e5f3d09c22cd94aa208318cd8633b2446 | |
download | aur-5eec02837a7a159f426a45ef357c95db5cb75263.tar.gz |
Add new package hydrogen-drumkits-flac
Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
-rw-r--r-- | .SRCINFO | 69 | ||||
-rw-r--r-- | .gitignore | 7 | ||||
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | PKGBUILD | 121 | ||||
-rwxr-xr-x | convert-samples.py | 60 |
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) |