summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/audioengine.h
AgeCommit message (Collapse)Author
2015-06-29[Summary] Added possibility to identify IO thread which does not have ↵GZharun
required resources initialized during process callback handling Conflicts: libs/ardour/ardour/audioengine.h libs/backends/wavesaudio/waves_audiobackend.cc libs/pbd/pbd/pool.h
2015-05-02professionalize peak-metersRobin Gareus
The peak meter needs to withstand various test-signals without visual jitter (in particular 1kHz sine) regardless of settings (period-size, sample-rate, custom fall-off). This needs to be done in sync (and not by a random non-rt ‘smoothing’ thread). On the downside this voids the ‘visual smoothing’ particularly with large buffersizes - but then again exactly this “always fall-off no matter what [the next real data will be]” is the problem. One the upside, there’s one less high-frequency (100Hz) thread (Yay!) PS. it probably never worked on windows, anyway. Only peak-meters are affected by his change. K-meters, IEC I/II and VU were never visually smoothed.
2015-04-05add libardour code for going completely silent after a compile-time defined ↵Paul Davis
number of seconds
2015-03-31add new signals to AudioEngine from waves backend changes.Paul Davis
These were missed somehow during cherry-picking.
2015-03-31[Summary] Added actions to handle abnormal behavior during stream stop for ↵Greg Zharun
MIDI and Audio devices. Made correct error handling for cases we didn't see before. Removed redundant and experimental code I forgot to remove months ago. Added debug output which will help in future testing Conflicts: libs/ardour/ardour/audioengine.h libs/ardour/engine_state_controller.cc libs/backends/wavesaudio/waves_midi_device.cc
2015-03-31[Summary] Made device control panel open request synchronized with other ↵Greg Zharun
critical device operations. Made device reset correctly when control panel is closed. Conflicts: gtk2_ardour/tracks_control_panel.logic.cc libs/ardour/ardour/audioengine.h libs/backends/wavesaudio/wavesapi/devicemanager/WCMRPortAudioDeviceManager.cpp
2015-02-19change Audio backend sample time methods to use a 64 bit timelinePaul Davis
2014-12-23indent cleanupPaul Davis
2014-10-23small round of compiler warning fixesRobin Gareus
2014-10-22remove obsolete jack includes in libardourRobin Gareus
2014-10-01NOOP, re-indentRobin Gareus
2014-09-30copy over current Waves version of their backend, along with minor changes ↵Paul Davis
in libs/ardour and libs/backend/jack to fit with API changes
2014-06-08prepare MIDI latency measurement (backend)Robin Gareus
2014-02-24remove unused and unimplementable audio engine sample format codePaul Davis
2013-12-04change "cpu" in cpu load backend functionsPaul Davis
2013-12-03fix up wscript/build issues in exportvis after merge with masterPaul Davis
2013-10-21fix issues with recording while synced to JACK (non-pure-virtual method ↵Paul Davis
added to AudioBackend) and remove pause() from AudioEngine/AudioBackend APIs
2013-10-17add export visibility macros across libardourPaul Davis
2013-10-12adapt AudioEngine to new AudioBackend APIPaul Davis
2013-10-11Add AudioEngine::set_default_backendTim Mayberry
2013-10-07use AudioEngine destructor to do necessary stuff when shutting it down, and ↵Paul Davis
remove unused Config stuff in AudioEngine
2013-10-04Move processing thread list from ARDOUR::Graph into AudioBackend implementationTim Mayberry
2013-10-04Add AudioBackendThread class to support different thread type on windowsTim Mayberry
2013-09-13change inheritance so that an AudioBackend IS-A PortEnginePaul Davis
This allows a derived (concrete) implementation to share information (e.g. sample rate, buffer size) between the audio backend side of things and the port management side of things.
2013-09-12lots of changes to auto-start (and stop) the backend for latency ↵Paul Davis
measurements, and continuing work on the session construction/engine configuration flow
2013-09-12add AudioBackendNativeThread to serve the same role as jack_native_thread_tPaul Davis
2013-09-11make use of measured latency values to set dialog controls, and use actual ↵Paul Davis
port latency to compute extra delay
2013-09-10more tweaks to latency measurementPaul Davis
don't open ports till absolutely necessary (store names for future use). tidy up parts of the dialog (tab)
2013-09-10basic functionality for hardware latency measurementPaul Davis
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-09-04rename interface_ stuff in the engine dialog to device_, since that feels a ↵Paul Davis
bit clearer terminology
2013-08-09split up session code that uses parts of the JACK API (timebase + session ↵Paul Davis
event handling) and connect it directly to the jack audiobackend i've made the audiobackend call the session directly so that only one object (ARDOUR::Session) has a need for the JACK types and only one .cc file (session_jack.cc) needs jack.h. having ARDOUR::AudioEngine act as an intermediary would be cleaner conceptually but would end up causing two different ARDOUR objects to have jack types in their own API.
2013-08-07major redesign of MIDI port heirarchy and management (part 2)Paul Davis
2013-08-04start work on the changes to EngineControl (dialog) to integrate with new ↵Paul Davis
backend design, and add "requires-driver" concept to AudioBackend to handle JACK specifically
2013-08-03cleanup more dangling members of AudioEnginePaul Davis
2013-08-03fix problem with session exit caused by dangling unused members in AudioEnginePaul Davis
2013-08-03add tim's jack_utils code to rationalize setup of JACK configPaul Davis
2013-08-03audioengine branch can now load and run at least one test session.Paul Davis
currently hard-coded to deal only with the situation where JACK is already running
2013-08-01start code reorganization needed to deal with backend choices. compiles, ↵Paul Davis
links and runs as far as the startup screen now
2013-08-01full compilation and linking (coding not finished, will not run)Paul Davis
2013-07-31more stuff compilesPaul Davis
2013-07-30remove compile errors (still will not link and JACKPortEngine is not close ↵Paul Davis
to done)
2013-07-30jack_audiobackend.cc finally compilesPaul Davis
2013-07-29small steps toward getting this all working - add new JackConnection object ↵Paul Davis
to share jack_client_t between AudioBackend and PortEngine
2013-07-24part-way through getting the audioengine changes to compilePaul Davis
2013-07-24more miscellaneous changes for audioengine, all of this is still far from ↵Paul Davis
actually compiling
2013-07-23changes to audioengine.hPaul Davis
2013-07-23inch-like progress on defining the API for AudioBackend and separating ↵Paul Davis
AudioEngine from this
2012-10-25move ownership of LTC I/O ports to Session, and manage as IO objectsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13341 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-21add LTC generatorRobin Gareus
git-svn-id: svn://localhost/ardour2/branches/3.0@13315 d708f5d6-7413-0410-9779-e7cbd77b26cf