Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-07-31 | Fix mismatched delete/delete[] | Robin Gareus | |
2018-07-09 | NO-OP: Rename disk-reader buffer for consistency | Robin Gareus | |
This is in preparation to replace the Ringbuffer and avoid over-using "buf" as variable (it's already used for vectors, as parameter name and Audiobuffers. | |||
2018-07-09 | Prepare API for per disk-reader de-click | Robin Gareus | |
2018-07-09 | Separate ChannelInfo for disk reader and writer | Robin Gareus | |
This allows to use different types for write and read buffers, in preparation for a dedicated reader-buffer. | |||
2018-07-09 | Remove unused disk-reader vari-speed | Robin Gareus | |
2018-07-09 | Remove global declick API | Robin Gareus | |
De-click will be per disk-reader, latency compensated and buffer-size independent. Cue-monitoring should not be affected by de-click. | |||
2017-10-31 | Move Loop Location to Processors | Robin Gareus | |
The processors will becomes responsible to know about loop-positions and map latency-compensated start_sample, end_sample into the loop-range as needed. | |||
2017-10-26 | remove unused variable | Paul Davis | |
2017-10-26 | switch from std::auto_ptr<> (deprecated) to boost::scoped_ptr<> | Paul Davis | |
2017-10-26 | optimization for track with zero audio channels should not short-circuit ↵ | Paul Davis | |
MIDI disk reading | |||
2017-10-04 | Clean up State API: | Robin Gareus | |
* Processor implement get_state(), classes derived from Processor implement protected ::state() -- as documented in processor.h * likewise for Route, Track: make ::state() a protected interface * removal of "full_state", use explicit "template_save" * use RAII/Unwind to skip saving automation-state | |||
2017-10-02 | use new CubicInterpolation API | Paul Davis | |
2017-10-02 | DiskReader should do nothing at all if there are no channels | Paul Davis | |
2017-10-02 | remove cruft | Paul Davis | |
2017-10-01 | Fix MIDI rec-region display | Robin Gareus | |
gui_feed_buffer is used for DiskWriter -> GUI notifications. It was wrongly migrated from MidiDiskstream to DiskReader in 7fb6807 | |||
2017-09-30 | Make MIDI disk-reader a bit less buggy :) | Robin Gareus | |
* use start/end frame * differentiate nframes and disk_samples_to_consume * add global Port::port_offset () when writing data. * add a note about b0rked vari-speed .. | |||
2017-09-30 | MIDI debugging. | Robin Gareus | |
2017-09-30 | Disk-reader don't silence buffers when not rolling | Robin Gareus | |
Doing so may clear out-of-band data which is injected into the data-stream. | |||
2017-09-29 | Ongoing work on latency compensation | Robin Gareus | |
The general goal is to align transport-sample to be the audible frame and use that as "anchor" for all processing. transport_sample cannot become negative (00:00:00:00 is the first audible frame). Internally transport pre-rolls (read-ahead) before the transport starts to move. This allows inputs and disk to prefill the pipeline. When starting to roll, the session counts down a global "remaning preroll" counter, which is the worst-latency from in-to-out. Each route in turn will start processing at its own output-latency. Route::process_output_buffers() - which does the actual processing incl disk i/o - begins by offsetting the "current sample" by the route's process-latency and decrements the offset for each latent processor. At the end of the function the output will be aligned and match transport-sample - downstream-playback-latency (if any). PS. This commit is a first step only: transport looping & vari-speed have not yet been implemented/updated. | |||
2017-09-29 | No more disk-reader roll-delay | Robin Gareus | |
It was not working in sdio/6.0-pre anyway and with upcoming changes to latency compensation the concept of per disk[stream/reader] will go away. | |||
2017-09-21 | fix clang compilation (include header ordering) | Robin Gareus | |
"i18n.h" needs to be included last, after types have been defined or clang bails out: "call to function 'operator<<' is not visible in the template definition" | |||
2017-09-19 | fix boolean logic for roll_delay vs. disk_samples_to_consume | Paul Davis | |
2017-09-19 | do not advance DiskReader's idea of playback_sample while waiting for ↵ | Paul Davis | |
_roll_delay to expire | |||
2017-09-19 | clearer catastrophic error message, rather than assert() | Paul Davis | |
2017-09-19 | attempt to fix roll delay logic by moving it into DiskReader (the only place ↵ | Paul Davis | |
it matters) | |||
2017-09-19 | Revert "remove unusued roll_delay member of DiskReader" | Paul Davis | |
This reverts commit 92c2e06eb72950f91ca943a5219e2caeaeecda9f. | |||
2017-09-19 | remove unusued roll_delay member of DiskReader | Paul Davis | |
2017-09-18 | globally change all use of "frame" to refer to audio into "sample". | Paul Davis | |
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible | |||
2017-09-18 | fix logic error that prevent input monitoring during slave wait states | Paul Davis | |
2017-09-18 | don't attempt MIDI playback if there are no MIDI buffers provided for processing | Paul Davis | |
2017-09-18 | remove debug output | Paul Davis | |
2017-09-18 | remove all code related to "silent roll" concept. some debug output added | Paul Davis | |
2017-09-18 | move disk_{writer,reader} into Route to allow for simple, sensible ↵ | Paul Davis | |
implementation of DiskIOPoint | |||
2017-09-18 | use const | Paul Davis | |
2017-09-18 | remove unused + commented line | Paul Davis | |
2017-09-18 | subtle change to _need_butler logic to ensure correct result in mixed-type ↵ | Paul Davis | |
contexts | |||
2017-09-18 | reinstate use of a MidiTrack's MIDI filter when reading from disk | Paul Davis | |
2017-09-18 | move _file_frame from DiskIOProcessor into DiskReader (only place where it ↵ | Paul Davis | |
is needed); split into by-type array to deal with different rate of audio & MIDI i/o | |||
2017-09-18 | tweaks to disk io point mechanisms | Paul Davis | |
2017-09-18 | framework for silent-roll-while-slave-syncing | Paul Davis | |
2017-09-18 | probable fix for out-of-sync issue across tracks after locate | Paul Davis | |
2017-09-18 | when DiskReader checks to see if a locate is in progress, it must be atomic ↵ | Paul Davis | |
with respect to all DiskReaders | |||
2017-09-18 | change visible name of disk i/o processors | Paul Davis | |
2017-09-18 | comment out debug trace output | Paul Davis | |
2017-09-18 | do not advance pointer; avoids illegal over-read during mix_buffers_no_gain() | Paul Davis | |
2017-09-18 | locating no longer interrupts process() | Paul Davis | |
2017-09-18 | more DEBUG::Destruction messages | Paul Davis | |
2017-09-18 | fix inadvertent run of Interpolation object when transport speed is zero, ↵ | Paul Davis | |
leading to a single sample being written when nothing should be. Also, rename "outgoing" as "disk_signal" to be more clear. | |||
2017-09-18 | rename a method to be more clear; remove an unused method from DiskReader | Paul Davis | |
2017-09-18 | cue monitoring for MIDI | Paul Davis | |