HbbTv  17.9.0
Open source HBBTV engine
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
Typedefs | Functions | Variables
video_broadcast.c File Reference

Video/broadcast object. More...

#include <stdio.h>
#include <string.h>
#include "techtype.h"
#include "dbgfuncs.h"
#include "hbbtv.h"
#include "hbbtv_sif_os.h"
#include "hbbtv_sif_types.h"
#include "hbbtv_sif_decoding.h"
#include "hbbtv_sif_pvr.h"
#include "hbbtv_js.h"
#include "debug.h"
#include "object.h"
#include "hbbtv_control.h"
#include "programme_collection.h"
#include "channel.h"
#include "hbbtv_internal.h"
#include "collection.h"
#include "channel_config.h"
#include "avcomponent.h"
#include "video_broadcast.h"
#include "hbbtv_string.h"
#include "xml_parse.h"
#include "dsmclient.h"
#include "oipf_app_mgr.h"
#include "oipf_drm_agent.h"

Typedefs

typedef struct s_component_tag_list S_COMPONENT_TAG_LIST
 
typedef struct s_video_broadcast S_VIDEO_BROADCAST
 
typedef struct s_ignored_event_list S_IGNORED_EVENT
 

Functions

void HBBTV_JSVideoBroadcast_setPosition (void *obj, S32BIT x, S32BIT y)
 
S32BIT HBBTV_JSVideoBroadcast_getWidth (void *obj)
 Integer width, Section 7.13.1.2. More...
 
void HBBTV_JSVideoBroadcast_setWidth (void *obj, S32BIT width)
 Integer width, Section 7.13.1.2. More...
 
S32BIT HBBTV_JSVideoBroadcast_getHeight (void *obj)
 Integer height, Section 7.13.1.2. More...
 
void HBBTV_JSVideoBroadcast_setHeight (void *obj, S32BIT height)
 Integer height, Section 7.13.1.2. More...
 
void HBBTV_JSVideoBroadcast_setVideoWindow (void *obj, S32BIT x, S32BIT y, S32BIT width, S32BIT height)
 Changes the video position and dimensions at once. More...
 
BOOLEAN HBBTV_JSVideoBroadcast_getFullScreen (void *obj)
 readonly Boolean fullScreen, Section 7.13.1.2 More...
 
E_HBBTV_BROADCAST_STATE HBBTV_JSVideoBroadcast_getPlayState (void *obj)
 Integer playState, Section 7.13.1.2. More...
 
void * HBBTV_JSVideoBroadcast_getData (void *obj)
 String data, Section 7.13.1.2. More...
 
void HBBTV_JSVideoBroadcast_setData (void *obj, S_HBBTV_STRING *data)
 String data, Section 7.13.1.2. More...
 
void * HBBTV_JSVideoBroadcast_getChannelConfig (void *obj)
 ChannelConfig getChannelConfig(), Section 7.13.1.3. More...
 
void HBBTV_JSVideoBroadcast_bindToCurrentChannel (void *obj)
 void bindToCurrentChannel(), Section 7.13.1.3 More...
 
void * HBBTV_JSVideoBroadcast_createChannelObject (void *obj, S32BIT id_type, S_HBBTV_STRING *dsd, S32BIT sid)
 Channel createChannelObject(Integer idType, String dsd, Integer sid), Section 7.13.1.3. Although dsd property of the channel object is defined as ISO Latin1, the HbbTV engine expects dsd to be UTF-8 encoded as Latin1 is not supported. More...
 
void * HBBTV_JSVideoBroadcast_createChannelObject2 (void *obj, S32BIT id_type, S32BIT onid, S32BIT tsid, S32BIT sid, S32BIT source_id, S_HBBTV_STRING *ip_broadcast_id)
 Channel createChannelObject(Integer idType, Integer onid, Integer tsid, Integer sid, Integer sourceID, String ipBroadcastID), Section 7.13.1.3. More...
 
void HBBTV_JSVideoBroadcast_setChannel (void *obj, void *channel, BOOLEAN trickplay, S_HBBTV_STRING *content_access_desc_url)
 void setChannel(Channel channel, Boolean trickplay, String contentAccessDescriptorURL), Section 7.13.1.3 More...
 
void HBBTV_JSVideoBroadcast_prevChannel (void *obj)
 void prevChannel(), Section 7.13.1.3 More...
 
void HBBTV_JSVideoBroadcast_nextChannel (void *obj)
 void nextChannel(), Section 7.13.1.3 More...
 
void HBBTV_JSVideoBroadcast_setFullScreen (void *obj, BOOLEAN full_screen)
 void setFullScreen(Boolean fullscreen), Section 7.13.1.3 More...
 
void HBBTV_JSVideoBroadcast_release (void *obj)
 void release(), Section 7.13.1.3 More...
 
void HBBTV_JSVideoBroadcast_stop (void *obj)
 void stop(), Section 7.13.1.3 More...
 
void * HBBTV_JSVideoBroadcast_getCurrentChannel (void *obj)
 readonly Channel currentChannel, Section 7.13.7.1 More...
 
void * HBBTV_JSVideoBroadcast_getProgrammes (void *obj)
 readonly ProgrammeCollection programmes, Section 7.13.3 More...
 
void HBBTV_VidBcstUpdateChannelList (void *obj)
 
void * HBBTV_JSVideoBroadcast_getComponents (void *obj, HBBTV_JSAVComponent_Type type)
 AVComponentCollection getComponents, Section 7.16.5.1.3. HBBTV_JSAVComponent_TYPE_UNKNOWN is used for parameter 'type' for values null or undefined in javascript. More...
 
void * HBBTV_JSVideoBroadcast_getCurrentActiveComponents (void *obj, HBBTV_JSAVComponent_Type type)
 AVComponentCollection getCurrentActiveComponents, Section 7.16.5.1.3. More...
 
void HBBTV_JSVideoBroadcast_selectComponent (void *obj, void *component)
 void selectComponent( AVComponent component ), Section 7.16.5.1.3
 
void HBBTV_JSVideoBroadcast_selectComponentType (void *obj, HBBTV_JSAVComponent_Type comp_type)
 void void selectComponent( Integer componentType ), Section 7.16.5.1.3
 
void HBBTV_JSVideoBroadcast_unselectComponent (void *obj, void *component)
 void unselectComponent( AVComponent component ), Section 7.16.5.1.3
 
void HBBTV_JSVideoBroadcast_unselectComponentType (void *obj, HBBTV_JSAVComponent_Type comp_type)
 void unselectComponent( Integer componentType ), Section 7.16.5.1.3
 
HBBTV_JSVideoBroadcast_RECORDING_STATE HBBTV_JSVideoBroadcast_getRecordingState (void *obj)
 readonly Integer recordingState, Section 7.13.2.2 More...
 
float HBBTV_JSVideoBroadcast_getPlaySpeed (void *obj)
 readonly Number playSpeed, Section 7.13.2.2 More...
 
U32BIT HBBTV_JSVideoBroadcast_getPlayPosition (void *obj)
 readonly Integer playPosition, Section 7.13.2.2 More...
 
BOOLEAN HBBTV_JSVideoBroadcast_loadStreamEventListener (void *obj, S_HBBTV_STRING xml_data, S_HBBTV_STRING name, U32BIT listener_id)
 
BOOLEAN HBBTV_JSVideoBroadcast_addStreamEventListener (void *obj, S_HBBTV_STRING url, S_HBBTV_STRING name, U32BIT listener_id)
 void addStreamEventListener, TS 102796, Section 8.2.1.1 More...
 
BOOLEAN HBBTV_JSVideoBroadcast_removeStreamEventListener (void *obj, S_HBBTV_STRING name, U32BIT listener_id)
 void removeStreamEventListener, TS 102796, Section 8.2.1.1 More...
 
void * HBBTV_JSVideoBroadcast_recordNow (void *obj, S32BIT duration)
 void recordNow, section 7.13.2.3 More...
 
void HBBTV_JSVideoBroadcast_stopRecording (void *obj)
 void stopRecording() More...
 
void HBBTV_VidBcstShow (void)
 
void HBBTV_VidBcstHide (void)
 
void HBBTV_VidBcstPRatingChange (S_QUE_GENERAL_PARAMS *params)
 
void HBBTV_VidBcstChannelChangeStatus (S_QUE_CHANNEL_CHANGE_PARAMS *params)
 
void HBBTV_VidBcstProgChanged (void *unused)
 
void HBBTV_VidBcstRecEvent (S_QUE_RECORDING_EVENT_PARAMS *params)
 
void HBBTV_VidBcstDRMRightsError (S_QUE_DRM_PARAMS *params)
 

Variables

void * JS_VIDEO_BROADCAST_CLASS = &s_vtab
 

Detailed Description

Video/broadcast object.

Date
01/01/2013
Author
Adam Sturtridge

Function Documentation

BOOLEAN HBBTV_JSVideoBroadcast_addStreamEventListener ( void *  obj,
S_HBBTV_STRING  url,
S_HBBTV_STRING  name,
U32BIT  listener_id 
)

void addStreamEventListener, TS 102796, Section 8.2.1.1

Note
void addStreamEventListener
TS 102796, section 8.2.1.1
void HBBTV_JSVideoBroadcast_bindToCurrentChannel ( void *  obj)

void bindToCurrentChannel(), Section 7.13.1.3

Note
void bindToCurrentChannel()
Section 7.13.1.3
void* HBBTV_JSVideoBroadcast_createChannelObject ( void *  obj,
S32BIT  id_type,
S_HBBTV_STRING dsd,
S32BIT  sid 
)

Channel createChannelObject(Integer idType, String dsd, Integer sid), Section 7.13.1.3. Although dsd property of the channel object is defined as ISO Latin1, the HbbTV engine expects dsd to be UTF-8 encoded as Latin1 is not supported.

Note
Channel createChannelObject(Integer idType, String dsd, Integer sid)
Section 7.13.1.3
void* HBBTV_JSVideoBroadcast_createChannelObject2 ( void *  obj,
S32BIT  id_type,
S32BIT  onid,
S32BIT  tsid,
S32BIT  sid,
S32BIT  source_id,
S_HBBTV_STRING ip_broadcast_id 
)

Channel createChannelObject(Integer idType, Integer onid, Integer tsid, Integer sid, Integer sourceID, String ipBroadcastID), Section 7.13.1.3.

Note
Channel createChannelObject(Integer idType, Integer onid, Integer tsid, Integer sid, Integer sourceID, String ipBroadcastID)
Section 7.13.1.3
void* HBBTV_JSVideoBroadcast_getChannelConfig ( void *  obj)

ChannelConfig getChannelConfig(), Section 7.13.1.3.

Note
ChannelConfig getChannelConfig()
Section 7.13.1.3
void* HBBTV_JSVideoBroadcast_getComponents ( void *  obj,
HBBTV_JSAVComponent_Type  type 
)

AVComponentCollection getComponents, Section 7.16.5.1.3. HBBTV_JSAVComponent_TYPE_UNKNOWN is used for parameter 'type' for values null or undefined in javascript.

Note
AVComponentCollection getComponents
Section 7.16.5.1.3
void* HBBTV_JSVideoBroadcast_getCurrentActiveComponents ( void *  obj,
HBBTV_JSAVComponent_Type  type 
)

AVComponentCollection getCurrentActiveComponents, Section 7.16.5.1.3.

Note
AVComponentCollection getCurrentActiveComponents
Section 7.16.5.1.3
void* HBBTV_JSVideoBroadcast_getCurrentChannel ( void *  obj)

readonly Channel currentChannel, Section 7.13.7.1

Note
readonly Channel currentChannel
Section 7.13.7.1
void* HBBTV_JSVideoBroadcast_getData ( void *  obj)

String data, Section 7.13.1.2.

Note
String data
Section 7.13.1.2
BOOLEAN HBBTV_JSVideoBroadcast_getFullScreen ( void *  obj)

readonly Boolean fullScreen, Section 7.13.1.2

Note
readonly Boolean fullScreen
Section 7.13.1.2
S32BIT HBBTV_JSVideoBroadcast_getHeight ( void *  obj)

Integer height, Section 7.13.1.2.

Note
Integer height
Section 7.13.1.2
U32BIT HBBTV_JSVideoBroadcast_getPlayPosition ( void *  obj)

readonly Integer playPosition, Section 7.13.2.2

Note
readonly Integer playPosition
7.13.2.2
float HBBTV_JSVideoBroadcast_getPlaySpeed ( void *  obj)

readonly Number playSpeed, Section 7.13.2.2

Note
readonly Number playSpeed
7.13.2.2
E_HBBTV_BROADCAST_STATE HBBTV_JSVideoBroadcast_getPlayState ( void *  obj)

Integer playState, Section 7.13.1.2.

Note
Integer playState
Section 7.13.1.2
void* HBBTV_JSVideoBroadcast_getProgrammes ( void *  obj)

readonly ProgrammeCollection programmes, Section 7.13.3

Note
readonly ProgrammeCollection programmes
Section 7.13.3
HBBTV_JSVideoBroadcast_RECORDING_STATE HBBTV_JSVideoBroadcast_getRecordingState ( void *  obj)

readonly Integer recordingState, Section 7.13.2.2

Note
readonly Integer recordingState
7.13.2.2
S32BIT HBBTV_JSVideoBroadcast_getWidth ( void *  obj)

Integer width, Section 7.13.1.2.

Note
Integer width
Section 7.13.1.2
BOOLEAN HBBTV_JSVideoBroadcast_loadStreamEventListener ( void *  obj,
S_HBBTV_STRING  xml_data,
S_HBBTV_STRING  name,
U32BIT  listener_id 
)
Note
void addStreamEventListener
TS 102796, section 8.2.1.1
void HBBTV_JSVideoBroadcast_nextChannel ( void *  obj)

void nextChannel(), Section 7.13.1.3

Note
void nextChannel()
Section 7.13.1.3
void HBBTV_JSVideoBroadcast_prevChannel ( void *  obj)

void prevChannel(), Section 7.13.1.3

Note
void prevChannel()
Section 7.13.1.3
void* HBBTV_JSVideoBroadcast_recordNow ( void *  obj,
S32BIT  duration 
)

void recordNow, section 7.13.2.3

Parameters
objVideo broadcast object
durationDuration of the recording in seconds
void HBBTV_JSVideoBroadcast_release ( void *  obj)

void release(), Section 7.13.1.3

Note
void release()
Section 7.13.1.3
BOOLEAN HBBTV_JSVideoBroadcast_removeStreamEventListener ( void *  obj,
S_HBBTV_STRING  name,
U32BIT  listener_id 
)

void removeStreamEventListener, TS 102796, Section 8.2.1.1

Note
void removeStreamEventListener
TS 102796, section 8.2.1.1
void HBBTV_JSVideoBroadcast_setChannel ( void *  obj,
void *  channel,
BOOLEAN  trickplay,
S_HBBTV_STRING content_access_desc_url 
)

void setChannel(Channel channel, Boolean trickplay, String contentAccessDescriptorURL), Section 7.13.1.3

Note
void setChannel(Channel channel, Boolean trickplay, String contentAccessDescriptorURL)
Section 7.13.1.3
void HBBTV_JSVideoBroadcast_setData ( void *  obj,
S_HBBTV_STRING data 
)

String data, Section 7.13.1.2.

Note
String data
Section 7.13.1.2
void HBBTV_JSVideoBroadcast_setFullScreen ( void *  obj,
BOOLEAN  full_screen 
)

void setFullScreen(Boolean fullscreen), Section 7.13.1.3

Note
void setFullScreen(Boolean fullscreen)
Section 7.13.1.3
void HBBTV_JSVideoBroadcast_setHeight ( void *  obj,
S32BIT  height 
)

Integer height, Section 7.13.1.2.

Note
Integer height
Section 7.13.1.2
void HBBTV_JSVideoBroadcast_setVideoWindow ( void *  obj,
S32BIT  x,
S32BIT  y,
S32BIT  width,
S32BIT  height 
)

Changes the video position and dimensions at once.

Parameters
objVideo/broadcast object
xNew horizontal position of the top left corner
yNew vertical position of the top left corner
widthNew width
heightNew height
void HBBTV_JSVideoBroadcast_setWidth ( void *  obj,
S32BIT  width 
)

Integer width, Section 7.13.1.2.

Note
Integer width
Section 7.13.1.2
void HBBTV_JSVideoBroadcast_stop ( void *  obj)

void stop(), Section 7.13.1.3

Note
void stop()
Section 7.13.1.3
void HBBTV_JSVideoBroadcast_stopRecording ( void *  obj)

void stopRecording()

void stopRecording(), sectuion 7.13.2.3

Parameters
objVideo broadcast object