![]() |
Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Feedback monitor. More...
#include <roc_audio/feedback_monitor.h>

Public Member Functions | |
| FeedbackMonitor (IFrameWriter &writer, Packetizer &packetizer, ResamplerWriter *resampler, const FeedbackConfig &feedback_config, const LatencyConfig &latency_config, const SampleSpec &sample_spec) | |
| Constructor. | |
| bool | is_valid () const |
| Check if the object was initialized successfully. | |
| bool | is_started () const |
| Check if feedback monitoring is started. | |
| void | start () |
| Enable feedback monitoring. | |
| void | process_feedback (packet::stream_source_t source_id, const LatencyMetrics &latency_metrics, const packet::LinkMetrics &link_metrics) |
| Process feedback from receiver. | |
| virtual void | write (Frame &frame) |
| Write audio frame. Passes frame to underlying writer. If feedback monitoring is started, also performs latency tuning. | |
| size_t | num_participants () const |
| Get number of remote participants from which there is feedback. | |
| const LatencyMetrics & | latency_metrics (size_t party_index) const |
Get latest latency metrics for session. party_index should be in range [0; num_participants()-1]. | |
| const packet::LinkMetrics & | link_metrics (size_t party_index) const |
Get latest link metrics for session. party_index should be in range [0; num_participants()-1]. | |
Public Member Functions inherited from roc::core::ListNode< Tag > | |
| ListData * | list_data () const |
| Get pointer to internal data. | |
Additional Inherited Members | |
Static Public Member Functions inherited from roc::core::ListNode< Tag > | |
| static ListNode * | list_node (ListData *data) |
| Get pointer to parent node from pointer to internal data. | |
Feedback monitor.
Features
Flow
Definition at line 63 of file feedback_monitor.h.
| roc::audio::FeedbackMonitor::FeedbackMonitor | ( | IFrameWriter & | writer, |
| Packetizer & | packetizer, | ||
| ResamplerWriter * | resampler, | ||
| const FeedbackConfig & | feedback_config, | ||
| const LatencyConfig & | latency_config, | ||
| const SampleSpec & | sample_spec | ||
| ) |
Constructor.
| bool roc::audio::FeedbackMonitor::is_started | ( | ) | const |
Check if feedback monitoring is started.
| bool roc::audio::FeedbackMonitor::is_valid | ( | ) | const |
Check if the object was initialized successfully.
| const LatencyMetrics & roc::audio::FeedbackMonitor::latency_metrics | ( | size_t | party_index | ) | const |
Get latest latency metrics for session. party_index should be in range [0; num_participants()-1].
| const packet::LinkMetrics & roc::audio::FeedbackMonitor::link_metrics | ( | size_t | party_index | ) | const |
Get latest link metrics for session. party_index should be in range [0; num_participants()-1].
| size_t roc::audio::FeedbackMonitor::num_participants | ( | ) | const |
Get number of remote participants from which there is feedback.
| void roc::audio::FeedbackMonitor::process_feedback | ( | packet::stream_source_t | source_id, |
| const LatencyMetrics & | latency_metrics, | ||
| const packet::LinkMetrics & | link_metrics | ||
| ) |
Process feedback from receiver.
| void roc::audio::FeedbackMonitor::start | ( | ) |
Enable feedback monitoring.
|
virtual |
Write audio frame. Passes frame to underlying writer. If feedback monitoring is started, also performs latency tuning.
Implements roc::audio::IFrameWriter.