#include "video/render/video_render_frames.h"
#include <type_traits>
#include <utility>
#include "rtc_base/checks.h"
#include "rtc_base/logging.h"
#include "rtc_base/time_utils.h"
#include "system_wrappers/include/metrics.h"
namespace webrtc {
namespace {
const int kOldRenderTimestampMS = …;
const int kFutureRenderTimestampMS = …;
const uint32_t kEventMaxWaitTimeMs = …;
const uint32_t kMinRenderDelayMs = …;
const uint32_t kMaxRenderDelayMs = …;
const size_t kMaxIncomingFramesBeforeLogged = …;
uint32_t EnsureValidRenderDelay(uint32_t render_delay) { … }
}
VideoRenderFrames::VideoRenderFrames(uint32_t render_delay_ms)
: … { … }
VideoRenderFrames::~VideoRenderFrames() { … }
int32_t VideoRenderFrames::AddFrame(VideoFrame&& new_frame) { … }
absl::optional<VideoFrame> VideoRenderFrames::FrameToRender() { … }
uint32_t VideoRenderFrames::TimeToNextFrameRelease() { … }
bool VideoRenderFrames::HasPendingFrames() const { … }
}