MCPcopy Create free account
hub / github.com/GrowthEase/LLS-Player / GetBufferedFramesTimeMs

Method GetBufferedFramesTimeMs

src/modules/video_coding/frame_buffer2.cc:713–731  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

711}
712
713uint32_t FrameBuffer::GetBufferedFramesTimeMs() {
714 MutexLock lock(&mutex_);
715 if (frames_.empty()) {
716 return 0;
717 }
718
719 absl::optional<unsigned int> last_decoded_frame_timestamp =
720 decoded_frames_history_.GetLastDecodedFrameTimestamp();
721 if (!last_decoded_frame_timestamp.has_value()) {
722 return frames_.size() * 40; // fps 25
723 }
724 if (last_decoded_frame_timestamp.value() == 0 ||
725 frames_.rbegin()->second.frame == nullptr) {
726 return frames_.size() * 40; // fps 25
727 }
728
729 uint32_t buffered_frames_ms = webrtc::ForwardDiff(*last_decoded_frame_timestamp, frames_.rbegin()->second.frame->Timestamp()) / 90;
730 return buffered_frames_ms;
731}
732
733FrameBuffer::FrameInfo::FrameInfo() = default;
734FrameBuffer::FrameInfo::FrameInfo(FrameInfo&&) = default;

Callers 1

CurrentDelayMsMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected