Implement timing frames.

Timing information is gathered in EncodedImage,
starting at encoders. Then it's sent using RTP header extension. In the
end, it's gathered at the GenericDecoder. Actual reporting and tests
will be in the next CLs.

BUG=webrtc:7594

Review-Url: https://codereview.webrtc.org/2911193002
Cr-Commit-Position: refs/heads/master@{#18659}
This commit is contained in:
ilnik
2017-06-19 07:18:55 -07:00
committed by Commit Bot
parent 3b921f0856
commit 04f4d126f8
53 changed files with 844 additions and 16 deletions

View File

@ -31,6 +31,7 @@ struct VCMFrameInformation {
void* userData;
VideoRotation rotation;
VideoContentType content_type;
EncodedImage::Timing timing;
};
class VCMDecodedFrameCallback : public DecodedImageCallback {
@ -68,6 +69,7 @@ class VCMDecodedFrameCallback : public DecodedImageCallback {
rtc::CriticalSection lock_;
VCMTimestampMap _timestampMap GUARDED_BY(lock_);
uint64_t _lastReceivedPictureID;
int64_t ntp_offset_;
};
class VCMGenericDecoder {