IStreamer Interface Reference


Description

The primary interface for giving the streamer commands on what to do with its media stream.

import "IStreamer.idl";

List of all members.

Public Member Functions

void RegisterObserver (in string address)
void ReleaseObserver ()
void GetState (out IToiMediaPlayer::TToiState state)
void GetError (out IToiMediaPlayer::TToiError error)
void GetCapabilities (out long capabilityMask) raises (TToiSessionViolationException)
void GetPosition (out long position, out long pace) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void GetUrl (out string url) raises (TToiSessionViolationException)
void GetStreamInfo (out IToiMediaPlayer::TToiStreamInfo streamInfo) raises (TToiNoDataException, TToiSessionViolationException)
void ActivateComponent (in IToiMediaPlayer::TToiComponentEntry mediaComponent) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void DeactivateComponent (in IToiMediaPlayer::TToiComponentType mediaComponent) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void GetVideoStreamInfo (in IToiMediaPlayer::TToiComponentEntry mediaComponent, out IToiMediaPlayer::TToiVideoStreamInfo info) raises (TToiNoDataException, TToiInvalidArgumentException, TToiSessionViolationException)
void GetAudioStreamInfo (in IToiMediaPlayer::TToiComponentEntry mediaComponent, out IToiMediaPlayer::TToiAudioStreamInfo info) raises (TToiNoDataException, TToiInvalidArgumentException, TToiSessionViolationException)
void GetSubtitleStreamInfo (in IToiMediaPlayer::TToiComponentEntry mediaComponent, out IToiMediaPlayer::TToiSubtitleStreamInfo info) raises (TToiNoDataException, TToiInvalidArgumentException, TToiSessionViolationException)
void GetTeletextStreamInfo (in IToiMediaPlayer::TToiComponentEntry mediaComponent, out IToiMediaPlayer::TToiTeletextStreamInfo info) raises (TToiNoDataException, TToiInvalidArgumentException, TToiSessionViolationException)
void SetAudioChannelMode (in long streamId, in IToiMediaPlayer::TToiAudioChannelMode channelMode) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void GetParameter (in string name, out string value) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void SetParameter (in string name, in string value) raises (TToiInvalidArgumentException, TToiPermissionDeniedException, TToiSessionViolationException)
void UnsetParameter (in string name) raises (TToiInvalidArgumentException, TToiPermissionDeniedException, TToiSessionViolationException)
void SubscribeParameter (in string name, in string address) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void UnsubscribeParameter (in string name, in string address) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void AddSectionDataRelay (in long pid, in IToiMediaSession::TToiDataRelayData data, in IToiMediaSession::TToiDataRelayData include, in IToiMediaSession::TToiDataRelayData exclude, in long length, in string socketName, in long dataRelayId) raises (TToiInvalidArgumentException, TToiNotEnoughResourcesException, TToiSessionViolationException)
void AddPacketDataRelay (in long pid, in string socketName, in long dataRelayId) raises (TToiInvalidArgumentException, TToiNotEnoughResourcesException, TToiSessionViolationException)
void RemoveDataRelay (in long dataRelayId) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void SetDecryptionCipher (in IToiMediaSession::TToiStreamIdSequence streamIds, in IToiMediaSession::TToiCipher cipher, in IToiMediaSession::TToiCipherBlockMode blockMode, in IToiMediaSession::TToiCipherResidueMode residueMode) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)
void SetDecryptionKeys (in IToiMediaSession::TToiStreamIdSequence streamIds, in boolean isEncrypted, in IToiMediaSession::TToiCipherData evenKey, in IToiMediaSession::TToiCipherData evenIv, in IToiMediaSession::TToiCipherData oddKey, in IToiMediaSession::TToiCipherData oddIv, in long length) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)
void SetEncryptionData (in binary keyMaterial, in long keyMaterialLength, in binary markerToken, in long markerTokenLength, in IMediaSession::TCipherKeyParity keyParity) raises (TToiInvalidArgumentException, TToiSessionViolationException)
void GetFrontendInfo (out IMediaSession::TFrontendInfo info) raises (TToiNoDataException, TToiOperationNotSupportedException, TToiSessionViolationException)
void Open (in string sourceUrl) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)
void Close () raises (TToiSessionViolationException)
void Play (in long pace) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void PlayFromPosition (in long position, in long pace) raises (TToiOperationNotSupportedException, TToiInvalidArgumentException, TToiSessionViolationException)
void ActivateDecoders () raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void DeactivateDecoders (in boolean blanking) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void StartRecording (in string assetUri, in unsigned long offset) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)
void StopRecording (in string assetUri) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void ActivateDistributor (in string destinationUrl) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)
void DeactivateDistributor () raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void SetPipMode (in boolean mode) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void GetPipMode (out boolean active) raises (TToiSessionViolationException)
void SuspendRecordings (in string reason) raises (TToiOperationNotSupportedException, TToiSessionViolationException)
void ResumeRecordings (in string reason) raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Public Types

enum  TFeature {
  FEATURE_AUDIO, FEATURE_VIDEO, FEATURE_PIPVIDEO, FEATURE_SOCKET,
  FEATURE_RECORD, FEATURE_TELETEXT, FEATURE_OTHER
}
typedef sequence< octet > binary

Member Function Documentation

void IStreamer::ActivateComponent ( in IToiMediaPlayer::TToiComponentEntry  mediaComponent  )  raises (TToiInvalidArgumentException, TToiSessionViolationException)

Activate a specified component.

Parameters:
mediaComponent The media component to activate.
Exceptions:
TToiInvalidArgumentException If the specified media component doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::ActivateDecoders (  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Activate the decoders.

Exceptions:
TToiOperationNotSupportedException If the decoders already are activated or if they cannot be activated an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::ActivateDistributor ( in string  destinationUrl  )  raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)

Activate the distributor.

Parameters:
destinationUrl The destination url.
Exceptions:
TToiInvalidArgumentException If the destination url is invalid an invalid argument exception is raised.
TToiOperationNotSupportedException If the distributor is active an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::AddPacketDataRelay ( in long  pid,
in string  socketName,
in long  dataRelayId 
) raises (TToiInvalidArgumentException, TToiNotEnoughResourcesException, TToiSessionViolationException)

Add a packet data relay.

Parameters:
pid The pid.
socketName The socket name.
dataRelayId The data relay identifier.
Exceptions:
TToiInvalidArgumentException If the pid is out of range or if the data relay id already exist an invalid argument exception is raised.
TToiNotEnoughResourcesException If there are too many filters in use an not enough resources exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
RemoveDataRelay
void IStreamer::AddSectionDataRelay ( in long  pid,
in IToiMediaSession::TToiDataRelayData  data,
in IToiMediaSession::TToiDataRelayData  include,
in IToiMediaSession::TToiDataRelayData  exclude,
in long  length,
in string  socketName,
in long  dataRelayId 
) raises (TToiInvalidArgumentException, TToiNotEnoughResourcesException, TToiSessionViolationException)

Add a section data relay.

Parameters:
pid The pid.
data The data parameter.
include The include parameter.
exclude The exclude parameter.
length The length of the data, include and exclude parameters.
socketName The socket name.
dataRelayId The data relay identifier.
Exceptions:
TToiInvalidArgumentException If the filter arguments are incorrect or if the data relay id already exist an invalid argument exception is raised.
TToiNotEnoughResourcesException If there are too many filters in use an not enough resources exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
RemoveDataRelay
void IStreamer::Close (  )  raises (TToiSessionViolationException)

Close a currently open streamer session.

Exceptions:
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::DeactivateComponent ( in IToiMediaPlayer::TToiComponentType  mediaComponent  )  raises (TToiInvalidArgumentException, TToiSessionViolationException)

Deactivate an active component.

Parameters:
mediaComponent The media component to deactivate.
Exceptions:
TToiInvalidArgumentException If the specified media component doesn't exist or if it isn't active an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::DeactivateDecoders ( in boolean  blanking  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Deactivate the decoders.

Parameters:
blanking Specifies if the video screen should be blanked when deactivating the decoders.
Exceptions:
TToiOperationNotSupportedException If the decoders are not active an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::DeactivateDistributor (  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Deactivate the distributor.

Exceptions:
TToiOperationNotSupportedException If the distributor is not active an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.

Returns audio stream information for the current session.

Parameters:
mediaComponent The media component to get information about.
Return values:
info Information about the media component.
Exceptions:
TToiNoDataException If the session has no available information about the audio stream an no data exception is raised.
TToiInvalidArgumentException If the specified media component doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetCapabilities ( out long  capabilityMask  )  raises (TToiSessionViolationException)

Returns the capabilities present for the current session.

Return values:
capabilityMask A bit mask describing the capabilities of the current session.
Exceptions:
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
IToiMediaPlayerBase
void IStreamer::GetError ( out IToiMediaPlayer::TToiError  error  ) 

Returns the error for the current session.

Return values:
error The error.
void IStreamer::GetFrontendInfo ( out IMediaSession::TFrontendInfo  info  )  raises (TToiNoDataException, TToiOperationNotSupportedException, TToiSessionViolationException)

Returns the frontend information for the current session.

Return values:
info The frontend information.
Exceptions:
TToiNoDataException If no data is currently available an no data exception is raised.
TToiOperationNotSupportedException If no frontend is in use an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetParameter ( in string  name,
out string  value 
) raises (TToiInvalidArgumentException, TToiSessionViolationException)

Returns the value of a parameter.

Parameters:
name The parameter name.
Return values:
value The parameter value.
Exceptions:
TToiInvalidArgumentException If there is no parameter with the specified name an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetPipMode ( out boolean  active  )  raises (TToiSessionViolationException)

Returns the picture in picture mode for the current session.

Parameters:
active The current picture in picture mode.
Exceptions:
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetPosition ( out long  position,
out long  pace 
) raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Returns the position and pace for the current session.

Return values:
position The stream position.
pace The stream pace.
Exceptions:
TToiOperationNotSupportedException If the session cannot report position an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetState ( out IToiMediaPlayer::TToiState  state  ) 

Returns the state for the current session.

Return values:
state The state.
void IStreamer::GetStreamInfo ( out IToiMediaPlayer::TToiStreamInfo  streamInfo  )  raises (TToiNoDataException, TToiSessionViolationException)

Returns stream information for the current session.

Return values:
streamInfo The stream information.
Exceptions:
TToiNoDataException If the session has no available information about the stream an no data exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
IStreamerSessionObserver::OnSessionStreamInfoChanged()

Returns subtitle stream information for the current session.

Parameters:
mediaComponent The media component to get information about.
Return values:
info Information about the media component.
Exceptions:
TToiNoDataException If the session has no available information about the subtitle stream an no data exception is raised.
TToiInvalidArgumentException If the specified media component doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.

Returns teletext stream information for the current session.

Parameters:
mediaComponent The media component to get information about.
Return values:
info Information about the media component.
Exceptions:
TToiNoDataException If the session has no available information about the teletext stream an no data exception is raised.
TToiInvalidArgumentException If the specified media component doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::GetUrl ( out string  url  )  raises (TToiSessionViolationException)

Returns the url for the current session.

Return values:
url The stream url.
Exceptions:
TToiSessionViolationException If the streamer is not open or is being closed an session violation exception is raised.

Returns video stream information for the current session.

Parameters:
mediaComponent The media component to get information about.
Return values:
info Information about the media component.
Exceptions:
TToiNoDataException If the session has no available information about the video stream an no data exception is raised.
TToiInvalidArgumentException If the specified media component doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::Open ( in string  sourceUrl  )  raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)

Open a new streamer session.

Parameters:
sourceUrl The source url to open.
Exceptions:
TToiInvalidArgumentException If the source url cannot be parsed an invalid argument exception is raised.
TToiOperationNotSupportedException If the source url cannot be handled an operation not supported exception is raised.
TToiSessionViolationException If the session already is open an session violation exception is raised.
void IStreamer::Play ( in long  pace  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Play the stream with pace.

Parameters:
pace The pace which to play the stream.
Exceptions:
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::PlayFromPosition ( in long  position,
in long  pace 
) raises (TToiOperationNotSupportedException, TToiInvalidArgumentException, TToiSessionViolationException)

Play the stream from a specified position with a specified pace.

Parameters:
position The position
pace The pace.
Exceptions:
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::RegisterObserver ( in string  address  ) 

Register an observer to get notifications about session related information.

See also:
IStreamerSessionObserver
void IStreamer::ReleaseObserver (  ) 

Release the currently used observer.

See also:
IStreamerSessionObserver
void IStreamer::RemoveDataRelay ( in long  dataRelayId  )  raises (TToiInvalidArgumentException, TToiSessionViolationException)

Remove a previously added data relay.

Parameters:
dataRelayId The data relay identifier.
Exceptions:
TToiInvalidArgumentException If no data relay with the specified identifier exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::ResumeRecordings ( in string  reason  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Resumes all recordings.

Parameters:
reason The reason for resuming. Should be a value from ToiMediaReasonNames.h
Exceptions:
TToiOperationNotSupportedException If the session cannot cancel the requested types an operation not supported exception is raised.
TToiSessionViolationException If the session no longer exist an session violation exception is raised.
void IStreamer::SetAudioChannelMode ( in long  streamId,
in IToiMediaPlayer::TToiAudioChannelMode  channelMode 
) raises (TToiInvalidArgumentException, TToiSessionViolationException)

Set audio channel mode for a stream identifier.

Parameters:
streamId The stream identifier.
channelMode The channel mode.
Exceptions:
TToiInvalidArgumentException If the specified stream identifier doesn't exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.

Set decryption cipher for a list of stream identifiers.

Parameters:
streamIds The stream identifier list.
cipher The cipher.
blockMode The block mode.
residueMode The residue mode.
Exceptions:
TToiInvalidArgumentException If the parameters are invalid an invalid argument exception is raised.
TToiOperationNotSupportedException If the current implementation does not support the cipher an session violation exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.

Set decryption keys for a list of stream identifiers.

Parameters:
streamIds The stream identifier list.
isEncrypted Flag indicating whether the kesy passed to this function are encrypted.
evenKey The even key, if available.
evenIv The even initialization vector (IV), if applicable.
oddKey The odd key, if available.
oddIv The odd initialization vector (IV), if applicable.
length The length of all keys and IVs.
Exceptions:
TToiInvalidArgumentException If the parameters are invalid an invalid argument exception is raised.
TToiOperationNotSupportedException If the key length is not supported an session violation exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::SetEncryptionData ( in binary  keyMaterial,
in long  keyMaterialLength,
in binary  markerToken,
in long  markerTokenLength,
in IMediaSession::TCipherKeyParity  keyParity 
) raises (TToiInvalidArgumentException, TToiSessionViolationException)

Set encryption data.

Parameters:
keyMaterial The key material.
keyMaterialLength The length of key material.
markerToken The marker token.
markerTokenLength The marker token length.
keyParity The key parity.
Exceptions:
TToiInvalidArgumentException If the parameters are invalid an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::SetParameter ( in string  name,
in string  value 
) raises (TToiInvalidArgumentException, TToiPermissionDeniedException, TToiSessionViolationException)

Set a value of a parameter.

Parameters:
name The name of the parameter.
value The value of the parameter.
Exceptions:
TToiInvalidArgumentException If the value isn't allowed for the parameter an invalid argument exception is raised.
TToiPermissionDeniedException If the parameter cannot be changed due to permission settings an permission denied exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::SetPipMode ( in boolean  mode  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Set picture in picture mode.

Parameters:
mode Specifies if the picture in picture mode should be activated or not.
Exceptions:
TToiOperationNotSupportedException If the implementation does not allow picture in picture mode an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::StartRecording ( in string  assetUri,
in unsigned long  offset 
) raises (TToiInvalidArgumentException, TToiOperationNotSupportedException, TToiSessionViolationException)

Start a recording to specified asset URI.

Parameters:
assetUri The destination asset URI.
offset The offset (in milliseconds) relative to the current position, i.e. a value of 1000 means that one second back in time will be reused. If the specified offset time is not available less data than requested will be given.
Exceptions:
TToiInvalidArgument If any of the arguments are invalid an invalig argument exception is raised.
TToiOperationNotSupportedException If there is no recorder available or if the source or stream does not support recording an not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::StopRecording ( in string  assetUri  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Stop the recording corresponding to the specified asset URI.

Parameters:
assetUri The asset URI of the recording that should be deactivated.
Exceptions:
TToiOperationNotSupportedException If the recorder is not active an operation not supported exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::SubscribeParameter ( in string  name,
in string  address 
) raises (TToiInvalidArgumentException, TToiSessionViolationException)

Subscribe to parameter updates. If the parameter has a value at the subscription time the observer will get an direct notification.

Parameters:
name The name of the paramater.
address The observer address.
Exceptions:
TToiInvalidArgumentException If the observer address does not exist an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
IStreamerSessionObserver
void IStreamer::SuspendRecordings ( in string  reason  )  raises (TToiOperationNotSupportedException, TToiSessionViolationException)

Suspends all recordings.

Parameters:
reason The reason for suspending. Should be a value from ToiMediaReasonNames.h
Exceptions:
TToiOperationNotSupportedException If the session cannot cancel the requested types an operation not supported exception is raised.
TToiSessionViolationException If the session no longer exist an session violation exception is raised.
void IStreamer::UnsetParameter ( in string  name  )  raises (TToiInvalidArgumentException, TToiPermissionDeniedException, TToiSessionViolationException)

Unset a value of a parameter.

Parameters:
name The name of the parameter.
Exceptions:
TToiInvalidArgumentException If there is no parameter with the specified name an invalid argument exception is raised.
TToiPermissionDeniedException If the parameter cannot be changed due to permission settings an permission denied exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
void IStreamer::UnsubscribeParameter ( in string  name,
in string  address 
) raises (TToiInvalidArgumentException, TToiSessionViolationException)

Unsubscribe to a previously subscribed parameter.

Parameters:
name The parameter name.
address The observer address.
Exceptions:
TToiInvalidArgumentException If the observer address does not exist or if the parameter has no subscription an invalid argument exception is raised.
TToiSessionViolationException If the session is not open or is being closed an session violation exception is raised.
See also:
SubscribeParameter
IStreamerSessionObserver