90d12b6d5a
faderport: add a few more sensible actions to the footswitch options
2016-01-25 15:11:47 -05:00
b02b6cc3cd
faderport: add footswitch combos to GUI to allow user control over what the switch does
2016-01-25 15:11:36 -05:00
5b7fa0b3c5
faderport: add footswitch button
2016-01-25 15:11:26 -05:00
2005891d40
use route gain control, not amp->gain()
2016-01-25 11:48:43 -05:00
22a20c7333
change exposed type of various objects' gain controls; remove Amp::gain() as a shortcut
2016-01-25 11:47:21 -05:00
b6eab5ede5
deactivate plugin if connect_and_run returns an error
2016-01-24 03:22:19 +01:00
470255effa
add wrapper for ChanMapping::get()
...
The boolean "valid" is implicit, get() returns -1 (really UINT32_MAX)
This simplifies upcoming lua bindings
2016-01-24 03:21:24 +01:00
8dad6fa2d1
remove incorrect/out of date comment
2016-01-22 11:58:31 -05:00
40aa65254a
fix rebase issue from master
2016-01-22 11:58:31 -05:00
23794eca5b
rename Controllable::WholeGroup => InverseGroup to reflect real intent.
...
Add logic to RouteGroupMember::use_group() to implement the real intent of InverseGroup
2016-01-22 11:58:31 -05:00
9e5b7db89f
first compiling, mostly working version of group controls changes
2016-01-22 11:58:31 -05:00
01fd887b9e
Modify our MSVC project to accommodate newly introduced source files (libardour)
2016-01-22 12:29:30 +00:00
79f0a92818
Add a link library that's now needed when building ardour_cp
...
Now needs 'Timecode::BBT_Time' (from Ardour's 'timecode' lib).
2016-01-22 12:28:01 +00:00
a7141e1fc3
Transport_play should not jump back.
...
Typical use of transport controls is to ffwd and rewind, then "play".
This doesn't work well if the Play command always resets to starting position.
2016-01-19 14:00:51 -06:00
5493e20c84
Add all_tracks_rec actions
2016-01-19 14:00:03 -06:00
fe7aac8dac
mackie: remove unnecessary connection to route group property change signal
2016-01-19 14:25:48 -05:00
fe3d85b204
Revert "mackie: still respond to route groups visibility changes"
...
This reverts commit a9ec547457
.
2016-01-19 14:16:49 -05:00
a9ec547457
mackie: still respond to route groups visibility changes
2016-01-19 13:38:29 -05:00
22c5cb47f7
mackie: remove changes to group activation status when fetching routes to display
...
This creates an activation loop, because we fetch new routes to display when
group active status is changed. This was done to provide individual access to
routes that are in a group. We plan to do this using a shift modifier instead.
2016-01-19 12:46:08 -05:00
988a4521e4
add explanatory comment regarding IP_MULTICAST_LOOP, remove cout debug msg
2016-01-18 18:36:11 -05:00
a4271b8560
try using reversed IP_MULTICAST_LOOP semantics for windows
2016-01-18 18:15:48 -05:00
cd27f742d4
momo ip midi debugging
2016-01-18 17:57:06 -05:00
b520db4687
mo' ip midi debugging
2016-01-18 17:18:44 -05:00
0a6eed2b33
remove ipmidi debugging
2016-01-18 16:57:50 -05:00
62ff9d9276
windows, i love you, more
2016-01-18 16:43:27 -05:00
efca4413b9
windows, i love you
2016-01-18 16:41:59 -05:00
3fc50258b8
debug IP multicast loopback
2016-01-18 16:38:25 -05:00
650ee5a317
use cout instead of cerr, since this debugging is for windows
2016-01-18 15:53:28 -05:00
97f180c432
IP MIDI debugging
2016-01-18 14:45:36 -05:00
ce7f7e8e00
add 10sec zoom action
2016-01-18 18:24:14 +01:00
c5b93e2a01
track scrolling and zooming
2016-01-18 18:24:14 +01:00
27d82af077
add some horz and vert zoom actions; remove some whitespace from the code of the ui-actions, so they are easier to see and maintain
2016-01-18 18:24:14 +01:00
16623b1cb3
add more remote transport toggles for touchOSC: midi_panic, toggle_roll, stop_forget, set_X_range, quick snapshots. also add boilerplate for monitor controls, but those are not implemented yet
2016-01-18 18:24:14 +01:00
36e1ff48bc
implement mark_in, mark_out, toggle_click
2016-01-18 18:24:14 +01:00
f0d9295dd6
implement remover_marker, jump_by_bars, and jump_by_seconds
2016-01-18 18:24:14 +01:00
5a55ac582d
mackie: shift-fader overrides group settings
2016-01-18 12:11:09 -05:00
c2bf0fc94e
remove shift-fader-touch as a way to reset gain to default
2016-01-18 12:11:09 -05:00
746d5c6624
add API to allow mackie controls to use GroupControlDisposition
2016-01-18 12:11:09 -05:00
cd401f5ab4
add new enums to libs/pbd enums registration
2016-01-18 12:11:09 -05:00
64c9198d60
add group disposition argument to Route::set_gain() and use it in various UIs
...
Executive decisions were necessary in a couple of places about the correct group disposition
behaviour, notably faderport and OSC surfaces
2016-01-18 12:11:09 -05:00
1948b50a68
working version of new gain control design
2016-01-18 12:11:08 -05:00
55094b7237
move Amp::GainControl out into its own source module and out of Amp
2016-01-18 12:11:08 -05:00
d1033819bd
change ownership of the AutomationControl used by Amp.
...
It used to be owned by Amp. Now it is owned by Amp's owner
2016-01-18 12:11:08 -05:00
19af86ece2
Mackie Control: Fix crash in multi-surface setup when add/remove tracks.
2016-01-18 08:58:07 -08:00
ef7c6730cb
Groups: Fix un/set hidden/show should reset RID for tracks involved.
2016-01-17 14:17:02 -08:00
7b08d650c0
Change last commit to use it's own variable rather than borrowing solo's
2016-01-16 14:40:03 -08:00
65be9fa2fa
Mackie Control: fix global Solo lamp to get signalled for listens active too.
2016-01-16 13:53:52 -08:00
23041fda88
Mackie Control: fix math error that tried to change bank to very high number
2016-01-16 11:17:52 -08:00
92dba5bfa3
Mackie Control: Added hidden tracks view mode.
2016-01-16 07:32:30 -08:00
9d65e6084c
clean up functors used in cross-thread call_slot() messages, in case they contain shared_ptr<T>, which could result in a dangling reference
2016-01-16 09:33:31 -05:00
d61cf81997
The return of threaded waveform rendering and related crashes.
2016-01-16 14:18:59 +01:00
9dfdaff1a4
Mackie Control: Need signal from session if group parameters change so strips redisplay if group un/hides.
2016-01-15 16:19:15 -08:00
b3fd65d149
Mackie Control: Don't show hidden groups either.
2016-01-15 13:58:08 -08:00
6b356448e3
Mackie Control: Don't show hidden routes.
2016-01-15 13:16:24 -08:00
d14e3ccc24
force LV2 plugin-state save for templates - #6709
2016-01-15 13:44:17 +01:00
440618b463
Add a newly introduced source file to our MSVC project (ardour_osc)
2016-01-15 11:59:43 +00:00
5f61409c90
Fix build of OSC surface caused by missing include of i18n/gettext header
2016-01-15 12:14:52 +10:00
d3ab91d171
touchOSC compat for common route operations
2016-01-15 01:31:12 +01:00
b6c78ad9c8
fix OSC debug messages
2016-01-15 01:29:44 +01:00
6a6f414fc0
OSC-debug: print argument
2016-01-15 00:57:33 +01:00
919feac5f7
use PBD instead of C++11.
2016-01-14 23:46:51 +01:00
141352341c
Generic MIDI: midi controller buttons should only trigger on the PUSH, not release. This might have to be reveisited later, but it looks right to me and it fixes operation on 2 different devices here
2016-01-14 16:39:50 -06:00
ddb362fe17
Generic MIDI: add ToggleRecEnable action, and change all maps to use that instead of separate rec-enable, rec-disable, which didnt work
2016-01-14 16:37:54 -06:00
368be3585e
OSC debugging, allow to log incoming & unhandled messages
2016-01-14 23:34:37 +01:00
0b58cde467
Mackie Control: Remove unused global_solo_* functions, moved functionality to clearsolo_* functions.
...
Changed to clear only rather than toggle and added Listen Clear as well.
2016-01-14 13:06:14 -08:00
aacf086246
add API to query signal value of audio-latency measurement
2016-01-14 19:10:04 +01:00
2386410e4a
remove debug output
2016-01-14 11:00:50 -05:00
9ab92a67c8
use correct type of lock when removing a thread request buffer
2016-01-14 11:00:40 -05:00
5e4d9612e3
faderport: stop event loop when destroying object
2016-01-14 10:59:27 -05:00
35807a1929
fully clean up request buffers when a thread dies
2016-01-14 10:53:32 -05:00
077c65cc2a
manually revert 4b3043cc
and 141e6fb8181; add detailed explanatory comment
2016-01-14 09:05:06 -05:00
da087e920b
ensure that each and every audioengine-related thread has a unique name
2016-01-14 09:05:06 -05:00
141e6fb818
don't pick up already dead thread request buffers when setting up an event loop
2016-01-13 23:25:17 -05:00
4b3043ccda
use a unique key to store per-thread request buffers
2016-01-13 23:00:02 -05:00
d3ad5c16d1
yet more event loop debug tracing
2016-01-13 21:13:55 -05:00
6d04a66eea
more event loop debugging
2016-01-13 19:48:17 -05:00
3e45254257
typo fix
2016-01-13 18:14:52 -05:00
f3c9f5894a
lots more DEBUG_TRACE statements for analysing malfunctioning system
2016-01-13 17:03:49 -05:00
9a52cefd13
Fix bug 6725 regions incorrectly moved after tempo change when glued to BBT time
...
Playlist::_split_region copies the region and BBT_Time member is default
constructed so position is bar 1 beat 1.
The regions sample position is then initialized to the new position using the
property list.
Playlist::add_region_internal is then used to add new regions to the playlist
which calls region->set_position() but as the region position has already been
initialized it does not recompute the _bbt_time member based on the new sample
position.
Then when a tempo change occurs and Region::update_after_tempo_map_change is
called the default initialized _bbt_time member is used to incorrectly
determine the new sample position.
So the change removes the initialization of the new region position using the
property list initialization method and just lets the playlist set the position
of the region in Playlist::add_region_internal so that the region _bbt_time
member is recomputed in Region::set_position_internal.
2016-01-14 07:05:04 +10:00
b81504581b
another DEBUG_TRACE for mackie control x-thread requests
2016-01-12 23:30:14 -05:00
bcb865c235
improved debug trace messages from BaseUI class
2016-01-12 22:11:44 -05:00
7cbf35a3d6
Mackie Control, Fix sends after monitor not showing.
2016-01-12 08:15:57 -08:00
90c4985604
remove wavesaudio backend
2016-01-12 08:06:47 -05:00
cf6a3afcaa
name ALSA midi ports after device
2016-01-11 11:46:10 +01:00
0fc06b4a1b
fix warning message typo
2016-01-11 11:45:44 +01:00
d134ba037d
fix compilation of debug builds
...
ArdourSurface::FaderPort::Button::name is private
2016-01-11 11:07:09 +01:00
f1d0de029d
remove debug output
2016-01-10 23:34:10 -05:00
530dd4255c
faderport: remove wierd shift use design; make user+shift work again
2016-01-10 23:32:21 -05:00
a9995c59cc
coremidi: do not clear port buffer for every call to parse_events()
...
This was limiting the data flow to 1 MIDI event per process cycle.
2016-01-10 17:46:36 -05:00
36fb8c44c1
add explanatory comment regarding coremidi data flow
2016-01-09 14:45:38 -05:00
539d924691
fix const-ness issue.
...
This one is debatable, but since we know that the filter method is const with respect to the AUPluginInfo
object, the const_cast<> seems like the simplest AND cleanest solution
2016-01-09 14:03:13 -05:00
4a99727dea
coremidi: be sure to mark _event._pending false after queueing, so that it doesn't get queued up again later
2016-01-09 13:53:17 -05:00
e6e7377cd8
API evolution
...
The Session-reference is only needed to instantiate/load the plugin.
Indexing presets is not supposed to call load() and be const WRT to
PluginInfo
2016-01-09 15:22:16 +01:00
0e6f763734
and again.
2016-01-09 01:24:10 +01:00
5a047fcd15
fix typo in ce7d18bc16
2016-01-09 01:01:18 +01:00
ba450aaeaa
Leave a ToDo note: distinguish LV2 user and factory presets.
2016-01-09 00:57:53 +01:00
ce7d18bc16
don't allow to delete factory presets
2016-01-09 00:51:24 +01:00
7623b4bea0
exclude AU factory presets from favorite list
2016-01-08 21:13:03 +01:00
25a128f853
Fix monitor-section session-property vs preference state.
...
The initial value of Config::get_use_monitor_bus() may not reflect
the current session's state when loading a session.
2016-01-08 16:01:56 +01:00
ef45a6c84b
coreaudio: remove debug output
2016-01-08 09:43:33 -05:00
63cbe11c67
coreaudio: remove debug output
2016-01-08 09:39:55 -05:00
cae2f82278
NOOP: fix whitespace/indendentation in coreaudio backend code
2016-01-08 09:39:00 -05:00
3d5e345800
coreaudio: reset MIDI parsers when entering and leaving freewheeling
2016-01-08 09:23:05 -05:00
13148d29e2
translatable "Monitor" processor name
2016-01-08 14:21:14 +01:00
24344d5d11
Expose overall monitor-processor state
2016-01-08 14:20:58 +01:00
b4b0f57c0b
remove default implementation to query plugin-preset names
2016-01-08 11:09:43 +01:00
425843d2fd
Update Russian translation
2016-01-08 00:40:41 +01:00
9d3cbe44a3
coreaudio: correctly clear MIDI port buffers
2016-01-07 18:11:45 -05:00
c615e26f3c
coreaudio: factor out common code for stuffing MIDI data into a CoreMidiPort buffer
2016-01-07 18:11:45 -05:00
087610dc56
Allow to query Windows VST user-preset-names
2016-01-07 22:58:27 +01:00
1973e6ec93
lxvst preset name display (user presets only)
2016-01-07 22:58:27 +01:00
58edc83d11
tweak/add faderport debug messages
2016-01-07 16:42:57 -05:00
6e71d3b445
coreaudio: per-port parser for incoming MIDI, copied from ALSA Raw MIDI support
2016-01-07 16:42:34 -05:00
085ffef106
LADSPA preset discovery
2016-01-07 21:05:14 +01:00
b7e06693be
nitpick
2016-01-07 20:44:59 +01:00
674b4ec0db
discover AU presets without instantiating plugin
2016-01-07 20:35:28 +01:00
2cddd0d81f
don't re-activate LV2 plugin before cleanup.
2016-01-07 18:11:35 +01:00
deb6884a53
LV2 - query presets without instantiating the plugin
2016-01-07 17:23:39 +01:00
d5dbdc9ea5
Add API to allow querying plugin-presets without instantiating the plugin
2016-01-07 17:23:39 +01:00
8a84caf4a4
NO-OP, re-order header
2016-01-07 17:23:39 +01:00
d735145969
fix missing symbol on OS X
2016-01-07 10:40:08 -05:00
YQ-YSY
e0b9979d7f
Update zh.po
...
update libs/ardour/po/zh.po translate English -> Chinese all done.
2016-01-05 12:30:59 -05:00
b456060388
OSC API update for surfaces that always send float parameters.
2016-01-04 18:18:13 +01:00
d7078df3eb
amend 9e3299f
for Mixbus
2016-01-03 20:39:47 +01:00
1e5bcc4f76
re-map lv2-port (symbol) with Controllable ID
...
LV2 plugin port indices can change, so we need to save the symbol name
with the controllable and look up the port-index on load.
2016-01-03 18:15:59 +01:00
9e3299f97d
change Controllable::set_value() API to include grouped control consideration.
...
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
b5ed8495fb
remove debug output
2016-01-01 06:58:56 -05:00
5d8b75386c
allow to set per item drag targets
2015-12-30 12:25:09 +01:00
f3179cc5e3
Modify the MSVC build project (for libevoral) such that it can find pthread.h
...
libevoral itself doesn't seem to need libpthread - but by some mechanism it #includes <pbd/event_loop.h> (which now does #include <pthread.h>). So let's make sure it can be found.
2015-12-30 10:17:55 +00:00
b390d8c8a6
possible extra housekeeping for control protocol modules.
...
Currently this code isn't reached because we never call ControlProtocolManager::teardown() on inactive protocols. But at some point it might be appropriate to unload modules (.so/.dll/.dylib) even if the protocol was never instantiated
2015-12-30 04:11:14 -05:00
2c6d92ec96
safer housekeeping for control protocol descriptors
2015-12-30 03:51:00 -05:00
75021abfd6
some good practice.
2015-12-30 00:45:24 +01:00
d58f68ae97
fix control surface discovery crash:
...
On OSX unloading a module deletes all references to it and
the descriptor becomes invalid.
2015-12-30 00:41:33 +01:00
2c95cb0652
keep AU cache in cache-dir
2015-12-29 23:11:01 +01:00
80a730550d
clang build fix (uint32_t is not declaed)
2015-12-29 18:49:56 +01:00
2d871435ca
allow to set parent for modal dialog
2015-12-29 13:31:24 +01:00
b8bb3eae47
generic MIDI support does not have its own request buffer factory, so be sure to initialize descriptor member to null
2015-12-29 05:41:59 -05:00
6a8b8c8523
add check for descriptor when deciding whether to register a control surface request buffer factory
2015-12-29 05:20:50 -05:00
ee541036b4
fix window-title (separate application name, thread name)
2015-12-29 11:03:09 +01:00
23333a271e
fix windows/mingw builds
2015-12-29 10:30:27 +01:00
6f347d325a
prepare VST window resize
...
(this only triggers resizing the parent container window (like user
resizes), which is not sufficient for all plugins.
2015-12-28 23:43:59 +01:00
be3d8bc3d0
add midi-track mute automation
2015-12-28 18:30:46 +01:00
8e1a9f0ada
missing drag-end (fix possible crash)
2015-12-28 17:23:45 +01:00
e2f6c59639
add required request buffer factory for Wiimote
2015-12-28 11:13:04 -05:00
0d9efc1148
redesign cross-thread registration/signalling system
...
This new design will work even when threads that need to receive
messages from RT threads are created *after* the RT threads. The
existing design would fail because the RT thread(s) would never
be known the later created threads, and so signals emitted by the
RT thread and causing call_slot() in the receiver would end up
being enqueued using a lock-protected list. The new design ensures
that communication always uses a lock-free FIFO instead
2015-12-28 10:14:17 -05:00
0aba08594c
allow DnD between DnDTreeView and DnDVbox
2015-12-28 04:10:39 +01:00
dd9e0e49a0
proper display name for Monitor Processor
2015-12-27 18:36:20 +01:00
8d45eecd45
somewhat better solution to prev commit.
...
parse up to 32bit VLQs, match smf_format_vlq()
2015-12-27 03:40:48 +01:00
2c197fd89a
work around midi-event counter 4 byte overflow.
2015-12-27 02:09:54 +01:00
435dd4e98f
fix samplerate initialization.
2015-12-26 04:52:08 +01:00