From 96ff30378ad23f3b94481f080ed52342e31c5054 Mon Sep 17 00:00:00 2001 From: =?utf8?q?IOhannes=20m=20zm=C3=B6lnig=20=28Debian/GNU=29?= Date: Sat, 16 Mar 2024 23:51:08 +0100 Subject: [PATCH] New upstream version 2.2.4+ds --- docs/changelog.yml | 5 ++ releases/edge/mac-manifests.json | 10 ++++ releases/edge/win-manifests.json | 10 ++++ releases/stable/linux-manifests.json | 10 ++++ releases/stable/mac-manifests.json | 10 ++++ releases/stable/win-manifests.json | 10 ++++ src/gui/vsAudio.cpp | 84 ++++++++-------------------- src/jacktrip_globals.h | 2 +- src/main.cpp | 2 +- win/build_installer.bat | 6 ++ win/qt6-noguids.wxs | 9 +++ win/qt6.wxs | 3 + 12 files changed, 97 insertions(+), 64 deletions(-) diff --git a/docs/changelog.yml b/docs/changelog.yml index 2752b78..9c15523 100644 --- a/docs/changelog.yml +++ b/docs/changelog.yml @@ -1,3 +1,8 @@ +- Version: "2.2.4" + Date: 2024-03-13 + Description: + - (fixed) Allow software opengl for older windows video drivers + - (fixed) VS Mode avoid unnecessary JACK library checks at startup - Version: "2.2.3" Date: 2024-03-04 Description: diff --git a/releases/edge/mac-manifests.json b/releases/edge/mac-manifests.json index 4acb1a7..fa4fffb 100644 --- a/releases/edge/mac-manifests.json +++ b/releases/edge/mac-manifests.json @@ -1,6 +1,16 @@ { "app_name": "JackTrip", "releases": [ + { + "version": "2.2.3", + "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.3", + "download": { + "date": "2024-03-04T00:00:00Z", + "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.2.3-macOS-x64-signed-installer.pkg", + "downloadSize": "177372204", + "sha256": "68a4e2b0d4979d77607707a2c3c8bb25446465401a4c487a6d00fae70d8c2511" + } + }, { "version": "2.2.2", "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.2", diff --git a/releases/edge/win-manifests.json b/releases/edge/win-manifests.json index a5ec0ae..979cd16 100644 --- a/releases/edge/win-manifests.json +++ b/releases/edge/win-manifests.json @@ -1,6 +1,16 @@ { "app_name": "JackTrip", "releases": [ + { + "version": "2.2.3", + "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.3", + "download": { + "date": "2024-03-04T00:00:00Z", + "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.2.3-Windows-x64-signed-installer.msi", + "downloadSize": "108511232", + "sha256": "76f721e1ca52835ab074909e2044624363e5f63f0e1b8f6702bf2a857da59979" + } + }, { "version": "2.2.2", "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.2", diff --git a/releases/stable/linux-manifests.json b/releases/stable/linux-manifests.json index 5654f65..3a4e572 100644 --- a/releases/stable/linux-manifests.json +++ b/releases/stable/linux-manifests.json @@ -1,6 +1,16 @@ { "app_name": "JackTrip", "releases": [ + { + "version": "2.2.3", + "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.3", + "download": { + "date": "2024-03-04T00:00:00Z", + "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.2.3-Linux-x64-binary.zip", + "downloadSize": "1239992", + "sha256": "f06507caaed33705a8b4b6b20e2b49358fc77aba2138e79e4c543c1fce9b9bd5" + } + }, { "version": "2.2.2", "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.2", diff --git a/releases/stable/mac-manifests.json b/releases/stable/mac-manifests.json index 546eea6..754f30c 100644 --- a/releases/stable/mac-manifests.json +++ b/releases/stable/mac-manifests.json @@ -1,6 +1,16 @@ { "app_name": "JackTrip", "releases": [ + { + "version": "2.2.3", + "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.3", + "download": { + "date": "2024-03-04T00:00:00Z", + "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.2.3-macOS-x64-signed-installer.pkg", + "downloadSize": "177372204", + "sha256": "68a4e2b0d4979d77607707a2c3c8bb25446465401a4c487a6d00fae70d8c2511" + } + }, { "version": "2.2.2", "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.2", diff --git a/releases/stable/win-manifests.json b/releases/stable/win-manifests.json index 83aae39..f068d98 100644 --- a/releases/stable/win-manifests.json +++ b/releases/stable/win-manifests.json @@ -1,6 +1,16 @@ { "app_name": "JackTrip", "releases": [ + { + "version": "2.2.3", + "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.3", + "download": { + "date": "2024-03-04T00:00:00Z", + "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.2.3-Windows-x64-signed-installer.msi", + "downloadSize": "108511232", + "sha256": "76f721e1ca52835ab074909e2044624363e5f63f0e1b8f6702bf2a857da59979" + } + }, { "version": "2.2.2", "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.2", diff --git a/src/gui/vsAudio.cpp b/src/gui/vsAudio.cpp index fea3e73..41970c2 100644 --- a/src/gui/vsAudio.cpp +++ b/src/gui/vsAudio.cpp @@ -106,19 +106,6 @@ VsAudio::VsAudio(QObject* parent) { loadSettings(); - if (isBackendAvailable()) { - if (!jackIsAvailable()) { - m_audioBackendComboModel = {"RtAudio"}; - } - } else { - if (!jackIsAvailable()) { - // shouldn't happen - m_audioBackendComboModel = {}; - } else { - m_audioBackendComboModel = {"JACK"}; - } - } - QJsonObject element; element.insert(QString::fromStdString("label"), QString::fromStdString("Mono")); element.insert(QString::fromStdString("value"), @@ -494,17 +481,6 @@ void VsAudio::loadSettings() } else { audioBackend = AudioBackendType::JACK; } -#ifdef USE_WEAK_JACK - // Check if Jack is available - if (have_libjack() != 0) { -#ifdef RT_AUDIO - audioBackend = AudioBackendType::RTAUDIO; -#else - // TODO: Handle this more gracefully, even if it's an unlikely scenario - qFatal("JACK not found and not built with RtAudio support."); -#endif // RT_AUDIO - } -#endif // USE_WEAK_JACK if (audioBackend != m_backend) { setAudioBackend(audioBackend == AudioBackendType::RTAUDIO ? QStringLiteral("RtAudio") @@ -811,51 +787,35 @@ void VsAudio::updateDeviceMessages(AudioInterface& audioInterface) AudioInterface* VsAudio::newAudioInterface(JackTrip* jackTripPtr) { - AudioInterface* ifPtr = nullptr; - // Create AudioInterface Client Object - if (isBackendAvailable() && jackIsAvailable()) { - // all backends area available - if (m_backend == VsAudio::AudioBackendType::JACK) { - qDebug() << "Using JACK backend"; - ifPtr = newJackAudioInterface(jackTripPtr); - } else { - qDebug() << "Using RtAudio backend"; - ifPtr = newRtAudioInterface(jackTripPtr); - } - } else if (isBackendAvailable()) { - // only RtAudio backend is available - if (m_backend != VsAudio::AudioBackendType::RTAUDIO) { - // A different backend was requested - qDebug() - << "Switching audio backend to RtAudio since nothing else is available"; - setAudioBackend(QStringLiteral("RtAudio")); - } else { - qDebug() << "Using RtAudio backend"; + AudioInterface* ifPtr = nullptr; + if (m_backend == VsAudio::AudioBackendType::JACK) { + if (!isBackendAvailable()) { + throw std::runtime_error( + "JackTrip was not compiled with support for the Jack backend. " + "In order to use Jack, you'll need to " + "rebuild with Jack support."); } - ifPtr = newRtAudioInterface(jackTripPtr); - } else if (m_backend == VsAudio::AudioBackendType::JACK && jackIsAvailable()) { - // only Jack backend is available - if (m_backend != VsAudio::AudioBackendType::JACK) { - // A different backend was requested - qDebug() << "Switching audio backend to Jack since nothing else is available"; - setAudioBackend(QStringLiteral("JACK")); - } else { - qDebug() << "Using JACK backend"; + if (!jackIsAvailable()) { + throw std::runtime_error( + "Unable to load the Jack client library. " + "In order to use Jack, you'll need to first install it."); } + qDebug() << "Using JACK backend"; ifPtr = newJackAudioInterface(jackTripPtr); + } else if (m_backend == VsAudio::AudioBackendType::RTAUDIO) { + if (!isBackendAvailable()) { + throw std::runtime_error( + "JackTrip was not compiled with support for the RtAudio backend. " + "In order to use RtAudio, you'll need to " + "rebuild with RtAudio support."); + } + qDebug() << "Using RtAudio backend"; + ifPtr = newRtAudioInterface(jackTripPtr); } else { - // no backends are available! - throw std::runtime_error( - "JackTrip was compiled without RtAudio and can't find JACK. " - "In order to use JackTrip, you'll need to install JACK or " - "rebuild with RtAudio support."); - std::exit(1); + throw std::runtime_error("Unknown audio backend"); } - if (ifPtr == nullptr) - return ifPtr; - mHasErrors = false; ifPtr->setErrorCallback([this, jackTripPtr](const std::string& errorText) { this->errorCallback(errorText, jackTripPtr); diff --git a/src/jacktrip_globals.h b/src/jacktrip_globals.h index aee643a..64d12f8 100644 --- a/src/jacktrip_globals.h +++ b/src/jacktrip_globals.h @@ -40,7 +40,7 @@ #include "AudioInterface.h" -constexpr const char* const gVersion = "2.2.3"; ///< JackTrip version +constexpr const char* const gVersion = "2.2.4"; ///< JackTrip version //******************************************************************************* /// \name Default Values diff --git a/src/main.cpp b/src/main.cpp index 6a1a817..40788a5 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -182,7 +182,7 @@ QCoreApplication* createApplication(int& argc, char* argv[]) #if !defined(NO_VS) && QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) // Enables resource sharing between the OpenGL contexts QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); - QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); + // QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); // QCoreApplication::setAttribute(Qt::AA_UseOpenGLES); // QQuickWindow::setGraphicsApi(QSGRendererInterface::Direct3D11); diff --git a/win/build_installer.bat b/win/build_installer.bat index 3c5bac5..52c8229 100755 --- a/win/build_installer.bat +++ b/win/build_installer.bat @@ -11,6 +11,12 @@ del deploy /s /q rmdir deploy /s /q mkdir deploy +REM get opengl32sw.dll mesa3d llvm build, required by opengl software backend +curl -L -s -o opengl32sw.zip https://files.jacktrip.org/contrib/opengl32sw.zip +unzip opengl32sw.zip +del opengl32sw.zip +move opengl32sw.dll deploy + copy ..\LICENSE.md deploy\ xcopy ..\LICENSES deploy\LICENSES\ diff --git a/win/qt6-noguids.wxs b/win/qt6-noguids.wxs index 41fa3fa..00e4918 100644 --- a/win/qt6-noguids.wxs +++ b/win/qt6-noguids.wxs @@ -30,9 +30,15 @@ + + + + + + @@ -42,6 +48,9 @@ + + + diff --git a/win/qt6.wxs b/win/qt6.wxs index 8231b35..583b447 100644 --- a/win/qt6.wxs +++ b/win/qt6.wxs @@ -37,6 +37,9 @@ + + + -- 2.30.2