Paul Davis
cd5520be1e
don't attempt MIDI playback if there are no MIDI buffers provided for processing
2017-08-16 15:10:55 -04:00
Paul Davis
ac545a7172
additional DEBUG_TRACE output for slave/diskreader
2017-08-16 15:10:55 -04:00
Paul Davis
aaf519c239
reset DiskReader "no disk output" flag in a couple of exceptional cases
2017-08-16 15:10:55 -04:00
Paul Davis
9e756c5636
remove debug output
2017-08-16 15:10:55 -04:00
Paul Davis
b5ab2d6031
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:10:55 -04:00
Paul Davis
3649494e15
remove debug output
2017-08-16 15:10:55 -04:00
Paul Davis
daf0c05bb2
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:10:55 -04:00
Paul Davis
b55e992e1d
remove all code related to "silent roll" concept. some debug output added
2017-08-16 15:10:54 -04:00
Paul Davis
b76175b3fc
bump session file version
2017-08-16 15:10:31 -04:00
Paul Davis
a90f029959
NO-OP: mark various state property names as explicitly non-translated
2017-08-16 15:10:31 -04:00
Paul Davis
8d5182569a
move disk_{writer,reader} into Route to allow for simple, sensible implementation of DiskIOPoint
2017-08-16 15:10:31 -04:00
Paul Davis
d137daedcd
don't (re)create disk reader/writer if they already exist
2017-08-16 15:10:31 -04:00
Paul Davis
3fff121ab6
auditioner always runs at normal speed, independent of transport speed
2017-08-16 15:10:31 -04:00
Paul Davis
7df044595f
add to LUA API (new Stripable API)
2017-08-16 15:10:31 -04:00
Paul Davis
90b8164557
use const
2017-08-16 15:10:31 -04:00
Paul Davis
0998dc9ebd
remove unused + commented line
2017-08-16 15:10:31 -04:00
Paul Davis
9dfe324baf
subtle change to _need_butler logic to ensure correct result in mixed-type contexts
2017-08-16 15:10:31 -04:00
Paul Davis
b6948d9cd2
reinstate use of a MidiTrack's MIDI filter when reading from disk
2017-08-16 15:10:31 -04:00
Paul Davis
b8f16a16d0
channel config changes during ::configure_io() must be scoped to ensure they are complete before signals are sent
2017-08-16 15:10:31 -04:00
Paul Davis
9ce5ac9678
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:10:31 -04:00
Paul Davis
21e3b3489d
MidiTrack needs to set it's "need butler" status
2017-08-16 15:10:31 -04:00
Paul Davis
d1474dd512
use a more useful and accurate heuristic to get ::input_streams() for the auditioner
2017-08-16 15:10:31 -04:00
Paul Davis
b9a3e04bc4
clear regions from "other" playlist type in auditioner when starting a new audition
2017-08-16 15:10:31 -04:00
Paul Davis
f4da615b3a
auditioner does not care about the state of its diskwriter processor
2017-08-16 15:10:31 -04:00
Paul Davis
b153ccfcba
change callers of changed Track::use_new_playlist() API and its implementation
2017-08-16 15:10:31 -04:00
Paul Davis
c96edab710
remove Auditioner::prepare_playlist() - not used
2017-08-16 15:10:31 -04:00
Paul Davis
bf25a30331
add Track::use_default_new_playlist()
2017-08-16 15:10:31 -04:00
Paul Davis
aabef22c31
remove Track::hidden(); replace with Stripable::is_private_route()
2017-08-16 15:10:31 -04:00
Paul Davis
2ef1128b81
emit required signal
2017-08-16 15:10:31 -04:00
Paul Davis
d77488b45d
mechanism to allow Track (or other Route-derived type) to add its own processors at the right time
2017-08-16 15:10:31 -04:00
Paul Davis
4604fcd089
add enum registration for DiskIOPoint
2017-08-16 15:10:31 -04:00
Paul Davis
0ed72a6f24
tweaks to disk io point mechanisms
2017-08-16 15:10:31 -04:00
Paul Davis
62dc31eb44
initial (incomplete) framework for DiskIOPoint manipulation
2017-08-16 15:10:31 -04:00
Paul Davis
40259fb42f
fix longstanding compiler warning
2017-08-16 15:10:31 -04:00
Paul Davis
23183fa05b
new enums for disk i/o positioning
2017-08-16 15:10:31 -04:00
Paul Davis
06299310ec
framework for silent-roll-while-slave-syncing
2017-08-16 15:10:31 -04:00
Paul Davis
9b45e17cc4
do not queue multiple Locate or LocateRoll events
2017-08-16 15:10:31 -04:00
Paul Davis
c854dc6c68
debug instrumentation for locate time
2017-08-16 15:10:31 -04:00
Paul Davis
970fd95540
probable fix for out-of-sync issue across tracks after locate
2017-08-16 15:10:31 -04:00
Paul Davis
406334b3c2
when DiskReader checks to see if a locate is in progress, it must be atomic with respect to all DiskReaders
2017-08-16 15:10:31 -04:00
Paul Davis
362c11f921
DiskWriter needs to drop source refs in its destructor.
...
SerializedRCUManager can't do this by itself
2017-08-16 15:10:31 -04:00
Paul Davis
9cc7184159
change visible name of disk i/o processors
2017-08-16 15:10:31 -04:00
Paul Davis
10690bc675
do not change Session::_transport_frame is a locate is pending
2017-08-16 15:10:31 -04:00
Paul Davis
2fd95264b2
restart non-RT locate if a new request has been processed by RT context since we started
2017-08-16 15:10:31 -04:00
Paul Davis
540ff3b36c
adjust debug trace output message
2017-08-16 15:10:31 -04:00
Paul Davis
7d87347fba
comment out debug trace output
2017-08-16 15:10:31 -04:00
Paul Davis
58f1e0adf6
comment out debug trace output
2017-08-16 15:10:31 -04:00
Paul Davis
aed073954f
don't bother to re-seek/locate/refill buffers when disk IO processor config changes unless it actually changed
2017-08-16 15:10:31 -04:00
Paul Davis
02260cf6d6
add new debug trace output
2017-08-16 15:10:31 -04:00
Paul Davis
7397a96d2a
comment out debug trace output
2017-08-16 15:10:31 -04:00