|
RDK Documentation (Open Sourced RDK Components)
|
Go to the documentation of this file.
34 m_aampInstance(nullptr),
35 m_drmSession(aampDrmSession),
40 pthread_mutex_init(&m_Mutex, NULL);
44 AampHlsOcdmBridge::~AampHlsOcdmBridge()
46 pthread_mutex_destroy(&m_Mutex);
54 pthread_mutex_lock(&m_Mutex);
55 m_aampInstance = aamp;
63 pthread_mutex_unlock(&m_Mutex);
74 pthread_mutex_lock(&m_Mutex);
78 int retVal = m_drmSession->
decrypt(m_drmInfo->
iv, DRM_IV_LEN, (
const uint8_t *)encryptedDataPtr , encryptedDataLen, NULL);
81 AAMPLOG_WARN(
"Decrypt failed err = %d\n", retVal);
91 AAMPLOG_WARN(
"Decrypt Called in Incorrect State! DrmState = %d\n", (
int)m_drmState);
93 pthread_mutex_unlock(&m_Mutex);
101 AAMPLOG_WARN(
"Releasing the Opencdm Session\n");
DrmReturn
Return values of various functions.
virtual void clearDecryptContext()=0
Clear the current session context So that new init data can be bound.
virtual DrmReturn Decrypt(ProfilerBucketType bucketType, void *encryptedDataPtr, size_t encryptedDataLen, int timeInMs=3000) override
Decrypts an encrypted buffer.
virtual void CancelKeyWait() override
Cancel timed_wait operation drm_Decrypt.
Handles OCDM bridge to validate DRM License.
virtual int decrypt(GstBuffer *keyIDBuffer, GstBuffer *ivBuffer, GstBuffer *buffer, unsigned subSampleCount, GstBuffer *subSamplesBuffer, GstCaps *caps=NULL)
Function to decrypt GStreamer stream buffer.
DRM information required to decrypt.
virtual void Release() override
Release drm session.
Base class for DRM sessions.
virtual KeyState getState()=0
Get the current state of DRM Session.
#define AAMPLOG_TRACE(FORMAT,...)
AAMP logging defines, this can be enabled through setLogLevel() as per the need.
Class representing the AAMP player's private instance, which is not exposed to outside world.
virtual DrmReturn SetDecryptInfo(PrivateInstanceAAMP *aamp, const struct DrmInfo *drmInfoi, AampLogManager *logObj=NULL) override
Set information required for decryption.
ProfilerBucketType
Bucket types of AAMP profiler.
KeyState
DRM session states.