Interface KinesisVideoClient
-
- All Known Implementing Classes:
AbstractKinesisVideoClient,JavaKinesisVideoClient,NativeKinesisVideoClient
public interface KinesisVideoClientTop level interface representing an Kinesis Video Streams client
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description MediaSourcecreateMediaSource(String streamName, MediaSourceConfiguration mediaSourceConfiguration)Try create a media source.voidfree()Stops the media sources and frees/releases the underlying objectsvoidfreeMediaSource(MediaSource mediaSource)Free a media source.voidinitialize(DeviceInfo deviceInfo)Initializes the client object.booleanisInitialized()Returns whether the client has been initializedList<MediaSourceConfiguration.Builder<? extends MediaSourceConfiguration>>listSupportedConfigurations()List few known media sources available to the application.voidregisterMediaSource(MediaSource mediaSource)Register a media source.voidregisterMediaSourceAsync(MediaSource mediaSource)Register a media source ASYNC.voidstartAllMediaSources()Start all registered media sourcesvoidstopAllMediaSources()Stop all registered media sourcesvoidunregisterMediaSource(MediaSource mediaSource)Un-Register a media source.
-
-
-
Method Detail
-
isInitialized
boolean isInitialized()
Returns whether the client has been initialized- Returns:
- true if initialized. false otherwise.
-
initialize
void initialize(@Nonnull DeviceInfo deviceInfo) throws KinesisVideoException
Initializes the client object.- Parameters:
deviceInfo- Device info for which the client needs to be initialized.- Throws:
KinesisVideoException- if unable to initialize KinesisVideoClient.
-
listSupportedConfigurations
List<MediaSourceConfiguration.Builder<? extends MediaSourceConfiguration>> listSupportedConfigurations()
List few known media sources available to the application. The configurations returned are expected to be working as is. The returned list is not exhaustive, some working configurations will likely be missing from the list.- Returns:
- list of configuration builders to allow further configuration
-
registerMediaSource
void registerMediaSource(MediaSource mediaSource) throws KinesisVideoException
Register a media source. The media source will be binding to kinesis video producer stream to send out data from media source. Sync call to create the stream and bind to media source.- Parameters:
mediaSource- media source binding to kinesis video producer stream- Throws:
KinesisVideoException- if unable to register media source.
-
registerMediaSourceAsync
void registerMediaSourceAsync(MediaSource mediaSource) throws KinesisVideoException
Register a media source ASYNC. The media source will be binding to kinesis video producer stream via CreateStream and send out data from media source. Async call to create the stream and bind to media source.- Parameters:
mediaSource- media source binding to kinesis video producer stream- Throws:
KinesisVideoException- if unable to register media source.
-
unregisterMediaSource
void unregisterMediaSource(MediaSource mediaSource) throws KinesisVideoException
Un-Register a media source. The media source will stop binding to kinesis video producer stream and it cannot send data via producer stream afterwards until register again. Sync call and could be block for 15 seconds if error happens when stopping stream.- Parameters:
mediaSource- media source to stop binding to kinesis video producer stream- Throws:
KinesisVideoException- if unable to unregister media source.
-
startAllMediaSources
void startAllMediaSources() throws KinesisVideoExceptionStart all registered media sources- Throws:
KinesisVideoException- if unable to start all media sources.
-
freeMediaSource
void freeMediaSource(@Nonnull MediaSource mediaSource) throws KinesisVideoException
Free a media source. Async call to clean up resources if error happens.- Parameters:
mediaSource- media source binding to kinesis video producer stream to be freed- Throws:
KinesisVideoException- if unable to free media source.
-
stopAllMediaSources
void stopAllMediaSources() throws KinesisVideoExceptionStop all registered media sources- Throws:
KinesisVideoException- if unable to stop all media sources.
-
createMediaSource
MediaSource createMediaSource(String streamName, MediaSourceConfiguration mediaSourceConfiguration) throws KinesisVideoException
Try create a media source. Use the mediaSourceConfiguration to determine, the media source type, create the instance, and ensure that it is configured with working parameters- Parameters:
streamName- Stream name for the media sourcemediaSourceConfiguration- , configuration to create specific media source- Returns:
- configured and working media source
- Throws:
UnsupportedConfigurationException- is thrown when the configuration is not supported, e.g. camera resolution or encodingUnknownMediaSourceException- is thrown when the media source type is unknown and cannot be createdKinesisVideoException
-
free
void free() throws KinesisVideoException
Stops the media sources and frees/releases the underlying objects- Throws:
KinesisVideoException- if unable to free resources.
-
-