![]() |
Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Audio frames and audio processing. More...
Classes | |
class | BuiltinResampler |
Resamples audio stream with non-integer dynamically changing factor. More... | |
class | ChannelMapper |
Channel mapper. Converts between frames with specified channel masks. More... | |
class | ChannelMapperReader |
Channel mapper reader. Reads frames from nested reader and maps them to another channel mask. More... | |
class | ChannelMapperWriter |
Channel mapper writer. Reads frames from nested writer and maps them to another channel mask. More... | |
class | Depacketizer |
Depacketizer. More... | |
class | Fanout |
Fanout. Duplicates audio stream to multiple output writers. More... | |
class | Frame |
Audio frame. More... | |
class | FreqEstimator |
Evaluates sender's frequency to receivers's frequency ratio. More... | |
struct | FreqEstimatorConfig |
FreqEstimator tunable parameters. More... | |
class | IFrameDecoder |
Audio frame decoder interface. More... | |
class | IFrameEncoder |
Audio frame encoder interface. More... | |
class | IFrameReader |
Frame reader interface. More... | |
class | IFrameWriter |
Frame writer interface. More... | |
class | IResampler |
Audio writer interface. More... | |
class | LatencyMonitor |
Session latency monitor. More... | |
struct | LatencyMonitorConfig |
Parameters for latency monitor. More... | |
class | Mixer |
Mixer. Mixes multiple input streams into one output stream. More... | |
class | NullWriter |
Null writer. More... | |
class | Packetizer |
Packetizer. More... | |
class | PcmDecoder |
PCM decoder. More... | |
class | PcmEncoder |
PCM encoder. More... | |
struct | PcmFormat |
PCM format description. More... | |
class | PcmMapper |
PCM format mapper. Convert between PCM formats. More... | |
class | PoisonReader |
Poisons audio frames before reading them. More... | |
class | PoisonWriter |
Poisons audio frames after writing them. More... | |
class | Profiler |
Profiler The role of the profiler is to report the average processing speed (# of samples processed per time unit) during the last N seconds. We want to calculate the average processing speed efficiently (with O(1) complexity, without allocations, and as lightweight as possible). The problems with this are that the we have variable-sized frames and SMA requires fixed size chunks. To efficiently perform this calculation a ring buffer is employed. The idea behind the ring buffer is that each chunk of the buffer is the average speed of 10ms worth of samples. The ring buffer is initialized with fixed size (N * 1000)ms / (10ms) chunks. Within each chunk a weighted mean is used to calculate the average speed during those 10ms. Each frame will contribute a different number of samples to each chunk, the chunk speed is then weighted based on how many samples are contributed at what frame speed. As the chunks get populated the moving average is calculated. When the buffer is not entirely full the cumulative moving average algorithm is used and once the buffer is full the simple moving average algorithm is used. More... | |
struct | ProfilerConfig |
Profiler Configuration Parameters. Controls profiling interval and duration of each circular buffer chunk. More... | |
class | ProfilingReader |
Profiling reader. More... | |
class | ProfilingWriter |
Profiling writer. More... | |
class | ResamplerMap |
Factory class for IResampler objects, according to the ResamplerBackend input. More... | |
class | ResamplerReader |
Resampler element for reading pipeline. More... | |
class | ResamplerWriter |
Resampler element for writing pipeline. More... | |
class | SampleSpec |
Sample stream specification. Defines sample rate and channel layout. More... | |
class | SpeexResampler |
Resamples audio stream using speex resampler. More... | |
class | Watchdog |
Watchdog. More... | |
struct | WatchdogConfig |
Watchdog parameters. More... | |
Typedefs | |
typedef float | sample_t |
Audio sample. | |
Functions | |
const char * | resampler_backend_to_str (ResamplerBackend) |
Get string name of resampler backend. | |
Variables | |
const sample_t | fe_decim_h [fe_decim_len] |
Impulse response of decimation filter with factor of 10. | |
const sample_t | fe_decim_h_gain |
Filters gain, sum(fe_decim_h). | |
const PcmFormat | SampleFormat |
Sample format description. | |
const sample_t | SampleMin |
Minimum possible value of a sample. | |
const sample_t | SampleMax |
Maximum possible value of a sample. | |
Audio frames and audio processing.
typedef float roc::audio::sample_t |
PCM sample encoding.
Definition at line 21 of file pcm_format.h.
PCM sample endianess.
Enumerator | |
---|---|
PcmEndian_Native | Endian native to current CPU. |
PcmEndian_Big | Big endian. |
PcmEndian_Little | Little endian. |
Definition at line 51 of file pcm_format.h.
Resampler backends.
Enumerator | |
---|---|
ResamplerBackend_Default | Default backend. |
ResamplerBackend_Builtin | Roc built-in resampler. |
ResamplerBackend_Speex | SpeexDSP resampler. |
Definition at line 19 of file resampler_backend.h.
Resampler parameters presets.
Enumerator | |
---|---|
ResamplerProfile_Low | Low quality, fast speed. |
ResamplerProfile_Medium | Medium quality, medium speed. |
ResamplerProfile_High | Hight quality, low speed. |
Definition at line 19 of file resampler_profile.h.
const char * roc::audio::resampler_backend_to_str | ( | ResamplerBackend | ) |
Get string name of resampler backend.
|
extern |
Impulse response of decimation filter with factor of 10.
|
extern |
Filters gain, sum(fe_decim_h).
|
extern |
Sample format description.
|
extern |
Maximum possible value of a sample.
|
extern |
Minimum possible value of a sample.