Bug 1908670 - Home and newtab topic personalization needs region controls r=home...
[gecko.git] / ipc / glue / PUtilityAudioDecoder.ipdl
blob5b4b8711f27bd261ef6750036db7a00ffe36f764
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this
4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 include GraphicsMessages;
7 include protocol PRemoteDecoderManager;
8 include protocol PVideoBridge;
10 using mozilla::dom::ContentParentId from "mozilla/dom/ipc/IdType.h";
11 using mozilla::media::MediaCodecsSupported from "MediaCodecsSupport.h";
12 using mozilla::RemoteDecodeIn from "mozilla/RemoteDecoderManagerChild.h";
14 #ifdef MOZ_WMF_CDM
15 using mozilla::MFCDMCapabilitiesIPDL from "mozilla/PMFCDM.h";
16 #endif
18 namespace mozilla {
20 namespace ipc {
22 // This protocol allows to run media audio decoding infrastructure on top
23 // of the Utility process
24 [ParentProc=Utility, ChildProc=Parent]
25 protocol PUtilityAudioDecoder
27 parent:
28   async NewContentRemoteDecoderManager(
29             Endpoint<PRemoteDecoderManagerParent> endpoint, ContentParentId parentId);
31 #ifdef MOZ_WMF_MEDIA_ENGINE
32   async InitVideoBridge(Endpoint<PVideoBridgeChild> endpoint,
33                         ContentDeviceData contentDeviceData);
35   async UpdateVar(GfxVarUpdate var);
36 #endif
38 #ifdef MOZ_WMF_CDM
39   async GetKeySystemCapabilities() returns (MFCDMCapabilitiesIPDL[] result);
41   async UpdateWidevineL1Path(nsString path);
42 #endif
44 child:
45   async UpdateMediaCodecsSupported(RemoteDecodeIn aLocation,
46                                    MediaCodecsSupported aSupported);
48 #ifdef MOZ_WMF_MEDIA_ENGINE
49   async CompleteCreatedVideoBridge();
50 #endif
54 } // namespace ipc
56 } // namespace mozilla