diff --git a/linux/alsa/JackAlsaDriver.cpp b/linux/alsa/JackAlsaDriver.cpp index 43dce602..971dc376 100644 --- a/linux/alsa/JackAlsaDriver.cpp +++ b/linux/alsa/JackAlsaDriver.cpp @@ -55,9 +55,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. namespace Jack { -#define jack_get_microseconds GetMicroSeconds - - int JackAlsaDriver::SetBufferSize(jack_nframes_t buffer_size) { jack_log("JackAlsaDriver::SetBufferSize %ld", buffer_size); @@ -449,42 +446,6 @@ void JackAlsaDriver::WriteOutputAux(jack_nframes_t orig_nframes, snd_pcm_sframes } } -void -JackAlsaDriver::jack_driver_init (jack_driver_t *driver) -{ - memset (driver, 0, sizeof (*driver)); - - driver->attach = 0; - driver->detach = 0; - driver->write = 0; - driver->read = 0; - driver->null_cycle = 0; - driver->bufsize = 0; - driver->start = 0; - driver->stop = 0; -} - -void -JackAlsaDriver::jack_driver_nt_init (jack_driver_nt_t * driver) -{ - memset (driver, 0, sizeof (*driver)); - - jack_driver_init ((jack_driver_t *) driver); - - driver->attach = 0; - driver->detach = 0; - driver->bufsize = 0; - driver->stop = 0; - driver->start = 0; - - driver->nt_bufsize = 0; - driver->nt_start = 0; - driver->nt_stop = 0; - driver->nt_attach = 0; - driver->nt_detach = 0; - driver->nt_run_cycle = 0; -} - int JackAlsaDriver::is_realtime() const { return fEngineControl->fRealTime; @@ -752,7 +713,6 @@ dither_opt (char c, DitherAlgorithm* dither) return 0; } -/* SERVER_EXPORT const jack_driver_desc_t* driver_get_descriptor () { jack_driver_desc_t * desc; @@ -931,7 +891,7 @@ SERVER_EXPORT const jack_driver_desc_t* driver_get_descriptor () desc->params = params; return desc; } -*/ + static Jack::JackAlsaDriver* g_alsa_driver; @@ -1092,7 +1052,7 @@ void WriteOutput(jack_nframes_t orig_nframes, snd_pcm_sframes_t contiguous, snd_ { g_alsa_driver->WriteOutputAux(orig_nframes, contiguous, nwritten); } -void SetTimet(jack_time_t time) +void SetTime(jack_time_t time) { g_alsa_driver->SetTimetAux(time); } diff --git a/linux/alsa/JackAlsaDriver.h b/linux/alsa/JackAlsaDriver.h index 90d767c4..abc576d6 100644 --- a/linux/alsa/JackAlsaDriver.h +++ b/linux/alsa/JackAlsaDriver.h @@ -42,9 +42,6 @@ class JackAlsaDriver : public JackAudioDriver int fReservedCaptureDevice; int fReservedPlaybackDevice; - void jack_driver_init(jack_driver_t *driver); - void jack_driver_nt_init(jack_driver_nt_t * driver); - public: JackAlsaDriver(const char* name, const char* alias, JackLockedEngine* engine, JackSynchro* table) diff --git a/linux/alsa/alsa_driver.c b/linux/alsa/alsa_driver.c index 71d8b8c1..2e1c489c 100644 --- a/linux/alsa/alsa_driver.c +++ b/linux/alsa/alsa_driver.c @@ -18,6 +18,7 @@ */ + #define __STDC_FORMAT_MACROS // For inttypes.h to work in C++ #include @@ -81,6 +82,43 @@ extern void show_work_times (); /* Delay (in process calls) before jackd will report an xrun */ #define XRUN_REPORT_DELAY 0 +void +jack_driver_init (jack_driver_t *driver) +{ + memset (driver, 0, sizeof (*driver)); + + driver->attach = 0; + driver->detach = 0; + driver->write = 0; + driver->read = 0; + driver->null_cycle = 0; + driver->bufsize = 0; + driver->start = 0; + driver->stop = 0; +} + +void +jack_driver_nt_init (jack_driver_nt_t * driver) +{ + memset (driver, 0, sizeof (*driver)); + + jack_driver_init ((jack_driver_t *) driver); + + driver->attach = 0; + driver->detach = 0; + driver->bufsize = 0; + driver->stop = 0; + driver->start = 0; + + driver->nt_bufsize = 0; + driver->nt_start = 0; + driver->nt_stop = 0; + driver->nt_attach = 0; + driver->nt_detach = 0; + driver->nt_run_cycle = 0; +} + + static void alsa_driver_release_channel_dependent_memory (alsa_driver_t *driver) { @@ -1187,7 +1225,7 @@ alsa_driver_xrun_recovery (alsa_driver_t *driver, float *delayed_usecs) if (snd_pcm_status_get_state(status) == SND_PCM_STATE_SUSPENDED) { - MESSAGE("\n\n**** alsa_pcm: pcm in suspended state, resuming it \n\n" ); + jack_log("**** alsa_pcm: pcm in suspended state, resuming it" ); if (driver->capture_handle) { if ((res = snd_pcm_prepare(driver->capture_handle)) < 0) { @@ -1209,9 +1247,7 @@ alsa_driver_xrun_recovery (alsa_driver_t *driver, float *delayed_usecs) snd_pcm_status_get_trigger_tstamp(status, &tstamp); timersub(&now, &tstamp, &diff); *delayed_usecs = diff.tv_sec * 1000000.0 + diff.tv_usec; - MESSAGE("\n\n**** alsa_pcm: xrun of at least %.3f " - "msecs\n\n", - *delayed_usecs / 1000.0); + jack_log("**** alsa_pcm: xrun of at least %.3f msecs",*delayed_usecs / 1000.0); } if (alsa_driver_restart (driver)) { @@ -2475,6 +2511,7 @@ dither_opt (char c, DitherAlgorithm* dither) const char driver_client_name[] = "alsa_pcm"; +/* const jack_driver_desc_t * driver_get_descriptor () { @@ -2652,7 +2689,7 @@ driver_get_descriptor () return desc; } - +*/ /* jack_driver_t * driver_initialize (jack_client_t *client, const JSList * params) diff --git a/linux/alsa/alsa_driver.h b/linux/alsa/alsa_driver.h index 13f37431..7496fc31 100644 --- a/linux/alsa/alsa_driver.h +++ b/linux/alsa/alsa_driver.h @@ -41,6 +41,11 @@ #include "memops.h" #include "alsa_midi.h" +#ifdef __cplusplus +extern "C" +{ +#endif + typedef void (*ReadCopyFunction) (jack_default_audio_sample_t *dst, char *src, unsigned long src_bytes, unsigned long src_skip_bytes); @@ -264,10 +269,7 @@ alsa_driver_read (alsa_driver_t *driver, jack_nframes_t nframes); int alsa_driver_write (alsa_driver_t* driver, jack_nframes_t nframes); -#ifdef __cplusplus -extern "C" -{ -#endif +jack_time_t jack_get_microseconds(void); // Code implemented in JackAlsaDriver.cpp @@ -275,7 +277,7 @@ void ReadInput(jack_nframes_t orig_nframes, snd_pcm_sframes_t contiguous, snd_pc void MonitorInput(); void ClearOutput(); void WriteOutput(jack_nframes_t orig_nframes, snd_pcm_sframes_t contiguous, snd_pcm_sframes_t nwritten); -void SetTimet(jack_time_t time); +void SetTime(jack_time_t time); #ifdef __cplusplus } diff --git a/linux/alsa/alsa_midi_impl.h b/linux/alsa/alsa_midi_impl.h index 38d23ab8..e71e823b 100644 --- a/linux/alsa/alsa_midi_impl.h +++ b/linux/alsa/alsa_midi_impl.h @@ -54,8 +54,6 @@ extern "C" #define jack_frame_time JACK_frame_time #define jack_last_frame_time JACK_last_frame_time -#define jack_get_microseconds GetMicroSecond - #ifdef __cplusplus } // extern "C" #endif