13
0
Commit Graph

22729 Commits

Author SHA1 Message Date
c16eb83fec Fix crash when selecting MIDI note
Replace now always invalid assertion with initialization

Related to #7110
2016-11-15 08:16:31 +10:00
f30fbcaaf9 Fix VST state-lock SNAFU (effSetChunk and process are exclusive) 2016-11-14 21:06:18 +01:00
8e3b6c9ac6 consolidate VSTState initialization 2016-11-14 21:06:18 +01:00
48c470d51d Pass const references to plugin-list 2016-11-14 21:06:18 +01:00
nick_m
0b2ae7dad9 change note selection node name - should fix 7110 2016-11-15 03:48:20 +11:00
63f86b1314 Later code depends on prev_t not being NULL, use an assert() 2016-11-14 16:47:22 +01:00
e4e2d92649 tempo map cannot be empty (help static analyzer) 2016-11-14 16:47:19 +01:00
6794a83661 potential fix for #7110 (older sessions have no id) 2016-11-14 04:12:58 +01:00
37137d5b3c fix LV2 state versioning with session-templates 2016-11-14 01:40:57 +01:00
da480d5540 Suffix plugin type in instrument-list to avoid ambiguities 2016-11-14 01:14:52 +01:00
1d60986283 const'ness FTW 2016-11-14 01:14:11 +01:00
8975f6c8d2 register some missing enums 2016-11-14 01:14:06 +01:00
aee2606b28 VST set defaults only once (initially)
Opening the generic plugin UI or re-opening the GUI will call
get_parameter_descriptor() again, and replace the defaults with
current values.
2016-11-13 18:48:33 +01:00
68cbbe892f fix MacVST UI idle calls 2016-11-13 18:47:08 +01:00
ec31741ee6 copy VST state on copy construction
This fixes issues with replicate instances & plugin-analysis instances
not using the same set of parameters.
2016-11-13 16:35:06 +01:00
e0766e8f74 disable MacVST support (until it's ready) 2016-11-13 16:35:06 +01:00
80fa696564 basic Mac VST Cocoa UI support 2016-11-13 16:35:06 +01:00
8b93fb02f3 Mac VST-2.x support 2016-11-13 16:35:06 +01:00
43bd7f5db1 fix const-cast 2016-11-12 16:20:43 +01:00
f217487aff fix typo in example script 2016-11-12 16:19:36 +01:00
7daee17f87 fix buffer overflow printing tempo/meter 2016-11-12 16:19:27 +01:00
a32a272709 VST buffer paranoia 2016-11-11 16:40:01 +01:00
nick_m
50d12abeab fix compilation on osx 2016-11-11 21:35:13 +11:00
857c0d4a5e Refine instrument fan-out:
* prefix (rather than suffix) portgroup-name
* check if group already exists
* disconnect targets (when autoconnect preference is enabled)
* expose tracks/busses option
2016-11-11 10:48:33 +01:00
dac2d41ee2 Add option to zoom using button press in the time rulers and dragging vertically
This is a common operation used for zooming in other DAWs like Ableton Live and
Cubase. To support such a usage pattern without changing the existing behaviour
of the ruler area I've made it an option that is false by default.

The behaviour of RulerDragZoom is intentionally different than a CursorDrag
that occurs in the rest of the ruler area in that it doesn't follow the snap to
grid setting and no locate related stuff occurs until button release.

There are some issues with responsiveness with more than a few hundred regions
or a large amount of MIDI events/notes.

Implements feature #6768
2016-11-11 14:13:53 +10:00
37a7d87786 Use the frame corresponding to the current mouse position when zoom dragging
Editor::mouse_frame only works within the track canvas. If a zoom drag is
initiated and the mouse cursor goes outside of the track canvas the zoom
position should still based on the current x position of the cursor.
2016-11-11 14:13:53 +10:00
9485748e17 Change Editor temporal zoom methods to be able to use different scale for the zoom 2016-11-11 14:13:53 +10:00
4499066f39 static MonitorSection Action -- fixes #7098
ActionManager registered actions are static global and cannot reference
an instance (this) directly.
2016-11-11 03:54:50 +01:00
f83dbf83f4 keep meterbridge on top 2016-11-11 01:14:18 +01:00
2f8ccb5732 Remove a group when the last track in the group is removed 2016-11-10 23:57:47 +01:00
9990da35d8 prevent crash during track-deletion (un-selecting deleted tracks) 2016-11-10 23:20:58 +01:00
33942e6d52 Implement instrument fan-out options (group, track/bus) 2016-11-10 21:39:20 +01:00
ddd79819dc Correct the #includes for 'ardour/midi_cursor.h' (see commit #ec12fccf08)
There are a couple of header files where we use a reference to class ARDOUR::MidiCursor (rather than a pointer). To keep MSVC happy we need to #include its header file, rather than simply using a forward reference.
2016-11-10 19:31:26 +00:00
nick_m
953dcb9153 update lua script to follow Region API change. 2016-11-11 04:02:17 +11:00
nick_m
bf416cb91e remove debugging output 2016-11-11 03:37:08 +11:00
nick_m
425fe93fde remove unused variable and debugging. 2016-11-11 03:37:08 +11:00
nick_m
d9dea0a3aa rename Region pos_beats -> quarter_note 2016-11-11 03:37:08 +11:00
nick_m
3816ee4e92 more tempo documentation. 2016-11-11 03:37:08 +11:00
nick_m
4e41b71a4e ensure non-zero midi region length when tempo map changes. 2016-11-11 03:37:08 +11:00
nick_m
a5dc7a01d3 TempoSection note-types-per-minute node name goes back to beats-per-minute for now. 2016-11-11 03:37:08 +11:00
nick_m
e8042f5843 use note_type explicitly when constructing a Tempo in the hope that others follow.
- should be a no-op
2016-11-11 03:37:08 +11:00
nick_m
5aafb0b534 remove recently added xml nodes. 2016-11-11 03:37:08 +11:00
nick_m
43f79cb00c use frame interval api for empoMap::framepos_plus_qn() 2016-11-11 03:37:08 +11:00
nick_m
35ec9b33cf clarify bbt_at_frame() warning. 2016-11-11 03:37:08 +11:00
nick_m
b025f8e42a rename note_divisions_per_minute -> ote_types_per_minute (double note_type) 2016-11-11 03:37:08 +11:00
nick_m
0b7db6ebbb add empoMap::quarter_notes_between_frames().
- in an ideal world, this wouldn't be here at all,
	  but is required to support framewalk_to_qn().
	  if Beats are at tick resolution, the frame-induced
	  temporal rounding is acceptable.
2016-11-11 03:37:08 +11:00
nick_m
a432f6585c TempoSection::tempo_at methods return a Tempo, document the opposite direction. 2016-11-11 03:37:08 +11:00
nick_m
3ee59cf499 audio units uses quarter_notes_per_minute(). 2016-11-11 03:37:08 +11:00
nick_m
33e95a1577 rename Tempo _beats_per_minute to _note_types_per_minute, provide pulse helpers.
- adds quarter_notes_per_minute(), note_divisions_per_minute (double)
	  pulses_per_minute() and frames_per_quarter_note()

	- this should be a no-op except for the use of tempo by
	  the vst callback which definitely uses quarter notes per minute.

	- the XML node for TempoSection named 'beats-per-minute'
	  has been renamed.
2016-11-11 03:37:08 +11:00
nick_m
e52f90357e tempo doc explains that currently Tempo::beats_per_minute means something else.
- Tempo beats_per_minute() is currently implemented as note types per minute.
	  a further patch will change Tempo to reflect this and provide some helpers.
2016-11-11 03:37:08 +11:00