12 #ifndef ROC_AUDIO_DEPACKETIZER_H_
13 #define ROC_AUDIO_DEPACKETIZER_H_
61 size_t n_decoded_samples;
64 size_t n_filled_samples;
67 size_t n_dropped_packets;
73 : n_decoded_samples(0)
75 , n_dropped_packets(0)
80 void read_frame_(Frame& frame);
87 void update_packet_(FrameInfo& info);
90 void set_frame_props_(Frame& frame,
const FrameInfo& info);
95 IFrameDecoder& payload_decoder_;
97 const SampleSpec sample_spec_;
103 bool valid_capture_ts_;
bool is_started() const
Did depacketizer catch first packet?
Depacketizer(packet::IReader &reader, IFrameDecoder &payload_decoder, const SampleSpec &sample_spec, bool beep)
Initialization.
virtual bool read(Frame &frame)
Read audio frame.
bool is_valid() const
Was depacketizer constructed without errors?
packet::stream_timestamp_t next_timestamp() const
Get next timestamp to be rendered.
Audio frame decoder interface.
Sample specification. Describes sample rate and channels.
Base class for non-copyable objects.
Audio frame decoder interface.
float sample_t
Raw audio sample.
int64_t nanoseconds_t
Nanoseconds.
uint32_t stream_timestamp_t
Packet stream timestamp.