(This is a merge of http://go/wvgerrit/14082) Previously, the CryptoFactory had special behavior to defer creation to Widevine Classic if no session ID was provided. This functionality has been deprecated, as MediaCodec Mode is no longer supported. This is necessary as part of supporting the new API for session ID changes because the expectation is that it is now legal to initialize a modular CryptoPlugin without a session ID. Bug: 19570317 Change-Id: Iad0cd01b6a8d2e66c94c5f53a8a60f5787bc02f8
36 lines
832 B
C++
36 lines
832 B
C++
//
|
|
// Copyright 2013 Google Inc. All Rights Reserved.
|
|
//
|
|
|
|
#ifndef WV_DRM_FACTORY_H_
|
|
#define WV_DRM_FACTORY_H_
|
|
|
|
#include "media/drm/DrmAPI.h"
|
|
#include "media/stagefright/foundation/ABase.h"
|
|
#include "utils/Errors.h"
|
|
#include "WVGenericCryptoInterface.h"
|
|
|
|
namespace wvdrm {
|
|
|
|
class WVDrmFactory : public android::DrmFactory {
|
|
public:
|
|
WVDrmFactory() {}
|
|
virtual ~WVDrmFactory() {}
|
|
|
|
virtual bool isCryptoSchemeSupported(const uint8_t uuid[16]);
|
|
|
|
virtual bool isContentTypeSupported(const android::String8 &initDataType);
|
|
|
|
virtual android::status_t createDrmPlugin(const uint8_t uuid[16],
|
|
android::DrmPlugin** plugin);
|
|
|
|
private:
|
|
DISALLOW_EVIL_CONSTRUCTORS(WVDrmFactory);
|
|
|
|
static WVGenericCryptoInterface sOemCryptoInterface;
|
|
};
|
|
|
|
} // namespace wvdrm
|
|
|
|
#endif // WV_DRM_FACTORY_H_
|