+- Version: "2.3.1"
+ Date: 2024-07-26
+ Description:
+ - (updated) VS Mode stronger recommendations for audio devices
+ - (updated) Reverting OSX builds from Qt 6.2.8 back to 6.2.6
+ - (fixed) Crash when JackTrip fails to connect using PLC
+ - (fixed) Screen sharing on OSX freezes when window is hidden
+ - (fixed) Sanity check for maximum UDP packet size
- Version: "2.3.0"
Date: 2024-05-15
Description:
--- /dev/null
+[constants]
+minversion_args = ['-mmacosx-version-min=11']
+
+[built-in options]
+c_args = minversion_args
+cpp_args = minversion_args
+objcpp_args = minversion_args
+c_link_args = minversion_args
+cpp_link_args = minversion_args
+objcpp_link_args = minversion_args
--- /dev/null
+[constants]
+minversion_args = ['-mmacosx-version-min=11']
+universal_args = ['-arch', 'x86_64', '-arch', 'arm64']
+
+[built-in options]
+c_args = universal_args + minversion_args
+cpp_args = universal_args + minversion_args
+objcpp_args = universal_args + minversion_args
+c_link_args = universal_args + minversion_args
+cpp_link_args = universal_args + minversion_args
+objcpp_link_args = universal_args + minversion_args
{
"app_name": "JackTrip",
"releases": [
+ {
+ "version": "2.3.0",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0",
+ "download": {
+ "date": "2024-05-15T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-macOS-x64-signed-installer.pkg",
+ "downloadSize": "197443395",
+ "sha256": "384d8e84d733fcb0a0a951503030d5ed4f55b1e2810a5f8dc3337c40d8376c7d"
+ }
+ },
+ {
+ "version": "2.3.0-beta2",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0-beta2",
+ "download": {
+ "date": "2024-05-09T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-beta2-macOS-x64-signed-installer.pkg",
+ "downloadSize": "197442162",
+ "sha256": "b31dd19fbb95462f500755d613927518d55e8c94338100954230462c09c989b3"
+ }
+ },
+ {
+ "version": "2.3.0-beta1",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0-beta1",
+ "download": {
+ "date": "2024-05-04T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-beta1-macOS-x64-signed-installer.pkg",
+ "downloadSize": "177351316",
+ "sha256": "fdd884383fe25cbae6296d3614906a080366c3c51fbdd16b9d756c40d65666fc"
+ }
+ },
{
"version": "2.2.5",
"changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.5",
{
"app_name": "JackTrip",
"releases": [
+ {
+ "version": "2.3.0",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0",
+ "download": {
+ "date": "2024-05-15T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-Windows-x64-signed-installer.msi",
+ "downloadSize": "116105216",
+ "sha256": "0ec59f472224cbe7fe33fc5818525a931509d7588af6aae613e738196c77e4b1"
+ }
+ },
+ {
+ "version": "2.3.0-beta2",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0-beta2",
+ "download": {
+ "date": "2024-05-09T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-beta2-Windows-x64-signed-installer.msi",
+ "downloadSize": "116101120",
+ "sha256": "2c6a3a16066b25a0f541c1c7fdc8a63c29e8437053301adf325d3ca6f42bf8cf"
+ }
+ },
+ {
+ "version": "2.3.0-beta1",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0-beta1",
+ "download": {
+ "date": "2024-05-04T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-beta1-Windows-x64-signed-installer.msi",
+ "downloadSize": "116215808",
+ "sha256": "c75903089415487e983a80de0d780979815fcaa2c66020af67a2ed0a1bc0e904"
+ }
+ },
{
"version": "2.2.5",
"changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.5",
{
"app_name": "JackTrip",
"releases": [
+ {
+ "version": "2.3.0",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0",
+ "download": {
+ "date": "2024-05-15T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-Linux-x64-binary.zip",
+ "downloadSize": "1193479",
+ "sha256": "cfe0982a82a01ce776f404af10095c37e35616ebe5b259a59d568f4c3330eec1"
+ }
+ },
{
"version": "2.2.5",
"changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.5",
{
"app_name": "JackTrip",
"releases": [
+ {
+ "version": "2.3.0",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0",
+ "download": {
+ "date": "2024-05-15T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-macOS-x64-signed-installer.pkg",
+ "downloadSize": "197443395",
+ "sha256": "384d8e84d733fcb0a0a951503030d5ed4f55b1e2810a5f8dc3337c40d8376c7d"
+ }
+ },
{
"version": "2.2.5",
"changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.5",
{
"app_name": "JackTrip",
"releases": [
+ {
+ "version": "2.3.0",
+ "changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.3.0",
+ "download": {
+ "date": "2024-05-15T00:00:00Z",
+ "url": "https://files.jacktrip.org/app-builds/JackTrip-v2.3.0-Windows-x64-signed-installer.msi",
+ "downloadSize": "116105216",
+ "sha256": "0ec59f472224cbe7fe33fc5818525a931509d7588af6aae613e738196c77e4b1"
+ }
+ },
{
"version": "2.2.5",
"changelog": "Full changelog at https://github.com/jacktrip/jacktrip/releases/tag/v2.2.5",
Regulator::~Regulator()
{
- delete[] mXfrBuffer;
- delete[] mBroadcastBuffer;
- delete[] mSlotBuf;
- delete pushStat;
- delete pullStat;
- for (int i = 0; i < mNumChannels; i++)
- delete mChanData[i];
+ if (mInitialized) {
+ delete[] mXfrBuffer;
+ delete[] mBroadcastBuffer;
+ delete[] mSlotBuf;
+ delete[] mSlots;
+ delete pushStat;
+ delete pullStat;
+ delete mTime;
+ delete ba;
+ for (int i = 0; i < mNumChannels; i++)
+ delete mChanData[i];
+ }
if (m_b_BroadcastRingBuffer)
delete m_b_BroadcastRingBuffer;
- delete mTime;
- delete ba;
if (mWorkerThreadPtr != nullptr) {
mWorkerThreadPtr->quit();
mWorkerThreadPtr->wait();
int full_redundant_packet_size = full_packet_size * mUdpRedundancyFactor;
int8_t* full_redundant_packet = NULL;
+ if (full_redundant_packet_size > 0x10000) {
+ throw std::runtime_error(
+ "Maximum UDP packet size exceeded! Either reduce your "
+ "Jack period size, the number of send channels or "
+ "the packet redundancy.");
+ }
+
// Set realtime priority (function in jacktrip_globals.h)
if (gVerboseFlag)
std::cout << " UdpDataProtocol:run" << mRunMode
Text {
id: deviceVerificationExplanation
- text: `Please sign in and confirm the following code using your web browser. Return here when you are done.`
+ text: `To get started, please sign in and confirm the following code using your web browser. Return here when you are done.`
font.family: "Poppins"
font.pixelSize: 11 * virtualstudio.fontScale * virtualstudio.uiScale
anchors.horizontalCenter: parent.horizontalCenter
height: 48 * virtualstudio.uiScale
property bool showBackButton: !virtualstudio.vsFtux
- property bool showClassicModeButton: virtualstudio.vsFtux
Item {
id: backButton
}
}
- Item {
- id: classicModeButton
- visible: parent.showClassicModeButton
- anchors.verticalCenter: parent.verticalCenter
- x: (parent.x + parent.width / 2) - classicModeButton.width - 8 * virtualstudio.uiScale
- width: 160 * virtualstudio.uiScale; height: 32 * virtualstudio.uiScale
- Text {
- text: "Use Classic Mode"
- font.underline: true
- font.family: "Poppins"
- font.pixelSize: 11 * virtualstudio.fontScale * virtualstudio.uiScale
- anchors.horizontalCenter: parent.horizontalCenter
- anchors.verticalCenter: parent.verticalCenter
- color: textColour
- }
- MouseArea {
- anchors.fill: parent
- onClicked: () => { virtualstudio.windowState = "login"; virtualstudio.toStandard(); }
- cursorShape: Qt.PointingHandCursor
- }
- }
-
Item {
id: resetCodeButton
visible: true
- x: (parent.showBackButton || parent.showClassicModeButton) ? (parent.x + parent.width / 2) + 8 * virtualstudio.uiScale : (parent.x + parent.width / 2) - resetCodeButton.width / 2
+ x: parent.showBackButton ? (parent.x + parent.width / 2) + 8 * virtualstudio.uiScale : (parent.x + parent.width / 2) - resetCodeButton.width / 2
anchors.verticalCenter: parent.verticalCenter
width: 144 * virtualstudio.uiScale; height: 32 * virtualstudio.uiScale
Text {
Text {
id: audioInterfaceRecommendationHeaderNonWindows
visible: !onWindows
- text: "External Audio Device Recommended"
+ text: "Use Recommended Audio Devices"
font { family: "Poppins"; weight: Font.Bold; pixelSize: fontMedium * virtualstudio.fontScale * virtualstudio.uiScale }
color: textColour
anchors.horizontalCenter: parent.horizontalCenter
Text {
id: audioInterfaceRecommendationSubheaderNonWindows
visible: !onWindows
- text: "Your audio device controls the quality of sound, and can also have a big impact on latency."
+ text: "Many audio devices are too slow to work well with JackTrip."
+ "<br/><br/>"
- + "It's OK to use the audio device that is built into your computer, but external USB and "
- + "Thunderbolt audio interfaces will usually produce better quality and lower latency."
+ + "We recommend external USB or Thunderbolt interfaces released within the past "
+ + "few years for the best quality, low latency and glitch-free sound."
font { family: "Poppins"; pixelSize: fontSmall * virtualstudio.fontScale * virtualstudio.uiScale }
color: textColour
width: 600
Text {
id: audioInterfaceRecommendationHeaderWindows
visible: onWindows
- text: "External Audio Device Recommended"
+ text: "Use Recommended Audio Devices"
font { family: "Poppins"; weight: Font.Bold; pixelSize: fontMedium * virtualstudio.fontScale * virtualstudio.uiScale }
color: textColour
anchors.horizontalCenter: parent.horizontalCenter
Text {
id: audioInterfaceRecommendationSubheaderWindows
visible: onWindows
- text: "Your audio device controls the quality of sound, and can also have a big impact on latency."
- + "<br/><br/>"
+ text: "Many audio devices are too slow to work well with JackTrip."
+ + "<br/>"
+ "ASIO drivers are required for low latency on Windows. "
+ "<br/><br/>"
- + "It's OK to use the audio device that is built into your computer, but external USB and "
- + "Thunderbolt devices will produce better quality and much lower latency."
+ + "We recommend external USB or Thunderbolt interfaces released within the past "
+ + "few years for the best quality, low latency and glitch-free sound."
font { family: "Poppins"; pixelSize: fontSmall * virtualstudio.fontScale * virtualstudio.uiScale }
color: textColour
width: 600
#include "AudioInterface.h"
-constexpr const char* const gVersion = "2.3.0"; ///< JackTrip version
+constexpr const char* const gVersion = "2.3.1"; ///< JackTrip version
//*******************************************************************************
/// \name Default Values