Commit graph

12211 commits

Author SHA1 Message Date
David Robillard
d17f58e531 Remove dead code 2016-12-03 15:28:23 -05:00
David Robillard
398a318934 Fix event type and parameter type confusion
I'm not sure if this is really the best way to do event types (should it
just be a completely static enum in evoral, or completely dynamic and
provided by the type map, or a mix like currently?), but previously the
event type was frequently set to either total garbage, or parameter
types, which are a different thing.

This fixes all those cases, and makes Evoral::EventType an enum so the
compiler will warn about implicit conversions from int.
2016-12-03 15:28:19 -05:00
David Robillard
bfbc4566ad Fix warnings 2016-12-03 15:27:38 -05:00
David Robillard
08fffeffec Remove Evoral::MIDIEvent
It is slightly questionable whether type specific methods like
velocity() belong on Event at all, these may be better off as free
functions.  However the code currently uses them as methods in many
places, and it seems like a step in the right direction, since, for
example, we might some day have events that have a velocity but aren't
stored as MIDI messages (e.g. if Ardour uses an internal musical model
that is more expressive).

In any case, the former inheritance and plethora of sloppy casts is
definitely not the right thing.
2016-12-03 15:18:21 -05:00
David Robillard
875b1367b2 Factor out and extend MIDIXML implementation 2016-12-03 15:18:20 -05:00
David Robillard
0f5a73a7fd Fix Sequence/Event const-correctness issues 2016-12-03 15:18:20 -05:00
Robin Gareus
b433874019 update summary & connection-matrix colors when route-color changes 2016-12-01 15:51:25 +01:00
Olivier Humbert
e44e1f6227 One fix. 2016-11-30 22:25:46 +01:00
Olivier Humbert
059bbbf23f French translation update 2016-11-30 20:31:32 +01:00
Olivier Humbert
193a0c7671 French translation update
more translation + fixes
2016-11-30 20:24:52 +01:00
Robin Gareus
f1f47664ff fix compilation with newer version of *mm and gcc-6.2 (RefPtr<> cast) 2016-11-30 16:00:05 +01:00
Robin Gareus
24c799cde3 prefer bool operator 2016-11-30 12:15:35 +01:00
David Carlier
be7c6225c8 moving POSIX_VISIBLE to the waf script part 2016-11-29 13:18:46 +00:00
David Carlier
28435d1a30 Making buildable under OpenBSD. 2016-11-29 13:18:46 +00:00
Robin Gareus
5f1d94a7b2 Protect a-comp's display/state against NaN/Inf. 2016-11-29 09:04:13 +01:00
Robin Gareus
0fe62a34da protect a-delay again Inf, NaN, HUGE and stuff. 2016-11-29 08:41:10 +01:00
Robin Gareus
7b687d08a1 properly handle FS pitch-bend - closes #7140 2016-11-28 12:53:20 +01:00
Len Ovens
2614b0df43 OSC: Solo toggle should maintain state when locked, rec and rec_safe should show true state. 2016-11-27 20:52:14 -08:00
Tim Mayberry
e9eea8de9d Fix Duplicate Track with Copy Playlist option selected
Previously two new empty playlists were created.

Related to and mentioned in issue #7141
2016-11-28 12:38:58 +10:00
Len Ovens
8ddeca133b OSC: Squelch select feedback when no feedback is configured. 2016-11-27 18:32:50 -08:00
Tim Mayberry
f50ab8ccec Fix duplicate track with new playlist so only one playlist is created
Instead of 2 empty playlists, thanks to elgoun for the patch

Resolves: #7141
2016-11-28 10:57:06 +10:00
Robin Gareus
1de584961a NO-OP; Backport changes from Mixbus branch 2016-11-27 22:54:23 +01:00
Robin Gareus
2f30d763ed Fix loading, recording & saving MIDI with PolyKeyPressure events.
GUI still does not handle this (neither automation lane, nor List Editor),
but the file loads, plays and exports correctly.
2016-11-27 17:25:42 +01:00
Robin Gareus
9bf4f339b9 revert 335debfa for the PA backend
The same device may have different names for input + output
2016-11-27 00:42:08 +01:00
Len Ovens
d26aac9020 OSC: no op, white space cleanup 2016-11-26 10:23:36 -08:00
Len Ovens
c7f8471d52 OSC: Make plugin and plugin parameter numbering 1 based to match everything else. 2016-11-26 09:18:36 -08:00
Robin Gareus
842c33fba8 Add [hidden] option to list "Dummy" backend with optmized bundles 2016-11-26 15:31:21 +01:00
Robin Gareus
335debfa2f Add API to enforce valid device selection. 2016-11-26 15:31:21 +01:00
Len Ovens
5bf8a5537b OSC: Add patch from 7137 and make it work for manual port selection. 2016-11-25 10:10:49 -08:00
Robin Gareus
4d81e3ec07 RAII to postpone processor changes/graph recalculation 2016-11-25 18:16:08 +01:00
Len Ovens
98f1cb76ed OSC: Patch from 7136 added cleaned and tested. 2016-11-25 07:26:18 -08:00
Paul Davis
174d5e05c9 when duplicating tracks and copying playlists, use a new name for the copied playlist 2016-11-25 13:19:38 +00:00
Robin Gareus
fa642e0e9d Fix forwarding of output-buffers.
fbc8504f9e swapped the iterators: Instead of iterating over output
buffers like BufferSet::read_from(), the new code iterates over
the current buffers. In case of 1 in -> 2 out, only the 1st channel
was be copied.  Also unlike BufferSet::read_from() the ChanCount was
not updated.

Processors after a Delivery e.g. out-meter, AFL processor did not see
all channels.
2016-11-25 13:26:38 +01:00
Paul Davis
0d9030cee1 make the session do the right thing when clearing solo state during non-loading conditions 2016-11-25 11:50:39 +00:00
Paul Davis
bb8ddc4322 remove redundant (identical) 2nd conditional, and improve comment 2016-11-25 11:50:08 +00:00
Paul Davis
4ecb48b055 when clearing route solo state, do the required update 2016-11-25 11:49:30 +00:00
Paul Davis
17e803fef4 Do not try to restore Route solo state after clearing all solo state 2016-11-25 11:48:58 +00:00
Paul Davis
9f3bcf968d fix implementation of SoloControl::clear_all_solo_state()
This no longer emits Changed() unless a change was made, and more
importantly, calls AutomationControl::actually_set_value() if
the self-soloed value needs to be changed
2016-11-25 11:48:18 +00:00
Paul Davis
c5eda4cfe1 provisional changes to speed up solo changes to large numbers of routes.
Moves global update of solo state and emission of Session::SoloChanged to
a single point after 1 to N solo controls are changed.

Also avoid unnecessarily emitted Activated() signal for listen controls,
though Process::{activate,deactive}() should probably be redesigned to
avoid this in a "deeper" way
2016-11-25 10:29:42 +00:00
Robin Gareus
e35ce4c002 Speed up AFL/PFL changes for large sessions
update_latency_compensation() and resort_routes() are expensive and
were called for every individual change.
2016-11-25 10:41:23 +01:00
Robin Gareus
a7210d256e _maps_from_state is legal after unfreeze (restore state) 2016-11-24 21:58:50 +01:00
Robin Gareus
bc0fa4d689 Fix mysterious crashes such as #7049
Fixes an issue with corrupted std::lists<> due to concurrent writes
to the invalidation list which eventually resulted in
EventLoop::invalidate_request() not invalidating requests.
Concurrency sucks rocks hard.
2016-11-24 09:02:47 +01:00
Edgar Aichinger
dbd8909fad catch up with .de translation 2016-11-23 14:12:57 +01:00
nick_m
3a362563a4 constify some TempoMap functions. 2016-11-23 01:45:43 +11:00
nick_m
11090b2e01 remove set but not used variable in tempo.cc 2016-11-22 22:51:10 +11:00
nick_m
b53ea4ea0e amend 66488e117 - BBT clock scrolling handles multiple audio-locked meters. 2016-11-22 03:17:01 +11:00
nick_m
66488e1174 TempoMap::bbt_duration_at() handles an audio-locked meter.
- fixes some odd results when scrolling down/up over the BBT clock display.
2016-11-22 00:29:53 +11:00
Edgar Aichinger
979d5d12f3 update german translation 2016-11-20 23:29:03 +01:00
nick_m
5b8e213ff9 fix typo in tempo.cc 2016-11-21 07:08:04 +11:00
Robin Gareus
33a67c26be Allow to call ARDOUR.DSP Lua functions from UI scripts 2016-11-19 21:56:52 +01:00