зеркало из https://github.com/mozilla/gecko-dev.git
39 строки
1.7 KiB
Plaintext
39 строки
1.7 KiB
Plaintext
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
include protocol PTexture;
|
|
include protocol PVideoDecoder;
|
|
include LayersSurfaces;
|
|
include "mozilla/dom/MediaIPCUtils.h";
|
|
using VideoInfo from "MediaInfo.h";
|
|
using struct mozilla::layers::TextureFactoryIdentifier from "mozilla/layers/CompositorTypes.h";
|
|
using mozilla::CreateDecoderParams::Option from "PlatformDecoderModule.h";
|
|
using mozilla::CreateDecoderParams::OptionSet from "PlatformDecoderModule.h";
|
|
|
|
namespace mozilla {
|
|
|
|
sync protocol PVideoDecoderManager
|
|
{
|
|
manages PVideoDecoder;
|
|
parent:
|
|
// aBlacklistedD3D11Driver and aBlacklistedD3D9Driver are used to read back the blacklisted driver information
|
|
// from GPU process to content process.
|
|
// We should have added a new sync method to read back this information but, in that way, we also introduce one
|
|
// more sync IPC call.
|
|
// Considering that this information is only used for telemetry usage in bug 1393392 and should be removed once
|
|
// we have collected enough data, we add these two return values here for convenience.
|
|
sync PVideoDecoder(VideoInfo info, float framerate, OptionSet options, TextureFactoryIdentifier identifier)
|
|
returns (bool success,
|
|
nsCString aBlacklistedD3D11Driver,
|
|
nsCString aBlacklistedD3D9Driver,
|
|
nsCString aErrorDescription);
|
|
|
|
sync Readback(SurfaceDescriptorGPUVideo sd) returns (SurfaceDescriptor aResult);
|
|
|
|
async DeallocateSurfaceDescriptorGPUVideo(SurfaceDescriptorGPUVideo sd);
|
|
};
|
|
|
|
} // namespace mozilla
|