blob: 4f7d8e3ab2ab29f3ff751b9ac05d0b0617f9e954 [file] [log] [blame]
// Copyright 2015 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.
#ifndef CHROMECAST_COMMON_MEDIA_CAST_MEDIA_DRM_BRIDGE_CLIENT_H_
#define CHROMECAST_COMMON_MEDIA_CAST_MEDIA_DRM_BRIDGE_CLIENT_H_
#include "base/macros.h"
#include "chromecast/chromecast_buildflags.h"
#include "chromecast/media/cdm/playready_drm_delegate_android.h"
#include "components/cdm/common/widevine_drm_delegate_android.h"
#include "media/base/android/media_drm_bridge_client.h"
namespace chromecast {
namespace media {
class CastMediaDrmBridgeClient : public ::media::MediaDrmBridgeClient {
public:
CastMediaDrmBridgeClient();
~CastMediaDrmBridgeClient() override;
private:
// ::media::MediaDrmBridgeClient implementation:
void AddKeySystemUUIDMappings(KeySystemUuidMap* map) override;
::media::MediaDrmBridgeDelegate* GetMediaDrmBridgeDelegate(
const ::media::UUID& scheme_uuid) override;
#if BUILDFLAG(ENABLE_PLAYREADY)
PlayreadyDrmDelegateAndroid playready_delegate_;
#endif // BUILDFLAG(ENABLE_PLAYREADY)
cdm::WidevineDrmDelegateAndroid widevine_delegate_;
DISALLOW_COPY_AND_ASSIGN(CastMediaDrmBridgeClient);
};
} // namespace media
} // namespace chromecast
#endif // CHROMECAST_COMMON_MEDIA_CAST_MEDIA_DRM_BRIDGE_CLIENT_H_