12#ifndef ROC_PIPELINE_RECEIVER_SESSION_GROUP_H_
13#define ROC_PIPELINE_RECEIVER_SESSION_GROUP_H_
60 virtual size_t on_get_num_sources();
Mixer. Mixes multiple input streams into one output stream.
Memory allocator interface.
Intrusive doubly-linked list.
Base class for non-copyable objects.
Optionally constructed object.
void route_packet(const packet::PacketPtr &packet)
Route packet to session.
size_t num_sessions() const
Get number of alive sessions.
void advance_sessions(packet::timestamp_t timestamp)
Advance session timestamp.
void reclock_sessions(packet::ntp_timestamp_t timestamp)
Adjust session clock to match consumer clock.
ReceiverSessionGroup(const ReceiverConfig &receiver_config, ReceiverState &receiver_state, audio::Mixer &mixer, const rtp::FormatMap &format_map, packet::PacketFactory &packet_factory, core::BufferFactory< uint8_t > &byte_buffer_factory, core::BufferFactory< audio::sample_t > &sample_buffer_factory, core::IAllocator &allocator)
Initialize.
Receiver session sub-pipeline.
Receiver pipeline state. Thread-safe.
Receiver hooks interface.
Memory allocator interface.
Intrusive doubly-linked list.
uint32_t source_t
Packet source ID identifying packet stream.
uint32_t timestamp_t
Audio packet timestamp.
uint64_t ntp_timestamp_t
NTP timestamp.
Receiver session pipeline.
Receiver session parameters.
Metrics for network link. Calculated independently on both sender and receiver.
Metrics sent from receiver to sender per source.
Metrics sent from sender to receiver.