1// Copyright 2014 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 "content/public/common/eme_codec.h" 11#include "ipc/ipc_message_macros.h" 12 13#define IPC_MESSAGE_START EncryptedMediaMsgStart 14 15IPC_STRUCT_BEGIN(SupportedKeySystemRequest) 16 IPC_STRUCT_MEMBER(std::string, key_system) 17 IPC_STRUCT_MEMBER(content::SupportedCodecs, codecs, content::EME_CODEC_NONE) 18IPC_STRUCT_END() 19 20IPC_STRUCT_BEGIN(SupportedKeySystemResponse) 21 IPC_STRUCT_MEMBER(std::string, key_system) 22 IPC_STRUCT_MEMBER(content::SupportedCodecs, 23 compositing_codecs, 24 content::EME_CODEC_NONE) 25 IPC_STRUCT_MEMBER(content::SupportedCodecs, 26 non_compositing_codecs, 27 content::EME_CODEC_NONE) 28IPC_STRUCT_END() 29 30// Messages sent from the renderer to the browser. 31 32// Synchronously query key system information. If the key system is supported, 33// the response will be populated. 34IPC_SYNC_MESSAGE_CONTROL1_1( 35 ChromeViewHostMsg_QueryKeySystemSupport, 36 SupportedKeySystemRequest /* key system information request */, 37 SupportedKeySystemResponse /* key system information response */) 38 39// Synchronously get a list of platform-supported EME key system names that 40// are not explicitly handled by Chrome. 41IPC_SYNC_MESSAGE_CONTROL0_1( 42 ChromeViewHostMsg_GetPlatformKeySystemNames, 43 std::vector<std::string> /* key system names */) 44