Robin Gareus [Tue, 12 Jul 2016 21:00:44 +0000 (23:00 +0200)]
remove old midi-note name API
Robin Gareus [Tue, 12 Jul 2016 21:00:31 +0000 (23:00 +0200)]
use new midi-note-name API
Robin Gareus [Tue, 12 Jul 2016 21:00:15 +0000 (23:00 +0200)]
Add a new API to format midi-note-names with translation: Do Re Mi...
This deprecates Evoral::midi_note_name(). we don't maintain i18n
for libevoral.
Robin Gareus [Tue, 12 Jul 2016 20:06:14 +0000 (22:06 +0200)]
add a safe-guard
Paul Davis [Tue, 12 Jul 2016 20:55:12 +0000 (16:55 -0400)]
VCA/Control Masters are displayed at fixed positions (initially), so insert-at options are irrelevant when adding them
Paul Davis [Tue, 12 Jul 2016 20:50:53 +0000 (16:50 -0400)]
VCA/Control Masters have no signal, so output i/o options are irrelevant when adding them
Len Ovens [Tue, 12 Jul 2016 20:33:28 +0000 (13:33 -0700)]
OSC: Add /path/band extension for eq_* bands
Paul Davis [Tue, 12 Jul 2016 15:50:12 +0000 (11:50 -0400)]
two more places where the user can explicitly set the session end now also make the end non-free
Len Ovens [Tue, 12 Jul 2016 16:13:53 +0000 (09:13 -0700)]
OSC: Added EQ control, use interface_to_internal to normalize control range
Damien Zammit [Tue, 12 Jul 2016 15:26:29 +0000 (01:26 +1000)]
a-Reverb: fix typo in plugin name
Paul Davis [Tue, 12 Jul 2016 15:19:34 +0000 (11:19 -0400)]
GUI side of : once the user has explicitly set the session range end, playlist/range changes do not move it.
The user may drag the marker, edit in the Location UI, or use nudge, to set the end
Paul Davis [Tue, 12 Jul 2016 15:19:15 +0000 (11:19 -0400)]
once the user has explicitly set the session range end, playlist/range changes do not move it.
The user may drag the marker, edit in the Location UI, or use nudge, to set the end
Damien Zammit [Tue, 12 Jul 2016 15:16:08 +0000 (01:16 +1000)]
a-Reverb: Fix ttl and tweak maximum input gain
Damien Zammit [Tue, 12 Jul 2016 14:54:43 +0000 (00:54 +1000)]
a-EQ: Transfer function curves improvement
Robin Gareus [Tue, 12 Jul 2016 14:42:41 +0000 (16:42 +0200)]
fix a-eq library extension
Robin Gareus [Tue, 12 Jul 2016 14:42:29 +0000 (16:42 +0200)]
a-reverb prototype (based on setBfree b_reverb)
Robin Gareus [Tue, 12 Jul 2016 13:21:23 +0000 (15:21 +0200)]
re-classify bundled lua scripts
* search by author:
- "Ardour Team" for "ready to use" plugins
- "Ardour Lua Task Force" = example plugins
* search by Category
- use "Example" for DSP plugins (except instruments)
Paul Davis [Tue, 12 Jul 2016 14:27:19 +0000 (10:27 -0400)]
do not show windows derived from ArdourDialog at startup.
See code comment for more details
Paul Davis [Tue, 12 Jul 2016 13:42:34 +0000 (09:42 -0400)]
when using toggle-editor-and-mixer, if current tab is neither, go to mixer first.
This makes using Alt-m (the default binding) feel a lot more sensible
Paul Davis [Tue, 12 Jul 2016 13:17:55 +0000 (09:17 -0400)]
remove pointless version of Stripable::set_presentation_order()
Robin Gareus [Tue, 12 Jul 2016 12:38:19 +0000 (14:38 +0200)]
fix a a-eq ttl typo
Robin Gareus [Tue, 12 Jul 2016 12:38:05 +0000 (14:38 +0200)]
add mouse interaction to inline display
Paul Davis [Tue, 12 Jul 2016 12:20:46 +0000 (08:20 -0400)]
fix simple but fatal mistake in defining PBD::Controllable::Flags enums.
This error caused the flags to be saved as an empty string, thus losing all state when the session is reloaded
Robin Gareus [Tue, 12 Jul 2016 11:44:55 +0000 (13:44 +0200)]
fix compilation with lv2 < 1.10 (lv2 extended)
Robin Gareus [Tue, 12 Jul 2016 02:02:33 +0000 (04:02 +0200)]
more compact generic knob-ui layout
Robin Gareus [Tue, 12 Jul 2016 02:01:56 +0000 (04:01 +0200)]
a-eq tweaks:
* shorten e-eq Hz display (no decimals)
* use 16:9 aspect inline display
* fix a compiler warning
Julien "_FrnchFrgg_" RIVAUD [Mon, 11 Jul 2016 22:13:01 +0000 (00:13 +0200)]
Make MIDI monitor a pass-through for audio and midi
MIDI monitor only accepted midi data and output that same data. That was
logical for a MIDI plugin, but a consequence is that automatic pin
configuration makes MIDI monitors opaque to audio data, which means
drag'n'dropping a MIDI monitor for debugging purposes can suddenly cut
audio, or even change the channel count if strict I/O is enabled.
Improve the MIDI monitor so that it passes through all incoming data
unchanged.
Robin Gareus [Mon, 11 Jul 2016 23:46:17 +0000 (01:46 +0200)]
update MIDIEvent lua bindings/example
Len Ovens [Mon, 11 Jul 2016 23:00:14 +0000 (16:00 -0700)]
OSC: finish feedback for well known controls. Simplify some others.
Robin Gareus [Mon, 11 Jul 2016 20:53:13 +0000 (22:53 +0200)]
remove debug output
Robin Gareus [Mon, 11 Jul 2016 20:36:00 +0000 (22:36 +0200)]
add a convenient lua forward mapped buffers method
Robin Gareus [Mon, 11 Jul 2016 20:22:17 +0000 (22:22 +0200)]
proper semantics for variable port-count
Ardour takes the closest pin/port match yet still offers a plugin with
variable i/o access to all port-buffers.
the "reported" (user visible) pin-count now defaults to the actual
selected configuration (precise) and lua_dsp_configure() can
override it.
Robin Gareus [Mon, 11 Jul 2016 16:57:04 +0000 (18:57 +0200)]
add _FrnchFrgg_ to credits
Julien "_FrnchFrgg_" RIVAUD [Mon, 11 Jul 2016 15:39:59 +0000 (17:39 +0200)]
Improve MIDI monitor
Robin Gareus [Mon, 11 Jul 2016 14:57:02 +0000 (16:57 +0200)]
remove implicit labels from a-eq
Robin Gareus [Mon, 11 Jul 2016 14:55:28 +0000 (16:55 +0200)]
add a MTC/sysex test sequence
Julien "_FrnchFrgg_" RIVAUD [Mon, 11 Jul 2016 13:29:56 +0000 (15:29 +0200)]
Add a new MIDI monitor plugin
This plugin lets through all incoming MIDI events, and also shows the
latest ones in a human-readable format directly on the mixer strip. The
user can choose the font size and the number of recent events displayed,
as well as whether to print values in decimal or hexadecimal, and
whether to print system events.
Robin Gareus [Mon, 11 Jul 2016 11:42:42 +0000 (13:42 +0200)]
fix OSX compilation (flat namespace)
reference to 'Rect' is ambiguous
..../CarbonCore.framework/Headers/MacTypes.h defines
typedef struct Rect
Robin Gareus [Mon, 11 Jul 2016 01:46:33 +0000 (03:46 +0200)]
tweak generic plugin knob-widgets
remove label, use tooltip (saves space, more compact layout)
Robin Gareus [Mon, 11 Jul 2016 01:45:13 +0000 (03:45 +0200)]
extend ArdourKnob ToolTips
allow to set/change tooltip-prefix and set a "printer" in preparation
for properly using the Knob in Plugin UIs
Robin Gareus [Mon, 11 Jul 2016 01:05:43 +0000 (03:05 +0200)]
elaborate documented raw audio/midi buffer lua example
Robin Gareus [Mon, 11 Jul 2016 01:04:29 +0000 (03:04 +0200)]
lua MidiBuffer bindings
nick_m [Sun, 10 Jul 2016 17:53:36 +0000 (03:53 +1000)]
Fix potential infinite loop in TempoCurve::set_position()
- it was previously possible for frame_step to be zero for tempo sections with
a short duration, resulting in endlessly adding 0 to current_frame.
Len Ovens [Sun, 10 Jul 2016 15:20:05 +0000 (08:20 -0700)]
White space fix only. (Spaces to tabs)
Robin Gareus [Sun, 10 Jul 2016 14:48:38 +0000 (16:48 +0200)]
refine lua-script documentation
Robin Gareus [Sun, 10 Jul 2016 13:59:50 +0000 (15:59 +0200)]
NO-OP whitespace
Robin Gareus [Sun, 10 Jul 2016 13:56:18 +0000 (15:56 +0200)]
add a single-element ring-buffer write function
Robin Gareus [Sun, 10 Jul 2016 13:30:41 +0000 (15:30 +0200)]
remove reference "const int32_t&" -> const int32_t"
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
Robin Gareus [Sun, 10 Jul 2016 13:01:29 +0000 (15:01 +0200)]
complete ringbuffer bindings
Robin Gareus [Sun, 10 Jul 2016 12:46:41 +0000 (14:46 +0200)]
add a raw midi buffer plugin example
Robin Gareus [Sun, 10 Jul 2016 12:45:58 +0000 (14:45 +0200)]
add raw midi buffer binding
Robin Gareus [Sun, 10 Jul 2016 12:08:24 +0000 (14:08 +0200)]
re-layout import dialog (better fit for narrow screens)
The instrument dropdown can be very wide (depending on available synths)
and combined with other dropdowns and the copy-checkbox in a single row,
the min. width was well above 1400px.
Robin Gareus [Sun, 10 Jul 2016 02:02:02 +0000 (04:02 +0200)]
fix plugin bypass -- thinko in
54d8def6
Robin Gareus [Sun, 10 Jul 2016 01:20:35 +0000 (03:20 +0200)]
towards export latency compensation
Robin Gareus [Sun, 10 Jul 2016 00:40:24 +0000 (02:40 +0200)]
align stem-export (raw track outputs (with and w/p processing)
Paul Davis [Sat, 9 Jul 2016 22:19:27 +0000 (18:19 -0400)]
possible fix for off-by-one issue with MIDI binding maps etc.
Paul Davis [Sat, 9 Jul 2016 21:53:17 +0000 (17:53 -0400)]
fix initialization order
Paul Davis [Sat, 9 Jul 2016 21:15:17 +0000 (17:15 -0400)]
const bool METHOD() const makes no sense
Julien "_FrnchFrgg_" RIVAUD [Thu, 7 Jul 2016 17:17:16 +0000 (19:17 +0200)]
Better heuristics for guessing the primary type of an input or output
In order to choose which port name to display (if any) in the button,
MixerStrip::update_io_button() first chose a primary type for the input
or output. It was AUDIO in all cases, except if the route was a
MidiTrack where the primary type was MIDI.
In the latter case, it enabled the following code of update_io_button()
to show the MIDI sources feeding the MidiTrack rather than showing an
unhelpful dash.
But this simple heuristic has several shortcommings:
- Going further, tracks and busses will probably loose strong types so
the approach is not future-proof;
- It doesn't take midi busses into account, yet there is no reason for
them to be handled differently than midi tracks;
- It falls short when the midi track contains a synthesiser and is
meant to output audio.
Improve the heuristics by choosing the data type as follows:
A) If there are connected audio ports, consider audio as primary type.
B) Else, if there are connected midi ports, consider midi as primary type.
C) If there are audio ports, consider audio as primary type.
D) Else, if there are midi ports, consider midi as primary type.
These new heuristics give the same results for audio tracks and busses
(whose audio inputs have not been removed), and the same result for the
input of midi tracks (again, provided the inputs have not been tampered
with). It improves the situation for inputs of midi busses, and output
of midi tracks and busses, especially when synthesisers are in use.
Julien "_FrnchFrgg_" RIVAUD [Thu, 7 Jul 2016 17:12:23 +0000 (19:12 +0200)]
update_io_button: store input() or output() in a variable
This avoids repeating "if (for_input)" checks.
Robin Gareus [Sat, 9 Jul 2016 16:31:40 +0000 (18:31 +0200)]
better safe than sorry
nick_m [Sat, 9 Jul 2016 16:11:36 +0000 (02:11 +1000)]
Revert incorrect 'optimisation' from
4f7a4cd2333.
- fixes regression in stacked layering display.
nick_m [Sat, 9 Jul 2016 15:50:38 +0000 (01:50 +1000)]
Minimise duplicate calls to CairoWidget::set_dirty() in the editor summary.
- many regions may be changed by one operation.
nick_m [Thu, 7 Jul 2016 16:45:07 +0000 (02:45 +1000)]
Edit note dialog fixes.
- position display is session-relative
- Add missing undo to note edit.
nick_m [Thu, 7 Jul 2016 12:37:28 +0000 (22:37 +1000)]
Always set the musical position in Region::recompute_position_from_lock_style().
nick_m [Tue, 5 Jul 2016 18:36:48 +0000 (04:36 +1000)]
Fix missing note divisor when creating regions, ensure an existing musical time is not altered.
nick_m [Tue, 5 Jul 2016 16:03:06 +0000 (02:03 +1000)]
Midi note resizing uses exact beat.
nick_m [Tue, 5 Jul 2016 14:18:09 +0000 (00:18 +1000)]
Use exact beat when adding midi notes.
nick_m [Mon, 4 Jul 2016 15:11:48 +0000 (01:11 +1000)]
Simplify Editor::mouse_add_new_meter_event() a bit.
nick_m [Mon, 4 Jul 2016 15:10:14 +0000 (01:10 +1000)]
Tempo map updates.
- cleanup audio-locked meter removal code
- recompute and warn if map is left unsolved due to adding a metric
- handle corner case wrt overlapping audio-locked musical sections.
nick_m [Sun, 3 Jul 2016 15:45:41 +0000 (01:45 +1000)]
Fix long-standing spelling bug.
- should be a no-op.
nick_m [Sun, 3 Jul 2016 15:21:36 +0000 (01:21 +1000)]
Fix missing tempi recompute, improve adding meter/tempo failure.
nick_m [Sun, 3 Jul 2016 15:12:55 +0000 (01:12 +1000)]
Stop passing references to things that may disappear when a metric section is replaced.
nick_m [Fri, 1 Jul 2016 19:38:25 +0000 (05:38 +1000)]
Fail properly when adding a new audio locked meter's tempo.
nick_m [Fri, 1 Jul 2016 19:35:27 +0000 (05:35 +1000)]
Check meter/tempo section exists in copy drag.
nick_m [Fri, 1 Jul 2016 17:06:49 +0000 (03:06 +1000)]
Indicate meter frame even when adding a music-locked meter from the gui.
nick_m [Fri, 1 Jul 2016 17:04:55 +0000 (03:04 +1000)]
Fix broken meter manipulation in exact_beat.
nick_m [Tue, 28 Jun 2016 19:23:52 +0000 (05:23 +1000)]
Back to using exact beats for midi region start_beats calculation when trimming.
- seems to work quite well, but not tested on live recording.
nick_m [Tue, 28 Jun 2016 18:06:33 +0000 (04:06 +1000)]
Fix bad comment.
nick_m [Tue, 28 Jun 2016 17:46:26 +0000 (03:46 +1000)]
Use frame-based (non-exact) beat calculation to set new start in midi region trim.
nick_m [Tue, 28 Jun 2016 15:19:59 +0000 (01:19 +1000)]
Experimental patch to ensure playback buffer bounds use minimal beat->frame rounding.
nick_m [Sun, 26 Jun 2016 18:35:16 +0000 (04:35 +1000)]
AudioPlaylist doesn't double-notify that contents have changed if bounds have changed.
nick_m [Sun, 26 Jun 2016 18:31:25 +0000 (04:31 +1000)]
AudioRegionView - don't do coverage frames unless we're in stacked mode.
nick_m [Sun, 26 Jun 2016 18:29:41 +0000 (04:29 +1000)]
Editor region list only updates columns that have changed,
nick_m [Sat, 25 Jun 2016 20:22:09 +0000 (06:22 +1000)]
Remove extra ContentsChanged signal on tempo map change.
nick_m [Sat, 25 Jun 2016 13:28:05 +0000 (23:28 +1000)]
Make bbt ruler visible in default session.
nick_m [Fri, 24 Jun 2016 19:22:57 +0000 (05:22 +1000)]
Fix note trimming over tempo changes, correct note length properly when resizing midi region.
nick_m [Fri, 24 Jun 2016 16:54:37 +0000 (02:54 +1000)]
Restore earlier midi region trim display.
nick_m [Fri, 24 Jun 2016 14:36:58 +0000 (00:36 +1000)]
Exact beat for added regions.
nick_m [Fri, 24 Jun 2016 14:34:59 +0000 (00:34 +1000)]
Only update midi regions having a playlist after tempo map change, fix 0 length regions from drawing tool.
nick_m [Fri, 24 Jun 2016 14:08:40 +0000 (00:08 +1000)]
Avoid the use of dynamic_cast in TempoMap for performance improvement.
- review / comment would be appreciated here.
nick_m [Fri, 24 Jun 2016 14:05:23 +0000 (00:05 +1000)]
Use Note::set (Rect) for speed improvement when rendering notes.
nick_m [Fri, 24 Jun 2016 14:04:04 +0000 (00:04 +1000)]
Add Note::set (Rect) for optimisation purposes (minimise begin/end changes)
nick_m [Tue, 21 Jun 2016 14:50:49 +0000 (00:50 +1000)]
Temporary work-around for note colour.
nick_m [Tue, 21 Jun 2016 13:58:30 +0000 (23:58 +1000)]
Make TempoMap::bbt_at_frame() more efficient.
- should be a no-op
nick_m [Tue, 21 Jun 2016 13:55:28 +0000 (23:55 +1000)]
Show correct bbt representation of region length in region list.
- fixes single-tempo assumption.
nick_m [Tue, 21 Jun 2016 12:04:06 +0000 (22:04 +1000)]
Improve performance of automation range moves.
nick_m [Mon, 20 Jun 2016 14:50:23 +0000 (00:50 +1000)]
Quick fix to get trim working again (bahaving oddly during trim right now)
nick_m [Sun, 19 Jun 2016 18:21:33 +0000 (04:21 +1000)]
Fix ordering thinko in note selected colour.
nick_m [Sun, 19 Jun 2016 16:41:52 +0000 (02:41 +1000)]
Complete the task of Playlist::flush_notifications ()