diff --git a/ChangeLog b/ChangeLog index 51e8d829..764afa7b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -22845,3 +22845,6 @@ * Added an 'AR_PYTHON_MODULE()' autoconf macro. * Added a test for the PyPI module build chain to 'configure.ac'. * Bumped the minimum Python version dependency from 3.4 to 3.6. +2021-12-28 Fred Gleason + * Fixed a regression in caed(8) that broke audio capture under + ALSA and JACK. diff --git a/cae/cae.cpp b/cae/cae.cpp index c3afe4fc..c947ef92 100644 --- a/cae/cae.cpp +++ b/cae/cae.cpp @@ -634,15 +634,11 @@ void MainObject::stopRecordingData(int id,unsigned card,unsigned stream) cae_server->sendCommand(id,QString::asprintf("SR %u %u -!",card,stream)); return; } - if(dvr->stopRecord(card,stream)) { - cae_server->sendCommand(id,QString::asprintf("SR %u %u +!",card,stream)); - } - else { + if(!dvr->stopRecord(card,stream)) { // No positive echo required here! cae_server->sendCommand(id,QString::asprintf("SR %u %u -!",card,stream)); return; } - rda->syslog(LOG_INFO, - "StopRecord - Card: %d Stream: %d",card,stream); + rda->syslog(LOG_INFO,"StopRecord - Card: %d Stream: %d",card,stream); } diff --git a/cae/cae_server.cpp b/cae/cae_server.cpp index 6f0cd513..2a0b91db 100644 --- a/cae/cae_server.cpp +++ b/cae/cae_server.cpp @@ -217,7 +217,7 @@ void CaeServer::connectionClosedData(int id) bool CaeServer::ProcessCommand(int id,const QString &cmd) { - printf("CaeServer::ProcessCommand(%d,'%s')\n",id,cmd.toUtf8().constData()); + // rda->syslog(LOG_NOTICE,"processing command: \"%s\"",cmd.toUtf8().constData()); CaeServerConnection *conn=cae_connections.value(id); bool ok=false; QString cmdstr=cmd; diff --git a/cae/driver_alsa.cpp b/cae/driver_alsa.cpp index 04986f24..bbcc5c92 100644 --- a/cae/driver_alsa.cpp +++ b/cae/driver_alsa.cpp @@ -1052,6 +1052,7 @@ bool DriverAlsa::stopRecord(int card,int port) return false; } alsa_recording[card][port]=false; + stateRecordUpdate(card,port,2); return true; #else return false; @@ -1386,7 +1387,6 @@ void DriverAlsa::recordTimerData(int cardport) int stream=cardport-card*RD_MAX_PORTS; stopRecord(card,stream); - stateRecordUpdate(card,stream,2); #endif // ALSA } diff --git a/cae/driver_jack.cpp b/cae/driver_jack.cpp index f20abe51..6bee8fbd 100644 --- a/cae/driver_jack.cpp +++ b/cae/driver_jack.cpp @@ -31,9 +31,6 @@ #include "driver_jack.h" -#ifdef JACK -#endif // JACK - #ifdef JACK // // Callback Variables @@ -1050,6 +1047,7 @@ bool DriverJack::stopRecord(int card,int port) return false; } jack_recording[port]=false; + stateRecordUpdate(card,port,2); return true; #else return false; @@ -1393,7 +1391,6 @@ void DriverJack::recordTimerData(int stream) { #ifdef JACK stopRecord(jack_card,stream); - // stateRecordUpdate(jack_card,stream,2); #endif // JACK }