13
0
Commit Graph

22654 Commits

Author SHA1 Message Date
a369db5600 another lua DSP example 2016-11-09 13:06:01 +01:00
c61373212a Support multiple readers for MIDI source/model
Fixes the multiple reader issue #6541 properly without resorting to a
linear search kludge.

All the read state has been pulled out into a MidiCursor which the
caller is required to pass.  The playlist keeps cursors for all the
regions it is reading, any number of cursors are allowed at a time.

MidiCursor should probably be made a smarter and more fool-proof
object (and/or possibly merged with some of the other tracker/fixer
stuff) but for now I wanted to keep it simple.
2016-11-08 20:34:45 -05:00
72297c0ca3 Remove dead code 2016-11-08 13:52:44 -05:00
5438c94765 Honor VST "Synth" Category for now...
..until we find a backwards compatible way to save/load effFlagsIsSynth
in the cache info files.
2016-11-08 13:30:09 +01:00
6fb099a88b make auto track naming make a bit more sense 2016-11-07 11:08:00 -08:00
b63af3162e Set session dirty if tracks are reordered by user. 2016-11-07 08:29:34 -08:00
ea10a896c6 Fix LV2 state:StateChanged URI 2016-11-07 07:10:08 -05:00
932cc4d347 One more piece to the moving master puzzle. 2016-11-06 21:59:33 -08:00
91c2527f5c OSC: Fix default strip types to include Auxes. 2016-11-04 12:10:37 -07:00
1457050d7a Fix Drifting Master hopefully for real this time. 2016-11-04 08:39:41 -07:00
8fb8e1bbde make ControlProtocolManager actually handle control protocols that fail to activate 2016-11-03 20:24:09 +00:00
3abdef2637 fix LTC-generator 24h wraparound 2016-11-02 19:24:46 +01:00
da32ae4e1f prevent infinite loop when calculating tick marks on low zoom levels 2016-11-02 17:54:24 +01:00
f09e9347e1 update lua script to follow API change (bb459a2e7d) 2016-10-31 15:27:25 +01:00
77c9106769 OSC: Make Aux buses able to be separate. 2016-10-30 17:50:38 -07:00
3f0130f8ea Fix crash when instrument instantiation fails on track creation. 2016-10-31 00:35:53 +01:00
a994fd30bd extend Mixbus' "Safe Mode" 2016-10-30 22:25:18 +01:00
e08c80370c Fix midnam replacement:
Unloading before update may otherwise reset the patch to
generic midi (when the current patch is no longer available)
2016-10-30 21:24:26 +01:00
2a0aadfd97 remove debug output 2016-10-30 17:39:55 +01:00
db2d238cec Update prototype API (3f739738) for windows/dll compat
memory allocated by a .dll must be free()d by the given dll.
2016-10-30 17:39:55 +01:00
9773cfa926 Drop UpdateMidnam shared_ptr reference when the plugin is removed 2016-10-30 17:39:55 +01:00
997b48baf7 Fix moving master 2016-10-30 06:48:05 -07:00
0ea9270a4b avoid C++11 (and remove debug output) 2016-10-30 04:51:31 +01:00
cfafb01b32 GUI support for plugin provided midnam 2016-10-29 19:57:43 +02:00
3f73973806 Prototype LV2 extension for plugins to provide Midnams 2016-10-29 19:57:43 +02:00
f8167ebe20 Prepare for the day when MTAV does no longer force-override InstrumentInfo 2016-10-29 19:57:43 +02:00
0332c127cd Allow to dynamically un/load Midnam Patches 2016-10-29 19:57:43 +02:00
06700cb2f4 Allow to construct a XML tree from a text buffer 2016-10-29 19:57:43 +02:00
5ed764178a Fix crash with empty patch-names.
An empty text will not produce a bounding box.
2016-10-29 19:57:43 +02:00
c5d4900ea4 a-fluidsynth: fix off-by one. Assign all MIDI channels if possible 2016-10-29 19:57:43 +02:00
9d63002d2f OSC: Slow down data storm at surface refresh 2016-10-29 10:56:44 -07:00
82d3842656 OSC: Add names/fader value to master and monitor. 2016-10-28 17:34:17 -07:00
e631119092 OSC: simplify int sends too. 2016-10-28 15:05:40 -07:00
d802c982cb OSC: More simplification - floats this time. 2016-10-28 14:42:56 -07:00
4eb2da491f OSC: simplify Global feedback (remove repetitive code) 2016-10-28 13:45:30 -07:00
8de0788f7b yet another waf/HIDAPI tweak 2016-10-27 15:57:47 +02:00
01747f54d8 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.
2016-10-27 03:33:51 +02:00
8d70b76059 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.
2016-10-26 12:03:17 +10:00
0e65852901 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.
2016-10-25 22:33:37 +02:00
nick_m
24846f478b 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.
2016-10-26 04:52:09 +11:00
nick_m
927b16aa53 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.
2016-10-25 04:36:34 +11:00
nick_m
dfb0868847 make MidiRegion::start/length_beats() const. 2016-10-25 04:15:50 +11:00
nick_m
ce3ae4cdc9 remove unnecessary rounding from MidiSource::midi_read()
- we already have start_beats, so don't try to recalculate
	  something similar for the position comparison.
2016-10-25 04:14:14 +11:00
nick_m
20d02c4c68 expand on existing tempo tests. 2016-10-25 04:02:58 +11:00
nick_m
509d938b04 Don't recalculate region beat position on session load, fix AudioTime thinko. 2016-10-25 03:59:13 +11:00
5743013ae4 OSC fix debug logic for catchall messages 2016-10-23 19:00:20 -07:00
dd015e09a7 OSC Accept int in first parameter in path commands as well as float. 2016-10-23 18:45:25 -07:00
53e9337eba Fix HIDAPI optional (python: False vs 'False') 2016-10-24 00:51:51 +02:00
c78824aef5 Include hidapi library 2016-10-23 22:53:10 +02:00
57d1f68cd6 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.
2016-10-23 22:25:40 +02:00