#include "media/gpu/frame_size_estimator.h"
#include <cmath>
#include "base/check.h"
#include "base/check_op.h"
#include "base/logging.h"
#include "media/gpu/h264_rate_control_util.h"
namespace media {
namespace {
void CalculateQSteps(uint32_t qp,
uint32_t qp_prev,
float& q_step,
float& q_step_prev,
float& delta_q_step_factor) { … }
}
FrameSizeEstimator::FrameSizeEstimator(base::TimeDelta max_window_size,
float initial_qp_size,
float initial_size_correction)
: … { … }
FrameSizeEstimator::~FrameSizeEstimator() = default;
size_t FrameSizeEstimator::Estimate(uint32_t qp, uint32_t qp_prev) const { … }
uint32_t FrameSizeEstimator::InverseEstimate(size_t target_frame_bytes,
uint32_t qp_prev) const { … }
void FrameSizeEstimator::Update(size_t frame_bytes,
uint32_t qp,
uint32_t qp_prev,
base::TimeDelta elapsed_time) { … }
void FrameSizeEstimator::UpdateMaxWindowSize(base::TimeDelta max_window_size) { … }
}