12 #ifndef ROC_AUDIO_LATENCY_MONITOR_H_
13 #define ROC_AUDIO_LATENCY_MONITOR_H_
95 void compute_niq_latency_();
97 void query_link_meter_();
99 bool pre_process_(
const Frame& frame);
100 void post_process_(
const Frame& frame);
102 bool init_scaling_();
103 bool update_scaling_();
117 const bool enable_scaling_;
bool reclock(core::nanoseconds_t playback_timestamp)
Report playback timestamp of last frame returned by read.
LatencyMonitor(IFrameReader &frame_reader, const packet::SortedQueue &incoming_queue, const Depacketizer &depacketizer, const packet::ILinkMeter &link_meter, ResamplerReader *resampler, const LatencyConfig &config, const SampleSpec &packet_sample_spec, const SampleSpec &frame_sample_spec)
Constructor.
virtual bool read(Frame &frame)
Read audio frame from a pipeline.
bool is_valid() const
Check if the object was initialized successfully.
const LatencyMetrics & metrics() const
Get metrics.
bool is_alive() const
Check if the stream is still alive.
Resampler element for reading pipeline.
Sample specification. Describes sample rate and channels.
Base class for non-copyable objects.
int64_t nanoseconds_t
Nanoseconds.
Optionally constructed object.
Various units used in packets.