1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // IPC messages for EME on android.
6 // Multiply-included message file, hence no include guard.
10 #include "ipc/ipc_message_macros.h"
12 // Singly-included section for enums and custom IPC traits.
13 #ifndef CHROME_COMMON_ENCRYPTED_MEDIA_MESSAGES_ANDROID_H
14 #define CHROME_COMMON_ENCRYPTED_MEDIA_MESSAGES_ANDROID_H
18 // Defines bitmask values used to specify supported codecs.
19 // Each value represents a codec within a specific container.
20 enum SupportedCodecs
{
21 NO_SUPPORTED_CODECS
= 0,
22 WEBM_VP8_AND_VORBIS
= 1 << 0,
27 } // namespace android
29 #endif // CHROME_COMMON_ENCRYPTED_MEDIA_MESSAGES_ANDROID_H
32 #define IPC_MESSAGE_START EncryptedMediaMsgStart
34 IPC_ENUM_TRAITS(android::SupportedCodecs
)
36 IPC_STRUCT_BEGIN(SupportedKeySystemRequest
)
37 IPC_STRUCT_MEMBER(std::string
, key_system
)
38 IPC_STRUCT_MEMBER(android::SupportedCodecs
, codecs
,
39 android::NO_SUPPORTED_CODECS
)
42 IPC_STRUCT_BEGIN(SupportedKeySystemResponse
)
43 IPC_STRUCT_MEMBER(std::string
, key_system
)
44 IPC_STRUCT_MEMBER(android::SupportedCodecs
, compositing_codecs
,
45 android::NO_SUPPORTED_CODECS
)
46 IPC_STRUCT_MEMBER(android::SupportedCodecs
, non_compositing_codecs
,
47 android::NO_SUPPORTED_CODECS
)
50 // Messages sent from the renderer to the browser.
52 // Synchronously get a list of supported EME key systems.
53 IPC_SYNC_MESSAGE_CONTROL1_1(
54 ChromeViewHostMsg_GetSupportedKeySystems
,
55 SupportedKeySystemRequest
/* key system information request */,
56 SupportedKeySystemResponse
/* key system information response */)