summaryrefslogtreecommitdiff
path: root/libs/ardour/diskstream.cc
AgeCommit message (Collapse)Author
2014-10-10subtle changes to accomplish two goals (1) playhead should stop where the ↵Paul Davis
user pressed stopped (2) captured regions should end where the playhead ends
2014-07-01merge with master.Paul Davis
Manually resolved conflicts in import.cc and session.cc
2014-06-26allow to set custom file name for each diststreamRobin Gareus
2014-06-11NOOP, re-indent using tabsRobin Gareus
2014-06-02substantive changes to the logic and safety for naming of (audio/MIDI) ↵Paul Davis
sources, especially when created via import
2013-08-04'libs/ardour' - Main body of changes required for building with MSVCJohn Emmas
2013-08-04'libs/ardour' - Use 'const_iterator' where appropriate (required to be ↵John Emmas
buildable with MSVC)
2013-07-11Remove non-portable and unnused header includesPaul Davis
2013-07-11Revert "Remove non-portable and unnused header includes"Paul Davis
This reverts commit 7ef79d3f4b02e3d2e71d6888fbedd9b3f9c325c7.
2013-07-11Remove non-portable and unnused header includesPaul Davis
2012-12-23another buffersize fix (see #5221 and rev13715)Robin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-07fix issues with rec-enabling being done in RT context by splitting it into ↵Paul Davis
two parts, an RT-safe and RT-unsafe part. along the way, remove "do not record plugins" option which is just so 1999 and creates problems for various (all?) plugin APIs git-svn-id: svn://localhost/ardour2/branches/3.0@13613 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Remove over 500 unnecessary includes (including 54 of session.h).David Robillard
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-16Fairly major change to the way in which crossfades are handled;Carl Hetherington
they are now done with region fades, rather than separate objects. After this commit, Ardour will try to convert your session files to the new crossfade format, but will make a backup in your session folder first. If you have works in progress using Ardour 3 it is ***STRONGLY RECOMMENDED*** that you back up session files before updating to this commit. git-svn-id: svn://localhost/ardour2/branches/3.0@11986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-10fix for most (all? we can dream ...) issues involved in #4399 (editing ↵Paul Davis
multiply-applies operations to playlists used more than once), and as a side-issue, fix playlist selection which broke when we hid Diskstreams inside Tracks by using orig_track_id() rather than orig_diskstream_id() git-svn-id: svn://localhost/ardour2/branches/3.0@10968 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-16Remove unused variable.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10643 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-31Remove unused variable.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10364 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-31Remove Diskstream member playback_distance that can beCarl Hetherington
passed directly from process() to commit(). git-svn-id: svn://localhost/ardour2/branches/3.0@10359 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-24Remove unused read/write data count code.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10300 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18make Stateful::_id private and provide appropriate methods to set it, and ↵Paul Davis
use them throughout ardour git-svn-id: svn://localhost/ardour2/branches/3.0@10222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-14Fix default disk_io_chunk_frames for diskstream so that itCarl Hetherington
isn't larger than the default playback buffer size when starting Ardour without a previous ~/.config; having disk_io_chunk_frames larger violates basic design assumptions and causes phantom underruns in playback (#4308). git-svn-id: svn://localhost/ardour2/branches/3.0@10079 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01Fix broken whitespace. I'd apologize for the compile times if it was my ↵David Robillard
fault :D git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-09correctly reset capture alignment at session load; for MIDI diskstreams, ↵Paul Davis
don't try to set capture alignment based on connectivity, always set _source_port ASAP and check _source_port when recording git-svn-id: svn://localhost/ardour2/branches/3.0@9334 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04move some DEBUG::Graph traces to DEBUG::ProcessThreads ; remove ↵Paul Davis
Diskstream::rename_write_sources() which is no longer relevant (sources are not created on disk until needed); fixup calling Diskstream::non_realtime_input_change() when calling Diskstream::set_track() with a track that doesn't yet have any I/O (i.e. typical case) git-svn-id: svn://localhost/ardour2/branches/3.0@9281 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-18fix (?) capture alignment by making sure we use non-public latency ↵Paul Davis
information for playback latency, thus avoiding counting plugin latency twice git-svn-id: svn://localhost/ardour2/branches/3.0@9168 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-15fix all manner of things relating to io connections, setting capture ↵Paul Davis
alignment, and so on. still needs more tests of actual precise placement of newly recorded material git-svn-id: svn://localhost/ardour2/branches/3.0@9155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-11sorta-kinda working latency compensation, latency reporting and capture ↵Paul Davis
alignment ... working except that we report the wrong information to JACK and i've noticed a couple of odd circumstances where turning on a latent plugin caused punch recording to fail git-svn-id: svn://localhost/ardour2/branches/3.0@9121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-09add new concept for managing alignment style (AlignChoice); switch to using ↵Paul Davis
worst_playback_latency() just about everywhere we were using worst_output_latency() - the former includes plugin latency. answer appears to break earlier fixes to alignment, but is semantically right, so plan to investigate in another 8 hours or so git-svn-id: svn://localhost/ardour2/branches/3.0@9112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-08lots of stuff related to capture alignment. things appear to be working now, ↵Paul Davis
but require the right alignment setting, which doesn't persist correctly at present git-svn-id: svn://localhost/ardour2/branches/3.0@9107 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-25Fix previous patch a bit better.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8959 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-25Move playback_distance up to AudioDiskstream from Diskstream since it is ↵Carl Hetherington
only used there. git-svn-id: svn://localhost/ardour2/branches/3.0@8958 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27merge 3.0-panexp (pan experiments) branch, revisions 8534-8585 into 3.0, ↵Paul Davis
thus ending 3.0-panexp. THIS COMMIT WILL BREAK ALL EXISTING 3.0 SESSIONS IN SOME WAY (possibly not fatally). git-svn-id: svn://localhost/ardour2/branches/3.0@8586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03Remove all use of nframes_t.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-01Revert previous incorrect patch.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8144 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-01Remove unused code.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8142 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27remove (or attempt to remove) requirement for holding process lock when ↵Paul Davis
changing connections git-svn-id: svn://localhost/ardour2/branches/3.0@8110 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-08Update recorded MIDI regions as notes arrive. Fixes one cause of infinite ↵Carl Hetherington
note-lengths during record. Fix various problems with multiple captures of MIDI during one pass. git-svn-id: svn://localhost/ardour2/branches/3.0@7887 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-10-02Small cleanup.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7867 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-17megaopus commit: (1) add __STD_(LIMIT|FORMAT)_MACROS to command line flags ↵Paul Davis
for cc and c++ builds, remove them from source (2) add new Property::midi_data used by MidiRegion to signal that its (MIDI) contents have changed (3) massive switch from nframes_t to framepos_t/framecnt_t including removal of ARDOUR::max_frames (replaced by ARDOUR::max_frame{pos,cnt} (lots more to do but this set was driven by changes to the Diskstream API to use framepos_t git-svn-id: svn://localhost/ardour2/branches/3.0@7791 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-30Auto-connect outputs that appear as a result of e.g. instruments being added ↵Carl Hetherington
to MIDI tracks. Fixes #3368. git-svn-id: svn://localhost/ardour2/branches/3.0@7720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20Don't write undo records for automation that moves with regions when nothing ↵Carl Hetherington
changes about the automation. git-svn-id: svn://localhost/ardour2/branches/3.0@7665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-22When a region movement is undone, prevent the resulting movement from ↵Carl Hetherington
triggering the automation-follows-regions code. Fixes #3348. git-svn-id: svn://localhost/ardour2/branches/3.0@7464 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-23midway snapshot of work done on managing Region & Source lifetimes ↵Paul Davis
correctly. may fix missing MIDI file bug ; save empty playlists because they may be referred to by the history file ; undo commands auto-delete when objects they refer to die (currently not commands built from XML deserialization); Sources now know how many regions are using them for something, meaning that we know if we can delete the files holding any data for the source git-svn-id: svn://localhost/ardour2/branches/3.0@7291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-21Move Diskstream ownership to Track, so that Session no longer holds lists of ↵Carl Hetherington
Diskstreams. Breaks 3.0 file format again. git-svn-id: svn://localhost/ardour2/branches/3.0@6945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-12alignment/capture/positioning changes ported from 2.XPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6886 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02Fix logic for when to request buffer overwrite.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@6848 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02missign return valuePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02possible fix for race between diskstream buffer overwrite and channel setupPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-01revisit setting up processors during route construction; remove several more ↵Paul Davis
XML-based constructors; don't put () parens around inactive plugin names (we have a checkbox); improve management of send, return and insert bitslot IDs; clean up Diskstream construction a bit more git-svn-id: svn://localhost/ardour2/branches/3.0@6819 d708f5d6-7413-0410-9779-e7cbd77b26cf