#include "media/mojo/services/stable_video_decoder_factory_service.h"
#include "base/task/single_thread_task_runner.h"
#include "base/task/thread_pool.h"
#include "components/viz/common/switches.h"
#include "gpu/config/gpu_driver_bug_workarounds.h"
#include "gpu/config/gpu_preferences.h"
#include "media/base/media_log.h"
#include "media/base/media_util.h"
#include "media/gpu/buildflags.h"
#include "media/gpu/chromeos/mailbox_frame_registry.h"
#include "media/gpu/chromeos/platform_video_frame_pool.h"
#include "media/gpu/chromeos/registered_mailbox_frame_converter.h"
#include "media/gpu/chromeos/video_decoder_pipeline.h"
#include "media/gpu/gpu_video_accelerator_util.h"
#include "media/gpu/gpu_video_decode_accelerator_helpers.h"
#include "media/mojo/services/mojo_media_client.h"
#include "media/mojo/services/mojo_video_decoder_service.h"
#include "media/mojo/services/stable_video_decoder_service.h"
#include "media/video/video_decode_accelerator.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
namespace media {
namespace {
class MojoMediaClientImpl : public MojoMediaClient { … };
}
StableVideoDecoderFactoryService::StableVideoDecoderFactoryService(
const gpu::GpuFeatureInfo& gpu_feature_info)
: … { … }
StableVideoDecoderFactoryService::~StableVideoDecoderFactoryService() { … }
void StableVideoDecoderFactoryService::BindReceiver(
mojo::PendingReceiver<stable::mojom::StableVideoDecoderFactory> receiver,
base::OnceClosure disconnect_cb) { … }
void StableVideoDecoderFactoryService::CreateStableVideoDecoder(
mojo::PendingReceiver<stable::mojom::StableVideoDecoder> receiver,
mojo::PendingRemote<stable::mojom::StableVideoDecoderTracker> tracker) { … }
}