mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 00:06:09 +03:00
31 lines
1.4 KiB
Plaintext
31 lines
1.4 KiB
Plaintext
|
// Copyright 2015 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.
|
||
|
|
||
|
module media.mojom;
|
||
|
|
||
|
import "media/mojo/interfaces/audio_decoder.mojom";
|
||
|
import "media/mojo/interfaces/content_decryption_module.mojom";
|
||
|
import "media/mojo/interfaces/renderer.mojom";
|
||
|
import "media/mojo/interfaces/video_decoder.mojom";
|
||
|
|
||
|
// A factory for creating media mojo interfaces. Renderers can only access
|
||
|
// ContentDecryptionModules created with the same factory.
|
||
|
interface InterfaceFactory {
|
||
|
CreateAudioDecoder(AudioDecoder& audio_decoder);
|
||
|
CreateVideoDecoder(VideoDecoder& video_decoder);
|
||
|
|
||
|
// Creates a Renderer.
|
||
|
// The audio stream will be played on |audio_device_id|, which is defined in
|
||
|
// media/audio/audio_device_description.h. If |audio_device_id| is empty,
|
||
|
// kDefaultDeviceId will be used.
|
||
|
CreateRenderer(string audio_device_id, Renderer& renderer);
|
||
|
|
||
|
// Creates a CDM based on the |key_system| provided. A |key_system| is a
|
||
|
// generic term for a decryption mechanism and/or content protection provider.
|
||
|
// It should be a reverse domain name, e.g. "com.example.somesystem". However,
|
||
|
// this call may be initiated by an untrusted process (e.g. renderer), so the
|
||
|
// implementation must fully validate |key_system| before creating the CDM.
|
||
|
CreateCdm(string key_system, ContentDecryptionModule& cdm);
|
||
|
};
|