1 // Copyright 2015 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 #ifndef ANDROID_WEBVIEW_BROWSER_AW_MEDIA_CLIENT_ANDROID_H_
6 #define ANDROID_WEBVIEW_BROWSER_AW_MEDIA_CLIENT_ANDROID_H_
8 #include "base/macros.h"
9 #include "components/cdm/browser/widevine_drm_delegate_android.h"
10 #include "media/base/android/media_client_android.h"
12 namespace android_webview
{
14 class AwMediaClientAndroid
: public media::MediaClientAndroid
{
16 // |key_system_uuid_mappings| is a list of strings containing key-system/UUID
17 // pairs, in the format "key system name,UUID as string".
18 explicit AwMediaClientAndroid(
19 const std::vector
<std::string
>& key_system_uuid_mappings
);
20 ~AwMediaClientAndroid() override
;
23 // media::MediaClientAndroid implementation:
24 void AddKeySystemUUIDMappings(KeySystemUuidMap
* map
) override
;
25 media::MediaDrmBridgeDelegate
* GetMediaDrmBridgeDelegate(
26 const media::UUID
& scheme_uuid
) override
;
28 std::vector
<std::string
> key_system_uuid_mappings_
;
29 cdm::WidevineDrmDelegateAndroid widevine_delegate_
;
31 DISALLOW_COPY_AND_ASSIGN(AwMediaClientAndroid
);
34 } // namespace android_webview
36 #endif // ANDROID_WEBVIEW_BROWSER_AW_MEDIA_CLIENT_ANDROID_H_