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
61a4061ffa
use modified API name in GUI
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
Paul Davis
5d74a9bfe7
clear regions from "other" playlist type in auditioner when starting a new audition
2017-08-16 15:29:52 -04:00
Paul Davis
33f9685899
auditioner does not care about the state of its diskwriter processor
2017-08-16 15:29:52 -04:00
Paul Davis
af779b55ce
change callers of changed Track::use_new_playlist() API and its implementation
2017-08-16 15:29:52 -04:00
Paul Davis
f88fbbf53f
remove Auditioner::prepare_playlist() - not used
2017-08-16 15:29:52 -04:00
Paul Davis
cd4b7d4a3c
use new Track API
2017-08-16 15:29:52 -04:00
Paul Davis
06744f4c85
add Track::use_default_new_playlist()
2017-08-16 15:29:52 -04:00
Paul Davis
32f39412a0
remove Track::hidden(); replace with Stripable::is_private_route()
2017-08-16 15:29:52 -04:00
Paul Davis
203e0966f0
emit required signal
2017-08-16 15:29:52 -04:00
Paul Davis
841e67b81f
basic GUI framework for setting Disk I/O options
2017-08-16 15:29:52 -04:00
Paul Davis
d72d45c71a
mechanism to allow Track (or other Route-derived type) to add its own processors at the right time
2017-08-16 15:29:52 -04:00
Paul Davis
584a1e12bf
add enum registration for DiskIOPoint
2017-08-16 15:29:52 -04:00
Paul Davis
3f2d77af2d
tweaks to disk io point mechanisms
2017-08-16 15:29:52 -04:00
Paul Davis
a3f5b4e9a1
initial (incomplete) framework for DiskIOPoint manipulation
2017-08-16 15:29:52 -04:00
Paul Davis
84b4fdc44c
fix longstanding compiler warning
2017-08-16 15:29:52 -04:00
Paul Davis
55a855de49
new enums for disk i/o positioning
2017-08-16 15:29:52 -04:00
Paul Davis
bce14cd9f4
framework for silent-roll-while-slave-syncing
2017-08-16 15:29:52 -04:00
Paul Davis
de2f683d47
do not queue multiple Locate or LocateRoll events
2017-08-16 15:29:52 -04:00
Paul Davis
cad340e735
debug instrumentation for locate time
2017-08-16 15:29:52 -04:00
Paul Davis
5efbdabc47
probable fix for out-of-sync issue across tracks after locate
2017-08-16 15:29:52 -04:00
Paul Davis
4dd3921e32
when DiskReader checks to see if a locate is in progress, it must be atomic with respect to all DiskReaders
2017-08-16 15:29:52 -04:00
Paul Davis
c895e4ad7f
DiskWriter needs to drop source refs in its destructor.
...
SerializedRCUManager can't do this by itself
2017-08-16 15:29:52 -04:00