git: d9d1869011d9 - main - audio/neuralrack-lv2: New port: NeuralRack is a Neural Model and Impulse Response File loader
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 27 Mar 2025 01:43:45 UTC
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=d9d1869011d9e62fa21649d1dce6e60949285e63 commit d9d1869011d9e62fa21649d1dce6e60949285e63 Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2025-03-27 01:30:58 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2025-03-27 01:43:43 +0000 audio/neuralrack-lv2: New port: NeuralRack is a Neural Model and Impulse Response File loader --- audio/Makefile | 1 + audio/neuralrack-lv2/Makefile | 41 ++++++++++++++++ audio/neuralrack-lv2/distinfo | 13 +++++ .../neuralrack-lv2/files/patch-NeuralRack_makefile | 57 ++++++++++++++++++++++ audio/neuralrack-lv2/pkg-descr | 16 ++++++ audio/neuralrack-lv2/pkg-plist | 7 +++ 6 files changed, 135 insertions(+) diff --git a/audio/Makefile b/audio/Makefile index c844d8e3cc92..303b05a4e943 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -518,6 +518,7 @@ SUBDIR += ncpamixer SUBDIR += ncspot SUBDIR += netease-music-tui + SUBDIR += neuralrack-lv2 SUBDIR += noise-repellent-lv2 SUBDIR += noise-suppression-for-voice-lv2 SUBDIR += normalize diff --git a/audio/neuralrack-lv2/Makefile b/audio/neuralrack-lv2/Makefile new file mode 100644 index 000000000000..0d24d4539a36 --- /dev/null +++ b/audio/neuralrack-lv2/Makefile @@ -0,0 +1,41 @@ +PORTNAME= neuralrack +DISTVERSIONPREFIX= v +DISTVERSION= 0.1.3 +CATEGORIES= audio +PKGNAMESUFFIX= -lv2 + +MAINTAINER= yuri@FreeBSD.org +COMMENT= NeuralRack is a Neural Model and Impulse Response File loader +WWW= https://github.com/brummer10/NeuralRack + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= lv2>0:audio/lv2 \ + xxd:sysutils/xxd +LIB_DEPENDS= libjack.so:audio/jack \ + libsndfile.so:audio/libsndfile + +USES= compiler:c++20-lang gmake gnome localbase pkgconfig xorg +USE_GNOME= cairo +USE_XORG= x11 + +USE_GITHUB= yes +GH_ACCOUNT= brummer10 +GH_TUPLE= \ + brummer10:libxputty:9775b74862e3c10d482b35b38ad74865b9afc75c:brummer10_libxputty/libxputty \ + jatinchowdhury18:RTNeural:a8ae9c5af21cba309d06bce71a2008a9a13ab65b:jatinchowdhury18_RTNeural/RTNeural \ + xtensor-stack:xsimd:a00c81f7b9e808a42aedcf7da2fbb1f9a636da34:xtensor_stack_xsimd/RTNeural/modules/xsimd \ + sdatkinson:NeuralAmpModelerCore:e181f61efb8d05d34add45b5eecb3893ff21177c:sdatkinson_NeuralAmpModelerCore/NeuralAmpModelerCore \ + HiFi-LoFi:FFTConvolver:f2cdeb04c42141d2caec19ca4f137398b2a76b85:HiFi_LoFi_FFTConvolver/FFTConvolver + +WRKSRC= ${WRKDIR}/NeuralRack-${PORTVERSION} + +MAKEFILE= makefile + +CXXFLAGS+= -I${WRKSRC}/RTNeural/modules/Eigen + +post-install: + @${REINPLACE_CMD} -i '' -e 's|Neuralrack|NeuralRack|' ${STAGEDIR}${PREFIX}/lib/lv2/NeuralRack.lv2/*.ttl + +.include <bsd.port.mk> diff --git a/audio/neuralrack-lv2/distinfo b/audio/neuralrack-lv2/distinfo new file mode 100644 index 000000000000..02e3309bceb7 --- /dev/null +++ b/audio/neuralrack-lv2/distinfo @@ -0,0 +1,13 @@ +TIMESTAMP = 1743015953 +SHA256 (brummer10-neuralrack-v0.1.3_GH0.tar.gz) = a2597483165805b073243bfb6aac37715e0181d42e4407a8323580720f62e3ab +SIZE (brummer10-neuralrack-v0.1.3_GH0.tar.gz) = 630632 +SHA256 (brummer10-libxputty-9775b74862e3c10d482b35b38ad74865b9afc75c_GH0.tar.gz) = ad8cdf0dcbac1372664b301b481f31d84166f2e5bd0e08e67b32595e7a135584 +SIZE (brummer10-libxputty-9775b74862e3c10d482b35b38ad74865b9afc75c_GH0.tar.gz) = 577796 +SHA256 (jatinchowdhury18-RTNeural-a8ae9c5af21cba309d06bce71a2008a9a13ab65b_GH0.tar.gz) = 63aa3b252fb1d24dd55563f3f3d854f66e6aeb39c41ff8280f297bfb2d0c8bf8 +SIZE (jatinchowdhury18-RTNeural-a8ae9c5af21cba309d06bce71a2008a9a13ab65b_GH0.tar.gz) = 2494879 +SHA256 (xtensor-stack-xsimd-a00c81f7b9e808a42aedcf7da2fbb1f9a636da34_GH0.tar.gz) = f1c485107ae0b29069a88bf9619d2d93eaed8321ae03a83d7fc437da85d5b9fd +SIZE (xtensor-stack-xsimd-a00c81f7b9e808a42aedcf7da2fbb1f9a636da34_GH0.tar.gz) = 217905 +SHA256 (sdatkinson-NeuralAmpModelerCore-e181f61efb8d05d34add45b5eecb3893ff21177c_GH0.tar.gz) = e732c6e204597d4059aa01f5f416034383dac13d26859b97ef4b97ba0cb3ab39 +SIZE (sdatkinson-NeuralAmpModelerCore-e181f61efb8d05d34add45b5eecb3893ff21177c_GH0.tar.gz) = 161453 +SHA256 (HiFi-LoFi-FFTConvolver-f2cdeb04c42141d2caec19ca4f137398b2a76b85_GH0.tar.gz) = 38c7c4d9d2973f80df152993eda871c8ffaf886f9d7185301a890f3f656142a2 +SIZE (HiFi-LoFi-FFTConvolver-f2cdeb04c42141d2caec19ca4f137398b2a76b85_GH0.tar.gz) = 14537 diff --git a/audio/neuralrack-lv2/files/patch-NeuralRack_makefile b/audio/neuralrack-lv2/files/patch-NeuralRack_makefile new file mode 100644 index 000000000000..cac1717fe2b6 --- /dev/null +++ b/audio/neuralrack-lv2/files/patch-NeuralRack_makefile @@ -0,0 +1,57 @@ +--- NeuralRack/makefile.orig 2025-03-26 15:38:12 UTC ++++ NeuralRack/makefile +@@ -2,14 +2,14 @@ + # check on which OS we build + UNAME_S := $(shell uname -s) + # check which architecture we build on +- UNAME_M := $(shell uname -m) ++ UNAME_M := $(shell uname -m | sed 's/amd64/x86_64/') + # check which architecture we build for + TARGET_ARCH = UNKNOWN + # check if user is root + user = $(shell whoami) +- ifeq ($(user),root) +- INSTALL_DIR = /usr/lib/lv2 +- EXE_INSTALL_DIR = /usr/bin ++ ifneq ($(DESTDIR),) ++ INSTALL_DIR = $(PREFIX)/lib/lv2 ++ EXE_INSTALL_DIR = $(PREFIX)/bin + else + INSTALL_DIR = ~/.lv2 + EXE_INSTALL_DIR = ~/bin +@@ -30,9 +30,6 @@ ifeq ($(TARGET), Linux) + # check if clang is available + ifeq ($(TARGET), Linux) + CXX_VERSION = $(shell clang++ --version 2>/dev/null) +- ifneq ($(CXX_VERSION),) +- CXX := clang++ +- endif + endif + + # get flags supported by CPU +@@ -142,7 +139,7 @@ endif + + NAME = NeuralRack + space := $(subst ,, ) +- EXEC_NAME := Neuralrack ++ EXEC_NAME := NeuralRack + BUNDLE = $(EXEC_NAME).lv2 + LIB_DIR := ../libxputty/libxputty/ + HEADER_DIR := $(LIB_DIR)include/ +@@ -438,13 +435,13 @@ ifneq ("$(wildcard ../bin/$(EXEC_NAME)$(EXE_EXT))","") + $(QUIET)mkdir -p $(DESTDIR)$(EXE_INSTALL_DIR)/ + $(QUIET)cp -r ../bin/$(EXEC_NAME)$(EXE_EXT) $(DESTDIR)$(EXE_INSTALL_DIR)/$(EXEC_NAME)$(EXE_EXT) + +- ifeq ($(user),root) ++ #ifeq ($(user),root) + $(QUIET)mkdir -p $(DESTDIR)$(DESKAPPS_DIR) + $(QUIET)cp $(STANDALONE_DIR)$(EXEC_NAME).desktop $(DESTDIR)$(DESKAPPS_DIR)$(EXEC_NAME).desktop + $(QUIET)mkdir -p $(DESTDIR)$(PIXMAPS_DIR) + $(QUIET)cp $(STANDALONE_DIR)$(EXEC_NAME).svg $(DESTDIR)$(PIXMAPS_DIR)$(EXEC_NAME).svg +- $(QUIET)update-desktop-database || true +- endif ++ #$(QUIET)update-desktop-database || true ++ #endif + @$(B_ECHO) ". ., done$(reset)" + else + @$(B_ECHO) "$(EXEC_NAME)$(EXE_EXT) standalone skipped$(reset)" diff --git a/audio/neuralrack-lv2/pkg-descr b/audio/neuralrack-lv2/pkg-descr new file mode 100644 index 000000000000..58ee3751d101 --- /dev/null +++ b/audio/neuralrack-lv2/pkg-descr @@ -0,0 +1,16 @@ +NeuralRack is a Neural Model and Impulse Response File loader. + +It supports *.nam files with the Neural Amp Modeler engine, or *.json or .aidax +files with the RTNeural engine. + +NeuralRack emulate a simple guitar effect chain with a pedal, a EQ a Amplifier +and a Stereo Cabinet. + +Optional, NeuralRack could run the complete process in buffered mode to reduce +the dsp load. The resulting latency will be reported to the host so that it +could be compensated. For information the resulting latency will be shown on +the GUI. + +NeuralRack supports resampling when needed to match the expected sample rate of +the loaded models. Both models and the IR Files may have different expectations +regarding the sample rate. diff --git a/audio/neuralrack-lv2/pkg-plist b/audio/neuralrack-lv2/pkg-plist new file mode 100644 index 000000000000..38d9c78977dc --- /dev/null +++ b/audio/neuralrack-lv2/pkg-plist @@ -0,0 +1,7 @@ +bin/NeuralRack +lib/lv2/NeuralRack.lv2/NeuralRack.so +lib/lv2/NeuralRack.lv2/NeuralRack.ttl +lib/lv2/NeuralRack.lv2/NeuralRack_ui.so +lib/lv2/NeuralRack.lv2/manifest.ttl +share/applications/NeuralRack.desktop +share/pixmaps/NeuralRack.svg