update neteq 4 to facilitate NACK
BUG= R=turaj@webrtc.org, turajs@google.com Review URL: https://webrtc-codereview.appspot.com/2008004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@4637 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -167,6 +167,10 @@ class NetEqImpl : public webrtc::NetEq {
|
||||
int* current_memory_size_bytes,
|
||||
int* max_memory_size_bytes) const;
|
||||
|
||||
// Get sequence number and timestamp of the latest RTP.
|
||||
// This method is to facilitate NACK.
|
||||
virtual int DecodedRtpInfo(int* sequence_number, uint32_t* timestamp);
|
||||
|
||||
private:
|
||||
static const int kOutputSizeMs = 10;
|
||||
static const int kMaxFrameSize = 2880; // 60 ms @ 48 kHz.
|
||||
@ -318,6 +322,16 @@ class NetEqImpl : public webrtc::NetEq {
|
||||
int decoder_error_code_;
|
||||
CriticalSectionWrapper* crit_sect_;
|
||||
|
||||
// These values are used by NACK module to estimate time-to-play of
|
||||
// a missing packet. Occasionally, NetEq might decide to decode more
|
||||
// than one packet. Therefore, these values store sequence number and
|
||||
// timestamp of the first packet pulled from the packet buffer. In
|
||||
// such cases, these values do not exactly represent the sequence number
|
||||
// or timestamp associated with a 10ms audio pulled from NetEq. NACK
|
||||
// module is designed to compensate for this.
|
||||
int decoded_packet_sequence_number_;
|
||||
uint32_t decoded_packet_timestamp_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(NetEqImpl);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user