2023-08-24 Fred Gleason <fredg@paravelsystems.com>

* Added a 'TestOutputStreams=' directive to the '[Caed]' section
	of rd.conf(5).
	* Added code to the 'Unload Playback' ['UP'] CAE command to mute all
	output port volume controls from the subject output stream.
	* Added a feature to the 'Set Output Port' ['OP'] CAE command where
	passing a '-1' for the 'port-num' argument will cause all output
	stream volume controls for the specified stream to be muted.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2023-08-24 13:10:10 -04:00
parent d9e16f65a0
commit ba1e2d84ab
12 changed files with 215 additions and 41 deletions

View File

@@ -413,13 +413,31 @@ bool CaeServer::ProcessCommand(int id,const QString &cmd)
}
}
}
if((f0.at(0)=="OV")&&(f0.size()==5)) { // Set Output Volume
if((f0.at(0)=="OP")&&(f0.size()==5)) { // Set Output Port
unsigned card=f0.at(1).toUInt(&ok);
if(ok&&(card<RD_MAX_CARDS)) {
unsigned stream=f0.at(2).toUInt(&ok);
if(ok&&(stream<RD_MAX_STREAMS)) {
if(ok) {
unsigned port=f0.at(3).toUInt(&ok);
if(ok&&(port<RD_MAX_PORTS)) {
int level=f0.at(4).toInt(&ok);
if(ok) {
emit setOutputPortReq(id,card,stream,port,level);
was_processed=true;
}
}
}
}
}
}
if((f0.at(0)=="OV")&&(f0.size()==5)) { // Set Output Volume
unsigned card=f0.at(1).toUInt(&ok);
if(ok&&(card<RD_MAX_CARDS)) {
unsigned stream=f0.at(2).toUInt(&ok);
if(ok&&(stream<RD_MAX_STREAMS)) {
if(ok) {
int port=f0.at(3).toInt(&ok);
if(ok&&(port<RD_MAX_PORTS)) {
int level=f0.at(4).toInt(&ok);
if(ok) {