12#ifndef ROC_AUDIO_WATCHDOG_H_
13#define ROC_AUDIO_WATCHDOG_H_
91 bool check_blank_timeout_()
const;
94 bool check_drops_timeout_();
96 void update_status_(
const Frame& frame);
111 unsigned curr_window_flags_;
Sample stream specification. Defines sample rate and channel layout.
bool update()
Update stream.
virtual bool read(Frame &frame)
Read audio frame.
Watchdog(IFrameReader &reader, const audio::SampleSpec &sample_spec, const WatchdogConfig &config, core::IAllocator &allocator)
Initialize.
bool valid() const
Check if object is successfully constructed.
Memory allocator interface.
Base class for non-copyable objects.
Memory allocator interface.
int64_t nanoseconds_t
Nanoseconds.
uint32_t timestamp_t
Audio packet timestamp.
WatchdogConfig()
Initialize config with default values.
core::nanoseconds_t breakage_detection_window
Breakage detection window, nanoseconds.
core::nanoseconds_t broken_playback_timeout
Timeout for frequent breakages, nanoseconds.
size_t frame_status_window
Frame status window size for logging, number of frames.
core::nanoseconds_t no_playback_timeout
Timeout for the lack of packets, nanoseconds.
Various units used in packets.