#include "media/video/video_encoder_fallback.h"
#include "base/logging.h"
#include "base/memory/ref_counted.h"
#include "base/sequence_checker.h"
#include "media/base/video_frame.h"
#include "media/video/video_encoder_info.h"
namespace media {
VideoEncoderFallback::VideoEncoderFallback(
std::unique_ptr<VideoEncoder> main_encoder,
CreateFallbackCB create_fallback_cb)
: … { … }
VideoEncoderFallback::~VideoEncoderFallback() = default;
void VideoEncoderFallback::Initialize(VideoCodecProfile profile,
const Options& options,
EncoderInfoCB info_cb,
OutputCB output_cb,
EncoderStatusCB done_cb) { … }
VideoEncoder::PendingEncode VideoEncoderFallback::MakePendingEncode(
scoped_refptr<VideoFrame> frame,
const EncodeOptions& encode_options,
EncoderStatusCB done_cb) { … }
void VideoEncoderFallback::Encode(scoped_refptr<VideoFrame> frame,
const EncodeOptions& encode_options,
EncoderStatusCB done_cb) { … }
void VideoEncoderFallback::ChangeOptions(const Options& options,
OutputCB output_cb,
EncoderStatusCB done_cb) { … }
void VideoEncoderFallback::Flush(EncoderStatusCB done_cb) { … }
void VideoEncoderFallback::FallbackInitCompleted(PendingEncode args,
EncoderStatus status) { … }
void VideoEncoderFallback::FallbackInitialize(EncoderStatusCB init_done_cb) { … }
void VideoEncoderFallback::FallbackEncode(PendingEncode args,
EncoderStatus main_encoder_status) { … }
void VideoEncoderFallback::CallInfo(const VideoEncoderInfo& encoder_info) { … }
void VideoEncoderFallback::CallOutput(VideoEncoderOutput output,
std::optional<CodecDescription> desc) { … }
}