Merge pull request #2 from corrados/master

update
This commit is contained in:
ignotus 2020-06-16 12:42:56 +02:00 committed by GitHub
commit db428afbe1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 437 additions and 219 deletions

View File

@ -9,10 +9,12 @@
- support sorting faders by channel instrument, coded by Alberstein8 (#356)
- add server recording indicator, coded by pljones (#295)
- support for storing/recovering the server window positions (#357)
TODO Mac audio interface -> crackling
TODO try to reproduce: Quitting client when server window minimized not handled cleanly #355

View File

@ -907,7 +907,7 @@ OSStatus CSound::deviceNotification ( AudioDeviceID,
pSound->EmitReinitRequestSignal ( RS_RELOAD_RESTART_AND_INIT );
}
/*
/* NOTE that this code does not solve the crackling sound issue
if ( inAddresses->mSelector == kAudioDeviceProcessorOverload )
{
// xrun handling (it is important to act on xruns under CoreAudio

40
src/audiomixerboard.cpp Normal file → Executable file
View File

@ -619,7 +619,8 @@ CAudioMixerBoard::CAudioMixerBoard ( QWidget* parent, Qt::WindowFlags ) :
bIsPanSupported ( false ),
bNoFaderVisible ( true ),
iMyChannelID ( INVALID_INDEX ),
strServerName ( "" )
strServerName ( "" ),
eRecorderState ( RS_UNDEFINED )
{
// add group box and hboxlayout
QHBoxLayout* pGroupBoxLayout = new QHBoxLayout ( this );
@ -627,6 +628,12 @@ CAudioMixerBoard::CAudioMixerBoard ( QWidget* parent, Qt::WindowFlags ) :
pScrollArea = new CMixerBoardScrollArea ( this );
pMainLayout = new QHBoxLayout ( pMixerWidget );
setAccessibleName ( "Personal Mix at the Server groupbox" );
setWhatsThis ( "<b>" + tr ( "Personal Mix at the Server" ) + "</b>: " + tr (
"When connected to a server, the controls here allow you to set your "
"local mix without affecting what others hear from you. The title shows "
"the server name and, when known, whether it is actively recording." ) );
// set title text (default: no server given)
SetServerName ( "" );
@ -709,6 +716,16 @@ void CAudioMixerBoard::SetServerName ( const QString& strNewServerName )
void CAudioMixerBoard::SetGUIDesign ( const EGUIDesign eNewDesign )
{
// move the channels tighter together in slim fader mode
if ( eNewDesign == GD_SLIMFADER )
{
pMainLayout->setSpacing ( 2 );
}
else
{
pMainLayout->setSpacing ( 6 ); // Qt default spacing value
}
// apply GUI design to child GUI controls
for ( int i = 0; i < MAX_NUM_CHANNELS; i++ )
{
@ -807,13 +824,32 @@ void CAudioMixerBoard::ChangeFaderOrder ( const bool bDoSort,
}
}
void CAudioMixerBoard::UpdateTitle()
{
QString strTitlePrefix = "";
if ( eRecorderState == RS_RECORDING )
{
strTitlePrefix = "[" + tr ( "RECORDING ACTIVE" ) + "] ";
}
setTitle ( strTitlePrefix + tr ( "Personal Mix at: " ) + strServerName );
}
void CAudioMixerBoard::SetRecorderState ( const ERecorderState newRecorderState )
{
// store the new recorder state and update the title
eRecorderState = newRecorderState;
UpdateTitle();
}
void CAudioMixerBoard::ApplyNewConClientList ( CVector<CChannelInfo>& vecChanInfo )
{
// we want to set the server name only if the very first faders appear
// in the audio mixer board to show a "try to connect" before
if ( bNoFaderVisible )
{
setTitle ( tr ( "Personal Mix at the Server: " ) + strServerName );
UpdateTitle();
}
// get number of connected clients

4
src/audiomixerboard.h Normal file → Executable file
View File

@ -164,6 +164,8 @@ public:
void SetChannelLevels ( const CVector<uint16_t>& vecChannelLevel );
void SetRecorderState ( const ERecorderState newRecorderState );
// settings
CVector<QString> vecStoredFaderTags;
CVector<int> vecStoredFaderLevels;
@ -196,6 +198,7 @@ protected:
void StoreFaderSettings ( CChannelFader* pChanFader );
void UpdateSoloStates();
void UpdateTitle();
void OnGainValueChanged ( const int iChannelIdx,
const double dValue );
@ -209,6 +212,7 @@ protected:
bool bNoFaderVisible;
int iMyChannelID;
QString strServerName;
ERecorderState eRecorderState;
virtual void UpdateGainValue ( const int iChannelIdx,
const double dValue,

View File

@ -108,6 +108,9 @@ qRegisterMetaType<CHostAddress> ( "CHostAddress" );
QObject::connect ( &Protocol, &CProtocol::VersionAndOSReceived,
this, &CChannel::VersionAndOSReceived );
QObject::connect ( &Protocol, &CProtocol::RecorderStateReceived,
this, &CChannel::RecorderStateReceived );
QObject::connect ( &Protocol, &CProtocol::ReqChannelLevelList,
this, &CChannel::OnReqChannelLevelList );
}

View File

@ -168,6 +168,9 @@ public:
void CreateConClientListMes ( const CVector<CChannelInfo>& vecChanInfo )
{ Protocol.CreateConClientListMes ( vecChanInfo ); }
void CreateRecorderStateMes ( const ERecorderState eRecorderState )
{ Protocol.CreateRecorderStateMes ( eRecorderState ); }
CNetworkTransportProps GetNetworkTransportPropsFromCurrentSettings();
bool ChannelLevelsRequired() const { return bChannelLevelsRequired; }
@ -287,6 +290,7 @@ signals:
void ReqNetTranspProps();
void LicenceRequired ( ELicenceType eLicenceType );
void VersionAndOSReceived ( COSUtil::EOpSystemType eOSType, QString strVersion );
void RecorderStateReceived ( ERecorderState eRecorderState );
void Disconnected();
void DetectedCLMessage ( CVector<uint8_t> vecbyMesBodyData,

View File

@ -165,6 +165,9 @@ CClient::CClient ( const quint16 iPortNumber,
QObject::connect ( &Channel, &CChannel::VersionAndOSReceived,
this, &CClient::VersionAndOSReceived );
QObject::connect ( &Channel, &CChannel::RecorderStateReceived,
this, &CClient::RecorderStateReceived );
QObject::connect ( &ConnLessProtocol, &CProtocol::CLMessReadyForSending,
this, &CClient::OnSendCLProtMessage );

View File

@ -424,6 +424,7 @@ signals:
void LicenceRequired ( ELicenceType eLicenceType );
void VersionAndOSReceived ( COSUtil::EOpSystemType eOSType, QString strVersion );
void PingTimeReceived ( int iPingTime );
void RecorderStateReceived ( ERecorderState eRecorderState );
void CLServerListReceived ( CHostAddress InetAddr,
CVector<CServerInfo> vecServerInfo );

View File

@ -472,6 +472,9 @@ CClientDlg::CClientDlg ( CClient* pNCliP,
QObject::connect ( pClient, &CClient::MuteStateHasChangedReceived,
this, &CClientDlg::OnMuteStateHasChangedReceived );
QObject::connect ( pClient, &CClient::RecorderStateReceived,
this, &CClientDlg::OnRecorderStateReceived );
// This connection is a special case. On receiving a licence required message via the
// protocol, a modal licence dialog is opened. Since this blocks the thread, we need
// a queued connection to make sure the core protocol mechanism is not blocked, too.

View File

@ -221,6 +221,9 @@ public slots:
void OnDisplayChannelLevelsChanged()
{ MainMixerBoard->SetDisplayChannelLevels ( pClient->GetDisplayChannelLevels() ); }
void OnRecorderStateReceived ( ERecorderState eRecorderState )
{ MainMixerBoard->SetRecorderState ( eRecorderState ); }
void OnAudioChannelsChanged() { UpdateRevSelection(); }
void OnNumClientsChanged ( int iNewNumClients );
void OnNewClientLevelChanged() { MainMixerBoard->iNewClientFaderLevel = pClient->iNewClientFaderLevel; }

View File

@ -1585,7 +1585,10 @@ bool CProtocol::EvaluateRecorderStateMes(const CVector<uint8_t>& vecData)
const int iRecorderState =
static_cast<int> ( GetValFromStream ( vecData, iPos, 1 ) );
if ( iRecorderState != RS_UNDEFINED ) // ... to be defined ...
// note that RS_UNDEFINED is only internally used
if ( ( iRecorderState != RS_NOT_INITIALISED ) &&
( iRecorderState != RS_NOT_ENABLED ) &&
( iRecorderState != RS_RECORDING ) )
{
return true;
}

View File

@ -190,18 +190,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>V E R B I N D U N G S A U F B A U</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation>Eigener Mix am Server: </translation>
</message>
</context>
@ -715,7 +730,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>&amp;Verbinden</translation>
</message>
@ -769,18 +784,18 @@
<translation>Keine</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Mitte</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation></translation>
</message>
@ -865,22 +880,22 @@
<translation>Sortiere Kanäle nach &amp;Instrument</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation>Zentralserver</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>Musiker</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>Musiker</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>&amp;Trennen</translation>
</message>
@ -1513,22 +1528,22 @@
<translation type="vanished">Manuell</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation>Benutzerdefiniert</translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation>Alle Genres</translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation>Genre Rock</translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation>Genre Jazz</translation>
</message>
@ -1537,12 +1552,12 @@
<translation type="vanished">Genre Rock/Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation>Genre Klassik/Volksmusik/Chor</translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Standard</translation>
</message>
@ -2643,22 +2658,22 @@
<translation> Server </translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation>Vordefinierte Adresse</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation>Aufnahme</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation>Keine Aufnahme</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation>Nicht aktiviert</translation>
</message>
@ -2685,42 +2700,42 @@
<translation>&amp;Fenster</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Nicht registriert</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Ungültige Adresse</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Registrierung angefordert</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Registrierung fehlgeschlagen</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Überprüfe Version des Servers</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Registriert</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Zentralserver voll</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Unbekannter Wert </translation>
</message>

View File

@ -194,18 +194,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation>Servidor</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>I N T E N T A N D O C O N E C T A R</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation>Mezcla Personal en el Servidor: </translation>
</message>
</context>
@ -727,7 +742,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>C&amp;onectar</translation>
</message>
@ -777,18 +792,18 @@
<translation>Ninguno</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Centro</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation>L</translation>
</message>
@ -873,22 +888,22 @@
<translation>Ordenar Canales por &amp;Instrumento</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation>Servidor Central</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>usuario</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>usuarios</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>D&amp;esconectar</translation>
</message>
@ -1521,12 +1536,12 @@
<translation type="vanished">Manual</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation>Personalizado</translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation>Todos los Géneros</translation>
</message>
@ -1535,22 +1550,22 @@
<translation type="vanished">Género Rock/Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation>Género Clásica/Folk/Coro</translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation>Género Rock</translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation>Género Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Por defecto</translation>
</message>
@ -2655,22 +2670,22 @@
<translation> </translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation>Dirección Preestablecida</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation>Grabando</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation>No grabando</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation>No habilitado</translation>
</message>
@ -2697,42 +2712,42 @@
<translation>&amp;Ventana</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Sin registrar</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Dirección no válida</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Registro solicitado</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Error de registro</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Comprueba la versión del servidor</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Registrado</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Servidor Central lleno</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Valor desconocido </translation>
</message>

View File

@ -202,18 +202,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation>Serveur</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>T E N T A T I V E D E C O N N E X I O N</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation>Mixage personnel du serveur : </translation>
</message>
</context>
@ -723,7 +738,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>Se c&amp;onnecter</translation>
</message>
@ -777,18 +792,18 @@
<translation>Aucun</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Centre</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation>D</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation>G</translation>
</message>
@ -873,22 +888,22 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation>Serveur central</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>utilisateur</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>utilisateurs</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>&amp;connecter</translation>
</message>
@ -1525,12 +1540,12 @@
<translation type="vanished">Manuel</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation>Personnalisé</translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation>Tous les genres</translation>
</message>
@ -1539,22 +1554,22 @@
<translation type="vanished">Genre rock/jazz</translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation>Genre classique/folk/choeur</translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation>Genre Rock</translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation>Genre Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Défaut</translation>
</message>
@ -2647,22 +2662,22 @@
<translation> serveur </translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation>Adresse prédéfinie</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation>Enregistrement</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation>Ne pas enregistrer</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation>Non activé</translation>
</message>
@ -2689,42 +2704,42 @@
<translation>&amp;Fenêtre</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Non inscrit</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Mauvaise adresse</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Inscription demandée</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Échec de l&apos;inscription</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Vérifier la version du serveur</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Inscrit</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Serveur central rempli</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Valeur inconnue</translation>
</message>

View File

@ -190,18 +190,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation>Server</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>I N A T T E S A D I C O N N E S S I O N E</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation>Mixer personale sul Server: </translation>
</message>
</context>
@ -560,7 +575,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation>L</translation>
</message>
@ -783,7 +798,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>C&amp;onnetti</translation>
</message>
@ -847,32 +862,32 @@
<translation>Nullo</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Centro</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation>Server Centrale</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>utente</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>utenti</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>D&amp;isconnetti</translation>
</message>
@ -1537,32 +1552,32 @@
<translation>Ok</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation>Personalizzato</translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation>Tutti i Generi</translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation>Genere Rock</translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation>Genere Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation>Genere Classica/Folk/Corale</translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Default</translation>
</message>
@ -2621,62 +2636,62 @@
<translation>&amp;Finestra</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation>Indirizzo Predefinito</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation>Registrazione</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation>Registrazione Ferma</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation>Non Abilitata</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Non registrato</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Indirizzo Errato</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Registrazione richiesta</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Registrazione fallita</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Controlla Versione server</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Registrato</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Server Centrale Pieno</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Valore sconosciuto </translation>
</message>

View File

@ -190,18 +190,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation>Server</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>A A N H E T V E R B I N D E N</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation type="unfinished"></translation>
</message>
</context>
@ -552,7 +567,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation>L</translation>
</message>
@ -775,7 +790,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>C&amp;onnect</translation>
</message>
@ -835,32 +850,32 @@
<translation>Geen</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Centrum</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>gebruiker</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>gebruikers</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>&amp;Afmelden</translation>
</message>
@ -1485,32 +1500,32 @@
<translation type="vanished">Handmatig</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Standaard</translation>
</message>
@ -2599,22 +2614,22 @@
<translation> server</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation type="unfinished"></translation>
</message>
@ -2641,42 +2656,42 @@
<translation>&amp;Window</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Niet geregistreerd</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Slecht adres</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Aanmelding gevraagd</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Registratie is mislukt</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Controleer de versie van de server</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Geregistreerd</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Centrale server vol</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Onbekende waarde </translation>
</message>

View File

@ -158,18 +158,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation type="unfinished"></translation>
</message>
</context>
@ -464,7 +479,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation type="unfinished"></translation>
</message>
@ -635,7 +650,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation type="unfinished"></translation>
</message>
@ -695,32 +710,32 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation type="unfinished"></translation>
</message>
@ -1225,32 +1240,32 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation type="unfinished"></translation>
</message>
@ -2244,22 +2259,22 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation type="unfinished"></translation>
</message>
@ -2289,42 +2304,42 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation type="unfinished"></translation>
</message>

View File

@ -202,18 +202,33 @@
<context>
<name>CAudioMixerBoard</name>
<message>
<location filename="../../audiomixerboard.cpp" line="697"/>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>Personal Mix at the Server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="632"/>
<source>When connected to a server, the controls here allow you to set your local mix without affecting what others hear from you. The title shows the server name and, when known, whether it is actively recording.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="704"/>
<source>Server</source>
<translation>Servidor</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="706"/>
<location filename="../../audiomixerboard.cpp" line="713"/>
<source>T R Y I N G T O C O N N E C T</source>
<translation>T E N T A N D O L I G A R</translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="819"/>
<source>Personal Mix at the Server: </source>
<location filename="../../audiomixerboard.cpp" line="833"/>
<source>RECORDING ACTIVE</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../audiomixerboard.cpp" line="836"/>
<source>Personal Mix at: </source>
<translation>Mistura Pessoal no Servidor: </translation>
</message>
</context>
@ -719,7 +734,7 @@
</message>
<message>
<location filename="../../clientdlg.cpp" line="203"/>
<location filename="../../clientdlg.cpp" line="1111"/>
<location filename="../../clientdlg.cpp" line="1114"/>
<source>C&amp;onnect</source>
<translation>&amp;Ligar</translation>
</message>
@ -773,18 +788,18 @@
<translation>Nenhum</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="619"/>
<location filename="../../clientdlg.cpp" line="622"/>
<source>Center</source>
<translation>Centro</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="626"/>
<location filename="../../clientdlg.cpp" line="629"/>
<source>R</source>
<translation>R</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="107"/>
<location filename="../../clientdlg.cpp" line="632"/>
<location filename="../../clientdlg.cpp" line="635"/>
<source>L</source>
<translation>L</translation>
</message>
@ -869,22 +884,22 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="718"/>
<location filename="../../clientdlg.cpp" line="721"/>
<source>Central Server</source>
<translation>Servidor Central</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="845"/>
<location filename="../../clientdlg.cpp" line="848"/>
<source>user</source>
<translation>utilizador</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="850"/>
<location filename="../../clientdlg.cpp" line="853"/>
<source>users</source>
<translation>utilizadores</translation>
</message>
<message>
<location filename="../../clientdlg.cpp" line="1087"/>
<location filename="../../clientdlg.cpp" line="1090"/>
<source>D&amp;isconnect</source>
<translation>Desl&amp;igar</translation>
</message>
@ -1513,22 +1528,22 @@
<translation type="vanished">Manual</translation>
</message>
<message>
<location filename="../../util.h" line="591"/>
<location filename="../../util.h" line="601"/>
<source>Custom</source>
<translation>Personalizado</translation>
</message>
<message>
<location filename="../../util.h" line="594"/>
<location filename="../../util.h" line="604"/>
<source>All Genres</source>
<translation>Servidor Geral</translation>
</message>
<message>
<location filename="../../util.h" line="597"/>
<location filename="../../util.h" line="607"/>
<source>Genre Rock</source>
<translation>Servidor Rock</translation>
</message>
<message>
<location filename="../../util.h" line="600"/>
<location filename="../../util.h" line="610"/>
<source>Genre Jazz</source>
<translation>Servidor Jazz</translation>
</message>
@ -1537,12 +1552,12 @@
<translation type="vanished">Servidor Rock/Jazz</translation>
</message>
<message>
<location filename="../../util.h" line="603"/>
<location filename="../../util.h" line="613"/>
<source>Genre Classical/Folk/Choir</source>
<translation>Serv. Clássica/Folclore/Coro</translation>
</message>
<message>
<location filename="../../util.h" line="606"/>
<location filename="../../util.h" line="616"/>
<source>Default</source>
<translation>Servidor Padrão</translation>
</message>
@ -2631,22 +2646,22 @@
<translation> </translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="599"/>
<location filename="../../serverdlg.cpp" line="616"/>
<source>Predefined Address</source>
<translation>Endereço Predefinido</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="711"/>
<location filename="../../serverdlg.cpp" line="728"/>
<source>Recording</source>
<translation>A gravar</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="716"/>
<location filename="../../serverdlg.cpp" line="733"/>
<source>Not recording</source>
<translation>Não está a gravar</translation>
</message>
<message>
<location filename="../../serverdlg.cpp" line="722"/>
<location filename="../../serverdlg.cpp" line="739"/>
<source>Not enabled</source>
<translation>Desactivado</translation>
</message>
@ -2673,42 +2688,42 @@
<translation>&amp;Janela</translation>
</message>
<message>
<location filename="../../util.h" line="628"/>
<location filename="../../util.h" line="638"/>
<source>Unregistered</source>
<translation>Não Registado</translation>
</message>
<message>
<location filename="../../util.h" line="631"/>
<location filename="../../util.h" line="641"/>
<source>Bad address</source>
<translation>Endereço incorrecto</translation>
</message>
<message>
<location filename="../../util.h" line="634"/>
<location filename="../../util.h" line="644"/>
<source>Registration requested</source>
<translation>Registo solicitado</translation>
</message>
<message>
<location filename="../../util.h" line="637"/>
<location filename="../../util.h" line="647"/>
<source>Registration failed</source>
<translation>Falha no registo</translation>
</message>
<message>
<location filename="../../util.h" line="640"/>
<location filename="../../util.h" line="650"/>
<source>Check server version</source>
<translation>Verifique versão do servidor</translation>
</message>
<message>
<location filename="../../util.h" line="643"/>
<location filename="../../util.h" line="653"/>
<source>Registered</source>
<translation>Registado</translation>
</message>
<message>
<location filename="../../util.h" line="646"/>
<location filename="../../util.h" line="656"/>
<source>Central Server full</source>
<translation>Servidor Central Cheio</translation>
</message>
<message>
<location filename="../../util.h" line="649"/>
<location filename="../../util.h" line="659"/>
<source>Unknown value </source>
<translation>Valor desconhecido </translation>
</message>

View File

@ -610,6 +610,9 @@ void CServer::OnNewConnection ( int iChID,
// send version info (for, e.g., feature activation in the client)
vecChannels[iChID].CreateVersionAndOSMes();
// send recording state message on connection
vecChannels[iChID].CreateRecorderStateMes ( GetRecorderState() );
// reset the conversion buffers
DoubleFrameSizeConvBufIn[iChID].Reset();
DoubleFrameSizeConvBufOut[iChID].Reset();
@ -721,6 +724,9 @@ void CServer::RequestNewRecording()
{
emit RestartRecorder();
}
// send recording state message - doesn't hurt
CreateAndSendRecorderStateForAllConChannels();
}
void CServer::SetEnableRecording ( bool bNewEnableRecording )
@ -734,7 +740,7 @@ void CServer::SetEnableRecording ( bool bNewEnableRecording )
#if QT_VERSION >= QT_VERSION_CHECK(5, 5, 0)
// TODO we should use the ConsoleWriterFactory() instead of qInfo()
qInfo() << "Recording state " << ( bEnableRecording ? "enabled" : "disabled" );
qInfo() << "Recording state" << ( bEnableRecording ? "enabled" : "disabled" );
#endif
if ( !bEnableRecording )
@ -747,6 +753,9 @@ void CServer::SetEnableRecording ( bool bNewEnableRecording )
emit StopRecorder();
}
}
// send recording state message
CreateAndSendRecorderStateForAllConChannels();
}
void CServer::Start()
@ -1330,6 +1339,42 @@ void CServer::CreateAndSendChatTextForAllConChannels ( const int iCurChanID
}
}
void CServer::CreateAndSendRecorderStateForAllConChannels()
{
// get recorder state
ERecorderState eRecorderState = GetRecorderState();
// now send recorder state to all connected clients
for ( int i = 0; i < iMaxNumChannels; i++ )
{
if ( vecChannels[i].IsConnected() )
{
// send message
vecChannels[i].CreateRecorderStateMes ( eRecorderState );
}
}
}
ERecorderState CServer::GetRecorderState()
{
// return recorder state
if ( bRecorderInitialised )
{
if ( bEnableRecording )
{
return RS_RECORDING;
}
else
{
return RS_NOT_ENABLED;
}
}
else
{
return RS_NOT_INITIALISED;
}
}
void CServer::CreateOtherMuteStateChanged ( const int iCurChanID,
const int iOtherChanID,
const bool bIsMuted )

View File

@ -273,6 +273,10 @@ protected:
virtual void CreateAndSendChatTextForAllConChannels ( const int iCurChanID,
const QString& strChatText );
virtual void CreateAndSendRecorderStateForAllConChannels();
ERecorderState GetRecorderState();
virtual void CreateOtherMuteStateChanged ( const int iCurChanID,
const int iOtherChanID,
const bool bIsMuted );

View File

@ -566,8 +566,10 @@ enum ELicenceType
// Server jam recorder state enum ----------------------------------------------
enum ERecorderState
{
RS_UNDEFINED = 0
// ... to be defined ...
RS_UNDEFINED = 0,
RS_NOT_INITIALISED = 1,
RS_NOT_ENABLED = 2,
RS_RECORDING = 3
};