Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Base interface for sinks and sources. More...
#include <idevice.h>
Public Member Functions | |
virtual ISink * | to_sink ()=0 |
Cast IDevice to ISink. More... | |
virtual ISource * | to_source ()=0 |
Cast IDevice to ISink. More... | |
virtual DeviceType | type () const =0 |
Get device type. More... | |
virtual DeviceState | state () const =0 |
Get device state. More... | |
virtual void | pause ()=0 |
Pause device. More... | |
virtual bool | resume ()=0 |
Resume device after pause. More... | |
virtual bool | restart ()=0 |
Restart device. More... | |
virtual audio::SampleSpec | sample_spec () const =0 |
Get sample specification of the device. More... | |
virtual core::nanoseconds_t | latency () const =0 |
Get latency of the device. More... | |
virtual bool | has_latency () const =0 |
Check if the device supports latency reports. More... | |
virtual bool | has_clock () const =0 |
Check if the device has own clock. More... | |
|
pure virtual |
Check if the device has own clock.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Check if the device supports latency reports.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Get latency of the device.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Pause device.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Restart device.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Resume device after pause.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Get sample specification of the device.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Get device state.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.
|
pure virtual |
Get device type.
Implemented in roc::sndio::WavSource, roc::sndio::WavSink, roc::sndio::SoxSource, roc::sndio::SoxSink, roc::sndio::SndfileSource, roc::sndio::SndfileSink, roc::sndio::PulseaudioDevice, roc::pipeline::TranscoderSource, roc::pipeline::TranscoderSink, roc::pipeline::SenderSink, and roc::pipeline::ReceiverSource.