Interface KinesisVideoServiceClient
-
- All Known Implementing Classes:
JavaKinesisVideoServiceClient
public interface KinesisVideoServiceClient
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringcreateStream(String streamName, String deviceName, String contentType, String kmsKeyId, long retentionPeriodInHours, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider)Create a stream on KinesisVideo frontendvoiddeleteStream(String streamName, String version, Date creationTime, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider)Delete stream with name and versionStreamDescriptiondescribeStream(String streamName, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider)Describe the status of a streamStringgetDataEndpoint(String streamName, String apiName, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider)Get data endpoint to be used by PutMedia for the specified stream.voidinitialize(KinesisVideoClientConfiguration configuration)Initialize with the network configuration.voidputMedia(String streamName, String containerType, long streamStartTimeInMillis, boolean absoluteFragmentTimes, boolean ackRequired, String dataEndpoint, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider, InputStream dataStream, Consumer<InputStream> acksConsumer, Consumer<Exception> completionCallback)Puts media as a long-running operation.voidtagStream(String streamArn, Map<String,String> tags, long timeoutInMillis, KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider)Tag a stream of a specified ARN with a list of tags.
-
-
-
Method Detail
-
initialize
void initialize(@Nonnull KinesisVideoClientConfiguration configuration) throws KinesisVideoException
Initialize with the network configuration.- Parameters:
configuration- - Client configuration to initialize with- Throws:
KinesisVideoException
-
createStream
String createStream(@Nonnull String streamName, @Nonnull String deviceName, @Nonnull String contentType, @Nullable String kmsKeyId, long retentionPeriodInHours, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider) throws KinesisVideoException
Create a stream on KinesisVideo frontend- Parameters:
streamName- - Name of stream to createdeviceName- - Device name of stream to createcontentType- - Content type of stream to createkmsKeyId- - KMS Key IdretentionPeriodInHours- - Stream retention period in hourstimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to use- Returns:
- StreamArn of stream just created
- Throws:
KinesisVideoException
-
describeStream
StreamDescription describeStream(@Nonnull String streamName, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider) throws KinesisVideoException
Describe the status of a stream- Parameters:
streamName- - Name of stream to describetimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to use- Returns:
- Stream description
- Throws:
KinesisVideoException
-
deleteStream
void deleteStream(@Nonnull String streamName, @Nonnull String version, Date creationTime, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider) throws KinesisVideoException
Delete stream with name and version- Parameters:
streamName- - Name of stream to deleteversion- - Version of stream to deletecreationTime- - Creation time of stream to deletetimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to use- Throws:
KinesisVideoException
-
tagStream
void tagStream(@Nonnull String streamArn, @Nullable Map<String,String> tags, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider) throws KinesisVideoException
Tag a stream of a specified ARN with a list of tags.- Parameters:
streamArn- - ARN of the stream to be taggedtags- - Map of key-value pairtimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to use- Throws:
KinesisVideoException
-
getDataEndpoint
String getDataEndpoint(@Nonnull String streamName, @Nonnull String apiName, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider) throws KinesisVideoException
Get data endpoint to be used by PutMedia for the specified stream.- Parameters:
streamName- - Name of the streamapiName- - Api name to calltimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to use- Returns:
- endpoint to which PutMedia API is sent
- Throws:
KinesisVideoException
-
putMedia
void putMedia(@Nonnull String streamName, @Nonnull String containerType, long streamStartTimeInMillis, boolean absoluteFragmentTimes, boolean ackRequired, @Nonnull String dataEndpoint, long timeoutInMillis, @Nullable KinesisVideoCredentialsProvider kinesisVideoCredentialsProvider, @Nonnull InputStream dataStream, @Nonnull Consumer<InputStream> acksConsumer, @Nullable Consumer<Exception> completionCallback) throws KinesisVideoException
Puts media as a long-running operation.NOTE: The call will be 'prompt' and will return the IO streams which will be used for the actual streaming.
- Parameters:
streamName- - Name of the streamcontainerType- - Container typestreamStartTimeInMillis- - Stream start timeabsoluteFragmentTimes- - Whether to use absolute fragment timesackRequired- - Whether acks are requireddataEndpoint- - The data endpoint to usetimeoutInMillis- - Timeout in millisecondskinesisVideoCredentialsProvider- - Credentials to usedataStream- - DataInputStreamacksConsumer- - Consumer of the ACK input streamcompletionCallback- - Consumer of an Exception for reporting stream termination- Throws:
KinesisVideoException
-
-