OLD | NEW |
| (Empty) |
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. | |
4 | |
5 // IPC messages for EME on android. | |
6 // Multiply-included message file, hence no include guard. | |
7 | |
8 #include <vector> | |
9 | |
10 #include "ipc/ipc_message_macros.h" | |
11 | |
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 | |
15 | |
16 namespace android { | |
17 | |
18 // Defines bitmask values used to specify supported codecs. | |
19 // Each value represents a codec within a specific container. | |
20 enum SupportedCodecs { | |
21 NO_CODECS = 0, | |
22 WEBM_VORBIS = 1 << 0, | |
23 WEBM_VP8 = 1 << 1, | |
24 WEBM_CODECS = (WEBM_VORBIS | WEBM_VP8), | |
25 MP4_AAC = 1 << 2, | |
26 MP4_AVC1 = 1 << 3, | |
27 MP4_CODECS = (MP4_AAC | MP4_AVC1), | |
28 ALL_CODECS = (WEBM_CODECS | MP4_CODECS), | |
29 INVALID_CODECS = ~ALL_CODECS | |
30 }; | |
31 | |
32 } // namespace android | |
33 | |
34 #endif // CHROME_COMMON_ENCRYPTED_MEDIA_MESSAGES_ANDROID_H | |
35 | |
36 | |
37 #define IPC_MESSAGE_START EncryptedMediaMsgStart | |
38 | |
39 IPC_ENUM_TRAITS(android::SupportedCodecs) | |
40 | |
41 IPC_STRUCT_BEGIN(SupportedKeySystemRequest) | |
42 IPC_STRUCT_MEMBER(std::string, key_system) | |
43 IPC_STRUCT_MEMBER(android::SupportedCodecs, codecs, | |
44 android::NO_CODECS) | |
45 IPC_STRUCT_END() | |
46 | |
47 IPC_STRUCT_BEGIN(SupportedKeySystemResponse) | |
48 IPC_STRUCT_MEMBER(std::string, key_system) | |
49 IPC_STRUCT_MEMBER(android::SupportedCodecs, compositing_codecs, | |
50 android::NO_CODECS) | |
51 IPC_STRUCT_MEMBER(android::SupportedCodecs, non_compositing_codecs, | |
52 android::NO_CODECS) | |
53 IPC_STRUCT_END() | |
54 | |
55 // Messages sent from the renderer to the browser. | |
56 | |
57 // Synchronously get a list of supported EME key systems. | |
58 IPC_SYNC_MESSAGE_CONTROL1_1( | |
59 ChromeViewHostMsg_GetSupportedKeySystems, | |
60 SupportedKeySystemRequest /* key system information request */, | |
61 SupportedKeySystemResponse /* key system information response */) | |
OLD | NEW |