#include "media/video/alpha_video_encoder_wrapper.h"
#include <algorithm>
#include <cmath>
#include "base/logging.h"
#include "base/numerics/checked_math.h"
#include "base/strings/stringprintf.h"
#include "base/time/time.h"
#include "base/trace_event/trace_event.h"
#include "media/base/svc_scalability_mode.h"
#include "media/base/timestamp_constants.h"
#include "media/base/video_color_space.h"
#include "media/base/video_frame.h"
#include "media/base/video_util.h"
#include "media/video/video_encoder_info.h"
namespace media {
AlphaVideoEncoderWrapper::AlphaVideoEncoderWrapper(
std::unique_ptr<VideoEncoder> yuv_encoder,
std::unique_ptr<VideoEncoder> alpha_encoder)
: … { … }
void AlphaVideoEncoderWrapper::Initialize(VideoCodecProfile profile,
const Options& options,
EncoderInfoCB info_cb,
OutputCB output_cb,
EncoderStatusCB done_cb) { … }
void AlphaVideoEncoderWrapper::Encode(scoped_refptr<VideoFrame> frame,
const EncodeOptions& encode_options,
EncoderStatusCB done_cb) { … }
void AlphaVideoEncoderWrapper::ChangeOptions(const Options& options,
OutputCB output_cb,
EncoderStatusCB done_cb) { … }
AlphaVideoEncoderWrapper::~AlphaVideoEncoderWrapper() { … }
void AlphaVideoEncoderWrapper::Flush(EncoderStatusCB done_cb) { … }
void AlphaVideoEncoderWrapper::YuvOutputCallback(
VideoEncoderOutput output,
std::optional<CodecDescription> desc) { … }
void AlphaVideoEncoderWrapper::AlphaOutputCallback(
VideoEncoderOutput output,
std::optional<CodecDescription> desc) { … }
}