Paul Davis
8e6b248938
fix compilation error with older libstdc++
2017-08-20 15:08:55 -04:00
Paul Davis
6bbfc5a460
various changes, improvements and fixes for Beatbox API and implementation
2017-08-20 12:05:17 -04:00
Paul Davis
592175ab80
fix/improve HSV shade algorithm implementation
2017-08-20 09:30:00 -04:00
Paul Davis
7f6b6eef4f
add whitespace
2017-08-19 19:36:28 -04:00
Paul Davis
0140cd3796
fix off-by-one BBT time confusion and lack of note data
2017-08-19 19:36:10 -04:00
Paul Davis
fec260d97b
fix object vs pointer confusion
2017-08-19 19:35:48 -04:00
Paul Davis
2d12b84886
thread-safe event pool for beatbox, plus API to inject events from other threads
2017-08-19 18:11:45 -04:00
Paul Davis
8634d0d23d
don't try to redraw null parent of a canvas item
2017-08-19 16:24:46 -04:00
Paul Davis
671808b8ec
use existing API to insert beatbox output events into the buffer at the right time
2017-08-18 18:33:44 -04:00
Paul Davis
cb9521ff62
add copyright
2017-08-18 18:21:24 -04:00
Paul Davis
af391b7fc7
copyright date fix
2017-08-18 18:18:52 -04:00
Paul Davis
6908eb748b
reorder input & output stages of beatbox, to deal with different semantics compared to JACK ports.
...
Still needs some kind of intermediate buffer so that we can sort output events in among the input ones
2017-08-18 18:17:29 -04:00
Paul Davis
c762e6703e
basic skeleton for beatbox processor
2017-08-18 17:17:48 -04:00
Paul Davis
582dabb7d8
NOOP: formatting
2017-08-18 12:17:24 -04:00
Paul Davis
b45160a833
::find_next_event() does not need to be a pure virtual in ControlSet (it can originate in AutomatableSequence)
2017-08-18 12:17:03 -04:00
Paul Davis
9bdfcdb548
remove locate debugging output
2017-08-17 10:38:46 -04:00
Paul Davis
8211f591fe
fix for loading older sessions, where the rest for "is-track" was "has-diskstream", rather than "has-playlist"
2017-08-17 10:33:38 -04:00
Robin Gareus
8688702ba6
Don't build ni-maschine support by default
...
While the pads work, overall integration is still not present, mainly
because the device does not lend itself for editing & mixing in a
DAW environment.
2017-08-17 03:28:33 +02:00
Robin Gareus
695cac124f
Maschine2 UI: basic widgets
2017-08-17 02:26:30 +02:00
Robin Gareus
29230ec780
Skeleton for NI Maschine2 Surface
2017-08-17 02:26:03 +02:00
Paul Davis
d10265de8a
sort of no-op ... remove debug output ... just basically put it in git so that i can fetch it on another machine
2017-08-16 15:30:41 -04:00
Paul Davis
2b97a34d76
reinstate "restart seek" behaviour but use a new Session::_seek_counter member variable for this
2017-08-16 15:30:41 -04:00
Paul Davis
d5b65ac20f
no more locate-restart based on mismatch transport_frame and locate target
2017-08-16 15:30:41 -04:00
Paul Davis
6fdb08eca3
remove tests for locate_pending() before deciding whether to increment transport position
2017-08-16 15:30:41 -04:00
Paul Davis
d16c3af508
more verbose debug output for slave debugging
2017-08-16 15:30:41 -04:00
Paul Davis
6d386c0094
verbose debug output for slave debugging
2017-08-16 15:30:41 -04:00
Paul Davis
bfc1518d7c
attempt fix for LTC slave when locating
2017-08-16 15:30:41 -04:00
Paul Davis
173e472f99
delete slave during Session::destroy
2017-08-16 15:30:41 -04:00
Paul Davis
9fc6136b07
fix logic error that prevent input monitoring during slave wait states
2017-08-16 15:30:41 -04:00
Paul Davis
e732311cde
don't attempt MIDI playback if there are no MIDI buffers provided for processing
2017-08-16 15:30:41 -04:00
Paul Davis
25f1eddb4d
additional DEBUG_TRACE output for slave/diskreader
2017-08-16 15:30:41 -04:00
Paul Davis
f1eba95062
reset DiskReader "no disk output" flag in a couple of exceptional cases
2017-08-16 15:30:41 -04:00
Paul Davis
13dd562a00
remove debug output
2017-08-16 15:30:41 -04:00
Paul Davis
f2122b5904
Non-layered MIDI recording
...
hand-adapted version of d977cc3238 from master
This does not merge MIDI data, but trims MIDI regions at rec-stop like
non-layered audio-recording does.
2017-08-16 15:30:41 -04:00
Paul Davis
57e8d7983d
remove debug output
2017-08-16 15:30:41 -04:00
Paul Davis
c508d079bc
when calculating average slave/master delta, use absolute value.
...
We're interested in average distance between slave/master, the direction is irrelevant and
using sign as direction causes the computed average to be absurd
2017-08-16 15:30:41 -04:00
Paul Davis
15675e8e80
remove all code related to "silent roll" concept. some debug output added
2017-08-16 15:30:41 -04:00
Paul Davis
6ebfbe1b1d
NO-OP: mark various state property names as explicitly non-translated
2017-08-16 15:29:52 -04:00
Paul Davis
2af1742e9d
move disk_{writer,reader} into Route to allow for simple, sensible implementation of DiskIOPoint
2017-08-16 15:29:52 -04:00
Paul Davis
e1f6f14b73
don't (re)create disk reader/writer if they already exist
2017-08-16 15:29:52 -04:00
Paul Davis
cfa829977a
auditioner always runs at normal speed, independent of transport speed
2017-08-16 15:29:52 -04:00
Paul Davis
0ed07af7a5
add to LUA API (new Stripable API)
2017-08-16 15:29:52 -04:00
Paul Davis
0829172faf
use const
2017-08-16 15:29:52 -04:00
Paul Davis
0644ad0879
remove unused + commented line
2017-08-16 15:29:52 -04:00
Paul Davis
115ac9f12c
subtle change to _need_butler logic to ensure correct result in mixed-type contexts
2017-08-16 15:29:52 -04:00
Paul Davis
673641335c
reinstate use of a MidiTrack's MIDI filter when reading from disk
2017-08-16 15:29:52 -04:00
Paul Davis
f4fa21333e
channel config changes during ::configure_io() must be scoped to ensure they are complete before signals are sent
2017-08-16 15:29:52 -04:00
Paul Davis
2fb952675e
move _file_frame from DiskIOProcessor into DiskReader (only place where it is needed); split into by-type array to deal with different rate of audio & MIDI i/o
2017-08-16 15:29:52 -04:00
Paul Davis
1d47939a4a
MidiTrack needs to set it's "need butler" status
2017-08-16 15:29:52 -04:00
Paul Davis
9235cca73e
use a more useful and accurate heuristic to get ::input_streams() for the auditioner
2017-08-16 15:29:52 -04:00