Croc::core::AlignedStorage< Size > | Fixed-size maximum-aligned storage |
Croc::core::AlignedStorage< 0 *sizeof(bool)> | |
Croc::core::AlignedStorage< 0 *sizeof(char)> | |
Croc::core::AlignedStorage< 0 *sizeof(float)> | |
Croc::core::AlignedStorage< 0 *sizeof(roc::core::Slice< uint8_t >)> | |
Croc::core::AlignedStorage< 0 *sizeof(sample_t)> | |
Croc::core::AlignedStorage< 0 *sizeof(SharedPtr< Packet >)> | |
Croc::core::AlignedStorage< 0 *sizeof(size_t)> | |
Croc::core::AlignedStorage< 0 *sizeof(sox_sample_t)> | |
Croc::core::AlignedStorage< 0 *sizeof(T)> | |
Croc::core::AlignedStorage< 0 *sizeof(void *)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(char)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(roc::sdp::ConnectionData)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(roc::sndio::DriverInfo)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(roc::sndio::IBackend *)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(Route)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(Slot)> | |
Croc::core::AlignedStorage< EmbeddedCapacity *sizeof(unsigned)> | |
Croc::core::AlignedStorage< NumEmbeddedBuckets *sizeof(Bucket)> | |
Croc::core::AlignedStorage< sizeof(roc::audio::ChannelMapperReader) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::ChannelMapperWriter) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::Depacketizer) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::LatencyMonitor) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::Mixer) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::Packetizer) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::PoisonReader) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::PoisonWriter) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::ProfilingReader) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::ProfilingWriter) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::ResamplerReader) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::ResamplerWriter) > | |
Croc::core::AlignedStorage< sizeof(roc::audio::Watchdog) > | |
Croc::core::AlignedStorage< sizeof(roc::core::Semaphore) > | |
Croc::core::AlignedStorage< sizeof(roc::core::Ticker) > | |
Croc::core::AlignedStorage< sizeof(roc::fec::Reader) > | |
Croc::core::AlignedStorage< sizeof(roc::fec::Writer) > | |
Croc::core::AlignedStorage< sizeof(roc::packet::DelayedReader) > | |
Croc::core::AlignedStorage< sizeof(roc::packet::Interleaver) > | |
Croc::core::AlignedStorage< sizeof(roc::packet::Router) > | |
Croc::core::AlignedStorage< sizeof(roc::packet::SortedQueue) > | |
Croc::core::AlignedStorage< sizeof(roc::pipeline::ReceiverEndpoint) > | |
Croc::core::AlignedStorage< sizeof(roc::pipeline::SenderEndpoint) > | |
Croc::core::AlignedStorage< sizeof(roc::rtcp::Composer) > | |
Croc::core::AlignedStorage< sizeof(roc::rtcp::Parser) > | |
Croc::core::AlignedStorage< sizeof(roc::rtcp::Session) > | |
Croc::core::AlignedStorage< sizeof(roc::rtp::Composer) > | |
Croc::core::AlignedStorage< sizeof(roc::rtp::Parser) > | |
Croc::core::AlignedStorage< sizeof(roc::rtp::Populator) > | |
Croc::core::AlignedStorage< sizeof(roc::rtp::Validator) > | |
Croc::core::AlignedStorage< sizeof(T) > | |
Croc::core::AlignedStorage< sizeof(T)> | |
Croc::core::AlignOps | Alignment operations |
►CAllocationPolicy | |
►Croc::core::RefCounted< T, AllocationPolicy > | Base class for reference counted object |
Croc::core::Buffer< sample_t > | |
Croc::core::Buffer< uint8_t > | |
Croc::core::Buffer< audio::sample_t > | |
Croc::core::AtomicOps | Atomic operations. This wrapper exists because on non-C11 compilers we use another implementation |
Croc::rtcp::header::ByePacket | Goodbye RTCP packet (BYE) |
Croc::rtcp::header::ByeReasonHeader | BYE reason header |
Croc::rtcp::header::ByeSourceHeader | BYE source header |
Croc::rtcp::ByeTraverser | BYE packet traverer |
Croc::fec::CodecConfig | FEC codec parameters |
Croc::sndio::Config | Sink and source config |
Croc::sdp::ConnectionData | SDP connection data field |
Croc::peer::ContextConfig | Peer context config |
Croc::pipeline::ConverterConfig | Converter parameters |
Croc::core::CustomAllocation | Allocation policy for objects (de)allocated using custom functions |
Croc::sndio::DriverInfo | Driver information |
Croc::core::EndianOps | Endian operations |
Croc::rtp::ExtentionHeader | RTP extension header |
Croc::core::FactoryAllocation< Factory > | Allocation policy for objects (de)allocated using speciailized factory |
►Croc::core::FactoryAllocation< BufferFactory< audio::sample_t > > | |
Croc::core::RefCounted< Buffer< audio::sample_t >, FactoryAllocation< BufferFactory< audio::sample_t > > > | |
►Croc::core::FactoryAllocation< BufferFactory< sample_t > > | |
Croc::core::RefCounted< Buffer< sample_t >, FactoryAllocation< BufferFactory< sample_t > > > | |
►Croc::core::FactoryAllocation< BufferFactory< T > > | |
►Croc::core::RefCounted< Buffer< T >, FactoryAllocation< BufferFactory< T > > > | |
Croc::core::Buffer< T > | Buffer |
►Croc::core::FactoryAllocation< BufferFactory< uint8_t > > | |
Croc::core::RefCounted< Buffer< uint8_t >, FactoryAllocation< BufferFactory< uint8_t > > > | |
►Croc::core::FactoryAllocation< PacketFactory > | |
►Croc::core::RefCounted< Packet, core::FactoryAllocation< PacketFactory > > | |
Croc::packet::Packet | Packet |
Croc::packet::FEC | FECFRAME packet |
Croc::rtp::Format | RTP payload format |
Croc::audio::FreqEstimatorConfig | FreqEstimator tunable parameters |
Croc::core::HashmapNode::HashmapNodeData | Hashmap node data |
Croc::rtp::Header | RTP header |
►Croc::core::IAllocator | Memory allocator interface |
Croc::core::HeapAllocator | Heap allocator implementation |
►Croc::sndio::IBackend | Backend interface |
Croc::sndio::PulseaudioBackend | Pulseaudio backend |
Croc::sndio::SoxBackend | SoX backend |
►Croc::fec::IBlockDecoder | FEC block decoder interface |
Croc::fec::OpenfecDecoder | Decoder implementation using OpenFEC library |
►Croc::fec::IBlockEncoder | FEC block encoder interface |
Croc::fec::OpenfecEncoder | Encoder implementation using OpenFEC library |
►Croc::netio::ICloseHandler | Close handler interface |
Croc::netio::NetworkLoop | Network event loop thread |
Croc::netio::TcpServerPort | TCP server |
►Croc::packet::IComposer | Packet composer interface |
Croc::fec::Composer< PayloadID, Type, Pos > | FECFRAME packet composer |
Croc::rtcp::Composer | RTCP packet composer |
Croc::rtp::Composer | RTP packet composer |
►Croc::netio::IConn | Connection interface |
Croc::netio::TcpConnectionPort | TCP connection port |
Croc::netio::IConnAcceptor | Connection acceptor interface |
Croc::ctl::IControlTaskCompleter | Control task completion handler |
►Croc::ctl::IControlTaskExecutor | Control task executor interface |
►Croc::ctl::ControlTaskExecutor< ControlLoop > | |
Croc::ctl::ControlLoop | Control loop thread |
Croc::ctl::ControlTaskExecutor< E > | Control task executor |
►Croc::audio::IFrameDecoder | Audio frame decoder interface |
Croc::audio::PcmDecoder | PCM decoder |
►Croc::audio::IFrameEncoder | Audio frame encoder interface |
Croc::audio::PcmEncoder | PCM encoder |
Croc::netio::INetworkTaskCompleter | Network task completion handler |
►Croc::packet::IParser | Packet parser interface |
Croc::fec::Parser< PayloadID, Type, Pos > | FECFRAME packet parser |
Croc::rtcp::Parser | RTCP packet parser |
Croc::rtp::Parser | RTP packet parser |
Croc::pipeline::IPipelineTaskCompleter | Pipeline task completion handler |
►Croc::pipeline::IPipelineTaskScheduler | Pipeline task scheduler interface. PipelineLoop uses this interface to schedule asynchronous work. Method calls may come from different threads, but are serialized |
Croc::peer::Receiver | Receiver peer |
Croc::peer::Sender | Sender peer |
►Croc::packet::IReader | Packet reader interface |
Croc::fec::Reader | FEC reader |
Croc::packet::ConcurrentQueue | Concurrent blocking packet queue |
Croc::packet::DelayedReader | Delayed reader |
Croc::packet::Queue | Packet queue |
Croc::packet::SortedQueue | Sorted packet queue |
Croc::rtp::Populator | RTP populator |
Croc::rtp::Validator | RTP validator |
►Croc::rtcp::IReceiverHooks | Receiver hooks interface |
Croc::pipeline::ReceiverSessionGroup | Receiver session group |
►Croc::audio::IResampler | Audio writer interface |
Croc::audio::BuiltinResampler | Resamples audio stream with non-integer dynamically changing factor |
Croc::audio::SpeexResampler | Resamples audio stream using speex resampler |
►Croc::netio::IResolverRequestHandler | Resolver request result handler interface |
Croc::netio::NetworkLoop | Network event loop thread |
►Croc::rtcp::ISenderHooks | Sender hooks interface |
Croc::pipeline::SenderSession | Sender session sub-pipeline |
Croc::rtcp::ByeTraverser::Iterator | Packet iterator |
Croc::rtcp::SdesTraverser::Iterator | Packet iterator |
Croc::rtcp::Traverser::Iterator | Packet iterator |
Croc::rtcp::XrTraverser::Iterator | Packet iterator |
►Croc::sndio::ITerminal | Base interface for sinks and sources |
►Croc::sndio::ISink | Sink interface |
Croc::pipeline::ConverterSink | Converter sink pipeline |
Croc::pipeline::SenderLoop | Sender pipeline loop |
Croc::pipeline::SenderSink | Sender sink pipeline |
Croc::sndio::PulseaudioSink | PulseAudio sink, |
Croc::sndio::SoxSink | SoX sink |
►Croc::sndio::ISource | Source interface |
Croc::pipeline::ConverterSource | Converter source pipeline |
Croc::pipeline::ReceiverLoop | Receiver pipeline loop |
Croc::pipeline::ReceiverSource | Receiver source pipeline |
Croc::sndio::SoxSource | SoX source |
►Croc::netio::ITerminateHandler | Termination handler interface |
Croc::netio::NetworkLoop | Network event loop thread |
Croc::netio::TcpServerPort | TCP server |
►Croc::packet::IWriter | Packet writer interface |
Croc::fec::Writer | FEC writer |
Croc::netio::UdpSenderPort | UDP sender |
Croc::packet::ConcurrentQueue | Concurrent blocking packet queue |
Croc::packet::Interleaver | Interleaves packets to transmit them in pseudo random order |
Croc::packet::Queue | Packet queue |
Croc::packet::Router | Route packets to writers |
Croc::packet::SortedQueue | Sorted packet queue |
Croc::pipeline::ReceiverEndpoint | Receiver endpoint sub-pipeline |
Croc::pipeline::SenderEndpoint | Sender endpoint sub-pipeline |
Croc::audio::LatencyMonitorConfig | Parameters for latency monitor |
Croc::fec::LDPC_Repair_PayloadID | LDPC Repair FEC Payload ID |
Croc::fec::LDPC_Source_PayloadID | LDPC Source FEC Payload ID |
Croc::rtcp::LinkMetrics | Metrics for network link. Calculated independently on both sender and receiver |
Croc::core::ListNode::ListNodeData | List node data |
Croc::core::LogMessage | Log message |
Croc::core::MpscQueueNode::MpscQueueData | List node data |
►Croc::core::NonCopyable< T > | Base class for non-copyable objects |
Croc::core::Array< char, EmbeddedCapacity > | |
Croc::core::Array< sample_t > | |
Croc::core::Array< float > | |
Croc::core::Array< char > | |
Croc::core::Array< char, 0 > | |
Croc::core::Array< roc::core::Slice< uint8_t > > | |
Croc::core::Array< void * > | |
Croc::core::Array< bool > | |
Croc::core::Array< SharedPtr< Packet > > | |
Croc::core::Array< size_t > | |
Croc::core::Array< Route, 2 > | |
Croc::core::Array< Slot, 8 > | |
Croc::core::Array< unsigned, 2 > | |
Croc::core::Array< roc::sdp::ConnectionData, 1 > | |
Croc::core::Array< roc::sndio::IBackend *, MaxBackends > | |
Croc::core::Array< roc::sndio::DriverInfo, MaxDrivers > | |
Croc::core::Array< sox_sample_t > | |
Croc::core::Atomic< int > | |
Croc::core::Atomic< uint32_t > | |
Croc::core::Atomic< roc::core::Semaphore * > | |
Croc::core::Atomic< int32_t > | |
Croc::core::BufferFactory< sample_t > | |
Croc::core::BufferFactory< uint8_t > | |
Croc::core::BufferFactory< audio::sample_t > | |
Croc::core::List< roc::audio::IFrameWriter, roc::core::NoOwnership > | |
Croc::core::List< roc::audio::IFrameReader, roc::core::NoOwnership > | |
Croc::core::List< Slab, roc::core::NoOwnership > | |
Croc::core::List< Slot, roc::core::NoOwnership > | |
Croc::core::List< roc::ctl::BasicControlEndpoint > | |
Croc::core::List< roc::ctl::ControlTask, roc::core::NoOwnership > | |
Croc::core::List< roc::netio::BasicPort > | |
Croc::core::List< roc::netio::TcpConnectionPort > | |
Croc::core::List< roc::packet::Packet > | |
Croc::core::List< roc::pipeline::ReceiverSession > | |
Croc::core::List< roc::pipeline::ReceiverSlot > | |
Croc::core::List< roc::pipeline::SenderSlot > | |
Croc::core::List< roc::sdp::MediaDescription > | |
Croc::core::MpscQueue< roc::ctl::ControlTask, roc::core::NoOwnership > | |
Croc::core::MpscQueue< roc::netio::NetworkTask, roc::core::NoOwnership > | |
Croc::core::MpscQueue< roc::packet::Packet > | |
Croc::core::MpscQueue< roc::pipeline::PipelineTask, roc::core::NoOwnership > | |
Croc::core::Optional< IBufferWriter, ROC_MAX(sizeof(StaticBufferWriter), sizeof(DynamicBufferWriter<>))> | |
Croc::core::Optional< roc::core::Semaphore > | |
Croc::core::Optional< roc::audio::ChannelMapperWriter > | |
Croc::core::Optional< roc::audio::PoisonWriter > | |
Croc::core::Optional< roc::audio::ResamplerWriter > | |
Croc::core::Optional< roc::audio::ProfilingWriter > | |
Croc::core::Optional< roc::audio::ChannelMapperReader > | |
Croc::core::Optional< roc::audio::PoisonReader > | |
Croc::core::Optional< roc::audio::ResamplerReader > | |
Croc::core::Optional< roc::audio::ProfilingReader > | |
Croc::core::Optional< roc::rtp::Parser > | |
Croc::core::Optional< roc::rtcp::Parser > | |
Croc::core::Optional< roc::core::Ticker > | |
Croc::core::Optional< roc::packet::Router > | |
Croc::core::Optional< roc::packet::SortedQueue > | |
Croc::core::Optional< roc::rtp::Validator > | |
Croc::core::Optional< roc::rtp::Populator > | |
Croc::core::Optional< roc::packet::DelayedReader > | |
Croc::core::Optional< roc::audio::Watchdog > | |
Croc::core::Optional< roc::fec::Reader > | |
Croc::core::Optional< roc::audio::Depacketizer > | |
Croc::core::Optional< roc::audio::LatencyMonitor > | |
Croc::core::Optional< roc::rtcp::Composer > | |
Croc::core::Optional< roc::rtcp::Session > | |
Croc::core::Optional< roc::pipeline::ReceiverEndpoint > | |
Croc::core::Optional< roc::audio::Mixer > | |
Croc::core::Optional< roc::rtp::Composer > | |
Croc::core::Optional< roc::packet::Interleaver > | |
Croc::core::Optional< roc::fec::Writer > | |
Croc::core::Optional< roc::audio::Packetizer > | |
Croc::core::Optional< roc::pipeline::SenderEndpoint > | |
Croc::core::RefCounted< Buffer< T >, FactoryAllocation< BufferFactory< T > > > | |
►Croc::core::RefCounted< BasicControlEndpoint, core::StandardAllocation > | |
Croc::ctl::BasicControlEndpoint | Base class for control endpoints |
►Croc::core::RefCounted< BasicPort, core::StandardAllocation > | |
►Croc::netio::BasicPort | Base class for ports |
Croc::netio::TcpConnectionPort | TCP connection port |
Croc::netio::TcpServerPort | TCP server |
Croc::netio::UdpReceiverPort | UDP receiver |
Croc::netio::UdpSenderPort | UDP sender |
Croc::core::RefCounted< Packet, core::FactoryAllocation< PacketFactory > > | |
►Croc::core::RefCounted< ReceiverEndpoint, core::StandardAllocation > | |
Croc::pipeline::ReceiverEndpoint | Receiver endpoint sub-pipeline |
►Croc::core::RefCounted< ReceiverSession, core::StandardAllocation > | |
Croc::pipeline::ReceiverSession | Receiver session sub-pipeline |
►Croc::core::RefCounted< ReceiverSlot, core::StandardAllocation > | |
Croc::pipeline::ReceiverSlot | Receiver slot |
►Croc::core::RefCounted< SenderSlot, core::StandardAllocation > | |
Croc::pipeline::SenderSlot | Sender slot |
►Croc::core::RefCounted< MediaDescription, core::StandardAllocation > | |
Croc::sdp::MediaDescription | SDP media description |
Croc::core::RefCounted< Buffer< sample_t >, FactoryAllocation< BufferFactory< sample_t > > > | |
Croc::core::RefCounted< Buffer< uint8_t >, FactoryAllocation< BufferFactory< uint8_t > > > | |
Croc::core::RefCounted< Buffer< audio::sample_t >, FactoryAllocation< BufferFactory< audio::sample_t > > > | |
Croc::core::ScopedPtr< roc::audio::IResampler > | |
Croc::core::ScopedPtr< roc::packet::IParser > | |
Croc::core::ScopedPtr< roc::audio::IFrameDecoder > | |
Croc::core::ScopedPtr< roc::fec::IBlockDecoder > | |
Croc::core::ScopedPtr< roc::packet::IComposer > | |
Croc::core::ScopedPtr< roc::fec::IBlockEncoder > | |
Croc::core::ScopedPtr< roc::audio::IFrameEncoder > | |
Croc::core::Seqlock< nanoseconds_t > | |
Croc::core::Seqlock< core::nanoseconds_t > | |
Croc::core::Seqlock< uint64_t > | |
Croc::core::StringBuffer< 56 > | |
Croc::core::StringBuffer< 16 > | |
Croc::address::EndpointUri | Network endpoint URI |
Croc::address::IoUri | Audio file or device URI |
Croc::address::ProtocolMap | Protocol attributes map |
Croc::address::endpoint_uri_to_str | Convert EndpointUri to string |
Croc::address::io_uri_to_str | Convert IoUri to string |
Croc::address::socket_addr_to_str | Convert network address to string |
Croc::audio::BuiltinResampler | Resamples audio stream with non-integer dynamically changing factor |
Croc::audio::ChannelMapper | Channel mapper. Converts between frames with specified channel masks |
Croc::audio::ChannelMapperReader | Channel mapper reader. Reads frames from nested reader and maps them to another channel mask |
Croc::audio::ChannelMapperWriter | Channel mapper writer. Reads frames from nested writer and maps them to another channel mask |
Croc::audio::Depacketizer | Depacketizer |
Croc::audio::Fanout | Fanout. Duplicates audio stream to multiple output writers |
Croc::audio::Frame | Audio frame |
Croc::audio::FreqEstimator | Evaluates sender's frequency to receivers's frequency ratio |
Croc::audio::LatencyMonitor | Session latency monitor |
Croc::audio::Mixer | Mixer. Mixes multiple input streams into one output stream |
Croc::audio::NullWriter | Null writer |
Croc::audio::Packetizer | Packetizer |
Croc::audio::PcmDecoder | PCM decoder |
Croc::audio::PcmEncoder | PCM encoder |
Croc::audio::PcmMapper | PCM format mapper. Convert between PCM formats |
Croc::audio::PoisonReader | Poisons audio frames before reading them |
Croc::audio::PoisonWriter | Poisons audio frames after writing them |
Croc::audio::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 |
Croc::audio::ProfilingReader | Profiling reader |
Croc::audio::ProfilingWriter | Profiling writer |
Croc::audio::ResamplerMap | Factory class for IResampler objects, according to the ResamplerBackend input |
Croc::audio::ResamplerReader | Resampler element for reading pipeline |
Croc::audio::ResamplerWriter | Resampler element for writing pipeline |
Croc::audio::SpeexResampler | Resamples audio stream using speex resampler |
Croc::audio::Watchdog | Watchdog |
Croc::core::Array< T, EmbeddedCapacity > | Dynamic array |
Croc::core::Atomic< T > | Atomic integer. Provides sequential consistency. For a fine-grained memory order control, see AtomicOps |
Croc::core::Atomic< T * > | Atomic pointer. Provides sequential consistency. For a fine-grained memory order control, see AtomicOps |
Croc::core::BufferFactory< T > | Buffer factory |
Croc::core::Cond | Condition variable |
Croc::core::Console | Console |
Croc::core::CrashHandler | Crash handler |
Croc::core::Hashmap< T, EmbeddedCapacity, OwnershipPolicy > | Intrusive hash table |
Croc::core::HeapAllocator | Heap allocator implementation |
Croc::core::List< T, OwnershipPolicy > | Intrusive doubly-linked list |
Croc::core::LogBackend | Log backend |
Croc::core::Logger | Logger |
Croc::core::MpscQueue< T, OwnershipPolicy > | Thread-safe lock-free node-based intrusive multi-producer single-consumer queue |
Croc::core::Mutex | Mutex |
Croc::core::Optional< T, Size > | Optionally constructed object |
Croc::core::Printer | Printer |
Croc::core::RateLimiter | Rate limiter |
Croc::core::ScopedLock< Mutex > | RAII mutex lock |
Croc::core::ScopedPtr< T, AllocationPolicy > | Unique ownrship pointer |
Croc::core::Semaphore | Semaphore |
Croc::core::Seqlock< T > | Seqlock |
Croc::core::Singleton< T > | Singleton |
Croc::core::SlabPool | Slab pool |
Croc::core::StringBuffer< EmbeddedCapacity > | String buffer |
Croc::core::StringBuilder | String builder |
Croc::core::StringList | Dynamic list of strings |
Croc::core::TempFile | Temporary file |
Croc::core::Ticker | Ticker |
Croc::core::Timer | Thread-safe timer |
Croc::core::errno_to_str | Convert errno to string |
Croc::ctl::ControlInterfaceMap | Control interface map |
Croc::ctl::ControlLoop | Control loop thread |
Croc::fec::CodecMap | FEC codec map |
Croc::fec::Composer< PayloadID, Type, Pos > | FECFRAME packet composer |
Croc::fec::OpenfecDecoder | Decoder implementation using OpenFEC library |
Croc::fec::OpenfecEncoder | Encoder implementation using OpenFEC library |
Croc::fec::Parser< PayloadID, Type, Pos > | FECFRAME packet parser |
Croc::fec::Reader | FEC reader |
Croc::fec::Writer | FEC writer |
Croc::netio::Resolver | Hostname resolver |
Croc::packet::ConcurrentQueue | Concurrent blocking packet queue |
Croc::packet::DelayedReader | Delayed reader |
Croc::packet::Interleaver | Interleaves packets to transmit them in pseudo random order |
Croc::packet::PacketFactory | Packet factory |
Croc::packet::Queue | Packet queue |
Croc::packet::Router | Route packets to writers |
Croc::packet::SortedQueue | Sorted packet queue |
►Croc::peer::BasicPeer | Base class for peers |
Croc::peer::Receiver | Receiver peer |
Croc::peer::Sender | Sender peer |
Croc::peer::Context | Peer context |
Croc::pipeline::ConverterSink | Converter sink pipeline |
Croc::pipeline::ConverterSource | Converter source pipeline |
►Croc::pipeline::PipelineLoop | Base class for task-based pipelines |
Croc::pipeline::ReceiverLoop | Receiver pipeline loop |
Croc::pipeline::SenderLoop | Sender pipeline loop |
Croc::pipeline::ReceiverSessionGroup | Receiver session group |
Croc::pipeline::ReceiverSource | Receiver source pipeline |
Croc::pipeline::ReceiverState | Receiver pipeline state. Thread-safe |
Croc::pipeline::SenderEndpoint | Sender endpoint sub-pipeline |
Croc::pipeline::SenderSession | Sender session sub-pipeline |
Croc::pipeline::SenderSink | Sender sink pipeline |
Croc::rtcp::Builder | RTCP compound packet builder |
Croc::rtcp::Composer | RTCP packet composer |
Croc::rtcp::Parser | RTCP packet parser |
Croc::rtp::Composer | RTP packet composer |
Croc::rtp::FormatMap | RTP payload format map |
Croc::rtp::Parser | RTP packet parser |
Croc::rtp::Populator | RTP populator |
Croc::rtp::Validator | RTP validator |
Croc::sdp::SessionDescription | SDP session description |
Croc::sndio::BackendDispatcher | Backend dispatcher |
Croc::sndio::BackendMap | Backend map |
Croc::sndio::PulseaudioBackend | Pulseaudio backend |
Croc::sndio::PulseaudioSink | PulseAudio sink, |
Croc::sndio::Pump | Audio pump |
Croc::sndio::SoxBackend | SoX backend |
Croc::sndio::SoxSink | SoX sink |
Croc::sndio::SoxSource | SoX source |
►Croc::core::NonCopyable< HashmapNode > | |
Croc::core::HashmapNode | Base class for hashmap element |
►Croc::core::NonCopyable< ListNode > | |
►Croc::core::ListNode | Base class for list element |
►Croc::audio::IFrameReader | Frame reader interface |
Croc::audio::ChannelMapperReader | Channel mapper reader. Reads frames from nested reader and maps them to another channel mask |
Croc::audio::Depacketizer | Depacketizer |
Croc::audio::Mixer | Mixer. Mixes multiple input streams into one output stream |
Croc::audio::PoisonReader | Poisons audio frames before reading them |
Croc::audio::ProfilingReader | Profiling reader |
Croc::audio::ResamplerReader | Resampler element for reading pipeline |
Croc::audio::Watchdog | Watchdog |
Croc::sndio::ISource | Source interface |
►Croc::audio::IFrameWriter | Frame writer interface |
Croc::audio::ChannelMapperWriter | Channel mapper writer. Reads frames from nested writer and maps them to another channel mask |
Croc::audio::Fanout | Fanout. Duplicates audio stream to multiple output writers |
Croc::audio::NullWriter | Null writer |
Croc::audio::Packetizer | Packetizer |
Croc::audio::PoisonWriter | Poisons audio frames after writing them |
Croc::audio::ProfilingWriter | Profiling writer |
Croc::audio::ResamplerWriter | Resampler element for writing pipeline |
Croc::sndio::ISink | Sink interface |
Croc::ctl::BasicControlEndpoint | Base class for control endpoints |
►Croc::ctl::ControlTask | Base class for control tasks |
Croc::ctl::ControlLoop::Tasks::AttachSink | Attach sink to endpoint at given URI |
Croc::ctl::ControlLoop::Tasks::AttachSource | Attach source to endpoint at given URI |
Croc::ctl::ControlLoop::Tasks::BindEndpoint | Bind endpoint on local URI |
Croc::ctl::ControlLoop::Tasks::ConnectEndpoint | Connect endpoint on remote URI |
Croc::ctl::ControlLoop::Tasks::CreateEndpoint | Create endpoint on given interface |
Croc::ctl::ControlLoop::Tasks::DeleteEndpoint | Delete endpoint, if it exists |
Croc::ctl::ControlLoop::Tasks::DetachSink | Detach sink from endpoint |
Croc::ctl::ControlLoop::Tasks::DetachSource | Detach source from endpoint |
Croc::ctl::ControlLoop::Tasks::PipelineProcessing | Process pending pipeline tasks on control thread |
Croc::netio::BasicPort | Base class for ports |
Croc::packet::Packet | Packet |
Croc::pipeline::ReceiverEndpoint | Receiver endpoint sub-pipeline |
Croc::pipeline::ReceiverSession | Receiver session sub-pipeline |
Croc::pipeline::ReceiverSlot | Receiver slot |
Croc::pipeline::SenderSlot | Sender slot |
Croc::sdp::MediaDescription | SDP media description |
►Croc::core::NonCopyable< MpscQueueNode > | |
►Croc::core::MpscQueueNode | MpscQueue node |
Croc::ctl::ControlTask | Base class for control tasks |
►Croc::netio::NetworkTask | Base class for network loop tasks |
Croc::netio::NetworkLoop::Tasks::AddTcpClientPort | Add TCP client port |
Croc::netio::NetworkLoop::Tasks::AddTcpServerPort | Add TCP server port |
Croc::netio::NetworkLoop::Tasks::AddUdpReceiverPort | Add UDP datagram receiver port |
Croc::netio::NetworkLoop::Tasks::AddUdpSenderPort | Add UDP datagram sender port |
Croc::netio::NetworkLoop::Tasks::RemovePort | Remove port |
Croc::netio::NetworkLoop::Tasks::ResolveEndpointAddress | Resolve endpoint address |
Croc::packet::Packet | Packet |
►Croc::pipeline::PipelineTask | Base class for pipeline tasks |
►Croc::pipeline::ReceiverLoop::Task | Base task class |
Croc::pipeline::ReceiverLoop::Tasks::CreateEndpoint | Create endpoint on given interface of the slot |
Croc::pipeline::ReceiverLoop::Tasks::CreateSlot | Add new slot |
Croc::pipeline::ReceiverLoop::Tasks::DeleteEndpoint | Delete endpoint on given interface of the slot, if it exists |
►Croc::pipeline::SenderLoop::Task | Base task class |
Croc::pipeline::SenderLoop::Tasks::CheckSlotIsReady | Check if the slot configuration is done. This is true when all necessary endpoints are added and configured |
Croc::pipeline::SenderLoop::Tasks::CreateEndpoint | Create endpoint on given interface of the slot |
Croc::pipeline::SenderLoop::Tasks::CreateSlot | Add new slot |
Croc::pipeline::SenderLoop::Tasks::SetEndpointDestinationAddress | Set UDP address for output packets of endpoint |
Croc::pipeline::SenderLoop::Tasks::SetEndpointDestinationWriter | Set writer to which endpoint will write packets |
Croc::core::NonCopyable< RefCounted< BasicControlEndpoint, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< BasicPort, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< Buffer< audio::sample_t >, FactoryAllocation< BufferFactory< audio::sample_t > > > > | |
Croc::core::NonCopyable< RefCounted< Buffer< sample_t >, FactoryAllocation< BufferFactory< sample_t > > > > | |
Croc::core::NonCopyable< RefCounted< Buffer< T >, FactoryAllocation< BufferFactory< T > > > > | |
Croc::core::NonCopyable< RefCounted< Buffer< uint8_t >, FactoryAllocation< BufferFactory< uint8_t > > > > | |
Croc::core::NonCopyable< RefCounted< MediaDescription, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< Packet, core::FactoryAllocation< PacketFactory > > > | |
Croc::core::NonCopyable< RefCounted< ReceiverEndpoint, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< ReceiverSession, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< ReceiverSlot, core::StandardAllocation > > | |
Croc::core::NonCopyable< RefCounted< SenderSlot, core::StandardAllocation > > | |
►Croc::core::NonCopyable< RefCounted< T, AllocationPolicy > > | |
Croc::core::RefCounted< T, AllocationPolicy > | Base class for reference counted object |
►Croc::core::NonCopyable< Thread > | |
►Croc::core::Thread | Base class for thread objects |
Croc::ctl::ControlTaskQueue | Control task queue |
Croc::netio::NetworkLoop | Network event loop thread |
►Croc::core::NonCopyable< UsageCounter > | |
►Croc::core::UsageCounter | Base class for object with usage counter |
Croc::netio::IConnHandler | Connection event handler interface |
Croc::core::NoOwnership< T > | No ownership |
Croc::rtcp::header::NtpTimestamp | Helper to store 64-bit ntp timestamp in a common way among RTCP |
Croc::rtcp::header::PacketHeader | RTCP packet header, common for all RTCP packet types |
Croc::audio::PcmFormat | PCM format description |
Croc::audio::ProfilerConfig | Profiler Configuration Parameters. Controls profiling interval and duration of each circular buffer chunk |
Croc::address::ProtocolAttrs | Protocol attributes |
Croc::fec::ReaderConfig | FEC reader parameters |
Croc::pipeline::ReceiverCommonConfig | Receiver common parameters |
Croc::pipeline::ReceiverConfig | Receiver parameters |
Croc::rtcp::header::ReceiverReportPacket | Receiver Report RTCP packet (RR) |
Croc::pipeline::ReceiverSessionConfig | Receiver session parameters |
Croc::rtcp::ReceptionMetrics | Metrics sent from receiver to sender per source |
Croc::rtcp::header::ReceptionReportBlock | Reception report block |
Croc::core::RefCountedOwnership< T > | Reference counted object ownership |
Croc::netio::ResolverRequest | Resolver request |
Croc::fec::RS8M_PayloadID | Reed-Solomon Source or Repair Payload ID (for m=8) |
Croc::packet::RTCP | RTCP compound packet |
Croc::packet::RTP | RTP packet |
Croc::audio::SampleSpec | Sample stream specification. Defines sample rate and channel layout |
Croc::rtcp::SdesChunk | Parsed SDES chunk |
Croc::rtcp::header::SdesChunkHeader | SDES chunk header |
Croc::rtcp::SdesItem | Parsed SDES item |
Croc::rtcp::header::SdesItemHeader | SDES item header |
Croc::rtcp::header::SdesPacket | Source Description RTCP packet (SDES) |
Croc::rtcp::SdesTraverser | SDES packet traverer |
Croc::pipeline::SenderConfig | Sender parameters |
Croc::rtcp::header::SenderReportPacket | Sender Report RTCP packet (SR) |
Croc::rtcp::SendingMetrics | Metrics sent from sender to receiver |
Croc::rtcp::Session | RTCP session. Processes incoming RTCP packets and generates outgoing RTCP packets |
Croc::core::SharedPtr< T, OwnershipPolicy > | Shared ownership intrusive pointer |
Croc::core::SharedPtr< Packet > | |
Croc::core::SharedPtr< roc::core::Buffer< audio::sample_t > > | |
Croc::core::SharedPtr< roc::core::Buffer< sample_t > > | |
Croc::core::SharedPtr< roc::core::Buffer< T > > | |
Croc::core::SharedPtr< roc::core::Buffer< uint8_t > > | |
Croc::core::SharedPtr< roc::ctl::BasicControlEndpoint > | |
Croc::core::SharedPtr< roc::netio::BasicPort > | |
Croc::core::Slice< T > | Slice |
Croc::core::Slice< audio::sample_t > | |
Croc::core::Slice< sample_t > | |
Croc::core::Slice< uint8_t > | |
Croc::address::SocketAddr | Socket address |
Croc::netio::SocketOptions | Socket options |
►Croc::core::StandardAllocation | Allocation policy for objects (de)allocated using IAllocator |
Croc::core::RefCounted< BasicControlEndpoint, core::StandardAllocation > | |
Croc::core::RefCounted< BasicPort, core::StandardAllocation > | |
Croc::core::RefCounted< ReceiverEndpoint, core::StandardAllocation > | |
Croc::core::RefCounted< ReceiverSession, core::StandardAllocation > | |
Croc::core::RefCounted< ReceiverSlot, core::StandardAllocation > | |
Croc::core::RefCounted< SenderSlot, core::StandardAllocation > | |
Croc::core::RefCounted< MediaDescription, core::StandardAllocation > | |
Croc::pipeline::PipelineLoop::Stats | Task processing statistics |
Croc::pipeline::TaskConfig | Task processing parameters |
Croc::ctl::ControlLoop::Tasks | Subclasses for specific tasks |
Croc::netio::NetworkLoop::Tasks | Subclasses for specific tasks |
Croc::pipeline::ReceiverLoop::Tasks | Subclasses for specific tasks |
Croc::pipeline::SenderLoop::Tasks | Subclasses for specific tasks |
►Croc::netio::TcpConnectionConfig | TCP connection parameters |
Croc::netio::TcpClientConfig | TCP connection parameters |
Croc::netio::TcpServerConfig | TCP server parameters |
Croc::rtcp::Traverser | RTCP compound packet traverser |
Croc::packet::UDP | UDP packet |
Croc::netio::UdpReceiverConfig | UDP receiver parameters |
Croc::netio::UdpSenderConfig | UDP sender parameters |
Croc::rtp::ValidatorConfig | Validator parameters |
Croc::audio::WatchdogConfig | Watchdog parameters |
Croc::fec::WriterConfig | FEC writer parameters |
Croc::rtcp::header::XrBlockHeader | XR Block Header |
Croc::rtcp::header::XrDlrrBlock | XR DLRR Report block |
Croc::rtcp::header::XrDlrrSubblock | XR DLRR Report sub-block |
Croc::rtcp::header::XrPacket | RTCP Extended Report Packet |
Croc::rtcp::header::XrRrtrBlock | XR Receiver Reference Time Report block |
Croc::rtcp::XrTraverser | XR packet traverser |