New upstream version 2.2.4+ds
authorIOhannes m zmölnig (Debian/GNU) <umlaeute@debian.org>
Sat, 16 Mar 2024 22:51:08 +0000 (23:51 +0100)
committerIOhannes m zmölnig (Debian/GNU) <umlaeute@debian.org>
Sat, 16 Mar 2024 22:51:08 +0000 (23:51 +0100)
12 files changed:
docs/changelog.yml
releases/edge/mac-manifests.json
releases/edge/win-manifests.json
releases/stable/linux-manifests.json
releases/stable/mac-manifests.json
releases/stable/win-manifests.json
src/gui/vsAudio.cpp
src/jacktrip_globals.h
src/main.cpp
win/build_installer.bat
win/qt6-noguids.wxs
win/qt6.wxs

index 2752b78099f1be10405838eb59bf2378163da325..9c155230a8c4b6cf7beb67e3a8bf562e5e5414e5 100644 (file)
@@ -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:
index 4acb1a7875f7388745e796186a9da0030c614512..fa4fffbba3789d975ae6452cb2a070970b854153 100644 (file)
@@ -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",
index a5ec0ae86a66affd880fe8cd1f4a500c9bb92449..979cd16543466f1cf1823ce92af51e3767f1aa0c 100644 (file)
@@ -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",
index 5654f65e90561c9efd820fc77da38a0822238e11..3a4e57254c26fbcfacb980fd542a62e2e179fcd9 100644 (file)
@@ -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",
index 546eea6800ec4358fb50a5eec8798ce24de111fa..754f30c9bdf27e8f898c4b11126bfad0c46e6a89 100644 (file)
@@ -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",
index 83aae3970b41345f1b3a51dbf8c1b380c2e53a89..f068d980c30c0308604ec5934d5e6a1eb9bf22be 100644 (file)
@@ -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",
index fea3e7354dd558623f7e26675cf6b28f0eacc5d5..41970c2034a45fb3d9153b517d58ec6167f2314e 100644 (file)
@@ -106,19 +106,6 @@ VsAudio::VsAudio(QObject* parent)
 {
     loadSettings();
 
-    if (isBackendAvailable<AudioInterfaceMode::RTAUDIO>()) {
-        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<AudioInterfaceMode::ALL>() && 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<AudioInterfaceMode::RTAUDIO>()) {
-        // 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<AudioInterfaceMode::JACK>()) {
+            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<AudioInterfaceMode::RTAUDIO>()) {
+            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);
index aee643ad6926fd2b61b7867605c1764cfe5c0184..64d12f8794b9e552f58ce9f242aff2df62100955 100644 (file)
@@ -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
index 6a1a817bd258298b4e0650e349c2c0d2e974eb47..40788a593ad59b55c0c9c1a44596b60d894750e9 100644 (file)
@@ -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);
index 3c5bac552c3e2cd696b2f732972613fce1bc162f..52c82292d66942a503907127bc094374aaf507d4 100755 (executable)
@@ -11,6 +11,12 @@ del deploy /s /q
 rmdir deploy /s /q\r
 mkdir deploy\r
 \r
+REM get opengl32sw.dll mesa3d llvm build, required by opengl software backend\r
+curl -L -s -o opengl32sw.zip https://files.jacktrip.org/contrib/opengl32sw.zip\r
+unzip opengl32sw.zip\r
+del opengl32sw.zip\r
+move opengl32sw.dll deploy\r
+\r
 copy ..\LICENSE.md deploy\\r
 xcopy ..\LICENSES deploy\LICENSES\\r
 \r
index 41fa3fa22b4c0217106baf2269454ee3682d2f8d..00e4918ae17727d65c0fd954cfb3e0f5c9c09c96 100644 (file)
             <Component Id="cmp61BABE677B13AE7A25F57865DD2CB150" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
                 <File Id="filD0B8E5384B7EB5609D1B2A67A98FF334" KeyPath="yes" Source="SourceDir\jacktrip.exe" />
             </Component>
+            <Component Id="cmp5C97B37BB3181F77EDC11261A4463285" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
+                <File Id="fil46101D0C43E1BEF1BE4C5475DA0B2837" KeyPath="yes" Source="SourceDir\JackTrip.msi" />
+            </Component>
             <Component Id="cmpCD23A5CC7196B582D23DF7AC7DFE061F" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
                 <File Id="fil00C2A327ECCB1D33F7BBF313ADEEFD43" KeyPath="yes" Source="SourceDir\jacktrip.wixobj" />
             </Component>
+            <Component Id="cmpEF56078548B21E7891727FDE729B864B" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
+                <File Id="fil01A07DE9CBC162E11AA3C8EFB4A4D4B9" KeyPath="yes" Source="SourceDir\JackTrip.wixpdb" />
+            </Component>
             <Component Id="cmp63BFF65F319CB52D38DBB3FE6B8DE6F6" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
                 <File Id="fil886DC1D217D62357ED536BCFF93E7C0F" KeyPath="yes" Source="SourceDir\jacktrip.wxs" />
             </Component>
@@ -42,6 +48,9 @@
             <Component Id="cmpE2BC49F17425202019B2C48873956253" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
                 <File Id="fil011E2822115DD1D5BD9A9096D1914F51" KeyPath="yes" Source="SourceDir\license.rtf" />
             </Component>
+            <Component Id="cmpC2B5C938CDBD7BD0FAE06ACAABDB3B54" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
+                <File Id="fil025966B7C1FB522423ADF8E9CE443022" KeyPath="yes" Source="SourceDir\opengl32sw.dll" />
+            </Component>
             <Component Id="cmpD16A82FC04DA86995B222E5199ABF99B" Directory="TARGETDIR" Guid="PUT-GUID-HERE">
                 <File Id="fil03546A9C6805C45BEB0A60D29FFC5D22" KeyPath="yes" Source="SourceDir\qt6.wixobj" />
             </Component>
index 8231b35bfa1cab14fc51232506d602737ebffe30..583b4471574628fdf35ac3ff4fad99670fee1347 100644 (file)
@@ -37,6 +37,9 @@
             <Component Id="cmpE2BC49F17425202019B2C48873956253" Directory="INSTALLDIR" Guid="{4F42E138-BC56-4253-8AE7-47D1C92EA803}">
                 <File Id="fil011E2822115DD1D5BD9A9096D1914F51" KeyPath="yes" Source="SourceDir\license.rtf" />
             </Component>
+            <Component Id="cmpC2B5C938CDBD7BD0FAE06ACAABDB3B54" Directory="INSTALLDIR" Guid="{E3D42FA3-DD28-4928-AB36-D33EFC3D454E}">
+                <File Id="fil025966B7C1FB522423ADF8E9CE443022" KeyPath="yes" Source="SourceDir\opengl32sw.dll" />
+            </Component>
             <Component Id="cmp7111706DBFB0E180EC7A8BDC93A90139" Directory="INSTALLDIR" Guid="{B19ABB59-5607-4637-93D8-C03CA180767F}">
                 <File Id="fil1A08189509DCFE1E185AEC6B499929BA" KeyPath="yes" Source="SourceDir\Qt6Core.dll" />
             </Component>