Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-12-14 | fix behavior of DiskReader when moved after an instrument | Paul Davis | |
2019-12-12 | reduce another race condition risk | Paul Davis | |
overwrite_queued == true is equivalent to _pending_overwrite != 0 | |||
2019-12-12 | remove useless lock | Paul Davis | |
rbuf allocation/use is protected by process_lock | |||
2019-12-11 | remove MIDI readahead parameter | Paul Davis | |
We just don't do this anymore | |||
2019-12-10 | revert to single buffer for disk playback, and 5.x-style overwrite | Paul Davis | |
Also address issues with MIDI and also atomicity of _pending_overwrite | |||
2019-12-08 | fix error when continuing to refill audio playback buffers after a buffer switch | Paul Davis | |
The file_sample[AUDIO] member was not updated to reflect the last-read sample in the switched-to buffer. Also move several methods and members from DiskIO to DiskReader where they belong. | |||
2019-11-22 | redesign of declicking and fades around loop boundaries | Paul Davis | |
2019-11-15 | move DiskReader::inc_no_disk_output() into .cc to allow for easier debugging | Paul Davis | |
2019-11-06 | fix unconditional note resolution during DiskReader::realtime_locate() | Paul Davis | |
When looping, we do not want to resolve notes at the end of the loop via ::realtime_locate() - ::get_midi_playback() has already taken care of this. But when not looping, we need this. So, add an argument to tell all interested parties whether the locate is for a loop end or not | |||
2019-11-02 | remove unused (empty) API | Paul Davis | |
2019-11-02 | remove unused API | Paul Davis | |
2019-11-02 | various adjustments so that a MidiPlaylist gets re-rendered whenever it changes. | Paul Davis | |
This may still be missing a few changes (i.e. they do not cause re-rendering) | |||
2019-11-02 | move ownership of an RT MIDI buffer from DiskIO to MidiPlaylist | Paul Davis | |
2019-11-02 | alter where note resolution happens when a re-rendering is scheduled for a ↵ | Paul Davis | |
MIDI track | |||
2019-11-02 | refactor SessionEvent and DiskIO so that we pass around ↵ | Paul Davis | |
boost::shared_ptr<Track> rather than Route (this the raw pointers used inside SessionEvent) | |||
2019-11-02 | add a MidiStateTracker to DiskReader and use to handle transport stop note ↵ | Paul Davis | |
resolving | |||
2019-09-17 | add finite state machine to control/manage transport state | Paul Davis | |
2019-08-03 | Update libardour GPL boilerplate and (C) from git log | Robin Gareus | |
2019-02-21 | Add API to check for ongoing de-click | Robin Gareus | |
2019-02-08 | Fix some disk-buffer threading issues | Robin Gareus | |
Make _pending_overwrite atomic (butler + process thread). This also addresses a potential seek before override race. Seeking will fill the buffers and by the time overwrite_existing_buffers() is called from there is no space to overwrite anymore. | |||
2019-02-08 | NO-OP: clarify internal API, prepare for overwrite queue | Robin Gareus | |
2019-02-07 | Prepare dedicated Disk-reader de-click gain-stage | Robin Gareus | |
This allows to specify a shorter fade-duration than default Amp::apply_gain(), also allows to unroll and vectorize the loop | |||
2019-02-06 | Prepare Disk-reader for bi-directional micro-locates | Robin Gareus | |
2019-02-05 | Towards a new disk-reader ringbuffer | Robin Gareus | |
This is mainly a NO-OP, introducing a new PlaybackBuffer type and preparing for its use. At this point in time, the buffer is just a power-of-two sized ringbuffer and the disk-reader's read-logic is still unchanged. Eventually the read and write sample position that are currently private to the disk-reader can be migrated to be owned by the buffer. Also Diskreader::read() positions can be matched to read-position .. +/- buffer reservation and de-click can read w/o committing the read. | |||
2018-07-11 | Correct a couple of typos | John Emmas | |
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. | |||
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-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-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-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 | 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 | 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 | framework for silent-roll-while-slave-syncing | Paul Davis | |
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 | |
2017-09-18 | cue monitoring for audio (libardour aspects) | Paul Davis | |
2017-09-18 | fix various naming issues with Disk{Reader,Writer} | Paul Davis | |
2017-09-18 | remove all remaining vestiges of per-track varispeed from libardour | Paul Davis | |
2017-09-18 | random changes required to get an audio track created and transport functional | Paul Davis | |
2017-09-18 | mega-commit to save state of first "it compilesand links" state for ↵ | Paul Davis | |
separated disk i/o changes. THIS WILL NOT RUN. THIS REQUIRES MANY CHANGES | |||
2017-09-18 | merge almost all audio & midi diskstream code, redistribute between ↵ | Paul Davis | |
DiskIOProcessor, DiskReader,DiskWriter; compile and link | |||
2017-09-18 | remove duplicated (in heirarchy) loop location from DiskReader | Paul Davis | |
2017-09-18 | move need-butler from DiskReader to DiskIOProcessor | Paul Davis | |
2017-09-18 | move ChannelInfo structure from DiskReader into DiskIOProcessor | Paul Davis | |
2017-09-18 | merge MidiDiskstream into DiskReader (playback parts) | Paul Davis | |