Wasabi ExpressPlay SDK for Embedded Systems  1.23.0
WsbMediaAdapter.h
Go to the documentation of this file.
1 /*****************************************************************
2 |
3 | Wasabi - Media Adapter API
4 |
5 | $Id: WsbMediaAdapter.h 14424 2018-06-29 20:26:38Z hwa $
6 | Original author: John Hwa
7 |
8 | This software is provided to you pursuant to your agreement
9 | with Intertrust Technologies Corporation ("Intertrust").
10 | This software may be used only in accordance with the terms
11 | of the agreement.
12 |
13 | Copyright (c) 2017 by Intertrust. All rights reserved.
14 |
15 ****************************************************************/
21 #ifndef _WSB_MEDIA_ADAPTER_H_
22 #define _WSB_MEDIA_ADAPTER_H_
23 
24 /*----------------------------------------------------------------------
25 | includes
26 +---------------------------------------------------------------------*/
27 #include "WsbTypes.h"
28 #include "WsbPlaylistProxy.h"
29 
30 /*----------------------------------------------------------------------
31 | types
32 +---------------------------------------------------------------------*/
37 typedef enum {
45 
50 typedef enum {
56 
63 typedef struct {
68 
74 
81 typedef struct {
85  const char* media_source;
86 
93 
100 
108  const char* token_url;
109 
129 
137 
144 typedef struct {
148  const char* content_url;
149 
154  const char* token_url;
155 
171 
172 /*----------------------------------------------------------------------
173 | functions
174 +---------------------------------------------------------------------*/
175 #if defined(__cplusplus)
176 extern "C" {
177 #endif
178 
188 
219 WSB_EXPORT WSB_Result
221  WSB_MediaAdapter** adapter);
222 
263 WSB_EXPORT WSB_Result
265  const WSB_MediaAdapterParams* params,
266  WSB_MediaAdapterPlaybackInfo* playback_info);
267 
280 WSB_EXPORT WSB_Result
282 
285 #if defined(__cplusplus)
286 }
287 #endif
288 
289 #endif /* _WSB_MEDIA_ADAPTER_H_ */
290 
Use only native DRM.
Definition: WsbMediaAdapter.h:41
WSB_EXPORT WSB_Result WSB_MediaAdapter_Adapt(WSB_MediaAdapter *self, const WSB_MediaAdapterParams *params, WSB_MediaAdapterPlaybackInfo *playback_info)
Adapt the media source for content playback.
WSB_MediaAdapterDrmType
Drm types.
Definition: WsbMediaAdapter.h:37
WSB_PlaylistProxy * playlist_proxy
Playlist Proxy instance.
Definition: WsbMediaAdapter.h:169
Media Adapter playback information.
Definition: WsbMediaAdapter.h:144
Wasabi Playlist Proxy API.
Media Adapter configuration.
Definition: WsbMediaAdapter.h:63
struct WSB_MediaAdapter WSB_MediaAdapter
Definition: WsbMediaAdapter.h:187
WSB_MediaAdapterLicenseType
Marlin license types.
Definition: WsbMediaAdapter.h:50
const char * media_source
Media source URL.
Definition: WsbMediaAdapter.h:85
Online streaming license, Marlin MS3.
Definition: WsbMediaAdapter.h:52
Playlist Proxy URL parameters.
Definition: WsbPlaylistProxy.h:111
Use native DRM; if not possible, use Marlin DRM.
Definition: WsbMediaAdapter.h:39
WSB_EXPORT WSB_Result WSB_MediaAdapter_Open(const WSB_MediaAdapterConfig *config, WSB_MediaAdapter **adapter)
Open a Media Adapter based on the configuration.
WSB_PlaylistProxy_MediaSourceType
The media source type:
Definition: WsbPlaylistProxy.h:80
WSB_UInt32 flags
Playlist Proxy flags.
Definition: WsbMediaAdapter.h:128
const char * content_url
Adapted content URL for playback.
Definition: WsbMediaAdapter.h:148
WSB_PlaylistProxy_MediaSourceType media_source_type
Media source type, only support and adapt DASH media source type for now.
Definition: WsbMediaAdapter.h:92
WSB_EXPORT WSB_Result WSB_MediaAdapter_Close(WSB_MediaAdapter *self)
Close the Media Adapter.
struct WSB_PlaylistProxy WSB_PlaylistProxy
Definition: WsbPlaylistProxy.h:62
Media Adapter media source parameters.
Definition: WsbMediaAdapter.h:81
int WSB_Result
Signed integer value representing a function or method result (return value).
Definition: WsbTypes.h:83
const WSB_PlaylistProxy_MediaSourceParams * media_source_params
Media source optional parameters.
Definition: WsbMediaAdapter.h:99
unsigned int WSB_UInt32
32-bit (or more) unsigned integer
Definition: WsbTypes.h:36
const char * token_url
Universal token URL to redeeming a license for the media source.
Definition: WsbMediaAdapter.h:108
Use only Marlin DRM.
Definition: WsbMediaAdapter.h:43
Offline persistent license, Marlin Broadband.
Definition: WsbMediaAdapter.h:54
WSB_MediaAdapterDrmType pref_drm_type
DRM type.
Definition: WsbMediaAdapter.h:67
WSB_MediaAdapterLicenseType pref_license_type
License type only pertains to Marlin.
Definition: WsbMediaAdapter.h:72
This structure pairs a listener instance value with a function pointer for receiving events...
Definition: WsbPlaylistProxy.h:323
Wasabi Result.
const WSB_PlaylistProxy_EventListener * listener
Optional event listener, can be NULL.
Definition: WsbMediaAdapter.h:135
const char * token_url
Token URL, if not NULL, is used to request a native DRM license for playback the content URL...
Definition: WsbMediaAdapter.h:154