Rialto
0.1
Rialto media pipeline API
|
The definition of the IMediaKeys interface. More...
#include <IMediaKeys.h>
Public Member Functions | |
IMediaKeys (const IMediaKeys &)=delete | |
IMediaKeys & | operator= (const IMediaKeys &)=delete |
IMediaKeys (IMediaKeys &&)=delete | |
IMediaKeys & | operator= (IMediaKeys &&)=delete |
virtual MediaKeyErrorStatus | selectKeyId (int32_t keySessionId, const std::vector< uint8_t > &keyId)=0 |
Selects the specified keyId for the key session. Netflix specific API. More... | |
virtual bool | containsKey (int32_t keySessionId, const std::vector< uint8_t > &keyId)=0 |
Returns true if the Key Session object contains the specified key. More... | |
virtual MediaKeyErrorStatus | createKeySession (KeySessionType sessionType, std::weak_ptr< IMediaKeysClient > client, bool isLDL, int32_t &keySessionId)=0 |
Creates a session and returns the session id. More... | |
virtual MediaKeyErrorStatus | generateRequest (int32_t keySessionId, InitDataType initDataType, const std::vector< uint8_t > &initData)=0 |
Generates a licence request. More... | |
virtual MediaKeyErrorStatus | loadSession (int32_t keySessionId)=0 |
Loads an existing key session. More... | |
virtual MediaKeyErrorStatus | updateSession (int32_t keySessionId, const std::vector< uint8_t > &responseData)=0 |
Updates a key session's state. More... | |
virtual MediaKeyErrorStatus | setDrmHeader (int32_t keySessionId, const std::vector< uint8_t > &requestData)=0 |
Set DRM Header for a key session. More... | |
virtual MediaKeyErrorStatus | closeKeySession (int32_t keySessionId)=0 |
Closes a key session. More... | |
virtual MediaKeyErrorStatus | removeKeySession (int32_t keySessionId)=0 |
Removes a key session. More... | |
virtual MediaKeyErrorStatus | deleteDrmStore ()=0 |
Delete the DRM store for the object's key system. More... | |
virtual MediaKeyErrorStatus | deleteKeyStore ()=0 |
Delete the key store for the object's key system. More... | |
virtual MediaKeyErrorStatus | getDrmStoreHash (std::vector< unsigned char > &drmStoreHash)=0 |
Gets a hash of the DRM store for the object's key system. More... | |
virtual MediaKeyErrorStatus | getKeyStoreHash (std::vector< unsigned char > &keyStoreHash)=0 |
Gets a hash of the Key store for the object's key system. More... | |
virtual MediaKeyErrorStatus | getLdlSessionsLimit (uint32_t &ldlLimit)=0 |
Get the limit on the number of ldl key sessions for the object's key system. More... | |
virtual MediaKeyErrorStatus | getLastDrmError (int32_t keySessionId, uint32_t &errorCode)=0 |
Get the last cdm specific DRM error code. More... | |
virtual MediaKeyErrorStatus | getDrmTime (uint64_t &drmTime)=0 |
Get the DRM system time for the object's key system. More... | |
virtual MediaKeyErrorStatus | getCdmKeySessionId (int32_t keySessionId, std::string &cdmKeySessionId)=0 |
Get the internal CDM key session ID. More... | |
virtual MediaKeyErrorStatus | releaseKeySession (int32_t keySessionId)=0 |
Releases a key session. More... | |
The definition of the IMediaKeys interface.
This interface defines the public API of Rialto for EME decryption of AV content which should be implemented by both Rialto Client & Rialto Server.
|
pure virtual |
Closes a key session.
This method closes an open session. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id. |
an | error status. |
|
pure virtual |
Returns true if the Key Session object contains the specified key.
[in] | keySessionId | : The key session id for the session. |
[in] | keyId | : The key id. |
true | if it contains the key. |
|
pure virtual |
Creates a session and returns the session id.
This method creates a new session and returns the session id in the specified string. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | sessionType | : The session type. |
[in] | client | : Client object for callbacks |
[in] | isLDL | : Is this an LDL |
[out] | keySessionId | The key session id |
an | error status. |
|
pure virtual |
Delete the DRM store for the object's key system.
the | return status value. |
|
pure virtual |
Delete the key store for the object's key system.
the | return status value. |
|
pure virtual |
Generates a licence request.
This method triggers generation of a licence request. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. If the session type or init data type is not supported a MediaKeyErrorStatus:NOT_SUPPORTED value is be returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id for the session. |
[in] | initDataType | : The init data type. |
[in] | initData | : The init data. |
an | error status. |
|
pure virtual |
Get the internal CDM key session ID.
[in] | keySessionId | : The key session id for the session. |
[out] | cdmKeySessionId | : The internal CDM key session ID |
the | return status value. |
|
pure virtual |
Gets a hash of the DRM store for the object's key system.
[out] | drmStoreHash | : the hash value |
the | return status value. |
|
pure virtual |
Get the DRM system time for the object's key system.
[out] | drmTime | : the DRM system time |
the | return status value. |
|
pure virtual |
Gets a hash of the Key store for the object's key system.
[out] | keyStoreHash | : the hash value |
the | return status value. |
|
pure virtual |
Get the last cdm specific DRM error code.
[in] | keySessionId | : The key session id. |
[out] | errorCode | : the error code. |
the | return status value. |
|
pure virtual |
Get the limit on the number of ldl key sessions for the object's key system.
[out] | ldlLimit | : the limit on the number of ldl key sessions. |
the | return status value. |
|
pure virtual |
Loads an existing key session.
This method loads an existing key session. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. If the session type or init data type is not supported a MediaKeyErrorStatus:NOT_SUPPORTED value must be returned. If the session state is invalid an MediaKeyErrorStatus:INVALID_STATE is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id for the session. |
an | error status. |
|
pure virtual |
Releases a key session.
This method releases an open session. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id. |
an | error status. |
|
pure virtual |
Removes a key session.
This method removes an open session. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id. |
an | error status. |
|
pure virtual |
Selects the specified keyId for the key session. Netflix specific API.
[in] | keySessionId | : The key session id for the session. |
[in] | keyId | : The key id to select. |
an | error status. |
|
pure virtual |
Set DRM Header for a key session.
This method updates a key session's DRM header. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned.If the session state is invalid an MediaKeyErrorStatus:INVALID_STATE is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The session id for the session. |
[in] | requestData | : The request data. |
an | error status. |
|
pure virtual |
Updates a key session's state.
This method updates a session's state. If the session id does not exist an MediaKeyErrorStatus:BAD_SESSION_ID is returned. If the session state is invalid an MediaKeyErrorStatus:INVALID_STATE is returned. Any other errors will result in MediaKeyErrorStatus:FAIL.
[in] | keySessionId | : The key session id for the session. |
[in] | responseData | : The license response data. |
an | error status. |