Wasabi ExpressPlay SDK for Desktop Systems  1.10
Macros | Functions
WSB_Runtime Class

The Wasabi SDK initialization and termination. More...

Macros

#define WSB_PROPERTY_NAME_MS3_ACCEPT_SELF_SIGNED_CERTS   "WASABI_MS3_ACCEPT_SELF_SIGNED_CERTS"
 Wasabi property. More...
 
#define WSB_PROPERTY_NAME_MS3_ACCEPT_HOSTNAME_MISMATCH   "WASABI_MS3_ACCEPT_HOSTNAME_MISMATCH"
 Wasabi property. More...
 
#define WSB_PROPERTY_NAME_STORAGE_DIRECTORY   "WASABI_PROPERTY_STORAGE_DIRECTORY"
 Wasabi property. More...
 
#define WSB_PROPERTY_NAME_PROXY_DASH_CONTENT_LENGTH   "WASABI_PROPERTY_PROXY_DASH_CONTENT_LENGTH"
 Wasabi property. More...
 
#define WSB_PROPERTY_NAME_ROOTED_OK   "WASABI_PROPERTY_ROOTED_OK"
 Wasabi property. More...
 

Functions

WSB_EXPORT WSB_Result WSB_Runtime_InitializeEx (const char *db_name_param)
 Initializes the SDK for an application. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_Initialize ()
 Initializes the SDK for an application, with the default DRM database name parameter selected during run-time configuration. More...
 
WSB_EXPORT WSB_Boolean WSB_Runtime_IsInitialized ()
 Checks to see whether WSB_Runtime_Initialize has already been called successfully. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_Terminate ()
 Terminates the SDK. More...
 
WSB_EXPORT WSB_Boolean WSB_Runtime_IsPersonalized ()
 Check whether the runtime has been personalized. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_Personalize (const char *token, WSB_Size token_length)
 Perform personalization. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_ProcessServiceToken (const char *token, WSB_Size token_length)
 Process Marlin service token synchronously. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_CheckLicense (const char *content_id)
 Check for a valid playback license. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_GetProperty (const char *name, SHI_DataType type, SHI_Data **value)
 Query a Wasabi property value. More...
 
WSB_EXPORT WSB_Result WSB_Runtime_SetProperty (const char *name, SHI_DataType type, const SHI_DataValue *value)
 Assign a Wasabi property value. More...
 

Detailed Description

The Wasabi SDK initialization and termination.

Macro Definition Documentation

#define WSB_PROPERTY_NAME_MS3_ACCEPT_HOSTNAME_MISMATCH   "WASABI_MS3_ACCEPT_HOSTNAME_MISMATCH"

Wasabi property.

Allow host mismatch in certificates in MS3 server interaction. Type: SHI_DATA_TYPE_BOOLEAN

Since
1.8
#define WSB_PROPERTY_NAME_MS3_ACCEPT_SELF_SIGNED_CERTS   "WASABI_MS3_ACCEPT_SELF_SIGNED_CERTS"

Wasabi property.

Allow self signed certificates in MS3 server interaction. Type: SHI_DATA_TYPE_BOOLEAN

Since
1.8
#define WSB_PROPERTY_NAME_PROXY_DASH_CONTENT_LENGTH   "WASABI_PROPERTY_PROXY_DASH_CONTENT_LENGTH"

Wasabi property.

ContentLength computation for DASH media in Playlist Proxy.

When false (by default), HTTP response from Playlist Proxy does not include the ContentLength header. When set to true, Playlist Proxy generates ContentLength, but that may affect Android's bandwidth measurement algorithm resulting in the media player always attempting to play the highest quality representation, even when the available bandwidth may not have the capacity for it.

Type: SHI_DATA_TYPE_BOOLEAN

Since
1.8.1
#define WSB_PROPERTY_NAME_ROOTED_OK   "WASABI_PROPERTY_ROOTED_OK"

Wasabi property.

When set to true, Wasabi run-time will execute on root'ed Android devices. Otherwise, when set to false (also by default), Wasabi won't function on a root'ed device. (Expressplay Android only)

Type: SHI_DATA_TYPE_BOOLEAN

Since
1.9
#define WSB_PROPERTY_NAME_STORAGE_DIRECTORY   "WASABI_PROPERTY_STORAGE_DIRECTORY"

Wasabi property.

DRM storage directory. Type: SHI_DATA_TYPE_STRING

Since
1.8

Function Documentation

WSB_EXPORT WSB_Result WSB_Runtime_CheckLicense ( const char *  content_id)

Check for a valid playback license.

If there is a license in the License Store associated with the content ID 'content_id' and if it actually grants playback, the call returns with WSB_SUCCESS. Otherwise, an error code indicates a valid playback license not to be available in the License Store.

NOTE: This is a convenience method providing a simple license checking API. A more comprehensive API for examining licenses is available through the direct use of SHI_Engine, SHI_License, SHI_Action and WSB_LicenseStore module APIs.

Since
1.10
WSB_EXPORT WSB_Result WSB_Runtime_GetProperty ( const char *  name,
SHI_DataType  type,
SHI_Data **  value 
)

Query a Wasabi property value.

Only a set of built-in properties can be queried, otherwise an error is returned. See WSB_PROPERTY_NAME_* macros for the set of built-in properties' names and types.

Parameters
nameproperty name, both name and type must match a built-in property
typeproperty type, both name and type must match a built-in property
valuereturned property; must be release through SHI_Data_Release
Since
1.8
WSB_EXPORT WSB_Result WSB_Runtime_Initialize ( )

Initializes the SDK for an application, with the default DRM database name parameter selected during run-time configuration.

This call is equivalent to WSB_Runtime_InitializeEx(NULL).

See Also
WSB_Runtime_InitializeEx
WSB_EXPORT WSB_Result WSB_Runtime_InitializeEx ( const char *  db_name_param)

Initializes the SDK for an application.

This function must be called once for each application that will use the SDK. It must be called before any other function or method of the SDK.

Parameters
db_name_parampointer to the DRM database name parameter. If non-null, this string becomes part of the DRM file name. Additional prefix and suffix strings may be added by the Wasabi run-time. An application can ensure unique DRM database by selecting a unique db_name_param.
Since
1.7
WSB_EXPORT WSB_Boolean WSB_Runtime_IsInitialized ( )

Checks to see whether WSB_Runtime_Initialize has already been called successfully.

Returns
WSB_TRUE if WSB_Runtime_Initialize was already successfully executed.
WSB_EXPORT WSB_Boolean WSB_Runtime_IsPersonalized ( )

Check whether the runtime has been personalized.

Since
1.6
WSB_EXPORT WSB_Result WSB_Runtime_Personalize ( const char *  token,
WSB_Size  token_length 
)

Perform personalization.

If 'token' is NULL, default Sushi bootstrap configuration personalization token is assumed.

Parameters
tokenan optional personalization token XML string, can be NULL.
token_lengthlength of the 'token' string, 0 if token is NULL. Returns WSB_ERROR_INVALID_STATE if already personalized.
Since
1.6
WSB_EXPORT WSB_Result WSB_Runtime_ProcessServiceToken ( const char *  token,
WSB_Size  token_length 
)

Process Marlin service token synchronously.

Store the Marlin Broadband license into the License Store, if any.

NOTE: This is a convenience method providing a simple token processing API. A more comprehensive API for the control over token processing and License Store is defined by SHI_Engine module and WSB_LicenseStore module.

Parameters
tokena required Marlin XML token as a UTF8 string
token_lengthlength of the 'token' string in bytes.
Since
1.7
WSB_EXPORT WSB_Result WSB_Runtime_SetProperty ( const char *  name,
SHI_DataType  type,
const SHI_DataValue value 
)

Assign a Wasabi property value.

Only properties from a built-in set can be assigned value, otherwise an error is returned. See WSB_PROPERTY_NAME_* macros for the set of built-in properties' names and types.

Parameters
nameproperty name, both name and type must match a built-in property
typeproperty type, both name and type must match a built-in property
valuenew value to assign
Since
1.8
WSB_EXPORT WSB_Result WSB_Runtime_Terminate ( )

Terminates the SDK.

This function must be called after an application is done using the SDK. No other function or method of the SDK may be called after this function returns.