summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/audio_backend.h
AgeCommit message (Collapse)Author
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-11-26Add API to enforce valid device selection.Robin Gareus
2016-04-16don't let the AudioEngine inherit PortEngine's class doc.Robin Gareus
2016-02-11Add API to AudioBackend for choosing between portaudio blocking or callback APITim Mayberry
2015-12-04add interface for latency updates w/o restarting the backendRobin Gareus
This is useful for USB devices. Since there is a ringbuffer in the driver (common on ALSA but also other platforms) to align the USB stream with USB bus timing the latency can differ every time the device is re-opened.
2015-12-04add an interface to select playback buffers/periodRobin 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-10-02define more backend error-messages.Robin Gareus
2015-10-01Add a couple of error codes to AudioBackend::ErrorCodeTim Mayberry
Also use the error message from ARDOUR_UI::reconnect_to_engine as the default error string
2015-09-02Add API to AudioBackend to request update to devicesTim Mayberry
2015-09-02Add enums to AudioBackend class for getting standard error and device name ↵Tim Mayberry
strings These could also be used for return values but are initially intended for shared translations of error messages between backends. Ideally IMO translation should occur in the GUI(as there may be more than one) in response to these(or similar) error codes but that would take agreement and a fair bit of refactoring. As it is there are errors that occur in the backends that users will want to know about this at least allows consistent translations to be shared between backends.
2015-08-11remove -Woverload-virtual ambiguity (from 1d3690d)Robin Gareus
this breaks compilation in engine_dialog.cc
2015-08-11Backend API to query rates&sizes for separate I/O.Robin Gareus
2015-05-31Add API to ARDOUR::AudioBackend to allow different input and output devicesTim Mayberry
Used spaces instead of tabs for whitespace consistancy with rest of header
2015-02-19change Audio backend sample time methods to use a 64 bit timelinePaul Davis
2015-01-16ASIO devices have a preferred buffersize.Ben Loftis
pass this value up so it can be used by the engine dialog. if for some reason the engine dialog still doesn't have a buffersize selected, print an error and try 512 instead of crashing.
2014-10-23add 'available' interface to the AudioBackendInfoRobin Gareus
If a backend can be loaded, it does not mean that it can be used; e.g. weak-linked jack-backend if libjack is not available.
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-13add AudioEngine API to configure individual MIDI devicesRobin Gareus
2014-05-01Add AudioBackend::info() method to retrieve AudioBackendInfo objectPaul Davis
Goal is to be able to call AudioBackendInfo::already_configured() from the right place.
2014-03-24fix return in ::drop_device()Paul Davis
2014-03-24add ::drop_device() method to ARDOUR::AudioBackendPaul Davis
2014-02-24remove unused and unimplementable audio engine sample format codePaul Davis
2013-12-05Use the correct visibility macrosTim Mayberry
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-11-27move AudioBackend::_start() into protected, and expand a bit on documenting ↵Paul Davis
::start() vs ::_start()
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-21add default sample rate and buffer size methods to AudioBackendPaul Davis
2013-10-17add export visibility macros across libardourPaul Davis
2013-10-12slightly change AudioBackend API to allow specifying that the device is ↵Paul Davis
being started for latency measurement We don't want any existing latency settings used when re-measuring latency measurements.
2013-10-10add API to get current MIDI option from an audio/MIDI backendPaul Davis
2013-10-10add API to AudioBackend to allow discovery of possible MIDI I/O optionsPaul Davis
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-17substantive changes to allow the audio/MIDI setup dialog to change settings ↵Paul Davis
as intended So far only tested with JACK backend, but expected to be more correct for other backends too
2013-09-13use visibility control on JACK audio backend, so that we can import this ↵Paul Davis
change into windows branch
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-12add AudioBackendNativeThread to serve the same role as jack_native_thread_tPaul Davis
2013-09-09move control app launching back into audio backend to allow ASIO/CoreAudio ↵Paul Davis
model to work; push initial state of AMS dialog to backend Issues remain with the basic model of the AMS dialog - when is newly chosen state pushed into the backend (which can then modify the control app button sensitivity. This is a special problem for this button because APIs like ASIO and CoreAudio probably don't allow us to launch a control app for an arbitrary device, but only one actually in use. In this sense it is different from properties like available buffer size etc, where we can typically query without actually using the device.
2013-09-09launching control app is now responsibility of ardour GUI, not audio ↵Paul Davis
backend; use ARDOUR_DEVICE_CONTROL_APP if set in the environment
2013-09-09initial work on adding access to h/w control apps when ardour starts JACKPaul Davis
2013-09-09add can_change_{sample_rate,buffer_size}_while_running() methods to an ↵Paul Davis
AudioBackend Allows the GUI and other stuff to know whether or not changing the SR/bufsize is possible while running, which is about to become useful
2013-08-05add notion of unavailable devices to ARDOUR::AudioBackendPaul 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-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-30jack_audiobackend.cc finally compilesPaul Davis