[PD-cvs] pd/src s_audio_asio.cpp,1.1.4.26,1.1.4.27

Tim Blechmann timblech at users.sourceforge.net
Thu Jun 16 15:01:34 CEST 2005


Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23652

Modified Files:
      Tag: devel_0_38
	s_audio_asio.cpp 
Log Message:


Index: s_audio_asio.cpp
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/s_audio_asio.cpp,v
retrieving revision 1.1.4.26
retrieving revision 1.1.4.27
diff -C2 -d -r1.1.4.26 -r1.1.4.27
*** s_audio_asio.cpp	14 May 2005 17:25:09 -0000	1.1.4.26
--- s_audio_asio.cpp	16 Jun 2005 13:01:31 -0000	1.1.4.27
***************
*** 172,177 ****
  
  /* from m_sched.c: */
- extern "C" int sys_keepsched;
- extern "C" int sys_callbackscheduler;
  extern "C" double sys_time_per_dsp_tick;
  extern "C" double sys_time;
--- 172,175 ----
***************
*** 298,303 ****
  		{
  			/* use callback scheduler */
! 			sys_keepsched = 0;
! 			sys_callbackscheduler = 1;
  			asio_ticks_per_callback = asio_bufsize / sys_dacblocksize;
  			post("ASIO: using callback-based scheduler");
--- 296,300 ----
  		{
  			/* use callback scheduler */
! 			sys_setscheduler(1);
  			asio_ticks_per_callback = asio_bufsize / sys_dacblocksize;
  			post("ASIO: using callback-based scheduler");
***************
*** 570,574 ****
  		if (sys_callbackscheduler)
  		{
! 			sys_callbackscheduler = sys_keepsched = 0;
  		}
  	}
--- 567,571 ----
  		if (sys_callbackscheduler)
  		{
! 			sys_setscheduler(0);
  		}
  	}
***************
*** 776,780 ****
  	/* perform the processing */ 
  
! 	sys_lock();
  
  	for (long i = 0; i < sys_outchannels + sys_inchannels; i++)
--- 773,786 ----
  	/* perform the processing */ 
  
! 	int timeout = sys_dacblocksize * (float)asio_ticks_per_callback / (float) sys_dacsr * 1e6;
! 	
! 	if (sys_timedlock(timeout) == ETIMEDOUT)
! 		/* we're late */
! 	{
! 		post("timeout %d", timeout);
! 		sys_log_error(ERR_SYSLOCK);
! 		return 0;
! 	}
! 
  
  	for (long i = 0; i < sys_outchannels + sys_inchannels; i++)





More information about the Pd-cvs mailing list