12#ifndef ROC_PIPELINE_SENDER_SESSION_H_
13#define ROC_PIPELINE_SENDER_SESSION_H_
75 virtual size_t on_get_num_sources();
Memory allocator interface.
Base class for non-copyable objects.
Optionally constructed object.
Sender endpoint sub-pipeline.
Sender session sub-pipeline.
bool create_control_pipeline(SenderEndpoint *control_endpoint)
Create control sub-pipeline.
audio::IFrameWriter * writer() const
Get audio writer.
void update()
Update pipeline.
core::nanoseconds_t get_update_deadline() const
Get deadline when the pipeline should be updated.
bool create_transport_pipeline(SenderEndpoint *source_endpoint, SenderEndpoint *repair_endpoint)
Create transport sub-pipeline.
SenderSession(const SenderConfig &config, 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.
Memory allocator interface.
FEC block encoder interface.
Audio frame encoder interface.
Interleaves packets before transmit.
Audio resampler interface.
int64_t nanoseconds_t
Nanoseconds.
uint32_t source_t
Packet source ID identifying packet stream.
uint64_t ntp_timestamp_t
NTP timestamp.
Optionally constructed object.
Route packets to writers.
Sender endpoint pipeline.
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.