Added log messages for some important call setup events:
- First audio RTP packet sent / received - First RTP packet of the first video frame sent / received - Last RTP packet of the first video frame sent / received These timestamps should make it easier to measure how fast the call becomes established from the user's perspective. Review URL: https://codereview.webrtc.org/1765443002 Cr-Commit-Position: refs/heads/master@{#12287}
This commit is contained in:
@ -1282,9 +1282,13 @@ void VCMJitterBuffer::CountFrame(const VCMFrameBuffer& frame) {
|
||||
if (frame.IsSessionComplete()) {
|
||||
if (frame.FrameType() == kVideoFrameKey) {
|
||||
++receive_statistics_.key_frames;
|
||||
if (receive_statistics_.key_frames == 1) {
|
||||
LOG(LS_INFO) << "Received first complete key frame";
|
||||
}
|
||||
} else {
|
||||
++receive_statistics_.delta_frames;
|
||||
}
|
||||
|
||||
if (stats_callback_ != NULL)
|
||||
stats_callback_->OnFrameCountsUpdated(receive_statistics_);
|
||||
}
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "webrtc/base/onetimeevent.h"
|
||||
#include "webrtc/base/thread_annotations.h"
|
||||
#include "webrtc/base/thread_checker.h"
|
||||
#include "webrtc/modules/video_coding/codec_database.h"
|
||||
@ -219,6 +220,7 @@ class VideoReceiver {
|
||||
VCMProcessTimer _retransmissionTimer;
|
||||
VCMProcessTimer _keyRequestTimer;
|
||||
QpParser qp_parser_;
|
||||
ThreadUnsafeOneTimeEvent first_frame_received_;
|
||||
};
|
||||
|
||||
} // namespace vcm
|
||||
|
||||
@ -323,6 +323,13 @@ int32_t VideoReceiver::Decode(uint16_t maxWaitTimeMs) {
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (first_frame_received_()) {
|
||||
LOG(LS_INFO) << "Received first "
|
||||
<< (frame->Complete() ? "complete" : "incomplete")
|
||||
<< " decodable video frame";
|
||||
}
|
||||
|
||||
const int32_t ret = Decode(*frame);
|
||||
_receiver.ReleaseFrame(frame);
|
||||
return ret;
|
||||
|
||||
Reference in New Issue
Block a user