13
0
Commit Graph

9459 Commits

Author SHA1 Message Date
1c8ad40339 touch peakfile after closing a SndFileSource
libsndfile (can|may) update the headers at close, which can lead to the file being marked newer than the peakfile,
thus causing a rebuild of the peakfile at session (re)load.

Originally detected by Grygorii
2015-12-08 09:07:51 -05:00
de877cb497 add config variable to en/disable opening the plugin gui after adding a plugin 2015-12-08 13:44:05 +01:00
1372407f82 fix previous commit. 2015-12-08 00:52:06 +01:00
8781004ca2 portaudio connect & graph-changed callbacks (untested) 2015-12-08 00:36:29 +01:00
bbdd25205d MCU: fix likely copypaste thinko in mcu panner knobs 2015-12-07 17:31:45 -06:00
3d79e3c116 adjust generic MIDI surface support to (1) properly use boost::shared_ptr<Port> (2) detect connection changes 2015-12-07 12:38:17 -05:00
2f48997dfb remove unnecessary (?) conditional.
Given that we use "port" after the test, the test makes no sense
2015-12-07 12:38:17 -05:00
41b2de41d6 change API for accessing session MIDI ports so that (1) boost::shared_ptr<> is used all the time (2) we avoid using multiple functions to return different subclass versions of some ports 2015-12-07 12:38:17 -05:00
Kamil Rytarowski
2da6e45922 NetBSD: Stop hardcoding Python binary name
Caught with pkgsrc on NetBSD
2015-12-07 13:24:36 +01:00
065d7c852a outline a "NoSampleAccurateControl" LV2 feature:
Since control-ports have a fixed value for the current process-block,
Ardour splits a plugin's run() process cycle on every automation event
to facilitate sample-accurate automation.

Since automation is interpolated between events, this ensures that each
explicit automation point is reached (not interpolated).

Plugins where this is not required and which favor a fixed block-size,
can now specify an optional Feature: NoSampleAccurateControl.

One example: a convolution plugin with smoothed gain control.
2015-12-06 14:27:24 +01:00
e6ff687138 Update Russian translation 2015-12-06 09:58:42 +01:00
10b715d1ff Normalize user-visible messages to use 8-bit, 16-bit, 24-bit, 32-bit and 64-bit 2015-12-06 01:00:20 +01:00
9fa4d3c77f elaborate on prev. commit: ignore irrelevant files in the interchange dir. 2015-12-05 16:35:41 +01:00
a2b7a8ccab session-dir/interchange: ignore hidden directories. 2015-12-05 16:07:45 +01:00
7ad8ad8823 JACK: expose --nperiods option 2015-12-05 13:56:18 +01:00
4dc49ee4fa fix -Wreorder 2015-12-05 02:42:58 +01:00
a6f27f09a7 update ALSA backend: separate playback/capture periods
fixed: 2 for capture,  configurable 2,3 for playback.
2015-12-05 01:53:13 +01:00
e3d2898c8d more Faderport debugging, for windows 2015-12-04 18:11:05 -06:00
0a997f62cc remove spurious printout 2015-12-04 17:32:23 -06:00
bfd2cbaa3f ALSA: allow to dynamically add/remove midi devices & update their latency. 2015-12-04 22:19:47 +01:00
ac075560bd ALSA: allow to measure & set systemic audio latency w/o restart.
(MIDI needs a bit more work)
2015-12-04 17:45:49 +01:00
95f91d9dbd update engine to allow latency measurement w/o restart. 2015-12-04 17:09:41 +01:00
78a9791b58 add interface for latency updates w/o restarting the backend
This is useful for USB devices. Since there is a ringbuffer in the driver
(common on ALSA but also other platforms) to align the USB stream with
USB bus timing the latency can differ every time the device is re-opened.
2015-12-04 17:08:45 +01:00
a49284a909 fix thinko in engine latency state
(skip Halted signal when stopped for latency)
2015-12-04 12:45:53 +01:00
990fd75c5f implement ALSA period/cycle setting 2015-12-04 10:16:19 +01:00
13926d9bbb add an interface to select playback buffers/period 2015-12-04 10:16:19 +01:00
e82cc88c6f faderport: show current User button bindings in GUI 2015-12-03 21:45:41 -05:00
a9ce37b7ac faderport: fix long press behaviour, and fix ardour-only behaviour with user button when used as a modifier 2015-12-03 18:38:09 -05:00
b07d86ac61 make faderport support report its port bundles as it should 2015-12-03 12:50:32 -05:00
900f59dcde faderport: generalized blink on/off code 2015-12-03 08:36:56 -05:00
43e5d639cc Faderport: Punch indictor was being left on after blinking 2015-12-03 07:27:42 -06:00
Kamil Rytarowski
2b869e1563 netbsd: Fix unportable shell construct
Caught with pkgsrc on NetBSD
2015-12-03 12:19:34 +01:00
20facc4d18 Faderport: map automation indicator LEDs 2015-12-02 20:06:29 -06:00
16a100703b GenericMidi: Partially working IO selectors.
2 remaining problems:
*  IO selectors are not updated if you change the connection outside the dialog.
*  occasional crash on the next startup, after a connection is made from the menu.
2015-12-02 19:18:22 -06:00
90275ded6a faderport: a clever hack to make the Shift modifier "sticky"
The user can now press+release Shift, then another key OR press Shift, then another key before releasing Shift. Both
event sequences will have the same result
2015-12-02 17:40:58 -05:00
ba02c171f1 add session safeguards to OSC callbacks 2015-12-02 22:40:36 +01:00
Johannes Mueller
f11e18555e Cleanup to make it coding style compliant. 2015-12-02 22:38:29 +01:00
Johannes Mueller
4a429fab0e Add support to signal the transport state by OSC
Implement transport_speed in the same style like transport_frame. Up to
now transport_speed and record_enabled are implemented.
2015-12-02 22:38:29 +01:00
André Nusser
ba4db8f6cb Add function to duplicate until a certain frame.
This excludes the 'end' frame.
2015-12-02 14:59:43 -05:00
c93f0b77bf rename ProcessSemaphore to Semaphore (libs) 2015-12-02 20:18:48 +01:00
3242f16d44 consolidate semaphore implementation (part four) 2015-12-02 16:27:14 +01:00
15c958e32f consolidate semaphore implementation (part three) 2015-12-02 16:09:51 +01:00
003b632ed1 consolidate semaphore implementation (part one) 2015-12-02 16:03:28 +01:00
14d6470ad3 prefer pthread-semaphores (posix API) with mingw
Hopefully this resolves glitches on hyperthreading machines.
Apart from using unnamed Semaphores, pthread-w32 includes additional locks
(guess: mem-barriers), a fallback implementation and windows-specific
tricks that I'd rather not want to know about :)
2015-12-02 13:59:48 +01:00
e9be313c11 Fix latency compensation for audio data in portaudio backend
For drivers that correctly report latency values(ASIO) this should result a
much closer alignment of audio in a loopback test. Measurement and
adjustment may still be needed, especially for non-ASIO drivers.

Testing with the RME HDSP Multiface and Yamaha AG06 using ASIO drivers results
in maximum offset of a couple of samples.
2015-12-02 10:24:08 +10:00
b4fb1d610b Use portaudio callback API by default in portaudio backend 2015-12-02 10:24:07 +10:00
5f267f92bf Rename member variables in Portaudio Backend for consistency 2015-12-02 10:24:07 +10:00
29feb914b9 Rename blocking process function in portaudio backend 2015-12-02 10:24:06 +10:00
3e6b28daca Rename blocking thread function in portaudio backend 2015-12-02 10:24:05 +10:00
aaebeb3d2b fix typo in variable name 2015-12-02 00:59:32 +01:00