diff options
author | torben <torben@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2011-01-12 17:06:15 +0000 |
---|---|---|
committer | torben <torben@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2011-01-12 17:06:15 +0000 |
commit | ea404f416e4c6741d810c299367cdac2a054661b (patch) | |
tree | d80ed10c45975f3ffa51e5fdf578a492236a36a9 /drivers | |
parent | 618beb96601a4cfd4acb6ad5b20331f2cad763f6 (diff) | |
download | jack1-ea404f416e4c6741d810c299367cdac2a054661b.tar.gz |
[latency api] change backend code to use jack_set_latency_range()
git-svn-id: svn+ssh://jackaudio.org/trunk/jack@4106 0c269be4-1314-0410-8aa9-9f06e86f4224
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/alsa/alsa_driver.c | 10 | ||||
-rwxr-xr-x | drivers/coreaudio/coreaudio_driver.c | 9 | ||||
-rw-r--r-- | drivers/firewire/ffado_driver.c | 7 | ||||
-rw-r--r-- | drivers/freebob/freebob_driver.c | 7 | ||||
-rw-r--r-- | drivers/oss/oss_driver.c | 10 | ||||
-rw-r--r-- | drivers/portaudio/portaudio_driver.c | 7 | ||||
-rw-r--r-- | drivers/sun/sun_driver.c | 10 |
7 files changed, 41 insertions, 19 deletions
diff --git a/drivers/alsa/alsa_driver.c b/drivers/alsa/alsa_driver.c index 94b429c..f2de253 100644 --- a/drivers/alsa/alsa_driver.c +++ b/drivers/alsa/alsa_driver.c @@ -1745,6 +1745,7 @@ alsa_driver_attach (alsa_driver_t *driver) channel_t chn; jack_port_t *port; int port_flags; + jack_latency_range_t range; if (driver->engine->set_buffer_size (driver->engine, driver->frames_per_cycle)) { jack_error ("ALSA: cannot set engine buffer size for %d (check MIDI)", driver->frames_per_cycle); @@ -1769,7 +1770,8 @@ alsa_driver_attach (alsa_driver_t *driver) break; } - jack_port_set_latency (port, driver->frames_per_cycle + driver->capture_frame_latency); + range.min = range.max = driver->frames_per_cycle + driver->capture_frame_latency; + jack_port_set_latency_range (port, JackCaptureLatency, &range); driver->capture_ports = jack_slist_append (driver->capture_ports, port); @@ -1789,7 +1791,8 @@ alsa_driver_attach (alsa_driver_t *driver) break; } - jack_port_set_latency (port, (driver->frames_per_cycle * (driver->user_nperiods - 1)) + driver->playback_frame_latency); + range.min = range.max = (driver->frames_per_cycle * (driver->user_nperiods - 1)) + driver->playback_frame_latency; + jack_port_set_latency_range (port, JackPlaybackLatency, &range); driver->playback_ports = jack_slist_append (driver->playback_ports, port); @@ -1805,7 +1808,8 @@ alsa_driver_attach (alsa_driver_t *driver) "port for %s", buf); } else { - jack_port_set_latency (monitor_port, driver->frames_per_cycle); + range.min = range.max = driver->frames_per_cycle; + jack_port_set_latency_range (port, JackCaptureLatency, &range); driver->monitor_ports = jack_slist_append (driver->monitor_ports, monitor_port); diff --git a/drivers/coreaudio/coreaudio_driver.c b/drivers/coreaudio/coreaudio_driver.c index 208b7ae..9bb1562 100755 --- a/drivers/coreaudio/coreaudio_driver.c +++ b/drivers/coreaudio/coreaudio_driver.c @@ -437,6 +437,7 @@ coreaudio_driver_attach(coreaudio_driver_t * driver, jack_engine_t * engine) UInt32 size; UInt32 value1,value2; Boolean isWritable; + jack_latency_range_t range; driver->engine = engine; @@ -481,7 +482,9 @@ coreaudio_driver_attach(coreaudio_driver_t * driver, jack_engine_t * engine) if (err != noErr) JCALog("AudioDeviceGetProperty kAudioDevicePropertySafetyOffset error \n"); - jack_port_set_latency(port, driver->frames_per_cycle + value1 + value2 + driver->capture_frame_latency); + range.min = range.max = driver->frames_per_cycle + value1 + value2 + driver->capture_frame_latency; + jack_port_set_latency_range(port, JackCaptureLatency, &range); + driver->capture_ports = jack_slist_append(driver->capture_ports, port); } @@ -515,7 +518,9 @@ coreaudio_driver_attach(coreaudio_driver_t * driver, jack_engine_t * engine) if (err != noErr) JCALog("AudioDeviceGetProperty kAudioDevicePropertySafetyOffset error \n"); - jack_port_set_latency(port, driver->frames_per_cycle + value1 + value2 + driver->playback_frame_latency); + range.min = range.max = driver->frames_per_cycle + value1 + value2 + driver->playback_frame_latency; + jack_port_set_latency_range(port, JackCaptureLatency, &range); + driver->playback_ports = jack_slist_append(driver->playback_ports, port); } diff --git a/drivers/firewire/ffado_driver.c b/drivers/firewire/ffado_driver.c index 33d4ef1..ddf7c9b 100644 --- a/drivers/firewire/ffado_driver.c +++ b/drivers/firewire/ffado_driver.c @@ -63,6 +63,7 @@ ffado_driver_attach (ffado_driver_t *driver) channel_t chn; jack_port_t *port=NULL; int port_flags; + jack_latency_range_t range; g_verbose=driver->engine->verbose; @@ -180,7 +181,8 @@ ffado_driver_attach (ffado_driver_t *driver) driver->capture_ports = jack_slist_append (driver->capture_ports, NULL); } - jack_port_set_latency (port, driver->period_size + driver->capture_frame_latency); + range.min = range.max = driver->period_size + driver->capture_frame_latency; + jack_port_set_latency_range (port, JackCaptureLatency, &range); } port_flags = JackPortIsInput|JackPortIsPhysical|JackPortIsTerminal; @@ -245,7 +247,8 @@ ffado_driver_attach (ffado_driver_t *driver) driver->playback_ports = jack_slist_append (driver->playback_ports, NULL); } - jack_port_set_latency (port, (driver->period_size * (driver->device_options.nb_buffers - 1)) + driver->playback_frame_latency); + range.min = range.max = (driver->period_size * (driver->device_options.nb_buffers - 1)) + driver->playback_frame_latency; + jack_port_set_latency_range (port, JackPlaybackLatency, &range); } if(ffado_streaming_prepare(driver->dev)) { diff --git a/drivers/freebob/freebob_driver.c b/drivers/freebob/freebob_driver.c index 4f75ae6..20a539d 100644 --- a/drivers/freebob/freebob_driver.c +++ b/drivers/freebob/freebob_driver.c @@ -70,6 +70,7 @@ freebob_driver_attach (freebob_driver_t *driver) jack_port_t *port=NULL; int port_flags; int error=0; + jack_latency_range_t range; g_verbose=driver->engine->verbose; driver->device_options.verbose=g_verbose; @@ -174,7 +175,8 @@ freebob_driver_attach (freebob_driver_t *driver) if(error) break; - jack_port_set_latency (port, driver->period_size + driver->capture_frame_latency); + range.min = range.max = driver->period_size + driver->capture_frame_latency; + jack_port_set_latency_range (port, JackCaptureLatency, &range); } port_flags = JackPortIsInput|JackPortIsPhysical|JackPortIsTerminal; @@ -231,7 +233,8 @@ freebob_driver_attach (freebob_driver_t *driver) if(error) break; - jack_port_set_latency (port, (driver->period_size * (driver->device_options.nb_buffers - 1)) + driver->playback_frame_latency); + range.min = range.max = (driver->period_size * (driver->device_options.nb_buffers - 1)) + driver->playback_frame_latency; + jack_port_set_latency_range (port, JackPlaybackLatency, &range); } return jack_activate (driver->client); diff --git a/drivers/oss/oss_driver.c b/drivers/oss/oss_driver.c index 2cf9572..e2d417b 100644 --- a/drivers/oss/oss_driver.c +++ b/drivers/oss/oss_driver.c @@ -353,6 +353,7 @@ static int oss_driver_attach (oss_driver_t *driver, jack_engine_t *engine) unsigned int channel; char channel_name[64]; jack_port_t *port; + jack_latency_range_t range; driver->engine = engine; @@ -375,8 +376,9 @@ static int oss_driver_attach (oss_driver_t *driver, jack_engine_t *engine) channel_name, __FILE__, __LINE__); break; } - jack_port_set_latency(port, - driver->period_size + driver->sys_in_latency); + + range.min = range.max = driver->period_size + driver->sys_in_latency; + jack_port_set_latency_range(port, JackCaptureLatency, &range); driver->capture_ports = jack_slist_append(driver->capture_ports, port); } @@ -394,8 +396,8 @@ static int oss_driver_attach (oss_driver_t *driver, jack_engine_t *engine) channel_name, __FILE__, __LINE__); break; } - jack_port_set_latency(port, - driver->period_size + driver->sys_out_latency); + range.min = range.max = driver->period_size + driver->sys_out_latency; + jack_port_set_latency_range(port, JackPlaybackLatency, &range); driver->playback_ports = jack_slist_append(driver->playback_ports, port); } diff --git a/drivers/portaudio/portaudio_driver.c b/drivers/portaudio/portaudio_driver.c index 7ed0637..97cea9b 100644 --- a/drivers/portaudio/portaudio_driver.c +++ b/drivers/portaudio/portaudio_driver.c @@ -132,6 +132,7 @@ portaudio_driver_attach (portaudio_driver_t *driver, jack_engine_t *engine) int port_flags; channel_t chn; char buf[JACK_PORT_NAME_SIZE]; + jack_latency_range_t range; driver->engine = engine; @@ -161,7 +162,8 @@ portaudio_driver_attach (portaudio_driver_t *driver, jack_engine_t *engine) /* XXX fix this so that it can handle: systemic (external) latency */ - jack_port_set_latency (port, driver->frames_per_cycle); + range.min = range.max = driver->frames_per_cycle; + jack_port_set_latency_range (port, JackCaptureLatency, &range); driver->capture_ports = jack_slist_append (driver->capture_ports, port); } @@ -179,7 +181,8 @@ portaudio_driver_attach (portaudio_driver_t *driver, jack_engine_t *engine) /* XXX fix this so that it can handle: systemic (external) latency */ - jack_port_set_latency (port, driver->frames_per_cycle); + range.min = range.max = driver->frames_per_cycle; + jack_port_set_latency_range (port, JackPlaybackLatency, &range); driver->playback_ports = jack_slist_append (driver->playback_ports, port); } diff --git a/drivers/sun/sun_driver.c b/drivers/sun/sun_driver.c index 074733b..aff6894 100644 --- a/drivers/sun/sun_driver.c +++ b/drivers/sun/sun_driver.c @@ -564,6 +564,7 @@ sun_driver_attach (sun_driver_t *driver) int channel; char channel_name[64]; jack_port_t *port; + jack_latency_range_t range; if (driver->engine->set_buffer_size(driver->engine, driver->period_size)) { jack_error ("sun_driver: cannot set engine buffer size to %d (check MIDI)", driver->period_size); @@ -585,8 +586,9 @@ sun_driver_attach (sun_driver_t *driver) "%s@%i", channel_name, __FILE__, __LINE__); break; } - jack_port_set_latency(port, - driver->period_size + driver->sys_in_latency); + + range.min = range.max = driver->period_size + driver->sys_in_latency; + jack_port_set_latency_range(port, JackCaptureLatency, &range); driver->capture_ports = jack_slist_append(driver->capture_ports, port); } @@ -604,8 +606,8 @@ sun_driver_attach (sun_driver_t *driver) "%s: %s@%i", channel_name, __FILE__, __LINE__); break; } - jack_port_set_latency(port, - driver->period_size + driver->sys_out_latency); + range.min = range.max = driver->period_size + driver->sys_out_latency; + jack_port_set_latency_range(port, JackPlaybackLatency, &range); driver->playback_ports = jack_slist_append(driver->playback_ports, port); } |