RDK Documentation (Open Sourced RDK Components)
AampHlsOcdmBridge Class Reference

OCDM bridge to handle DRM key. More...

#include <AampHlsOcdmBridge.h>

Inheritance diagram for AampHlsOcdmBridge:
Inheritance graph
Collaboration diagram for AampHlsOcdmBridge:
Collaboration graph

Public Member Functions

 AampHlsOcdmBridge (AampLogManager *logObj, AampDrmSession *aampDrmSession)
 
 AampHlsOcdmBridge (const AampHlsOcdmBridge &)=delete
 
AampHlsOcdmBridgeoperator= (const AampHlsOcdmBridge &)=delete
 
virtual DrmReturn SetMetaData (class PrivateInstanceAAMP *aamp, void *metadata, int trackType, AampLogManager *logObj=NULL) override
 Set DRM specific meta-data. More...
 
virtual DrmReturn SetDecryptInfo (PrivateInstanceAAMP *aamp, const struct DrmInfo *drmInfoi, AampLogManager *logObj=NULL) override
 Set information required for decryption. More...
 
virtual DrmReturn Decrypt (ProfilerBucketType bucketType, void *encryptedDataPtr, size_t encryptedDataLen, int timeInMs=3000) override
 Decrypts an encrypted buffer. More...
 
virtual void Release () override
 Release drm session.
 
virtual void CancelKeyWait () override
 Cancel timed_wait operation drm_Decrypt.
 
virtual void RestoreKeyState () override
 Restore key state post cleanup of audio/video TrackState in case DRM data is persisted.
 
virtual void AcquireKey (class PrivateInstanceAAMP *aamp, void *metadata, int trackType, AampLogManager *logObj=NULL) override
 AcquireKey Function to get DRM Key. More...
 
virtual DRMState GetState () override
 GetState Function to get current DRM state. More...
 
- Public Member Functions inherited from HlsDrmBase
virtual ~HlsDrmBase ()
 HlsDrmBase Destructor.
 

Private Attributes

DRMState m_drmState
 
const DrmInfom_drmInfo
 
AampDrmSessionm_drmSession
 
PrivateInstanceAAMPm_aampInstance
 
pthread_mutex_t m_Mutex
 
AampLogManagermLogObj
 

yes

OCDM bridge to handle DRM key.

Definition at line 39 of file AampHlsOcdmBridge.h.

Member Function Documentation

◆ SetMetaData()

virtual DrmReturn AampHlsOcdmBridge::SetMetaData ( class PrivateInstanceAAMP aamp,
void *  metadata,
int  trackType,
AampLogManager logObj = NULL 
)
inlineoverridevirtual

Set DRM specific meta-data.

Parameters
aampAAMP instance to be associated with this decryptor
metadataDRM specific metadata
Return values
0on success

Implements HlsDrmBase.

Definition at line 59 of file AampHlsOcdmBridge.h.

◆ SetDecryptInfo()

DrmReturn AampHlsOcdmBridge::SetDecryptInfo ( PrivateInstanceAAMP aamp,
const struct DrmInfo drmInfo,
AampLogManager logObj = NULL 
)
overridevirtual

Set information required for decryption.

Parameters
aampAAMP instance to be associated with this decryptor
drmInfoDrm information
Return values
eDRM_SUCCESSon success

Implements HlsDrmBase.

Definition at line 50 of file AampHlsOcdmBridge.cpp.

◆ Decrypt()

DrmReturn AampHlsOcdmBridge::Decrypt ( ProfilerBucketType  bucketType,
void *  encryptedDataPtr,
size_t  encryptedDataLen,
int  timeInMs = 3000 
)
overridevirtual

Decrypts an encrypted buffer.

Parameters
bucketTypeType of bucket for profiling
encryptedDataPtrpointer to encyrpted payload
encryptedDataLenlength in bytes of data pointed to by encryptedDataPtr
timeInMswait time
Return values
eDRM_SUCCESSon success

Implements HlsDrmBase.

Definition at line 70 of file AampHlsOcdmBridge.cpp.

◆ AcquireKey()

virtual void AampHlsOcdmBridge::AcquireKey ( class PrivateInstanceAAMP aamp,
void *  metadata,
int  trackType,
AampLogManager logObj = NULL 
)
inlineoverridevirtual

AcquireKey Function to get DRM Key.

Implements HlsDrmBase.

Definition at line 71 of file AampHlsOcdmBridge.h.

◆ GetState()

virtual DRMState AampHlsOcdmBridge::GetState ( )
inlineoverridevirtual

GetState Function to get current DRM state.

Implements HlsDrmBase.

Definition at line 73 of file AampHlsOcdmBridge.h.


The documentation for this class was generated from the following files: