| // 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); |
| }; |