Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions .github/workflows/reaninjam-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: ReaNINJAM CI

on:
push:
branches: ["**"]
pull_request:

jobs:
windows-build:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup MSBuild
uses: microsoft/setup-msbuild@v2

- name: Build VST3 (x64 Release)
shell: pwsh
run: |
msbuild "jmde/fx/reaninjam/reaninjam.vcxproj" `
/t:Build `
/p:Configuration=Release `
/p:Platform=x64

- name: Upload Windows artifact
uses: actions/upload-artifact@v4
with:
name: reaninjam-windows-vst3
path: jmde/fx/reaninjam/x64/Release/reaninjam.vst3
if-no-files-found: error

macos-build:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install dependencies
run: |
brew update
brew install libogg libvorbis

- name: Build plugin target
run: |
mkdir -p build/macos
make -C jmde/fx/reaninjam \
OUTDIR="$GITHUB_WORKSPACE/build/macos" \
TARGET_DARWIN=1 \
DLL_EXT=.dylib \
OGGDIR=/opt/homebrew/opt/libogg \
VORBISDIR=/opt/homebrew/opt/libvorbis \
WDL_PATH="$GITHUB_WORKSPACE/WDL"

- name: Package macOS VST3 bundle
run: |
mkdir -p build/macos/reaninjam.vst3/Contents/MacOS
cp build/macos/reaninjam.vst.dylib build/macos/reaninjam.vst3/Contents/MacOS/reaninjam

- name: Upload macOS artifact
uses: actions/upload-artifact@v4
with:
name: reaninjam-macos-vst3
path: build/macos/reaninjam.vst3
if-no-files-found: error
98 changes: 98 additions & 0 deletions .github/workflows/reaninjam-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: ReaNINJAM Release

on:
push:
tags:
- "v*"
workflow_dispatch:

jobs:
build-windows:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup MSBuild
uses: microsoft/setup-msbuild@v2

- name: Build VST3 (x64 Release)
shell: pwsh
run: |
msbuild "jmde/fx/reaninjam/reaninjam.vcxproj" `
/t:Build `
/p:Configuration=Release `
/p:Platform=x64

- name: Package Windows artifact
shell: pwsh
run: |
Compress-Archive -Path "jmde/fx/reaninjam/x64/Release/reaninjam.vst3" -DestinationPath "reaninjam-windows-vst3.zip"

- name: Upload Windows artifact
uses: actions/upload-artifact@v4
with:
name: reaninjam-windows-vst3
path: reaninjam-windows-vst3.zip
if-no-files-found: error

build-macos:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install dependencies
run: |
brew update
brew install libogg libvorbis

- name: Build plugin target
run: |
mkdir -p build/macos
make -C jmde/fx/reaninjam \
OUTDIR="$GITHUB_WORKSPACE/build/macos" \
TARGET_DARWIN=1 \
DLL_EXT=.dylib \
OGGDIR=/opt/homebrew/opt/libogg \
VORBISDIR=/opt/homebrew/opt/libvorbis \
WDL_PATH="$GITHUB_WORKSPACE/WDL"

- name: Package macOS VST3 bundle
run: |
mkdir -p build/macos/reaninjam.vst3/Contents/MacOS
cp build/macos/reaninjam.vst.dylib build/macos/reaninjam.vst3/Contents/MacOS/reaninjam
cd build/macos
zip -r ../../reaninjam-macos-vst3.zip reaninjam.vst3

- name: Upload macOS artifact
uses: actions/upload-artifact@v4
with:
name: reaninjam-macos-vst3
path: reaninjam-macos-vst3.zip
if-no-files-found: error

publish-release:
runs-on: ubuntu-latest
needs: [build-windows, build-macos]
permissions:
contents: write
steps:
- name: Download Windows artifact
uses: actions/download-artifact@v4
with:
name: reaninjam-windows-vst3
path: artifacts

- name: Download macOS artifact
uses: actions/download-artifact@v4
with:
name: reaninjam-macos-vst3
path: artifacts

- name: Create GitHub release
uses: softprops/action-gh-release@v2
with:
files: |
artifacts/reaninjam-windows-vst3.zip
artifacts/reaninjam-macos-vst3.zip
52 changes: 52 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
.DS_Store
Thumbs.db
.vscode/
.vs/
*.user
*.suo
*.opensdf
*.sdf

build/
build_*/
build_server/
build_test/
CMakeFiles/
cmake_install.cmake
CMakeCache.txt
*.dir/
*.tlog
*.obj
*.pdb
*.ilk
*.idb
*.lib
*.exp
*.exe
*.dll

*.vst3/
*.component/
*.vst/
*.au/
*.aaxplugin/

node_modules/
npm-debug.log*

build_*.txt
cmake_*.txt
err_*.txt
final_build_log*.txt
ninjam_debug.txt
slider_log.txt
temp_video.txt
tmp_videoClicked.txt
*.bak

NINJAM-VDO-Package/
NINJAM_VST3_mac_source/
NINJAM_VST3_mac_source.zip
_tmp_JamTaba/
ninjam - Copy/
server.js
16 changes: 11 additions & 5 deletions README
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
This is NINJAM, www.ninjam.com
This is based on the original code of NINJAM made by Justin Frankel

To build the server, go to ninjam/server and run make
Mainly this is the same version updated via Juce which includes VST3, AU multi I/O plugins
and Standalone's which also support Multiple I/O.
Including Midi Learn and OSC Learn for knobs, buttons and faders.
Skin and Video backgrounds systenm to add to and make your own skins.
VDO Ninjam VideoSync'd to NINJAM Intervals with options to perfect the sync.

The various clients in ninjam/ are all old and probably need some attention to function

The REAPER ReaNINJAM plug-in is in jmde/fx/reaninjam/. It is more fully featured. You will need the VST2 SDK to compile it, though.
Other extra's, Auto volume to better level all, Master Out Limiter, Reverb and Delay Sends for
all local channels.
Multiple Channels sent via Opus Multichannel Codec.
Backwards compatible with NINJAMs Vobis Audio.

All the extra's are in the branches.
Loading