summaryrefslogtreecommitdiff
path: root/chromium/components/cdm/common/cdm_messages_android.h
blob: b1223efe23cdcecab3579f03d39c2d4917fcb7e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// IPC messages for EME on android.
// Multiply-included message file, hence no include guard.

#include <vector>

#include "ipc/ipc_message_macros.h"
#include "media/base/eme_constants.h"

#define IPC_MESSAGE_START EncryptedMediaMsgStart

IPC_STRUCT_BEGIN(SupportedKeySystemRequest)
  IPC_STRUCT_MEMBER(std::string, key_system)
  IPC_STRUCT_MEMBER(media::SupportedCodecs, codecs, media::EME_CODEC_NONE)
IPC_STRUCT_END()

IPC_STRUCT_BEGIN(SupportedKeySystemResponse)
  IPC_STRUCT_MEMBER(std::string, key_system)
  IPC_STRUCT_MEMBER(media::SupportedCodecs, non_secure_codecs,
                    media::EME_CODEC_NONE)
  IPC_STRUCT_MEMBER(media::SupportedCodecs, secure_codecs,
                    media::EME_CODEC_NONE)
  IPC_STRUCT_MEMBER(bool, is_persistent_license_supported)
IPC_STRUCT_END()

// Messages sent from the renderer to the browser.

// Synchronously query key system information. If the key system is supported,
// the response will be populated.
IPC_SYNC_MESSAGE_CONTROL1_1(
    ChromeViewHostMsg_QueryKeySystemSupport,
    SupportedKeySystemRequest /* key system information request */,
    SupportedKeySystemResponse /* key system information response */)

// Synchronously get a list of platform-supported EME key system names that
// are not explicitly handled by Chrome.
IPC_SYNC_MESSAGE_CONTROL0_1(
    ChromeViewHostMsg_GetPlatformKeySystemNames,
    std::vector<std::string> /* key system names */)