summaryrefslogtreecommitdiff
path: root/libs/ardour/session_export.cc
AgeCommit message (Collapse)Author
2017-09-29Properly aligned export (Stem + Session)Robin Gareus
Delay ports being exported by their playback latency.
2017-09-29No more disk-reader roll-delayRobin 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-26Export needs to offset buffers when processing partial cycleRobin Gareus
2017-09-19Various updates and fixes for Latency CompensationRobin Gareus
* centralize signal_latency_at_***_position to processors * update initial-delay/roll-delay when processor order changes * consolidate signal-latency calculation: use the same method for processor-changes and session's post_playback_latency. * include relative output-delay in roll-delay * fix capture processor position & optimize stem-export latency (roll-delay fixes pending Route:roll() update)
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
2016-10-25Desperate hack to align master-bus on export.Robin Gareus
Another 90% solution which hopefully gives us another year :( see comments Session::start_audio_export() for explanation.
2016-10-17fast region export -- don't call process()Robin Gareus
2016-07-16Refactor TmpFile into an abstract base classRobin Gareus
This allows a TmpFile pointer to be either a Sync or Async (Threaded) writer. As result we must be able to handle both RT and non RT processing. Still, post-processing (normalization and encoding) should always happen faster than realtime (freewheeling). Since jack does not allow a client to change to freewheeling from within the process-callback, the async-writer disk-thread FileFlushed is used to initiate post-processing.
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-07-14refactoring to prepare for real-time exportRobin Gareus
* add a threaded TmpFile Writer * update API calls to that process_export_fw() can be used as process_function The idea is to re-use export infrastructure from normalization: export to a tmp-file and then encode target formats after that.
2016-07-10towards export latency compensationRobin Gareus
2016-02-29configurable export prerollRobin Gareus
2016-02-29pre-process (silence) before export to flush reverb tails etc.Robin Gareus
2016-02-09Fix crash when aborting export.Robin Gareus
The "Stop" button results in ExportHandlerPtr being destroyed. This must not happen while it's in use -- in particular during ExportHandler::start_timespan() and ExportHandler::finish_timespan()
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
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
2013-09-05move MidiPortManager from AudioEngine to SessionPaul Davis
This makes the responsibilities and ownership of non-Route related MIDI ports more clear, and removes a few wierd bits of code. It also ensures that open/close/open on the same session will retain connections for those MIDI ports
2013-08-07major redesign of MIDI port heirarchy and management (part 2)Paul Davis
2013-08-01full compilation and linking (coding not finished, will not run)Paul Davis
2013-07-25most of libardour now actually compilesPaul Davis
2013-02-04Fix problem with multiple timespan export. Most probably originated in r13305.Sakari Bergen
git-svn-id: svn://localhost/ardour2/branches/3.0@14048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-06various fixes for exporting, including correct handling of errors during ↵Paul Davis
export which previously would hang when using jack1 because jack_set_freewheel() was called from inside a process() callback; use shared_ptr<Route> in parts of export code that weren't using them before; fix up generation of export filenames so that Glib::build_filename() is used and non-existent folders are ignored git-svn-id: svn://localhost/ardour2/branches/3.0@13610 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-17patch from robin to fix where the transport start occurs when exporting (#4098)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13305 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-06-08No-op; some comments, remove some unused stuff, minor tidying up.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@12616 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-02-06attempt to stop sending MMC/MTC while exporting or freewheeling for any reasonPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@11457 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18restore ability to create TOC and CUE files during export. this is an option ↵Paul Davis
in a given export format, not a per-export choice. so you need export formats with them set (or not) in order to utilize this choice. the resulting CUE/TOC files have not been checked with a burner (e.g. cdrdao) and testing of them would be appreciated - i (paul) have no CD burner h/w git-svn-id: svn://localhost/ardour2/branches/3.0@11266 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-26Wait for the butler to be quiescent before startingCarl Hetherington
export of each range, rather than just the first one. Prevents clashes with both the butler and the export code doing track refills at the same time (may fix #4283). git-svn-id: svn://localhost/ardour2/branches/3.0@10307 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
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-06-28Tweak transmission of MMC on locate. Should fix #3121.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7314 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-02Fix crash on export.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7038 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-01-04provide a real and usable MuteControllable for Routes (so that MIDI can use it)Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6445 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-27- Fix process callbakc handling during exportSakari Bergen
- Fix filename handling when exporting multiple files - Some updates to audiographer git-svn-id: svn://localhost/ardour2/branches/3.0@6402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-27Re-integrate export-optimization branch.Sakari Bergen
Export now happens directly to file (unless normalizing is required), and can be easily optimized even further. The Session process connection is still broken during export (as it was before this commit also). git-svn-id: svn://localhost/ardour2/branches/3.0@6401 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21fully implement and deploy explicit x-thread signal connection syntax ↵Paul Davis
(testing comes next) git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19use new syntax for connecting to backend signals that enforces explicit ↵Paul Davis
connection scope, plus a few other related matters git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17switch to using boost::signals2 instead of sigc++, at least for libardour. ↵Paul Davis
not finished yet, but compiles, loads sessions, records and can close a session without a crash git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-0990% done with external sync design changes (GUI now has toggle switch for ↵Paul Davis
ext/int sync; source chosen separately, currently in ardour prefs dialog ; fix libmidi++ and compilation scripts to correctly build JACK+ALSA support; minor contiuing tweaks on transport stuff git-svn-id: svn://localhost/ardour2/branches/3.0@6048 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-08monster commit: transport mgmt changes from 2.X (omnibus edition); make ↵Paul Davis
slave use nframes64_t ; avoid crashes in Drags when commiting reversible transactions that do not exist git-svn-id: svn://localhost/ardour2/branches/3.0@6034 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-24Move butler methods from Session to Butler.David Robillard
Slay the dragon. A lil' bit. git-svn-id: svn://localhost/ardour2/branches/3.0@5901 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23Split butler into separate object (partially, just data so far...)David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@5900 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14Strip trailing whitespace and fix other whitespace errors (e.g. space/tab ↵David Robillard
mixing). Whitespace changes only. Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent... git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-13Remove some extraneous includes. reorder some others (fixes compilation on ↵Nick Mainsbridge
fedora 10). git-svn-id: svn://localhost/ardour2/branches/3.0@5073 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30Trim include dependency graph, especially for io.h and session.h.David Robillard
Clean up some stuff and other such gruntwork in the process. git-svn-id: svn://localhost/ardour2/branches/3.0@4468 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12most of the 2.X->3.0 commit (up to rev 4299) except for ↵Paul Davis
gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet git-svn-id: svn://localhost/ardour2/branches/3.0@4313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-11-21* Clean up (fix?) ExportStatus signal handlingSakari Bergen
* Fix problem in export dialog error reporting * Sart implementing audio track importer (nothing very functional yet...) git-svn-id: svn://localhost/ardour2/branches/3.0@4231 d708f5d6-7413-0410-9779-e7cbd77b26cf