" + - tr ( "Audio reverberation code by Perry R. Cook and Gary P. Scavone" ) + - ", 1995 - 2021" - ", The Synthesis ToolKit in C++ (STK)" - ", https://ccrma.stanford.edu/software/stk" + tr ( "Audio reverberation powered by MVerb" ) + + ", Copyright (c) 2010 Martin Eastwood" + ", https://github.com/martineastwood/mverb" "
" "" + QString ( tr ( "Some pixmaps are from the %1" ) ).arg ( "Open Clip Art Library (OCAL)" ) + From 5043b28c67ccc39c018ada25e83decf074c9ad86 Mon Sep 17 00:00:00 2001 From: Nils Brederlow <62596379+dingodoppelt@users.noreply.github.com> Date: Thu, 13 Aug 2026 12:57:51 +0200 Subject: [PATCH 6/7] Fix pan knobs not being displayed when building without reverb --- src/clientdlg.cpp | 10 +++++----- src/clientdlg.h | 9 +-------- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/clientdlg.cpp b/src/clientdlg.cpp index e51fd13e07..431d5dd770 100644 --- a/src/clientdlg.cpp +++ b/src/clientdlg.cpp @@ -268,10 +268,11 @@ CClientDlg::CClientDlg ( CClient* pNCliP, const int iCurAudReverb = pClient->GetReverbLevel(); sldAudioReverb->setValue ( iCurAudReverb ); sldAudioReverb->setTickInterval ( AUD_REVERB_MAX / 5 ); +#endif - // init reverb channel + // init reverb channel (needed for pan feature as well) UpdateRevSelection(); -#endif + // init input boost pClient->SetInputBoost ( pSettings->iInputBoost ); @@ -688,9 +689,9 @@ void CClientDlg::ManageDragNDrop ( QDropEvent* Event, const bool bCheckAccept ) } } } -#ifndef NO_REVERB void CClientDlg::UpdateRevSelection() { +#ifndef NO_REVERB if ( pClient->GetAudioChannels() == CC_STEREO ) { // for stereo make channel selection invisible since @@ -714,11 +715,10 @@ void CClientDlg::UpdateRevSelection() rbtReverbSelR->setChecked ( true ); } } - +#endif // update visibility of the pan controls in the audio mixer board (pan is not supported for mono) MainMixerBoard->SetDisplayPans ( pClient->GetAudioChannels() != CC_MONO ); } -#endif void CClientDlg::OnConnectDlgAccepted() { // We had an issue that the accepted signal was emit twice if a list item was double diff --git a/src/clientdlg.h b/src/clientdlg.h index 8dc8a67805..302e81343d 100644 --- a/src/clientdlg.h +++ b/src/clientdlg.h @@ -114,9 +114,7 @@ class CClientDlg : public CBaseDlg, private Ui_CClientDlgBase void ShowChatWindow ( const bool bForceRaise = true ); void ShowAnalyzerConsole(); void UpdateAudioFaderSlider(); -#ifndef NO_REVERB void UpdateRevSelection(); -#endif void ManageDragNDrop ( QDropEvent* Event, const bool bCheckAccept ); void SetPingTime ( const int iPingTime, const int iOverallDelayMs, const CMultiColorLED::ELightColor eOverallDelayLEDColor ); @@ -260,12 +258,7 @@ public slots: void OnMeterStyleChanged(); void OnRecorderStateReceived ( ERecorderState eRecorderState ); void SetMixerBoardDeco ( const ERecorderState newRecorderState, const EGUIDesign eNewDesign ); - void OnAudioChannelsChanged() - { -#ifndef NO_REVERB - UpdateRevSelection(); -#endif - } + void OnAudioChannelsChanged() { UpdateRevSelection(); } void OnNumClientsChanged ( int iNewNumClients ); void accept() { close(); } // introduced by pljones From bd02d03535ea99d309d1ed06ca4ddfa8c9484773 Mon Sep 17 00:00:00 2001 From: Nils Brederlow <62596379+dingodoppelt@users.noreply.github.com> Date: Thu, 13 Aug 2026 20:48:59 +0200 Subject: [PATCH 7/7] add copyright and licensing info for MVerb --- COPYING | 49 ++++++------------------------------- src/plugins/audioreverb.cpp | 6 ++--- src/util.cpp | 2 +- 3 files changed, 12 insertions(+), 45 deletions(-) diff --git a/COPYING b/COPYING index d7bfd7f9eb..d7a5d127d6 100644 --- a/COPYING +++ b/COPYING @@ -1678,44 +1678,11 @@ Broadcom Corporation: https://datatracker.ietf.org/ipr/1526/ -------------------------------------------------------------------------------- -Component "Synthesis ToolKit" license: - -The Synthesis ToolKit in C++ (STK) is a set of open source audio -signal processing and algorithmic synthesis classes written in the -C++ programming language. STK was designed to facilitate rapid -development of music synthesis and audio processing software, with -an emphasis on cross-platform functionality, realtime control, -ease of use, and educational example code. STK currently runs -with realtime support (audio and MIDI) on Linux, Macintosh OS X, -and Windows computer platforms. Generic, non-realtime support has -been tested under NeXTStep, Sun, and other platforms and should -work with any standard C++ compiler. - -STK WWW site: http://ccrma.stanford.edu/software/stk/ - -The Synthesis ToolKit in C++ (STK) -Copyright (c) 1995-2011 Perry R. Cook and Gary P. Scavone - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -Any person wishing to distribute modifications to the Software is -asked to send the modifications to the original developer so that they -can be incorporated into the canonical version. This is, however, not -a binding provision of this license. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +Component "MVerb Library" license: + +Jamulus uses MVerb - Copyright (c) 2010 Martin Eastwood + +MVerb is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +at your option) any later version. diff --git a/src/plugins/audioreverb.cpp b/src/plugins/audioreverb.cpp index 2e0a9885bb..719ec5a939 100644 --- a/src/plugins/audioreverb.cpp +++ b/src/plugins/audioreverb.cpp @@ -2,9 +2,9 @@ * Audio Reverberation * \******************************************************************************/ /* - The following code calls MVerb for reverberation. - MVerb was written by Martin Eastwood. - https://github.com/martineastwood/mverb + The following code uses the MVerb library by Martin Eastwood. + Source: https://github.com/martineastwood/mverb + License: GNU General Public License v3.0 (GPL-3.0) */ #include "audioreverb.h" diff --git a/src/util.cpp b/src/util.cpp index 779eafea6e..de6dc361b2 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -525,7 +525,7 @@ CAboutDlg::CAboutDlg ( QWidget* parent ) : CBaseDlg ( parent ) # ifndef HEADLESS "
" + tr ( "Audio reverberation powered by MVerb" ) + - ", Copyright (c) 2010 Martin Eastwood" + ", Copyright (c) 2010 Martin Eastwood, licensed under the GPL3.0 License" ", https://github.com/martineastwood/mverb" "
" "" +