Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Sender session sub-pipeline. More...
#include <sender_session.h>
Public Member Functions | |
SenderSession (const SenderSinkConfig &sink_config, const rtp::EncodingMap &encoding_map, packet::PacketFactory &packet_factory, audio::FrameFactory &frame_factory, core::IArena &arena) | |
Initialize. More... | |
bool | is_valid () const |
Check if the session was succefully constructed. More... | |
bool | create_transport_pipeline (SenderEndpoint *source_endpoint, SenderEndpoint *repair_endpoint) |
Create transport sub-pipeline. More... | |
bool | create_control_pipeline (SenderEndpoint *control_endpoint) |
Create control sub-pipeline. More... | |
audio::IFrameWriter * | frame_writer () const |
Get frame writer. More... | |
ROC_ATTR_NODISCARD status::StatusCode | route_packet (const packet::PacketPtr &packet, core::nanoseconds_t current_time) |
Route a packet to the session. More... | |
core::nanoseconds_t | refresh (core::nanoseconds_t current_time) |
Refresh pipeline according to current time. More... | |
void | get_slot_metrics (SenderSlotMetrics &slot_metrics) const |
Get slot metrics. More... | |
void | get_participant_metrics (SenderParticipantMetrics *party_metrics, size_t *party_count) const |
Get metrics for remote participants. More... | |
Sender session sub-pipeline.
Contains:
Definition at line 52 of file sender_session.h.
roc::pipeline::SenderSession::SenderSession | ( | const SenderSinkConfig & | sink_config, |
const rtp::EncodingMap & | encoding_map, | ||
packet::PacketFactory & | packet_factory, | ||
audio::FrameFactory & | frame_factory, | ||
core::IArena & | arena | ||
) |
Initialize.
bool roc::pipeline::SenderSession::create_control_pipeline | ( | SenderEndpoint * | control_endpoint | ) |
Create control sub-pipeline.
bool roc::pipeline::SenderSession::create_transport_pipeline | ( | SenderEndpoint * | source_endpoint, |
SenderEndpoint * | repair_endpoint | ||
) |
Create transport sub-pipeline.
audio::IFrameWriter* roc::pipeline::SenderSession::frame_writer | ( | ) | const |
Get frame writer.
void roc::pipeline::SenderSession::get_participant_metrics | ( | SenderParticipantMetrics * | party_metrics, |
size_t * | party_count | ||
) | const |
Get metrics for remote participants.
party_metrics
points to array of metrics structs, and party_count
defines number of array elements. Metrics are written to given array, and party_count
is updated of actual number of elements written. If there is not enough space for all metrics, result is truncated. void roc::pipeline::SenderSession::get_slot_metrics | ( | SenderSlotMetrics & | slot_metrics | ) | const |
Get slot metrics.
bool roc::pipeline::SenderSession::is_valid | ( | ) | const |
Check if the session was succefully constructed.
core::nanoseconds_t roc::pipeline::SenderSession::refresh | ( | core::nanoseconds_t | current_time | ) |
Refresh pipeline according to current time.
ROC_ATTR_NODISCARD status::StatusCode roc::pipeline::SenderSession::route_packet | ( | const packet::PacketPtr & | packet, |
core::nanoseconds_t | current_time | ||
) |
Route a packet to the session.