| Index: media/video/video_decode_accelerator.h
|
| diff --git a/media/video/video_decode_accelerator.h b/media/video/video_decode_accelerator.h
|
| index da184ee2d46247169282e08793638e64aa18cc81..81f3794b2961122ad51de7ecbb1473b31e5b4026 100644
|
| --- a/media/video/video_decode_accelerator.h
|
| +++ b/media/video/video_decode_accelerator.h
|
| @@ -34,6 +34,29 @@ class MEDIA_EXPORT VideoDecodeAccelerator {
|
| };
|
| using SupportedProfiles = std::vector<SupportedProfile>;
|
|
|
| + struct MEDIA_EXPORT Capabilities {
|
| + Capabilities();
|
| + ~Capabilities();
|
| + // Flags that can be associated with a VDA.
|
| + enum Flags {
|
| + NO_FLAGS = 0,
|
| +
|
| + // Normally, the VDA is required to be able to provide all PictureBuffers
|
| + // to the client via PictureReady(), even if the client does not return
|
| + // any of them via ReusePictureBuffer(). The client is only required to
|
| + // return PictureBuffers when it holds all of them, if it wants to get
|
| + // more decoded output. See VideoDecoder::CanReadWithoutStalling for
|
| + // more context.
|
| + // If this flag is set, then the VDA does not make this guarantee. The
|
| + // client must return PictureBuffers to be sure that new frames will be
|
| + // provided via PictureReady.
|
| + NEEDS_ALL_PICTURE_BUFFERS_TO_DECODE = 1 << 0,
|
| + };
|
| +
|
| + SupportedProfiles supported_profiles;
|
| + uint32_t flags;
|
| + };
|
| +
|
| // Enumeration of potential errors generated by the API.
|
| // Note: Keep these in sync with PP_VideoDecodeError_Dev. Also do not
|
| // rearrange, reuse or remove values as they are used for gathering UMA
|
|
|