This commit is contained in:
daryl 2020-06-04 15:31:19 +02:00
parent 3a01ede996
commit c38cf1c825
2 changed files with 68 additions and 70 deletions

View File

@ -83,7 +83,7 @@ CClientDlg::CClientDlg ( CClient* pNCliP,
// connect/disconnect button // connect/disconnect button
butConnect->setWhatsThis ( "<b>" + tr ( "Connect/Disconnect Button" ) + ":</b> " + butConnect->setWhatsThis ( "<b>" + tr ( "Connect/Disconnect Button" ) + ":</b> " +
tr ( "Opens a dialog where you can select a server to connect to." tr ( "Opens a dialog where you can select a server to connect to. "
"If you are connected, pressing this button will end the session." ) ); "If you are connected, pressing this button will end the session." ) );
butConnect->setAccessibleName ( butConnect->setAccessibleName (
@ -143,14 +143,13 @@ CClientDlg::CClientDlg ( CClient* pNCliP,
// delay LED // delay LED
QString strLEDDelay = "<b>" + tr ( "Delay Status LED" ) + ":</b> " + QString strLEDDelay = "<b>" + tr ( "Delay Status LED" ) + ":</b> " +
tr ( "The " ) + "<b>" + tr ( "Delay Status" ) + ":</b> " + tr ( "LED shows the " tr ( "Shows the current audio delay status:" ) +
"current audio delay status:" ) +
"<ul>" "<ul>"
"<li>" "<b>" + tr ( "Green" ) + ":</b> " + tr ( "- The delay is perfect for a jam " "<li>" "<b>" + tr ( "Green" ) + ":</b> " + tr ( "The delay is perfect for a jam "
"session " ) + "</li>" "session " ) + "</li>"
"<li>" "<b>" + tr ( "Yellow" ) + ":</b> " + tr ( "- A session is still possible " "<li>" "<b>" + tr ( "Yellow" ) + ":</b> " + tr ( "A session is still possible "
"but it may be harder to play." ) + "</li>" "but it may be harder to play." ) + "</li>"
"<li>" "<b>" + tr ( "Red" ) + ":</b> " + tr ( "- The delay is too large for " "<li>" "<b>" + tr ( "Red" ) + ":</b> " + tr ( "The delay is too large for "
"jamming." ) + "</li>" "jamming." ) + "</li>"
"</ul>"; "</ul>";
@ -165,7 +164,7 @@ CClientDlg::CClientDlg ( CClient* pNCliP,
// buffers LED // buffers LED
QString strLEDBuffers = "<b>" + tr ( "Buffers Status LED" ) + ":</b> " + QString strLEDBuffers = "<b>" + tr ( "Buffers Status LED" ) + ":</b> " +
tr ( "The buffers status LED shows the current audio/streaming " tr ( "The buffers status LED shows the current audio/streaming "
"status. If the light is red, the audio stream is interrupted." "status. If the light is red, the audio stream is interrupted. "
"This is caused by one of the following problems:" ) + "This is caused by one of the following problems:" ) +
"<ul>" "<ul>"
"<li>" + tr ( "The network jitter buffer is not large enough for the current " "<li>" + tr ( "The network jitter buffer is not large enough for the current "

View File

@ -36,31 +36,30 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// jitter buffer // jitter buffer
QString strJitterBufferSize = "<b>" + tr ( "Jitter Buffer Size" ) + ":</b> " + tr ( QString strJitterBufferSize = "<b>" + tr ( "Jitter Buffer Size" ) + ":</b> " + tr (
"The jitter buffer compensates for network and sound card timing jitters. The " "The jitter buffer compensates for network and sound card timing jitters. The "
"size of this jitter buffer has therefore influence on the quality of " "size of the buffer has therefore influences the quality of "
"the audio stream (how many dropouts occur) and the overall delay " "the audio stream (how many dropouts occur) and the overall delay "
"(the longer the buffer, the higher the delay)." ) + "<br>" + tr ( "(the longer the buffer, the higher the delay)." ) + "<br>" + tr (
"The jitter buffer size can be manually chosen for the local client " "You can set the jitter buffer size manually for the local client "
"and the remote server. For the local jitter buffer, dropouts in the " "and the remote server. For the local jitter buffer, dropouts in the "
"audio stream are indicated by the light below the " "audio stream are indicated by the light below the "
"jitter buffer size faders. If the light turns to red, a buffer " "jitter buffer size faders. If the light turns to red, a buffer "
"overrun/underrun took place and the audio stream is interrupted." ) + "<br>" + tr ( "overrun/underrun has taken place and the audio stream is interrupted." ) + "<br>" + tr (
"The jitter buffer setting is therefore a trade-off between audio " "The jitter buffer setting is therefore a trade-off between audio "
"quality and overall delay." ) + "<br>" + tr ( "quality and overall delay." ) + "<br>" + tr (
"An auto setting of the jitter buffer size setting is available. If " "If the check Auto is enabled, the jitter buffers of the local client and "
"the check Auto is enabled, the jitter buffers of the local client and "
"the remote server are set automatically " "the remote server are set automatically "
"based on measurements of the network and sound card timing jitter. If " "based on measurements of the network and sound card timing jitter. If "
"the Auto check is enabled, the jitter buffer size faders are " "the Auto check is enabled, the jitter buffer size faders are "
"disabled (they cannot be moved with the mouse)." ); "disabled (they cannot be moved with the mouse)." );
QString strJitterBufferSizeTT = tr ( "If the auto setting of the " QString strJitterBufferSizeTT = tr ( "If the Auto setting "
"jitter buffer is enabled, the network buffers of the local client and " "is enabled, the network buffers of the local client and "
"the remote server are set to a conservative " "the remote server are set to a conservative "
"value to minimize the audio dropout probability. To tweak the " "value to minimize the audio dropout probability. To tweak the "
"audio delay/latency it is recommended to disable the auto setting " "audio delay/latency it is recommended to disable the Auto setting "
"functionality and to lower the jitter buffer size manually by " "and to lower the jitter buffer size manually by "
"using the sliders until your personal acceptable limit of the amount " "using the sliders until your personal acceptable amount "
"of dropouts is reached. The LED indicator will visualize the audio " "of dropouts is reached. The LED indicator will display the audio "
"dropouts of the local jitter buffer with a red light." ) + "dropouts of the local jitter buffer with a red light." ) +
TOOLTIP_COM_END_TEXT; TOOLTIP_COM_END_TEXT;
@ -133,28 +132,27 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// sound card buffer delay // sound card buffer delay
QString strSndCrdBufDelay = "<b>" + tr ( "Sound Card Buffer Delay" ) + ":</b> " + QString strSndCrdBufDelay = "<b>" + tr ( "Sound Card Buffer Delay" ) + ":</b> " +
tr ( "The buffer delay setting is a fundamental setting of the " ) + tr ( "The buffer delay setting is a fundamental setting of this "
APP_NAME + tr ( " software. This setting has influence on many " "software. This setting has an influence on many "
"connection properties." ) + "<br>" + tr ( "connection properties." ) + "<br>" + tr (
"Three buffer sizes are supported" ) + "Three buffer sizes are supported" ) +
":<ul>" ":<ul>"
"<li>" + tr ( "64 samples: This is the preferred setting since it provides the lowest " "<li>" + tr ( "64 samples: The preferred setting. Provides the lowest latency "
"latency but does not work with all sound cards." ) + "</li>" "but does not work with all sound cards." ) + "</li>"
"<li>" + tr ( "128 samples: This setting should work for most available " "<li>" + tr ( "128 samples: Should work for most available sound cards." ) +
"sound cards." ) + "</li>" "</li>"
"<li>" + tr ( "256 samples: This setting should only be used if only a very slow " "<li>" + tr ( "256 samples: Should only be used on very slow "
"computer or a slow internet connection is available." ) + "</li>" "computers or with a slow internet connection." ) + "</li>"
"</ul>" + tr ( "</ul>" + tr (
"Some sound card drivers do not allow the buffer delay to be changed " "Some sound card drivers do not allow the buffer delay to be changed "
"from within the " ) + APP_NAME + "from within the application. "
tr ( " software. In this case the buffer delay setting " "In this case the buffer delay setting is disabled and has to be "
"is disabled. To change the actual buffer delay, this " "changed using the sound card driver. On Windows, press the "
"setting has to be changed in the sound card driver. On Windows, press " "ASIO Setup button to open the driver settings panel. On Linux, "
"the ASIO Setup button to open the driver settings panel. On Linux, "
"use the Jack configuration tool to change the buffer size." ) + "<br>" + tr ( "use the Jack configuration tool to change the buffer size." ) + "<br>" + tr (
"If no buffer size is selected and all settings are disabled, an " "If no buffer size is selected and all settings are disabled, an "
"unsupported buffer size is used by the driver. The " ) + APP_NAME + "unsupported buffer size is used by the driver. The application "
tr ( " software will still work with this setting but with restricted " "will still work with this setting but with restricted "
"performance." ) + "<br>" + tr ( "performance." ) + "<br>" + tr (
"The actual buffer delay has influence on the connection status, the " "The actual buffer delay has influence on the connection status, the "
"current upload rate and the overall delay. The lower the buffer size, " "current upload rate and the overall delay. The lower the buffer size, "
@ -166,8 +164,8 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
QString strSndCrdBufDelayTT = tr ( "If the buffer delay settings are " QString strSndCrdBufDelayTT = tr ( "If the buffer delay settings are "
"disabled, it is prohibited by the audio driver to modify this " "disabled, it is prohibited by the audio driver to modify this "
"setting from within the " ) + APP_NAME + "setting from within the software. "
tr ( " software. On Windows, press the ASIO Setup button to open the " "On Windows, press the ASIO Setup button to open the "
"driver settings panel. On Linux, use the Jack configuration tool to " "driver settings panel. On Linux, use the Jack configuration tool to "
"change the buffer size." ) + TOOLTIP_COM_END_TEXT; "change the buffer size." ) + TOOLTIP_COM_END_TEXT;
@ -198,21 +196,26 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// audio channels // audio channels
QString strAudioChannels = "<b>" + tr ( "Audio Channels" ) + ":</b> " + tr ( QString strAudioChannels = "<b>" + tr ( "Audio Channels" ) + ":</b> " + tr (
"Select the number of audio channels to be used. There are three " "Selects the number of audio channels to be used for communication between "
"modes available. The mono and stereo modes use one and two " "client and server. There are three modes available:"
"audio channels respectively. In mono-in/stereo-out mode " "<ul>"
"the audio signal which is sent to the server is mono but the " "<li>" "<b>" + tr ( "Mono" ) + "</b> " + tr ( "and " ) +
"<b>" + tr ( "Stereo" ) + ":</b> " + tr ( "modes use "
"one and two audio channels respectively." ) + "</li>"
"<li>" "<b>" + tr ( "Mono in/Stereo-out" ) + ":</b> " + tr (
"the audio signal sent to the server is mono but the "
"return signal is stereo. This is useful if the " "return signal is stereo. This is useful if the "
"sound card has the instrument on one input channel and the " "sound card has the instrument on one input channel and the "
"microphone on the other channel. In that case the two input signals " "microphone on the other. In that case the two input signals "
"can be mixed to one mono channel but the server mix can be heard in " "can be mixed to one mono channel but the server mix is heard in "
"stereo." ) + "<br>" + tr ( "stereo." ) + "</li>"
"Enabling the stereo streaming mode will increase the " "<li>" + tr ("Enabling " ) + "<b>" + tr ( "Stereo" ) + ":</b> " + tr ( "mode "
"stream data rate. Make sure that the current upload rate does not " "will increase your stream's data rate. Make sure your upload rate does not "
"exceed the available bandwidth of your internet connection." ) + "<br>" + tr ( "exceed the available upload speed of your internet connection." ) + "</li>"
"In stereo streaming mode, no audio channel selection " "<li>" + tr ( "In stereo streaming mode, no audio channel selection "
"for the reverberation effect will be available on the main window " "for the reverb effect will be available on the main window "
"since the effect is applied on both channels in this case." ); "since the effect is applied to both channels in this case." ) + "</li>"
"</ul>";
lblAudioChannels->setWhatsThis ( strAudioChannels ); lblAudioChannels->setWhatsThis ( strAudioChannels );
cbxAudioChannels->setWhatsThis ( strAudioChannels ); cbxAudioChannels->setWhatsThis ( strAudioChannels );
@ -220,11 +223,9 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// audio quality // audio quality
QString strAudioQuality = "<b>" + tr ( "Audio Quality" ) + ":</b> " + tr ( QString strAudioQuality = "<b>" + tr ( "Audio Quality" ) + ":</b> " + tr (
"Select the desired audio quality. A low, normal or high audio " "The higher the audio quality, the higher your audio stream's "
"quality can be selected. The higher the audio quality, the higher " "data rate. Make sure your upload rate does not exceed the "
"the audio stream data rate. Make sure that the current " "available bandwidth of your internet connection.");
"upload rate does not exceed the available bandwidth of your "
"internet connection." );
lblAudioQuality->setWhatsThis ( strAudioQuality ); lblAudioQuality->setWhatsThis ( strAudioQuality );
cbxAudioQuality->setWhatsThis ( strAudioQuality ); cbxAudioQuality->setWhatsThis ( strAudioQuality );
@ -232,10 +233,10 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// new client fader level // new client fader level
QString strNewClientLevel = "<b>" + tr ( "New Client Level" ) + ":</b> " + QString strNewClientLevel = "<b>" + tr ( "New Client Level" ) + ":</b> " +
tr ( "The new client level setting defines the fader level of a new " tr ( "This setting defines the fader level of a newly "
"connected client in percent. I.e. if a new client connects " "connected client in percent. If a new client connects "
"to the current server, it will get the specified initial " "to the current server, they will get the specified initial "
"fader level if no other fader level of a previous connection " "fader level if no other fader level from a previous connection "
"of that client was already stored." ); "of that client was already stored." );
lblNewClientLevel->setWhatsThis ( strNewClientLevel ); lblNewClientLevel->setWhatsThis ( strNewClientLevel );
@ -244,10 +245,8 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// custom central server address // custom central server address
QString strCentrServAddr = "<b>" + tr ( "Custom Central Server Address" ) + ":</b> " + QString strCentrServAddr = "<b>" + tr ( "Custom Central Server Address" ) + ":</b> " +
tr ( "The custom central server address is the IP address or URL of the central " tr ( "Leave this blank unless you need to enter the address of a cenrtral "
"server at which the server list of the connection dialog is managed. This " "server other than the default." );
"address is only used if the custom server list is selected in the connection "
"dialog." );
lblCentralServerAddress->setWhatsThis ( strCentrServAddr ); lblCentralServerAddress->setWhatsThis ( strCentrServAddr );
edtCentralServerAddress->setWhatsThis ( strCentrServAddr ); edtCentralServerAddress->setWhatsThis ( strCentrServAddr );
@ -255,18 +254,18 @@ CClientSettingsDlg::CClientSettingsDlg ( CClient* pNCliP, QWidget* parent,
// current connection status parameter // current connection status parameter
QString strConnStats = "<b>" + tr ( "Current Connection Status " QString strConnStats = "<b>" + tr ( "Current Connection Status "
"Parameter" ) + ":</b> " + tr ( "The ping time is the time required for the audio " "Parameter" ) + ":</b> " + tr ( "The Ping Time is the time required for the audio "
"stream to travel from the client to the server and back again. This " "stream to travel from the client to the server and back again. This "
"delay is introduced by the network. This delay should be as low as " "delay is introduced by the network and should be about "
"20-30 ms. If this delay is higher (e.g., 50-60 ms), your distance to " "20-30 ms. If this delay is higher than about 50 ms, your distance to "
"the server is too large or your internet connection is not " "the server is too large or your internet connection is not "
"sufficient." ) + "<br>" + tr ( "sufficient." ) + "<br>" + tr (
"The overall delay is calculated from the current ping time and the " "Overall Delay is calculated from the current Ping Time and the "
"delay which is introduced by the current buffer settings." ) + "<br>" + tr ( "delay introduced by the current buffer settings." ) + "<br>" + tr (
"The upstream rate depends on the current audio packet size and the " "Audio Upstream Rate depends on the current audio packet size and "
"audio compression setting. Make sure that the upstream rate is not " "compression setting. Make sure that the upstream rate is not "
"higher than the available rate (check the upstream capabilities of " "higher than your available internet upload speed (check this with a "
"your internet connection by, e.g., using speedtest.net)." ); "service such as speedtest.net." );
lblPingTime->setWhatsThis ( strConnStats ); lblPingTime->setWhatsThis ( strConnStats );
lblPingTimeValue->setWhatsThis ( strConnStats ); lblPingTimeValue->setWhatsThis ( strConnStats );