21 #ifndef _WSB_PLAYLIST_PROXY_H_ 22 #define _WSB_PLAYLIST_PROXY_H_ 332 #if defined(__cplusplus) 364 #define WSB_PP_FLAG_ENCRYPTED_HLS (1<<0) 374 #define WSB_PP_FLAG_AUTH_TOKEN_HEADER (1<<1) 389 #define WSB_PP_FLAG_SESSION_KEY (1<<2) 398 #define WSB_PP_FLAG_BLOCK_FOR_LICENSE_IMPLICIT (1<<3) 409 #define WSB_PP_FLAG_BLOCK_FOR_LICENSE_EXPLICIT (1<<4) 415 #define WSB_PP_FLAG_NO_SHORT_URLS (1<<5) 423 #define WSB_PP_FLAG_ALLOW_EXTERNAL_CLIENT (1<<6) 434 #define WSB_PP_FLAG_FAIRPLAY_ENCRYPTED_HLS (1<<7) 446 #define WSB_PP_FLAG_DEMUXED_HLS (1<<8) 530 const void* license_data,
600 const char* media_source,
603 const char** http_url);
658 WSB_PlaylistProxySessionKeyFormat key_format,
664 #if defined(__cplusplus)
WSB_EXPORT WSB_Result WSB_PlaylistProxy_UnblockForLicense(WSB_PlaylistProxy *self, WSB_PlaylistProxy_LicenseType type, const void *license_data, WSB_Size license_length)
Notify the proxy to proceed with license lookup and evaluation.
Definition: WsbPlaylistProxy.h:266
Event base class.
Definition: WsbPlaylistProxy.h:285
WSB_PlaylistProxy_Event base
Event base.
Definition: WsbPlaylistProxy.h:301
WSB_EXPORT WSB_Result WSB_PlaylistProxy_GetAndClearLastError(WSB_PlaylistProxy *self)
Return the most recent Wasabi error (if any) detected by the proxy threads and clear it...
Any media track of the correct type.
Definition: WsbPlaylistProxy.h:99
WSB_EXPORT WSB_Result WSB_PlaylistProxy_GetAuthToken(WSB_PlaylistProxy *self, char *auth_token, WSB_Size *token_size)
Obtain the current Playlist Proxy authentication token.
WSB_EXPORT WSB_Result WSB_PlaylistProxy_Stop(WSB_PlaylistProxy *self)
Stop proxy execution.
WSB_PlaylistProxy_MediaSourceType
The media source type:
Definition: WsbPlaylistProxy.h:80
Specific track selected by the track index (0 based among all tracks).
Definition: WsbPlaylistProxy.h:104
WSB_EXPORT WSB_Result WSB_PlaylistProxy_GetSessionKey(WSB_PlaylistProxy *self, WSB_PlaylistProxySessionKeyFormat key_format, WSB_Byte *key, WSB_Size *key_size)
Obtain the current Playlist Proxy session key.
WSB_PlaylistProxy_LicenseType
Definition: WsbPlaylistProxy.h:263
Error notification event.
Definition: WsbPlaylistProxy.h:276
Error notification event.
Definition: WsbPlaylistProxy.h:299
Marlin HLS URL.
Definition: WsbPlaylistProxy.h:86
Single Marlin content URL (BBTS with index, PDCF, M4F, or DCF)
Definition: WsbPlaylistProxy.h:83
WSB_Result result
Error result code.
Definition: WsbPlaylistProxy.h:304
struct WSB_PlaylistProxy WSB_PlaylistProxy
Definition: WsbPlaylistProxy.h:62
Marlin DASH URL.
Definition: WsbPlaylistProxy.h:89
WSB_EXPORT WSB_Result WSB_PlaylistProxy_CreateWithFlags(WSB_UInt32 flags, WSB_PlaylistProxy **self)
Create a playlist proxy instance with additional behavior selected through the flags.
Definition: WsbPlaylistProxy.h:264
Definition: WsbPlaylistProxy.h:265
int WSB_Result
Signed integer value representing a function or method result (return value).
Definition: WsbTypes.h:83
WSB_PlaylistProxySessionKeyFormat
The session key format enum.
Definition: WsbPlaylistProxy.h:632
WSB_PlaylistProxy_EventType
Event type.
Definition: WsbPlaylistProxy.h:274
SKB exported AES-128 key.
Definition: WsbPlaylistProxy.h:636
WSB_UInt8 WSB_Byte
An 8-bit byte.
Definition: WsbTypes.h:132
WSB_PlaylistProxy_TrackSelector
Media track selector mode.
Definition: WsbPlaylistProxy.h:97
Clear AES-128 key.
Definition: WsbPlaylistProxy.h:634
unsigned int WSB_UInt32
32-bit (or more) unsigned integer
Definition: WsbTypes.h:36
WSB_EXPORT WSB_Result WSB_PlaylistProxy_Destroy(WSB_PlaylistProxy *self)
Destroy a playlist proxy instance.
const char * error_string
Optional error string.
Definition: WsbPlaylistProxy.h:307
WSB_EXPORT WSB_Result WSB_PlaylistProxy_MakeUrl(WSB_PlaylistProxy *self, const char *media_source, WSB_PlaylistProxy_MediaSourceType media_source_type, const WSB_PlaylistProxy_MediaSourceParams *media_source_params, const char **http_url)
Create an HTTP url that points to the proxy.
WSB_EXPORT WSB_Result WSB_PlaylistProxy_Create(WSB_PlaylistProxy **self)
Create a playlist proxy instance.
This structure pairs a listener instance value with a function pointer for receiving events...
Definition: WsbPlaylistProxy.h:323
void * instance
Definition: WsbPlaylistProxy.h:324
WSB_EXPORT WSB_Result WSB_PlaylistProxy_Start(WSB_PlaylistProxy *self)
Start proxy execution.
Specific track selected by the track ID.
Definition: WsbPlaylistProxy.h:101
WSB_EXPORT WSB_Result WSB_PlaylistProxy_CreateWithListener(WSB_UInt32 flags, const WSB_PlaylistProxy_EventListener listener, WSB_PlaylistProxy **self)
Create a playlist proxy instance with additional behavior selected through the flags and optional eve...
WSB_UInt32 WSB_Size
An unsigned integer used to represent a measurable quantity (e.g., the size of a file).
Definition: WsbTypes.h:104
WSB_PlaylistProxy_EventType type
Event type.
Definition: WsbPlaylistProxy.h:287