Browse Source

Merge branch 'main' into docb-modules

pull/851/head
rl2939 GitHub 2 months ago
parent
commit
26367fe74a
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
19 changed files with 133 additions and 51 deletions
  1. +1
    -1
      .github/ISSUE_TEMPLATE/bug.yaml
  2. +1
    -1
      .github/workflows/build.yml
  3. +4
    -1
      .gitmodules
  4. +1
    -1
      Makefile
  5. +1
    -0
      README.md
  6. +1
    -1
      carla
  7. +2
    -0
      docs/LICENSES.md
  8. +1
    -1
      dpf
  9. +0
    -9
      plugins/Cardinal/plugin.json
  10. +16
    -8
      plugins/Makefile
  11. +1
    -0
      plugins/Venom
  12. +87
    -8
      plugins/plugins.cpp
  13. +1
    -1
      src/CardinalCommon.cpp
  14. +1
    -1
      src/CardinalPlugin.cpp
  15. +0
    -14
      src/CardinalUI.cpp
  16. +2
    -1
      src/custom/RemoteNanoVG.cpp
  17. +11
    -1
      src/custom/glfw.cpp
  18. +1
    -1
      utils/macOS/Info_JACK.plist
  19. +1
    -1
      utils/macOS/Info_Native.plist

+ 1
- 1
.github/ISSUE_TEMPLATE/bug.yaml View File

@@ -5,7 +5,7 @@ body:
id: version
attributes:
label: Version
value: "25.06"
value: "25.10"
validations:
required: true
- type: dropdown


+ 1
- 1
.github/workflows/build.yml View File

@@ -426,7 +426,7 @@ jobs:
export PATH="/usr/lib/ccache:${PATH}"
source deps/PawPaw/local.env ${{ matrix.target }}
make features
make NOOPT=true -j $(nproc)
xvfb-run make NOOPT=true -j $(nproc)
- name: Build cross-compiled (carla)
if: steps.cache.outputs.cache-hit == 'true'
shell: bash


+ 4
- 1
.gitmodules View File

@@ -263,6 +263,9 @@
[submodule "plugins/eightfold"]
path = plugins/eightfold
url = https://github.com/scanner-darkly/eightfold.git
[submodule "plugins/Venom"]
path = plugins/Venom
url = https://github.com/DaveBenham/VenomModules
[submodule "plugins/dbRackModules"]
path = plugins/dbRackModules
url = https://github.com/docb/dbRackModules.git
url = https://github.com/docb/dbRackModules.git

+ 1
- 1
Makefile View File

@@ -15,7 +15,7 @@ include $(ROOT)/Makefile.base.mk
# src/CardinalPlugin.cpp `getVersion`
# utils/macOS/Info_{JACK,Native}.plist
# .github/ISSUE_TEMPLATE/bug.yaml src/CardinalCommon.cpp src/CardinalPlugin.cpp utils/macOS/Info_{JACK,Native}.plist
VERSION = 25.06
VERSION = 25.10

# ---------------------------------------------------------------------------------------------------------------------
# Build targets


+ 1
- 0
README.md View File

@@ -197,6 +197,7 @@ At the moment the following 3rd-party modules are provided:
- [Surge XT](https://github.com/surge-synthesizer/surge-rack)
- [unless_modules](https://gitlab.com/unlessgames/unless_modules)
- [Valley](https://github.com/ValleyAudio/ValleyRackFree)
- [Venom](https://github.com/DaveBenham/VenomModules)
- [Voxglitch](https://github.com/clone45/voxglitch)
- [WhatTheRack](https://github.com/korfuri/WhatTheRack)
- [WSTD-Drums](https://github.com/Wasted-Audio/WSTD-Drums)


+ 1
- 1
carla

@@ -1 +1 @@
Subproject commit 12bc40fd6c9c5b36481c7df55086b27ba9ae8a80
Subproject commit 1d8dcb5aab5e0c30352e9f928ce3e40cbc86a439

+ 2
- 0
docs/LICENSES.md View File

@@ -91,6 +91,7 @@ Below follows a list of all code licenses used in Cardinal and linked submodules
| Surge XT | GPL-3.0-or-later | |
| unless_modules | GPL-3.0-or-later | |
| Valley | GPL-3.0-or-later | |
| Venom | GPL-3.0-or-later | |
| Voxglitch | GPL-3.0-or-later | |
| WSTD-Drums | CC0-1.0 | |
| WhatTheRack | WTFPL | |
@@ -268,6 +269,7 @@ Below is a list of artwork licenses from plugins
| ValleyAudio/din1451alt.ttf | CC-BY-3.0-DE | |
| ValleyAudio/DSEG14Classic-*.ttf | OFL-1.1-RFN | |
| ValleyAudio/ShareTechMono-*.ttf | OFL-1.1-RFN | |
| Venom/* | GPL-3.0-or-later | No artwork specific license provided |
| voxglitch/* | GPL-3.0-or-later | No artwork specific license provided |
| voxglitch/ShareTechMono-Regular.ttf | OFL-1.1-RFN | |
| WhatTheRack/* | WTFPL | |


+ 1
- 1
dpf

@@ -1 +1 @@
Subproject commit ab25198ea9f361145e3f8e694d90bd2a93ee830c
Subproject commit 04eb91490c70a0c3f524e473087e263d8a9d550f

+ 0
- 9
plugins/Cardinal/plugin.json View File

@@ -192,15 +192,6 @@
"Utility"
]
},
{
"slug": "MPV",
"name": "MPV",
"description": "An embed video player inside Cardinal",
"manualUrl": "https://github.com/DISTRHO/Cardinal/blob/main/docs/CARDINAL-MODULES.md#mpv",
"tags": [
"Visual"
]
},
{
"slug": "SassyScope",
"name": "Sassy Scope",


+ 16
- 8
plugins/Makefile View File

@@ -255,18 +255,12 @@ PLUGIN_FILES += Cardinal/src/glBars.cpp
endif
endif

ifneq ($(STATIC_BUILD),true)
ifneq ($(MOD_BUILD),true)
PLUGIN_FILES += Cardinal/src/AudioFile.cpp
ifneq ($(WASM),true)
PLUGIN_FILES += Cardinal/src/Carla.cpp
PLUGIN_FILES += Cardinal/src/Ildaeil.cpp
endif
ifneq ($(HEADLESS),true)
ifeq ($(HAVE_X11),true)
PLUGIN_FILES += Cardinal/src/EmbedWidget.cpp
PLUGIN_FILES += Cardinal/src/MPV.cpp
endif
endif
endif

ifneq ($(HEADLESS),true)
@@ -831,7 +825,7 @@ IHTSYN_CUSTOM_PER_FILE += mv_statevariable

PLUGIN_FILES += $(filter-out JW-Modules/src/JWModules.cpp JW-Modules/src/Str1ker.cpp,$(wildcard JW-Modules/src/*.cpp))

ifneq ($(STATIC_BUILD),true)
ifneq ($(MOD_BUILD),true)
PLUGIN_FILES += JW-Modules/src/Str1ker.cpp
PLUGIN_FILES += $(wildcard JW-Modules/lib/oscpack/ip/*.cpp)
PLUGIN_FILES += $(wildcard JW-Modules/lib/oscpack/osc/*.cpp)
@@ -1331,6 +1325,11 @@ PLUGIN_BINARIES += ValleyAudio/src/XFADE.bin
VALLEYAUDIO_CUSTOM = $(DRWAV) Chord DigitalDisplay
VALLEYAUDIO_CUSTOM_PER_FILE = TempoKnob

# --------------------------------------------------------------
# Venom

PLUGIN_FILES += $(filter-out Venom/src/plugin.cpp,$(wildcard Venom/src/*.cpp))

# --------------------------------------------------------------
# Voxglitch

@@ -2853,6 +2852,15 @@ $(BUILD_DIR)/ValleyAudio/%.cpp.o: ValleyAudio/%.cpp
-Wno-sign-compare \
-Wno-unused-but-set-variable

$(BUILD_DIR)/Venom/%.cpp.o: Venom/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
$(foreach m,$(VENOM_CUSTOM),$(call custom_module_names,$(m),Venom)) \
-DSKIP_MINGW_FORMAT \
-DpluginInstance=pluginInstance__Venom \
-lglfw

$(BUILD_DIR)/voxglitch/%.cpp.o: voxglitch/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"


+ 1
- 0
plugins/Venom

@@ -0,0 +1 @@
Subproject commit 1dc0e0612b75fcf4849f28cb6e569e3b6f13981a

+ 87
- 8
plugins/plugins.cpp View File

@@ -987,6 +987,13 @@ void surgext_rack_update_theme();
// ValleyAudio
#include "ValleyAudio/src/Valley.hpp"

// Venom
#include "Venom/src/plugin.hpp"
namespace Venom
{
void readDefaultThemes();
}

// Voxglitch
#define modelLooper modelVoxglitchLooper
#include "voxglitch/src/plugin.hpp"
@@ -1107,6 +1114,7 @@ extern Plugin* pluginInstance__stoermelder_p1;
Plugin* pluginInstance__surgext;
Plugin* pluginInstance__unless_modules;
Plugin* pluginInstance__ValleyAudio;
Plugin* pluginInstance__Venom;
Plugin* pluginInstance__Voxglitch;
Plugin* pluginInstance__WhatTheRack;
extern Plugin* pluginInstance__WSTD_Drums;
@@ -1243,12 +1251,12 @@ static void initStatic__Cardinal()
#else
spl.removeModule("glBars");
#endif
#ifndef STATIC_BUILD
#ifndef __MOD_DEVICES__
p->addModel(modelAudioFile);
#else
spl.removeModule("AudioFile");
#endif
#if !(defined(DISTRHO_OS_WASM) || defined(STATIC_BUILD))
#if !(defined(DISTRHO_OS_WASM) || defined(__MOD_DEVICES__))
p->addModel(modelCarla);
p->addModel(modelIldaeil);
#else
@@ -1260,11 +1268,6 @@ static void initStatic__Cardinal()
#else
spl.removeModule("SassyScope");
#endif
#if defined(HAVE_X11) && !defined(HEADLESS) && !defined(STATIC_BUILD)
p->addModel(modelMPV);
#else
spl.removeModule("MPV");
#endif
#ifdef HAVE_FFTW3F
p->addModel(modelAudioToCVPitch);
#else
@@ -2791,7 +2794,7 @@ static void initStatic__JW()
p->addModel(modelCoolBreeze);
p->addModel(modelPete);
p->addModel(modelTimer);
#ifndef STATIC_BUILD
#ifndef __MOD_DEVICES__
p->addModel(modelStr1ker);
#else
spl.removeModule("Str1ker");
@@ -3682,6 +3685,81 @@ static void initStatic__ValleyAudio()
}
}

static void initStatic__Venom()
{
Plugin* const p = new Plugin;
pluginInstance__Venom = p;

const StaticPluginLoader spl(p, "Venom");
if (spl.ok())
{
p->addModel(modelVenomAD_ASR);
p->addModel(modelVenomAuxClone);
p->addModel(modelVenomBayInput);
p->addModel(modelVenomBayNorm);
p->addModel(modelVenomBayOutput);
p->addModel(modelVenomBenjolinOsc);
p->addModel(modelVenomBenjolinGatesExpander);
p->addModel(modelVenomBenjolinVoltsExpander);
p->addModel(modelVenomBernoulliSwitch);
p->addModel(modelVenomBernoulliSwitchExpander);
p->addModel(modelVenomBlocker);
p->addModel(modelVenomBypass);
p->addModel(modelVenomCloneMerge);
p->addModel(modelVenomCompare2);
p->addModel(modelVenomCrossFade3D);
p->addModel(modelVenomHQ);
p->addModel(modelVenomKnob5);
p->addModel(modelVenomLinearBeats);
p->addModel(modelVenomLinearBeatsExpander);
p->addModel(modelVenomLogic);
p->addModel(modelVenomMix4);
p->addModel(modelVenomMix4Stereo);
p->addModel(modelVenomMixFade);
p->addModel(modelVenomMixFade2);
p->addModel(modelVenomMixMute);
p->addModel(modelVenomMixOffset);
p->addModel(modelVenomMixPan);
p->addModel(modelVenomMixSend);
p->addModel(modelVenomMixSolo);
p->addModel(modelVenomMousePad);
p->addModel(modelVenomMultiMerge);
p->addModel(modelVenomMultiSplit);
p->addModel(modelVenomOscillator);
p->addModel(modelVenomNORS_IQ);
p->addModel(modelVenomNORSIQChord2Scale);
p->addModel(modelVenomPan3D);
p->addModel(modelVenomPolyClone);
p->addModel(modelVenomPolyFade);
p->addModel(modelVenomPolyOffset);
p->addModel(modelVenomPolySHASR);
p->addModel(modelVenomPolyScale);
p->addModel(modelVenomPolyUnison);
p->addModel(modelVenomPush5);
p->addModel(modelVenomQuadVCPolarizer);
p->addModel(modelVenomRecurse);
p->addModel(modelVenomRecurseStereo);
p->addModel(modelVenomReformation);
p->addModel(modelVenomRhythmExplorer);
p->addModel(modelVenomShapedVCA);
p->addModel(modelVenomSlew);
p->addModel(modelVenomSphereToXYZ);
p->addModel(modelVenomThru);
p->addModel(modelVenomVCAMix4);
p->addModel(modelVenomVCAMix4Stereo);
p->addModel(modelVenomVCOUnit);
p->addModel(modelVenomBlank);
p->addModel(modelVenomWaveFolder);
p->addModel(modelVenomWaveMangler);
p->addModel(modelVenomWaveMultiplier);
p->addModel(modelVenomWidgetMenuExtender);
p->addModel(modelVenomWinComp);
p->addModel(modelVenomXM_OP);

Venom::readDefaultThemes();
}
}

static void initStatic__Voxglitch()
{
Plugin* p = new Plugin;
@@ -3883,6 +3961,7 @@ void initStaticPlugins()
initStatic__surgext();
initStatic__unless_modules();
initStatic__ValleyAudio();
initStatic__Venom();
initStatic__Voxglitch();
initStatic__WhatTheRack();
initStatic__WSTD_Drums();


+ 1
- 1
src/CardinalCommon.cpp View File

@@ -99,7 +99,7 @@ void destroyStaticPlugins();
}
}

const std::string CARDINAL_VERSION = "25.06";
const std::string CARDINAL_VERSION = "25.10";

// -----------------------------------------------------------------------------------------------------------



+ 1
- 1
src/CardinalPlugin.cpp View File

@@ -414,7 +414,7 @@ protected:
uint32_t getVersion() const override
{
return d_version(0, 25, 6);
return d_version(0, 25, 10);
}
int64_t getUniqueId() const override


+ 0
- 14
src/CardinalUI.cpp View File

@@ -1259,20 +1259,6 @@ protected:
#endif
}

#if 0
void uiReshape(const uint width, const uint height) override
{
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, width, 0.0, height, -1.0, 1.0);
glViewport(0, 0, width, height);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
#endif

private:
/**
Set our UI class as non-copyable and add a leak detector just in case.


+ 2
- 1
src/custom/RemoteNanoVG.cpp View File

@@ -1,6 +1,6 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
* Copyright (C) 2021-2025 Filipe Coelho <falktx@falktx.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -55,6 +55,7 @@ GLFWAPI void glfwSetClipboardString(GLFWwindow*, const char*) {}
GLFWAPI GLFWcursor* glfwCreateStandardCursor(int) { return nullptr; }
GLFWAPI void glfwSetCursor(GLFWwindow*, GLFWcursor*) {}
GLFWAPI const char* glfwGetKeyName(int, int) { return nullptr; }
GLFWAPI int glfwGetKey(GLFWwindow*, int) { return 0; }
GLFWAPI int glfwGetKeyScancode(int) { return 0; }
GLFWAPI double glfwGetTime(void) { return 0.0; }



+ 11
- 1
src/custom/glfw.cpp View File

@@ -1,6 +1,6 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021-2024 Filipe Coelho <falktx@falktx.com>
* Copyright (C) 2021-2025 Filipe Coelho <falktx@falktx.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
@@ -17,6 +17,7 @@

#include "Application.hpp"
#include "CardinalPluginContext.hpp"
#include "widget/event.hpp"

#include <GLFW/glfw3.h>

@@ -207,3 +208,12 @@ GLFWAPI const char* glfwGetKeyName(const int key, int)
default: return nullptr;
}
}

int glfwGetKey(GLFWwindow*, const int key)
{
CardinalPluginContext* const context = static_cast<CardinalPluginContext*>(APP);
DISTRHO_SAFE_ASSERT_RETURN(context != nullptr, GLFW_RELEASE);
DISTRHO_SAFE_ASSERT_RETURN(context->event != nullptr, GLFW_RELEASE);

return context->event->heldKeys.find(key) != context->event->heldKeys.end() ? GLFW_PRESS : GLFW_RELEASE;
}

+ 1
- 1
utils/macOS/Info_JACK.plist View File

@@ -11,7 +11,7 @@
<key>CFBundleIdentifier</key>
<string>studio.kx.distrho.cardinal.jack</string>
<key>CFBundleShortVersionString</key>
<string>25.06</string>
<string>25.10</string>
<key>LSMinimumSystemVersion</key>
<string>10.15</string>
<key>NSHumanReadableCopyright</key>


+ 1
- 1
utils/macOS/Info_Native.plist View File

@@ -11,7 +11,7 @@
<key>CFBundleIdentifier</key>
<string>studio.kx.distrho.cardinal.native</string>
<key>CFBundleShortVersionString</key>
<string>25.06</string>
<string>25.10</string>
<key>LSMinimumSystemVersion</key>
<string>10.15</string>
<key>NSHumanReadableCopyright</key>


Loading…
Cancel
Save