Vanilla AES based DRM management.
More...
#include <aamp_aes.h>
|
DrmReturn | SetMetaData (PrivateInstanceAAMP *aamp, void *metadata, int trackType, AampLogManager *logObj=NULL) |
| Set DRM meta-data. Stub implementation. More...
|
|
DRMState | GetState () |
| GetState Function to get current DRM State. More...
|
|
void | AcquireKey (class PrivateInstanceAAMP *aamp, void *metadata, int trackType, AampLogManager *logObj=NULL) |
| AcquireKey Function to acquire key . Stub implementation.
|
|
DrmReturn | SetDecryptInfo (PrivateInstanceAAMP *aamp, const struct DrmInfo *drmInfo, AampLogManager *logObj=NULL) |
| Set information required for decryption. More...
|
|
DrmReturn | Decrypt (ProfilerBucketType bucketType, void *encryptedDataPtr, size_t encryptedDataLen, int timeInMs) |
| Decrypts an encrypted buffer. More...
|
|
void | Release () |
| Release drm session.
|
|
void | CancelKeyWait () |
| Cancel timed_wait operation drm_Decrypt. More...
|
|
void | RestoreKeyState () |
| Restore key state post cleanup of audio/video TrackState in case DRM data is persisted.
|
|
void | AcquireKey () |
| Acquire drm key from URI. More...
|
|
void | SignalKeyAcquired () |
| Signal key acquired event.
|
|
void | NotifyDRMError (AAMPTuneFailure drmFailure) |
| Notify drm error. More...
|
|
void | SignalDrmError () |
| Signal drm error.
|
|
void | WaitForKeyAcquireCompleteUnlocked (int timeInMs, DrmReturn &err) |
| Wait for key acquisition completion. More...
|
|
| AesDec () |
| AesDec Constructor. More...
|
|
| ~AesDec () |
| AesDec Destructor.
|
|
| AesDec (const AesDec &)=delete |
|
AesDec & | operator= (const AesDec &)=delete |
|
virtual | ~HlsDrmBase () |
| HlsDrmBase Destructor.
|
|
|
PrivateInstanceAAMP * | mpAamp |
|
pthread_cond_t | mCond |
|
pthread_mutex_t | mMutex |
|
EVP_CIPHER_CTX | mOpensslCtx |
|
DrmInfo | mDrmInfo |
|
GrowableBuffer | mAesKeyBuf |
|
DRMState | mDrmState |
|
DRMState | mPrevDrmState |
|
std::string | mDrmUrl |
|
int | mCurlInstance |
|
int | mAcquireKeyWaitTime |
|
pthread_t | licenseAcquisitionThreadId |
|
bool | licenseAcquisitionThreadStarted |
|
|
static std::shared_ptr< AesDec > | mInstance = nullptr |
|
Vanilla AES based DRM management.
Definition at line 37 of file aamp_aes.h.
◆ AesDec()
◆ SetMetaData()
Set DRM meta-data. Stub implementation.
- Parameters
-
aamp | AAMP instance to be associated with this decryptor |
metadata | - Ignored |
- Return values
-
Implements HlsDrmBase.
Definition at line 164 of file aamp_aes.cpp.
◆ GetState()
GetState Function to get current DRM State.
- Return values
-
Implements HlsDrmBase.
Definition at line 181 of file aamp_aes.cpp.
◆ SetDecryptInfo()
Set information required for decryption.
- Parameters
-
aamp | AAMP instance to be associated with this decryptor |
drmInfo | Drm information |
- Return values
-
Implements HlsDrmBase.
Definition at line 190 of file aamp_aes.cpp.
◆ Decrypt()
AesDec::Decrypt |
( |
ProfilerBucketType |
bucketType, |
|
|
void * |
encryptedDataPtr, |
|
|
size_t |
encryptedDataLen, |
|
|
int |
timeInMs |
|
) |
| |
|
virtual |
Decrypts an encrypted buffer.
- Parameters
-
bucketType | Type of bucket for profiling |
encryptedDataPtr | pointer to encyrpted payload |
encryptedDataLen | length in bytes of data pointed to by encryptedDataPtr |
timeInMs | wait time |
Implements HlsDrmBase.
Definition at line 271 of file aamp_aes.cpp.
◆ CancelKeyWait()
AesDec::CancelKeyWait |
( |
| ) |
|
|
virtual |
◆ AcquireKey()
Acquire drm key from URI.
- Parameters
-
[in] | aamp | AAMP instance to be associated with this decryptor |
[in] | metadata | Ignored |
- Return values
-
Definition at line 107 of file aamp_aes.cpp.
◆ NotifyDRMError()
Notify drm error.
- Parameters
-
Definition at line 59 of file aamp_aes.cpp.
◆ WaitForKeyAcquireCompleteUnlocked()
AesDec::WaitForKeyAcquireCompleteUnlocked |
( |
int |
timeInMs, |
|
|
DrmReturn & |
err |
|
) |
| |
Wait for key acquisition completion.
- Parameters
-
[in] | timeInMs | timeout |
[out] | err | error on failure |
Definition at line 255 of file aamp_aes.cpp.
The documentation for this class was generated from the following files: