summaryrefslogtreecommitdiff
path: root/libs/ardour/audio_track.cc
AgeCommit message (Collapse)Author
2018-02-14Auto-monitor == Cue for MIDI tracks.Ben Loftis
2017-10-04Clean 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-01Fix recording MIDIRobin Gareus
- Fix API call to add region(midi_region) -- set count to "1" - Forward DataRecorded() signal - remove botched merge/rebase" a4a87f56 accidentally brought back code from old-destructive API which was removed in af103cf3 and 08c13007 There is no per track NonLayered record mode anymore, it's session global. - set can_record correctly to not accidentally clear last capture sources for cont'd recording (toggle track's rec-arm)
2017-09-18consolidate roll methods into Route::roll()Paul Davis
We want Track to shrink, and logic consolidation is always good. Route already knew about disk_reader and disk_writer, now it knows about _monitoring_control too
2017-09-18globally 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-18addd more DEBUG_TRACE for DiskIO; set DiskIOProcess::_need_butler more ↵Paul Davis
appropriately; other minor adjustments
2017-09-18fully remove diskstream codePaul Davis
2017-09-18remove Diskstream from Track and derivatives; get ardour to actually startupPaul Davis
2017-09-18mega-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-08-18Remove old destructive API (non layered is a dynamic mode) 2/2Robin Gareus
2017-06-22Remove LocaleGuard from ARDOUR::AudioTrack classTim Mayberry
The gain property float <=> string conversion is now performed using PBD::to_string/string_to via XMLNode
2017-04-19Use XMLNode::get/set_property in ARDOUR::AudioTrack classTim Mayberry
2017-04-19Use ID::to_s() in libardour instead of ID::print()Tim Mayberry
2016-12-17Hide/remove per-track record-mode in favor of global setting.Robin Gareus
2016-07-14Consolidate delivery buffer flushing of all route typesJulien "_FrnchFrgg_" RIVAUD
Route::no_roll(), Route::roll(), Track::no_roll(), AudioTrack::roll() and MidiTrack::roll() all had the exact same loop for flushing buffers of their Delivery processors. That was a lot of replicated code that had to be kept synchronised by hand. Put that code into a protected method Route::flush_processor_buffers_locked() which is called instead.
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-06-25major internal plugin & processor API change:Robin Gareus
Pass current (latency compensated) cycle times to plugin. This fixes time-reporting to plugins and also fixes automation and when bouncing (the session->transport* is not valid) etc.
2016-06-08fix mute automation for busses & consolidate code.Robin Gareus
2016-05-31first vaguely working version using PresentationInfoPaul Davis
remote control ID and "order keys" have been removed.
2016-05-31universal change in the design of the way Route/Track controls are designed ↵Paul Davis
and used. The controls now own their own state, rather than proxy for state in their owners. Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-07make boost shared_ptr debugging a little easier to turn on/offPaul Davis
2016-05-07fix LocaleGuard contstructor (3dc77280)Robin Gareus
2016-05-05we always only use the "C" locale when saving.Robin Gareus
2016-05-04OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)Paul Davis
2016-01-18add group disposition argument to Route::set_gain() and use it in various UIsPaul Davis
Executive decisions were necessary in a couple of places about the correct group disposition behaviour, notably faderport and OSC surfaces
2016-01-18working version of new gain control designPaul Davis
2015-11-21fix playlist refcount on track un-freeze.Robin Gareus
2015-11-20prevent deletion of playlists on frozen tracks:Robin Gareus
bug: 1) freeze a track 2) Session Cleanup > Cleanup unused sources 2a) confirm playlist deletion 3) quit, reload -> track is no longer frozen because _freeze_record.playlist is missing. session is in an odd state.
2015-10-21fix mute automation in Play automation statePaul Davis
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-07-23avoid llabs ambiguityRobin Gareus
(old gcc has a built-in)
2015-06-29Tracks does not (want to) support destructive tracksPaul Davis
2015-04-28Track mode needs to be set before loading Track stateRobin Gareus
parent Track::set_state() sets the diskstream and ::set_diskstream() depends on the track mode. fixes Tape tracks on session load
2015-04-22Initial Gain Coefficient tweaksBen Loftis
1) Disambiguate 1.0 to GAIN_COEFF_UNITY, and 0.0 to GAIN_COEFF_ZERO 2) Add GAIN_COEFF_SMALL which replaces SMALL_SIGNAL (-140dB) 3) GAIN_COEFF_SMALL can used to avoid interpolating towards -inf on a db scale 4) GAIN_COEFF_SMALL is used to detect very small (denormal?) gains and memset to zero
2015-01-19use C locale, because POSIX locale is not supported on windows, and ↵Ben Loftis
operation is undefined. C works on all platforms
2014-11-29Somewhat working gain automation.David Robillard
This probably isn't correct in several ways, but it works more than it did, so I figure it's push worthy. Still not working: * Saving mute automation list * Dragged control points are not snapped to model restrictions (boolean, in this case, but general problem) * Line goes funny if you record mute automation (as opposed to drawing it which works)
2014-06-04Revert "add API to query a processor's frozen state."Robin Gareus
Theoretically one could alter the plugins after a delivery even on a frozen track. ..or even change settings, the ordering and add/remove plugins after the frozen part of a track. We won't go there. Frozen is frozen. this API is not needed after all. This reverts commit a771dea20332bf31162ccb13a518e0348b441dd1.
2014-06-04add API to query a processor's frozen state.Robin Gareus
2014-06-04re-work bounce/freeze. Freezer stops at first active delivery.Robin Gareus
amend to 8f52bf7d9f
2014-05-25compensate for processor latency during bounceRobin Gareus
2014-05-15fix midi output on audio-tracks (e.g. audio->midi plugins)Robin Gareus
2014-01-23fix merge conflict with masterPaul Davis
2014-01-22remove cruftRobin Gareus
2013-09-12incomplete merge of master into windows (requires upcoming changes to master ↵Paul Davis
to be complete)
2013-09-05'libs/ardour' - Revert 'std::llabs' to 'llabs' until we find a ↵John Emmas
platform-neutral solution (MOTE - 'llabs' and '::llabs' are being used successfully in other parts of Ardour)
2013-09-03Merge branch 'master' into audioenginePaul Davis
2013-09-02add std:: to clarify use of llabs on OS XPaul Davis
2013-08-09more purging of JACK as an explicit name from libardourPaul Davis
2013-08-03advance track's play-position even if processing is lockedRobin Gareus
fixes * http://tracker.ardour.org/view.php?id=5628 * http://tracker.ardour.org/view.php?id=5561