12 #ifndef ROC_PIPELINE_RECEIVER_SLOT_H_
13 #define ROC_PIPELINE_RECEIVER_SLOT_H_
77 size_t* party_count)
const;
Mixer. Mixes multiple input streams into one output stream.
IArena & arena() const
Get arena.
Base class for List element.
Optionally constructed object.
Base class for object with reference counter.
Receiver endpoint sub-pipeline.
core::nanoseconds_t refresh(core::nanoseconds_t current_time)
Pull packets and refresh sessions according to current time.
void get_metrics(ReceiverSlotMetrics &slot_metrics, ReceiverParticipantMetrics *party_metrics, size_t *party_count) const
Get metrics for slot and its participants.
ReceiverSlot(const ReceiverSourceConfig &source_config, const ReceiverSlotConfig &slot_config, StateTracker &state_tracker, audio::Mixer &mixer, const rtp::EncodingMap &encoding_map, packet::PacketFactory &packet_factory, audio::FrameFactory &frame_factory, core::IArena &arena)
Initialize.
bool is_valid() const
Check if the slot was succefully constructed.
ReceiverEndpoint * add_endpoint(address::Interface iface, address::Protocol proto, const address::SocketAddr &inbound_address, packet::IWriter *outbound_writer)
Add endpoint.
void reclock(core::nanoseconds_t playback_time)
Adjust sessions clock to match consumer clock.
size_t num_sessions() const
Get number of alive sessions.
RTP encoding map. Thread-safe. Returned encodings are immutable and can be safely used from any threa...
int64_t nanoseconds_t
Nanoseconds.
Receiver endpoint pipeline.
Base class for object with reference counter.
Receiver-side metrics specific to one participant (remote sender).
Parameters of receiver slot.
Receiver-side metrics of the whole slot.
Parameters of receiver session.