Commit Graph

18505 Commits

Author SHA1 Message Date
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
2529b9db96 GUI handling for live latency-measurement 2015-12-04 17:34:46 +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
e9b0b4bcf0 remove duplicate check (same is done few lines above) 2015-12-04 17:05:21 +01:00
a49284a909 fix thinko in engine latency state
(skip Halted signal when stopped for latency)
2015-12-04 12:45:53 +01:00
André Nusser
fd5dfd63cb Make the duplicate routes dialog look a little nicer. 2015-12-04 11:53:01 +01:00
André Nusser
00c68ae2e6 Remove "Fill Range with Region" from menu and also its function. 2015-12-04 11:40:24 +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
d237165e21 do not show control surface bundles in non-MIDI port matrix.
This will stop being the right thing to do if anyone ever creates a control protocol that
uses audio ports.
2015-12-03 22:01:07 -05: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
04be08b94d Merge branch 'chaot4-fix_crop_region_to_range_2' 2015-12-03 12:57:08 -05:00
André Nusser
0040ab5158 Fix "Crop Region to Range" -- second attempt. 2015-12-03 12:57:01 -05:00
b07d86ac61 make faderport support report its port bundles as it should 2015-12-03 12:50:32 -05:00
4f427c5f97 further improvements to port grouping for the port matrix
Don't show LTC etc. ports in the MIDI matrix; Don't show Scene ports for Ardour or Mixbus, since we don't use them; code renaming
2015-12-03 12:50:32 -05:00
34b1c0db94 fix mis-assignment of various Ports when constructing the PortGroup list for the (e.g.) PortMatrix 2015-12-03 12:50:32 -05:00
9a058672ab disable pthread-w32 semaphores for now
Two major changes: semaphore AND callback based portaudio on one day
are not great for testing.
2015-12-03 18:41:57 +01:00
900f59dcde faderport: generalized blink on/off code 2015-12-03 08:36:56 -05:00
0a54d28454 Revert "somewhat different approach to telling the user how to edit control protocol settings"
This reverts commit 4eb161cd4c.
2015-12-03 08:30:28 -05:00
cd339a1033 Revert "NO-OP: remove cruft"
This reverts commit 5facfc113d.
2015-12-03 08:30:28 -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
5facfc113d NO-OP: remove cruft 2015-12-02 23:39:41 -05:00
4eb161cd4c somewhat different approach to telling the user how to edit control protocol settings
We can't put an actual button in a cell of a Tree/ListView, so we put some bolded-up text there and hope
that this is more obvious than anything we've tried to date (including Ben's recent attempt)
2015-12-02 23:30:57 -05: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
e1064701a5 use explicit button to show the protocol editor; users reported they did not see the double-click text. maybe this will help? 2015-12-02 19:18:22 -06:00
André Nusser
6389c52d3c Enable horizontal scrolling in midi regions when note is selected.
The shortcut for 'change velocities together' had to be changed to
achieve that. The new shortcut is now primary+tertiary modifier +scroll,
i.e. ctrl+shift+scroll for the default keys.
2015-12-02 18:36:59 -05: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
eb1d1acab8 fix double template syntax 2015-12-02 16:59:11 -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
fe4cc2e0a0 Merge branch 'chaot4-fix_scrolling_midi_region_head' 2015-12-02 15:02:56 -05:00
André Nusser
e50e50c0f9 Disable scrolling in the dropdown menus of midi region heads.
Instead pass it to the canvas as proposed by x42 in #6143.
2015-12-02 15:02:47 -05:00
535d25c141 Merge branch 'chaot4-fix_fill_track' 2015-12-02 14:59:55 -05:00
André Nusser
653789424b Fix "Fill Track".
It now behaves like Multi-Duplicate until the end marker. The end
marker is excluded as this would often lead to size 1 regions.
2015-12-02 14:59:43 -05: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
André Nusser
add37c6b96 Fix "Crop Region to Range".
Before only regions that contained the start of the range were cropped,
now all are cropped.
2015-12-02 14:58:42 -05:00
6bfe2c5d37 rename ProcessSemaphore to Semaphore (UI) 2015-12-02 20:19:07 +01: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
f5278f60d3 consolidate semaphore implementation (part two) 2015-12-02 16:08:53 +01:00
003b632ed1 consolidate semaphore implementation (part one) 2015-12-02 16:03:28 +01:00
4245f2a02b fix pthread-windows semaphore detection 2015-12-02 15:07:33 +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