Robin Gareus [Thu, 17 Nov 2016 13:05:40 +0000 (14:05 +0100)]
Allow to migrate sessions with VST plugins
Robin Gareus [Thu, 17 Nov 2016 12:03:36 +0000 (13:03 +0100)]
try VST2.4's VSTPluginMain first
This fixes a crash with loading u-he Diva on windows.
Robin Gareus [Thu, 17 Nov 2016 11:58:28 +0000 (12:58 +0100)]
fix mingw64 debug build
Robin Gareus [Wed, 16 Nov 2016 17:55:40 +0000 (18:55 +0100)]
Add example script to modulate parmaters globally
nick_m [Wed, 16 Nov 2016 17:08:13 +0000 (04:08 +1100)]
magnetic snap uses note divisor appropriately.
- also looks nicer when resizing MIDI regions.
Robin Gareus [Wed, 16 Nov 2016 16:24:08 +0000 (17:24 +0100)]
fix 32bit+PPC OSX builds
nick_m [Wed, 16 Nov 2016 16:13:16 +0000 (03:13 +1100)]
fix incorrect return type for Editor::get_grid_music_divisions().
Robin Gareus [Wed, 16 Nov 2016 04:24:01 +0000 (05:24 +0100)]
Fix crash when fanning out from editor mixer
when creating a new track or bus editor-selection changes and the
editor-mixer's _route changes.
Robin Gareus [Wed, 16 Nov 2016 00:25:29 +0000 (01:25 +0100)]
Revert "disable MacVST support (until it's ready)"
This reverts commit
e0766e8f74e740cd24645f3712873a1b669e4995.
Robin Gareus [Wed, 16 Nov 2016 00:23:21 +0000 (01:23 +0100)]
fix library depends for OSX vst scanner
Robin Gareus [Tue, 15 Nov 2016 22:11:50 +0000 (23:11 +0100)]
update MSVC project in the wake of
cf1651e6
nick_m [Tue, 15 Nov 2016 18:18:35 +0000 (05:18 +1100)]
a better fix for
6ed8c113a25 (scope)
nick_m [Tue, 15 Nov 2016 18:03:14 +0000 (05:03 +1100)]
Region:;set_state() should always set quarter_note.
- fix for 4.x sessions showing notes stacked at session start.
Robin Gareus [Tue, 15 Nov 2016 16:20:34 +0000 (17:20 +0100)]
MacVST UI resizing
Robin Gareus [Tue, 15 Nov 2016 16:07:55 +0000 (17:07 +0100)]
consolidate VST UI code
Robin Gareus [Tue, 15 Nov 2016 16:07:04 +0000 (17:07 +0100)]
consolidate VSTState functions
John Emmas [Tue, 15 Nov 2016 11:12:25 +0000 (11:12 +0000)]
Accommodate a newly introduced source file in our MSVC project (libardour)
(although I'm not sure if it's actually used yet in the Windows build).
Robin Gareus [Tue, 15 Nov 2016 02:25:32 +0000 (03:25 +0100)]
really fix windows compilation.
Robin Gareus [Tue, 15 Nov 2016 02:21:02 +0000 (03:21 +0100)]
amend
5dc24971009 ...get the windows version to compile.
eventually vststate_init() needs cleaning up, but not tonight.
Olivier Humbert [Tue, 15 Nov 2016 01:03:35 +0000 (02:03 +0100)]
French translation update
more translations
Olivier Humbert [Tue, 15 Nov 2016 00:35:28 +0000 (01:35 +0100)]
Adding myself
adding my name
Olivier Humbert [Tue, 15 Nov 2016 00:32:04 +0000 (01:32 +0100)]
French translation update
one small fix
Olivier Humbert [Tue, 15 Nov 2016 00:24:56 +0000 (01:24 +0100)]
French translation update
A few more translations and fixes for French.
Olivier Humbert [Thu, 10 Nov 2016 01:26:55 +0000 (02:26 +0100)]
French translation update
This one:
* adds a French translation for a string
* adds myself on the header
Olivier Humbert [Thu, 10 Nov 2016 00:17:01 +0000 (01:17 +0100)]
French translation update
This translates one string.
Robin Gareus [Tue, 15 Nov 2016 01:49:30 +0000 (02:49 +0100)]
rework
8e3b6c9ac (fstwin is C code, not C++)
Robin Gareus [Tue, 15 Nov 2016 00:17:47 +0000 (01:17 +0100)]
fix another typo (
f30fbcaaf)
Robin Gareus [Mon, 14 Nov 2016 23:43:28 +0000 (00:43 +0100)]
Add missing #include
Robin Gareus [Mon, 14 Nov 2016 23:43:17 +0000 (00:43 +0100)]
Fix some typo.
Tim Mayberry [Mon, 14 Nov 2016 23:19:24 +0000 (09:19 +1000)]
Fix intermittent hang when stopping PortaudioBackend
This issue is not always reproducible but when it does occur it happens
somewhat consistently on both 32bit and 64bit builds(Tested on Windows 7).
The midiOutReset call does not return (or it takes so long that it might as
well be indefinite) and as it is not strictly necessary just remove it.
Resolves: http://tracker.ardour.org/view.php?id=7095
Robin Gareus [Mon, 14 Nov 2016 23:32:19 +0000 (00:32 +0100)]
show VST preset clean/dirty state
Robin Gareus [Mon, 14 Nov 2016 23:01:27 +0000 (00:01 +0100)]
MacVST Program/Preset support
Robin Gareus [Mon, 14 Nov 2016 23:01:12 +0000 (00:01 +0100)]
add signal for VST state load
MacVST has no dedicated VST event-loop to directly handle this.
Tim Mayberry [Mon, 14 Nov 2016 22:16:31 +0000 (08:16 +1000)]
Fix crash when selecting MIDI note
Replace now always invalid assertion with initialization
Related to #7110
Robin Gareus [Mon, 14 Nov 2016 20:05:36 +0000 (21:05 +0100)]
Fix VST state-lock SNAFU (effSetChunk and process are exclusive)
Robin Gareus [Mon, 14 Nov 2016 20:04:01 +0000 (21:04 +0100)]
consolidate VSTState initialization
Robin Gareus [Mon, 14 Nov 2016 18:39:00 +0000 (19:39 +0100)]
Pass const references to plugin-list
nick_m [Mon, 14 Nov 2016 16:48:20 +0000 (03:48 +1100)]
change note selection node name - should fix 7110
Robin Gareus [Mon, 14 Nov 2016 15:47:09 +0000 (16:47 +0100)]
Later code depends on prev_t not being NULL, use an assert()
Robin Gareus [Mon, 14 Nov 2016 15:45:25 +0000 (16:45 +0100)]
tempo map cannot be empty (help static analyzer)
Robin Gareus [Mon, 14 Nov 2016 03:12:58 +0000 (04:12 +0100)]
potential fix for #7110 (older sessions have no id)
Robin Gareus [Mon, 14 Nov 2016 00:40:57 +0000 (01:40 +0100)]
fix LV2 state versioning with session-templates
Robin Gareus [Mon, 14 Nov 2016 00:14:52 +0000 (01:14 +0100)]
Suffix plugin type in instrument-list to avoid ambiguities
Robin Gareus [Mon, 14 Nov 2016 00:13:48 +0000 (01:13 +0100)]
const'ness FTW
Robin Gareus [Sun, 13 Nov 2016 23:26:56 +0000 (00:26 +0100)]
register some missing enums
Robin Gareus [Sun, 13 Nov 2016 17:48:33 +0000 (18:48 +0100)]
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.
Robin Gareus [Sun, 13 Nov 2016 17:47:08 +0000 (18:47 +0100)]
fix MacVST UI idle calls
Robin Gareus [Sun, 13 Nov 2016 15:34:27 +0000 (16:34 +0100)]
copy VST state on copy construction
This fixes issues with replicate instances & plugin-analysis instances
not using the same set of parameters.
Robin Gareus [Sun, 13 Nov 2016 15:33:18 +0000 (16:33 +0100)]
disable MacVST support (until it's ready)
Robin Gareus [Sun, 13 Nov 2016 15:32:30 +0000 (16:32 +0100)]
basic Mac VST Cocoa UI support
Robin Gareus [Sun, 13 Nov 2016 15:31:15 +0000 (16:31 +0100)]
Mac VST-2.x support
Robin Gareus [Sat, 12 Nov 2016 15:20:43 +0000 (16:20 +0100)]
fix const-cast
Robin Gareus [Sat, 12 Nov 2016 15:19:36 +0000 (16:19 +0100)]
fix typo in example script
Robin Gareus [Sat, 12 Nov 2016 15:19:27 +0000 (16:19 +0100)]
fix buffer overflow printing tempo/meter
Robin Gareus [Fri, 11 Nov 2016 15:19:59 +0000 (16:19 +0100)]
VST buffer paranoia
nick_m [Fri, 11 Nov 2016 10:35:13 +0000 (21:35 +1100)]
fix compilation on osx
Robin Gareus [Fri, 11 Nov 2016 09:48:33 +0000 (10:48 +0100)]
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
Tim Mayberry [Tue, 9 Feb 2016 10:39:27 +0000 (20:39 +1000)]
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
Tim Mayberry [Wed, 7 Sep 2016 03:06:33 +0000 (13:06 +1000)]
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.
Tim Mayberry [Tue, 9 Feb 2016 10:37:53 +0000 (20:37 +1000)]
Change Editor temporal zoom methods to be able to use different scale for the zoom
Robin Gareus [Fri, 11 Nov 2016 02:54:50 +0000 (03:54 +0100)]
static MonitorSection Action -- fixes #7098
ActionManager registered actions are static global and cannot reference
an instance (this) directly.
Robin Gareus [Fri, 11 Nov 2016 00:14:18 +0000 (01:14 +0100)]
keep meterbridge on top
Robin Gareus [Thu, 10 Nov 2016 22:57:47 +0000 (23:57 +0100)]
Remove a group when the last track in the group is removed
Robin Gareus [Thu, 10 Nov 2016 22:04:12 +0000 (23:04 +0100)]
prevent crash during track-deletion (un-selecting deleted tracks)
Robin Gareus [Thu, 10 Nov 2016 20:35:40 +0000 (21:35 +0100)]
Implement instrument fan-out options (group, track/bus)
John Emmas [Thu, 10 Nov 2016 19:31:26 +0000 (19:31 +0000)]
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.
nick_m [Thu, 10 Nov 2016 17:02:17 +0000 (04:02 +1100)]
update lua script to follow Region API change.
nick_m [Thu, 10 Nov 2016 16:26:21 +0000 (03:26 +1100)]
remove debugging output
nick_m [Thu, 10 Nov 2016 16:16:09 +0000 (03:16 +1100)]
remove unused variable and debugging.
nick_m [Tue, 8 Nov 2016 17:51:19 +0000 (04:51 +1100)]
rename Region pos_beats -> quarter_note
nick_m [Tue, 8 Nov 2016 15:23:43 +0000 (02:23 +1100)]
more tempo documentation.
nick_m [Tue, 8 Nov 2016 15:01:22 +0000 (02:01 +1100)]
ensure non-zero midi region length when tempo map changes.
nick_m [Tue, 8 Nov 2016 14:42:33 +0000 (01:42 +1100)]
TempoSection note-types-per-minute node name goes back to beats-per-minute for now.
nick_m [Tue, 8 Nov 2016 14:30:32 +0000 (01:30 +1100)]
use note_type explicitly when constructing a Tempo in the hope that others follow.
- should be a no-op
nick_m [Tue, 8 Nov 2016 14:10:21 +0000 (01:10 +1100)]
remove recently added xml nodes.
nick_m [Tue, 8 Nov 2016 14:04:45 +0000 (01:04 +1100)]
use frame interval api for empoMap::framepos_plus_qn()
nick_m [Tue, 8 Nov 2016 13:49:31 +0000 (00:49 +1100)]
clarify bbt_at_frame() warning.
nick_m [Tue, 8 Nov 2016 13:48:00 +0000 (00:48 +1100)]
rename note_divisions_per_minute -> ote_types_per_minute (double note_type)
nick_m [Tue, 8 Nov 2016 13:37:52 +0000 (00:37 +1100)]
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.
nick_m [Tue, 8 Nov 2016 13:07:37 +0000 (00:07 +1100)]
TempoSection::tempo_at methods return a Tempo, document the opposite direction.
nick_m [Sat, 5 Nov 2016 18:39:37 +0000 (05:39 +1100)]
audio units uses quarter_notes_per_minute().
nick_m [Sat, 5 Nov 2016 18:14:20 +0000 (05:14 +1100)]
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.
nick_m [Sat, 5 Nov 2016 11:29:31 +0000 (22:29 +1100)]
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.
nick_m [Thu, 3 Nov 2016 17:18:00 +0000 (04:18 +1100)]
remove commented code.
nick_m [Thu, 3 Nov 2016 16:19:21 +0000 (03:19 +1100)]
more tempo documentation.
nick_m [Thu, 3 Nov 2016 15:17:59 +0000 (02:17 +1100)]
fix lock error in empoMap::quarter_note_at_bbt_rt(), expand constant tempo test.
nick_m [Thu, 3 Nov 2016 15:12:20 +0000 (02:12 +1100)]
remove unused TempoMap::tempo_at_beat(). implement unused tempo_at_quarter_note().
nick_m [Thu, 3 Nov 2016 14:54:00 +0000 (01:54 +1100)]
tempo.h reorganization. should be a no-op
nick_m [Thu, 3 Nov 2016 14:31:15 +0000 (01:31 +1100)]
more documentation in tempo.cc, fix constant bug in pulse_at_tempo_locked()
nick_m [Thu, 3 Nov 2016 14:21:57 +0000 (01:21 +1100)]
remove remaining frame api from TempoSection.
nick_m [Tue, 1 Nov 2016 10:54:11 +0000 (21:54 +1100)]
remove public pulse methods from TempoMap.
- the only object whose musical position is not expressed in
quarter notes is MetricSection.
there is now no need to expose this.
nick_m [Mon, 31 Oct 2016 17:45:38 +0000 (04:45 +1100)]
add some documentation for TempoMap.
nick_m [Mon, 31 Oct 2016 13:40:05 +0000 (00:40 +1100)]
clamp setting tempo via vertical drag.
- a bit suboptimal. we really need the opposite of _trackview_only
to prevent jumping to track canvas scrolled coordinates in the first place.
nick_m [Sun, 30 Oct 2016 13:01:02 +0000 (00:01 +1100)]
rename Region pulse to pos_beats. use new beat distance api where required.
- add more debugging output detecting regions whose
beat and frame position do not align on a playlist.
this is required as a check as we have never used
frame rounding on constant tempi before
8884a5723dc
nick_m [Sun, 30 Oct 2016 12:42:06 +0000 (23:42 +1100)]
MidiRegion _start/_length beats are frame based only when lock style is Audiotime
nick_m [Sun, 30 Oct 2016 12:21:42 +0000 (23:21 +1100)]
Refactor tempo api, include quarter-note distance in frames method.
- moves frame rounding up to TempoMap, which is needed
in order to calculate pulse distance without frame rounding.
- the time unit for tempo is still minute, but this now also
applies to meter sections. (new audio locked meter sections no
longer require a frame position).
- there is no longer a discontinuity
in the pulse for audio-locked meter/tempi.
- temporarily add debugging output in Region::set_position()
to test for region beat not matching region frame.
Robin Gareus [Thu, 10 Nov 2016 16:32:03 +0000 (17:32 +0100)]
Revert "update lua script to follow API change (
bb459a2e7d)"
This reverts commit
f09e9347e140d8b0151dd1bf1b5f91e473674699.
because the new-midi branch wasn't merged, yet
John Emmas [Thu, 10 Nov 2016 12:20:53 +0000 (12:20 +0000)]
#include <ardour/midi_cursor.h> in a couple of places
I'm not entirely sure why it's needed in 'smf_source.cc' but MSVC fails to link the compiled module if I don't #include it ?!?
Tim Mayberry [Thu, 10 Nov 2016 01:41:19 +0000 (11:41 +1000)]
Use better debug output in PortaudioBackend
When failing to open audio stream in callback mode
Tim Mayberry [Fri, 14 Oct 2016 02:35:05 +0000 (12:35 +1000)]
Fix for conflicting definition of _xgetbv with mingw-w64 >= 5
Simplify the #ifdef logic so it is easier to follow and add exceptions in the
future if necessary.