blob: acc40a454c2aec45fcc2a4c3809d4312e5dafde6 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Next MinVersion: 8
module arc.mojom;
import "components/arc/common/video_decode_accelerator.mojom";
import "components/arc/common/video_encode_accelerator.mojom";
import "components/arc/common/video_protected_buffer_allocator.mojom";
// Deprecated method IDs: 0
// Next method ID: 2
interface VideoHost {
// Requests an IPC channel from Chrome's browser process to bootstrap a new
// mojo child process and a token which can be used to create a message pipe
// connected to a new VideoAcceleratorFactory.
[MinVersion=4]
OnBootstrapVideoAcceleratorFactory@1() => (handle channel_handle,
string token);
};
// Next method ID: 2
interface VideoInstance {
// DEPRECATED: Please use Init@1 instead.
InitDeprecated@0(VideoHost host_ptr);
// Establishes full-duplex communication with the host.
[MinVersion=5] Init@1(VideoHost host_ptr) => ();
};
// Deprecated method IDs: 0
// Next method ID: 4
interface VideoAcceleratorFactory {
[MinVersion=1]
CreateEncodeAccelerator@1(VideoEncodeAccelerator& video_encoder);
[MinVersion=6]
CreateDecodeAccelerator@2(VideoDecodeAccelerator& video_decoder);
[Minversion=7]
CreateProtectedBufferAllocator@3(
VideoProtectedBufferAllocator& video_protected_buffer_allocator);
};