ardour.git
7 years agoFix LV2 state:StateChanged URI
David Robillard [Mon, 7 Nov 2016 01:27:55 +0000 (20:27 -0500)]
Fix LV2 state:StateChanged URI

7 years agoOne more piece to the moving master puzzle.
Len Ovens [Mon, 7 Nov 2016 05:59:33 +0000 (21:59 -0800)]
One more piece to the moving master puzzle.

7 years agoOSC: Fix default strip types to include Auxes.
Len Ovens [Fri, 4 Nov 2016 19:10:37 +0000 (12:10 -0700)]
OSC: Fix default strip types to include Auxes.

7 years agoFix Drifting Master hopefully for real this time.
Len Ovens [Fri, 4 Nov 2016 15:39:41 +0000 (08:39 -0700)]
Fix Drifting Master hopefully for real this time.

7 years agomake ControlProtocolManager actually handle control protocols that fail to activate
Paul Davis [Thu, 3 Nov 2016 20:23:40 +0000 (20:23 +0000)]
make ControlProtocolManager actually handle control protocols that fail to activate

7 years agofix LTC-generator 24h wraparound
Robin Gareus [Wed, 2 Nov 2016 18:24:46 +0000 (19:24 +0100)]
fix LTC-generator 24h wraparound

7 years agoprevent infinite loop when calculating tick marks on low zoom levels
Robin Gareus [Wed, 2 Nov 2016 16:54:24 +0000 (17:54 +0100)]
prevent infinite loop when calculating tick marks on low zoom levels

7 years agoupdate lua script to follow API change (bb459a2e7d)
Robin Gareus [Mon, 31 Oct 2016 14:27:14 +0000 (15:27 +0100)]
update lua script to follow API change (bb459a2e7d)

7 years agoOSC: Make Aux buses able to be separate.
Len Ovens [Mon, 31 Oct 2016 00:50:38 +0000 (17:50 -0700)]
OSC: Make Aux buses able to be separate.

7 years agoFix crash when instrument instantiation fails on track creation.
Robin Gareus [Sun, 30 Oct 2016 23:35:53 +0000 (00:35 +0100)]
Fix crash when instrument instantiation fails on track creation.

7 years agoextend Mixbus' "Safe Mode"
Robin Gareus [Sun, 30 Oct 2016 21:25:18 +0000 (22:25 +0100)]
extend Mixbus' "Safe Mode"

7 years agoFix midnam replacement:
Robin Gareus [Sun, 30 Oct 2016 20:24:26 +0000 (21:24 +0100)]
Fix midnam replacement:

Unloading before update may otherwise reset the patch to
generic midi (when the current patch is no longer available)

7 years agoremove debug output
Robin Gareus [Sun, 30 Oct 2016 16:39:47 +0000 (17:39 +0100)]
remove debug output

7 years agoUpdate prototype API (3f739738) for windows/dll compat
Robin Gareus [Sun, 30 Oct 2016 16:38:24 +0000 (17:38 +0100)]
Update prototype API (3f739738) for windows/dll compat

memory allocated by a .dll must be free()d by the given dll.

7 years agoDrop UpdateMidnam shared_ptr reference when the plugin is removed
Robin Gareus [Sun, 30 Oct 2016 16:35:21 +0000 (17:35 +0100)]
Drop UpdateMidnam shared_ptr reference when the plugin is removed

7 years agoFix moving master
Len Ovens [Sun, 30 Oct 2016 13:48:05 +0000 (06:48 -0700)]
Fix moving master

7 years agoavoid C++11 (and remove debug output)
Robin Gareus [Sun, 30 Oct 2016 03:51:31 +0000 (04:51 +0100)]
avoid C++11 (and remove debug output)

7 years agoGUI support for plugin provided midnam
Robin Gareus [Sat, 29 Oct 2016 17:28:18 +0000 (19:28 +0200)]
GUI support for plugin provided midnam

7 years agoPrototype LV2 extension for plugins to provide Midnams
Robin Gareus [Sat, 29 Oct 2016 17:21:48 +0000 (19:21 +0200)]
Prototype LV2 extension for plugins to provide Midnams

7 years agoPrepare for the day when MTAV does no longer force-override InstrumentInfo
Robin Gareus [Sat, 29 Oct 2016 17:02:33 +0000 (19:02 +0200)]
Prepare for the day when MTAV does no longer force-override InstrumentInfo

7 years agoAllow to dynamically un/load Midnam Patches
Robin Gareus [Sat, 29 Oct 2016 17:01:16 +0000 (19:01 +0200)]
Allow to dynamically un/load Midnam Patches

7 years agoAllow to construct a XML tree from a text buffer
Robin Gareus [Sat, 29 Oct 2016 15:03:34 +0000 (17:03 +0200)]
Allow to construct a XML tree from a text buffer

7 years agoFix crash with empty patch-names.
Robin Gareus [Sat, 29 Oct 2016 01:13:59 +0000 (03:13 +0200)]
Fix crash with empty patch-names.

An empty text will not produce a bounding box.

7 years agoa-fluidsynth: fix off-by one. Assign all MIDI channels if possible
Robin Gareus [Sat, 29 Oct 2016 01:11:49 +0000 (03:11 +0200)]
a-fluidsynth: fix off-by one. Assign all MIDI channels if possible

7 years agoOSC: Slow down data storm at surface refresh
Len Ovens [Sat, 29 Oct 2016 17:56:44 +0000 (10:56 -0700)]
OSC: Slow down data storm at surface refresh

7 years agoOSC: Add names/fader value to master and monitor.
Len Ovens [Sat, 29 Oct 2016 00:34:17 +0000 (17:34 -0700)]
OSC: Add names/fader value to master and monitor.

7 years agoOSC: simplify int sends too.
Len Ovens [Fri, 28 Oct 2016 22:05:40 +0000 (15:05 -0700)]
OSC: simplify int sends too.

7 years agoOSC: More simplification - floats this time.
Len Ovens [Fri, 28 Oct 2016 21:42:56 +0000 (14:42 -0700)]
OSC: More simplification - floats this time.

7 years agoOSC: simplify Global feedback (remove repetitive code)
Len Ovens [Fri, 28 Oct 2016 20:45:30 +0000 (13:45 -0700)]
OSC: simplify Global feedback (remove repetitive code)

7 years agoyet another waf/HIDAPI tweak
Robin Gareus [Thu, 27 Oct 2016 13:57:47 +0000 (15:57 +0200)]
yet another waf/HIDAPI tweak

7 years agoPrevent duplicate moves when selecting regions on shared playlists
Robin Gareus [Thu, 27 Oct 2016 01:32:59 +0000 (03:32 +0200)]
Prevent duplicate moves when selecting regions on shared playlists

selecting regions on multiple tracks which share playlists and
dragging them has various odd side-effects. This prevents the worst
of such edge-cases.

A cleaner solution would be to not allow selecting the same region
on multiple tracks at the same time in the first place.

Comments are welcome.

7 years agoFix restoration of key bindings assigned to Windows+key, bug #7037
Tim Mayberry [Sat, 1 Oct 2016 08:05:11 +0000 (18:05 +1000)]
Fix restoration of key bindings assigned to Windows+key, bug #7037

Windows key generates Mod4+Super (at least with the version of Gdk we use on
linux) so for bindings using the Windows key to work, GDK_SUPER_MASK has to be
added to modifier mask.

7 years agoDesperate hack to align master-bus on export.
Robin Gareus [Tue, 25 Oct 2016 20:33:37 +0000 (22:33 +0200)]
Desperate hack to align master-bus on export.

Another 90% solution which hopefully gives us another year :(
see comments Session::start_audio_export() for explanation.

7 years agoclean up ghost note wrt create drag.
nick_m [Tue, 25 Oct 2016 17:52:09 +0000 (04:52 +1100)]
clean up ghost note wrt create drag.

- hide ghost note when add dragging.

- new note length snaps as per ghost note start (shifted snap).

- prevent ghost note from appearing before region start.

7 years agodon't mix framepos with quarter notes when calculating _start frames.
nick_m [Mon, 24 Oct 2016 17:36:34 +0000 (04:36 +1100)]
don't mix framepos with quarter notes when calculating _start frames.

- quarter note precision is greater than the frame-based
  _position. using it as a reference may cause a rounding error
  if the region is locked to MusicTime.

- also fixes a _start position bug when trimming midi regions.

- we really need a better api for this kind of thing.

- in combination with the previous two patches, this should fix
  various missing first note issues.

7 years agomake MidiRegion::start/length_beats() const.
nick_m [Mon, 24 Oct 2016 17:15:50 +0000 (04:15 +1100)]
make MidiRegion::start/length_beats() const.

7 years agoremove unnecessary rounding from MidiSource::midi_read()
nick_m [Mon, 24 Oct 2016 17:14:14 +0000 (04:14 +1100)]
remove unnecessary rounding from MidiSource::midi_read()

- we already have start_beats, so don't try to recalculate
  something similar for the position comparison.

7 years agoexpand on existing tempo tests.
nick_m [Mon, 24 Oct 2016 17:02:58 +0000 (04:02 +1100)]
expand on existing tempo tests.

7 years agoDon't recalculate region beat position on session load, fix AudioTime thinko.
nick_m [Mon, 24 Oct 2016 16:59:13 +0000 (03:59 +1100)]
Don't recalculate region beat position on session load, fix AudioTime thinko.

7 years agoOSC fix debug logic for catchall messages
Len Ovens [Mon, 24 Oct 2016 02:00:20 +0000 (19:00 -0700)]
OSC fix debug logic for catchall messages

7 years agoOSC Accept int in first parameter in path commands as well as float.
Len Ovens [Mon, 24 Oct 2016 01:45:25 +0000 (18:45 -0700)]
OSC Accept int in first parameter in path commands as well as float.

7 years agoFix HIDAPI optional (python: False vs 'False')
Robin Gareus [Sun, 23 Oct 2016 22:51:51 +0000 (00:51 +0200)]
Fix HIDAPI optional (python: False vs 'False')

7 years agoInclude hidapi library
Robin Gareus [Sun, 23 Oct 2016 20:53:10 +0000 (22:53 +0200)]
Include hidapi library

7 years agoIntroduce "virtual" async MIDI ports
Robin Gareus [Sun, 23 Oct 2016 20:25:40 +0000 (22:25 +0200)]
Introduce "virtual" async MIDI ports

This allows to flush an async MIDI port's ringbuffer at cycle-start,
to makes its data available as "input/source" during process(), while
collecting data in the background for the next cycle.

This facilitates virtual MIDI Ports for eg. Control Surface Pads:
output from a surface, input to Ardour channels.

7 years agoNO-OP: whitespace
Robin Gareus [Sun, 23 Oct 2016 20:18:07 +0000 (22:18 +0200)]
NO-OP: whitespace

7 years agoDon't add initial points for MIDI-CC
Robin Gareus [Sun, 23 Oct 2016 12:20:48 +0000 (14:20 +0200)]
Don't add initial points for MIDI-CC

eg. import a .mid that has a CC later in the file.
Arodur wrongly added an initial point, effectively moving the event
backwards to "0" (no virgin territory)

7 years agowhen fetching MIDI ports for bundles and auto-connection, ignore control-only (and...
Paul Davis [Fri, 21 Oct 2016 20:32:46 +0000 (16:32 -0400)]
when fetching MIDI ports for bundles and auto-connection, ignore control-only (and "virtual") MIDI ports

"virtual" is a placeholder name for ALSA sequencer MIDI through ports

7 years agoremove debug output
Paul Davis [Fri, 21 Oct 2016 20:31:53 +0000 (16:31 -0400)]
remove debug output

7 years agominor code-tidying tweak - continue if port handle is null, rather than nest inside...
Paul Davis [Fri, 21 Oct 2016 20:31:16 +0000 (16:31 -0400)]
minor code-tidying tweak - continue if port handle is null, rather than nest inside conditional

7 years agovamp_audio_to_midi script now operates on a list of regions, calling qm-transcription...
Nathan Stewart [Fri, 21 Oct 2016 04:36:13 +0000 (00:36 -0400)]
vamp_audio_to_midi script now operates on a list of regions, calling qm-transcription for each region. The MIDI region holding the output is resized to the extents of the audio region list. This is because qm-transcription is a memory hog and barfs if you try to process too big a region.

7 years agoTrack Insert/Remove Time dialog:
Ben Loftis [Thu, 20 Oct 2016 21:18:19 +0000 (16:18 -0500)]
Track Insert/Remove Time dialog:
 Disambiguate "glued" -> glued-to-musical-time (MIDI) regions.
 *Users didn't know that this is necessary to operate on MIDI regions.

7 years agoTrack Insert/Remove dialog improvements:
Ben Loftis [Thu, 20 Oct 2016 19:59:48 +0000 (14:59 -0500)]
Track Insert/Remove dialog improvements:
 By default, enable glued regions and markers.
 If you are removing time, you probably want MIDI regions to move.

7 years agoTrack Add/Remove Time dialog improvements:
Ben Loftis [Thu, 20 Oct 2016 19:53:34 +0000 (14:53 -0500)]
Track Add/Remove Time dialog improvements:
 Add a clock to show the position of the edit, to remove ambiguity
 If a Range is selected, pre-fill the position and length clocks
 Clock format should default to the editor's secondary clock mode

7 years agouse new API for user-provided MIDI port information
Paul Davis [Thu, 20 Oct 2016 20:34:45 +0000 (16:34 -0400)]
use new API for user-provided MIDI port information

7 years agoinfrastructure for save/restore of MIDI port user-provided information
Paul Davis [Thu, 20 Oct 2016 20:34:06 +0000 (16:34 -0400)]
infrastructure for save/restore of MIDI port user-provided information

7 years agoGUI tweaks for MIDI port options
Paul Davis [Thu, 20 Oct 2016 15:34:26 +0000 (11:34 -0400)]
GUI tweaks for MIDI port options

7 years agotweak logic for MIDI input follows selection
Paul Davis [Thu, 20 Oct 2016 15:34:14 +0000 (11:34 -0400)]
tweak logic for MIDI input follows selection

7 years agoInsertRemoveTimeDialog initially ignores mouse edit position. also do this for distan...
nick_m [Thu, 20 Oct 2016 15:50:35 +0000 (02:50 +1100)]
InsertRemoveTimeDialog initially ignores mouse edit position. also do this for distance calculation.

7 years agobbt duration clock tweak.
nick_m [Thu, 20 Oct 2016 15:49:04 +0000 (02:49 +1100)]
bbt duration clock tweak.

7 years agoRemove some (no longer needed) source files from our MSVC project (gtk2_ardour)
John Emmas [Thu, 20 Oct 2016 15:16:27 +0000 (16:16 +0100)]
Remove some (no longer needed) source files from our MSVC project (gtk2_ardour)

7 years agoMIDI port options now tracks dynamic port register/unregister
Paul Davis [Thu, 20 Oct 2016 14:21:44 +0000 (10:21 -0400)]
MIDI port options now tracks dynamic port register/unregister

7 years agoadd mcp device files for artist series controllers
Ben Loftis [Thu, 20 Oct 2016 04:00:05 +0000 (23:00 -0500)]
add mcp device files for artist series controllers

7 years agoslight improvements in logic for midi-input-follows-selection
Paul Davis [Thu, 20 Oct 2016 03:17:39 +0000 (23:17 -0400)]
slight improvements in logic for midi-input-follows-selection

7 years agoadd PortManager::disconnect (std::string const&)
Paul Davis [Thu, 20 Oct 2016 03:17:08 +0000 (23:17 -0400)]
add PortManager::disconnect (std::string const&)

7 years agovarious tweaks to improve the preferences presentation of midi-input-follows-selection
Paul Davis [Thu, 20 Oct 2016 02:35:05 +0000 (22:35 -0400)]
various tweaks to improve the preferences presentation of midi-input-follows-selection

7 years agoneed to refill treeviews for MIDI port prefs at least once
Paul Davis [Wed, 19 Oct 2016 21:49:29 +0000 (17:49 -0400)]
need to refill treeviews for MIDI port prefs at least once

7 years agomove MIDI port options out of engine dialog and into prefs
Paul Davis [Wed, 19 Oct 2016 21:44:54 +0000 (17:44 -0400)]
move MIDI port options out of engine dialog and into prefs

7 years agoinfrastructure for MIDI-input-follows-selection
Paul Davis [Wed, 19 Oct 2016 21:17:30 +0000 (17:17 -0400)]
infrastructure for MIDI-input-follows-selection

7 years agobasics of following MIDI track selection and rewiring input
Paul Davis [Wed, 19 Oct 2016 19:13:32 +0000 (15:13 -0400)]
basics of following MIDI track selection and rewiring input

7 years agoNOOP: whitespacing tweak
Paul Davis [Wed, 19 Oct 2016 19:13:09 +0000 (15:13 -0400)]
NOOP: whitespacing tweak

7 years agobasics of managing a list of port names for MIDI-input-follows-selection
Paul Davis [Wed, 19 Oct 2016 19:12:49 +0000 (15:12 -0400)]
basics of managing a list of port names for MIDI-input-follows-selection

7 years agoUse official LV2 state:StateChanged URI
Robin Gareus [Wed, 19 Oct 2016 17:45:35 +0000 (19:45 +0200)]
Use official LV2 state:StateChanged URI

http://lv2plug.in/git/cgit.cgi/lv2.git/commit/?id=dbb18d82136d43eec435e321bffa835ba5776d6e

7 years agoWork around OSX MIDI devices that send no timestamps
Robin Gareus [Wed, 19 Oct 2016 17:10:18 +0000 (19:10 +0200)]
Work around OSX MIDI devices that send no timestamps

7 years agobbt duration clock - revert 3d38b4f58ec0 and a32aea4201. use an alternate fix.
nick_m [Wed, 19 Oct 2016 16:40:06 +0000 (03:40 +1100)]
bbt duration clock - revert 3d38b4f58ec0 and a32aea4201. use an alternate fix.

7 years agoDuration clock edit uses current time to resolve meter.
nick_m [Wed, 19 Oct 2016 12:09:24 +0000 (23:09 +1100)]
Duration clock edit uses current time to resolve meter.

- should fix the remaining part of #7072

7 years agoset up MIDI port treeview columns *just once*
Paul Davis [Wed, 19 Oct 2016 01:18:32 +0000 (21:18 -0400)]
set up MIDI port treeview columns *just once*

7 years agocorrectly show both the old MIDI setup tab (device oriented) and the new one (port...
Paul Davis [Tue, 18 Oct 2016 22:14:00 +0000 (18:14 -0400)]
correctly show both the old MIDI setup tab (device oriented) and the new one (port oriented)

7 years agofurther work on a MIDI port functionality dialog
Paul Davis [Tue, 18 Oct 2016 22:00:55 +0000 (18:00 -0400)]
further work on a MIDI port functionality dialog

7 years agoAdd tooltip info for inline-display
Robin Gareus [Tue, 18 Oct 2016 21:40:14 +0000 (23:40 +0200)]
Add tooltip info for inline-display

7 years agobeginnings of a tab in Audio/MIDI setup to manage MIDI port functionality
Paul Davis [Tue, 18 Oct 2016 20:56:35 +0000 (16:56 -0400)]
beginnings of a tab in Audio/MIDI setup to manage MIDI port functionality

7 years agoremove unnecessary and now impossible #include
Paul Davis [Tue, 18 Oct 2016 20:56:28 +0000 (16:56 -0400)]
remove unnecessary and now impossible #include

7 years agoremove unusued and useless midi_port_dialog.{cc,h} files
Paul Davis [Tue, 18 Oct 2016 20:53:54 +0000 (16:53 -0400)]
remove unusued and useless midi_port_dialog.{cc,h} files

7 years agofix retrieval of port properties (metadata) when the value has no type
Paul Davis [Tue, 18 Oct 2016 20:45:39 +0000 (16:45 -0400)]
fix retrieval of port properties (metadata) when the value has no type

7 years agofix link in manpage
Robin Gareus [Tue, 18 Oct 2016 20:25:10 +0000 (22:25 +0200)]
fix link in manpage

7 years agoProcessor box interaction:
Robin Gareus [Tue, 18 Oct 2016 20:25:02 +0000 (22:25 +0200)]
Processor box interaction:

Allow to toggle inline display with tertiary + double-click.
also fix tooltip and fix inconsistent modifiers on inline display.

7 years agoTempo lines drawing performance tweak.
nick_m [Tue, 18 Oct 2016 18:56:26 +0000 (05:56 +1100)]
Tempo lines drawing performance tweak.

7 years agoTempo line tweaks.
nick_m [Tue, 18 Oct 2016 18:10:15 +0000 (05:10 +1100)]
Tempo line tweaks.

- ensure lines don't get too dense in the all bars case.

- never draw tick divisions in the all bar case.

7 years agoImprove bbt ruler drawing performance for large time ranges.
nick_m [Tue, 18 Oct 2016 16:56:43 +0000 (03:56 +1100)]
Improve bbt ruler drawing performance for large time ranges.

- when the timeline displays many bars, zoom/autoscroll
  speed is improved by calculating the bbt ruler scale first
  then requesting a suitably scaled grid.

7 years agoWarn about skipped MIDI events
David Robillard [Mon, 17 Oct 2016 23:47:56 +0000 (19:47 -0400)]
Warn about skipped MIDI events

This can occur when the MIDI readahead time is too low and events get
pushed into the MidiRingBuffer after the corresponding read.  In this
case, skip_to() gets called (as it does before every read) and the
events are silently dropped.

This is a Very Bad Thing(TM), so warn about it.  I am not sure which
other scenarios can skip events that aren't problematic, but there's
probably some.  A more sophisticated detection/reporting (or maybe even
dynamic reconfiguration) scheme would be nice here, but some false
positive messages are at least better than silently failing to play
notes and the like.

7 years agoClean up MIDI debugging output
David Robillard [Mon, 17 Oct 2016 23:47:39 +0000 (19:47 -0400)]
Clean up MIDI debugging output

7 years agospelling corrections from Jaromír Mikeš <mira.mikes@seznam.cz>
Paul Davis [Mon, 17 Oct 2016 21:57:39 +0000 (17:57 -0400)]
spelling corrections from  Jaromír Mikeš <mira.mikes@seznam.cz>

Corresponds to https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/tree/debian/patches/0070-spelling.patch

7 years agoreset peak meters used in push2 when stripable goes away
Paul Davis [Mon, 17 Oct 2016 19:58:30 +0000 (15:58 -0400)]
reset peak meters used in push2 when stripable goes away

7 years agoremove unused variable
Paul Davis [Mon, 17 Oct 2016 19:58:02 +0000 (15:58 -0400)]
remove unused variable

7 years agoInitialize uninitialized member variables in ctor - warning suppression
Nathan Stewart [Mon, 17 Oct 2016 17:06:02 +0000 (13:06 -0400)]
Initialize uninitialized member variables in ctor - warning suppression

7 years agofast region export -- don't call process()
Robin Gareus [Mon, 17 Oct 2016 19:34:40 +0000 (21:34 +0200)]
fast region export -- don't call process()

7 years agoremove unused variable
Robin Gareus [Mon, 17 Oct 2016 19:22:32 +0000 (21:22 +0200)]
remove unused variable

7 years agofix potentially crash-inducing race condition by removing event loops' x-thread chann...
Paul Davis [Mon, 17 Oct 2016 18:48:15 +0000 (14:48 -0400)]
fix potentially crash-inducing race condition by removing event loops' x-thread channel from an event loop when it is destroyed

7 years agoremove debug output
Paul Davis [Mon, 17 Oct 2016 17:41:22 +0000 (13:41 -0400)]
remove debug output

7 years agopropagate key press events through the widget heirarchy + custom ardour bindings...
Paul Davis [Mon, 17 Oct 2016 17:30:15 +0000 (13:30 -0400)]
propagate key press events through the widget heirarchy + custom ardour bindings, not just focus widget-then-global bindings

7 years agofix thinko in d2835bc80 (re-enables mute, solo and likely other automation controls)
Paul Davis [Mon, 17 Oct 2016 17:19:42 +0000 (13:19 -0400)]
fix thinko in d2835bc80 (re-enables mute, solo and likely other automation controls)