Browse Source

Uses a time out value of 10 sec in freewheel mode (like jack).

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@1374 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/0.62
sletz 18 years ago
parent
commit
a92670695e
2 changed files with 12 additions and 7 deletions
  1. +4
    -0
      ChangeLog
  2. +8
    -7
      common/JackFreewheelDriver.cpp

+ 4
- 0
ChangeLog View File

@@ -2,6 +2,10 @@
Jackdmp changes log Jackdmp changes log
--------------------------- ---------------------------


2007-01-27 Stephane Letz <letz@grame.fr>

* Uses a time out value of 10 sec in freewheel mode (like jack).

2007-01-21 Stephane Letz <letz@grame.fr> 2007-01-21 Stephane Letz <letz@grame.fr>


* More client debug code: check if the client is still valid in every JackDebugClient method, check if the library context is still valid in every API call. * More client debug code: check if the client is still valid in every JackDebugClient method, check if the library context is still valid in every API call.


+ 8
- 7
common/JackFreewheelDriver.cpp View File

@@ -11,15 +11,16 @@
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
JackEngine.cpp


You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


*/
#ifdef WIN32
#pragma warning (disable : 4786)
*/
#ifdef WIN32
#pragma warning (disable : 4786)
#endif #endif


#include "JackFreewheelDriver.h" #include "JackFreewheelDriver.h"
@@ -36,14 +37,14 @@ int JackFreewheelDriver::Process()
fLastWaitUst = GetMicroSeconds(); fLastWaitUst = GetMicroSeconds();
fEngine->Process(fLastWaitUst); fEngine->Process(fLastWaitUst);
fGraphManager->ResumeRefNum(fClientControl, fSynchroTable); // Signal all clients fGraphManager->ResumeRefNum(fClientControl, fSynchroTable); // Signal all clients
if (fGraphManager->SuspendRefNum(fClientControl, fSynchroTable, fEngineControl->fTimeOutUsecs * 20) < 0) // Wait for all clients to finish
if (fGraphManager->SuspendRefNum(fClientControl, fSynchroTable, 10 * 1000000) < 0) // Wait for all clients to finish for 10 sec
jack_error("JackFreewheelDriver::ProcessSync SuspendRefNum error"); jack_error("JackFreewheelDriver::ProcessSync SuspendRefNum error");
} else { } else {
fGraphManager->ResumeRefNum(fClientControl, fSynchroTable); // Signal all clients fGraphManager->ResumeRefNum(fClientControl, fSynchroTable); // Signal all clients
if (fEngineControl->fSyncMode) { if (fEngineControl->fSyncMode) {
if (fGraphManager->SuspendRefNum(fClientControl, fSynchroTable, fEngineControl->fTimeOutUsecs) < 0) { if (fGraphManager->SuspendRefNum(fClientControl, fSynchroTable, fEngineControl->fTimeOutUsecs) < 0) {
jack_error("JackFreewheelDriver::ProcessSync SuspendRefNum error");
return -1;
jack_error("JackFreewheelDriver::ProcessSync SuspendRefNum error");
return -1;
} }
} }
} }


Loading…
Cancel
Save