{ "version":"2.0", "metadata":{ "apiVersion":"2017-09-30", "endpointPrefix":"kinesisvideo", "protocol":"rest-json", "serviceAbbreviation":"Kinesis Video Archived Media", "serviceFullName":"Amazon Kinesis Video Streams Archived Media", "serviceId":"Kinesis Video Archived Media", "signatureVersion":"v4", "uid":"kinesis-video-archived-media-2017-09-30" }, "operations":{ "GetMediaForFragmentList":{ "name":"GetMediaForFragmentList", "http":{ "method":"POST", "requestUri":"/getMediaForFragmentList" }, "input":{"shape":"GetMediaForFragmentListInput"}, "output":{"shape":"GetMediaForFragmentListOutput"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"InvalidArgumentException"}, {"shape":"ClientLimitExceededException"}, {"shape":"NotAuthorizedException"} ], "documentation":"
Gets media for a list of fragments (specified by fragment number) from the archived data in a Kinesis video stream.
This operation is only available for the AWS SDK for Java. It is not supported in AWS SDKs for other languages.
The following limits apply when using the GetMediaForFragmentList
API:
A client can call GetMediaForFragmentList
up to five times per second per stream.
Kinesis Video Streams sends media data at a rate of up to 25 megabytes per second (or 200 megabits per second) during a GetMediaForFragmentList
session.
Returns a list of Fragment objects from the specified stream and start location within the archived data.
" } }, "shapes":{ "ClientLimitExceededException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.
", "error":{"httpStatusCode":400}, "exception":true }, "ContentType":{ "type":"string", "max":128, "min":1, "pattern":"^[a-zA-Z0-9_\\.\\-]+$" }, "ErrorMessage":{"type":"string"}, "Fragment":{ "type":"structure", "members":{ "FragmentNumber":{ "shape":"String", "documentation":"The index value of the fragment.
" }, "FragmentSizeInBytes":{ "shape":"Long", "documentation":"The total fragment size, including information about the fragment and contained media data.
" }, "ProducerTimestamp":{ "shape":"Timestamp", "documentation":"The time stamp from the producer corresponding to the fragment.
" }, "ServerTimestamp":{ "shape":"Timestamp", "documentation":"The time stamp from the AWS server corresponding to the fragment.
" }, "FragmentLengthInMilliseconds":{ "shape":"Long", "documentation":"The playback duration or other time value associated with the fragment.
" } }, "documentation":"Represents a segment of video or other time-delimited data.
" }, "FragmentList":{ "type":"list", "member":{"shape":"Fragment"} }, "FragmentNumberList":{ "type":"list", "member":{"shape":"FragmentNumberString"} }, "FragmentNumberString":{ "type":"string", "max":128, "min":1, "pattern":"^[0-9]+$" }, "FragmentSelector":{ "type":"structure", "required":[ "FragmentSelectorType", "TimestampRange" ], "members":{ "FragmentSelectorType":{ "shape":"FragmentSelectorType", "documentation":"The origin of the time stamps to use (Server or Producer).
" }, "TimestampRange":{ "shape":"TimestampRange", "documentation":"The range of time stamps to return.
" } }, "documentation":"Describes the time stamp range and time stamp origin of a range of fragments.
" }, "FragmentSelectorType":{ "type":"string", "enum":[ "PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP" ] }, "GetMediaForFragmentListInput":{ "type":"structure", "required":[ "StreamName", "Fragments" ], "members":{ "StreamName":{ "shape":"StreamName", "documentation":"The name of the stream from which to retrieve fragment media.
" }, "Fragments":{ "shape":"FragmentNumberList", "documentation":"A list of the numbers of fragments for which to retrieve media. You retrieve these values with ListFragments.
" } } }, "GetMediaForFragmentListOutput":{ "type":"structure", "members":{ "ContentType":{ "shape":"ContentType", "documentation":"The content type of the requested media.
", "location":"header", "locationName":"Content-Type" }, "Payload":{ "shape":"Payload", "documentation":"The payload that Kinesis Video Streams returns is a sequence of chunks from the specified stream. For information about the chunks, see PutMedia. The chunks that Kinesis Video Streams returns in the GetMediaForFragmentList
call also include the following additional Matroska (MKV) tags:
AWS_KINESISVIDEO_FRAGMENT_NUMBER - Fragment number returned in the chunk.
AWS_KINESISVIDEO_SERVER_SIDE_TIMESTAMP - Server-side time stamp of the fragment.
AWS_KINESISVIDEO_PRODUCER_SIDE_TIMESTAMP - Producer-side time stamp of the fragment.
The following tags will be included if an exception occurs:
AWS_KINESISVIDEO_FRAGMENT_NUMBER - The number of the fragment that threw the exception
AWS_KINESISVIDEO_EXCEPTION_ERROR_CODE - The integer code of the exception
AWS_KINESISVIDEO_EXCEPTION_MESSAGE - A text description of the exception
A specified parameter exceeds its restrictions, is not supported, or can't be used.
", "error":{"httpStatusCode":400}, "exception":true }, "ListFragmentsInput":{ "type":"structure", "required":["StreamName"], "members":{ "StreamName":{ "shape":"StreamName", "documentation":"The name of the stream from which to retrieve a fragment list.
" }, "MaxResults":{ "shape":"PageLimit", "documentation":"The total number of fragments to return. If the total number of fragments available is more than the value specified in max-results
, then a ListFragmentsOutput$NextToken is provided in the output that you can use to resume pagination.
A token to specify where to start paginating. This is the ListFragmentsOutput$NextToken from a previously truncated response.
" }, "FragmentSelector":{ "shape":"FragmentSelector", "documentation":"Describes the time stamp range and time stamp origin for the range of fragments to return.
" } } }, "ListFragmentsOutput":{ "type":"structure", "members":{ "Fragments":{ "shape":"FragmentList", "documentation":"A list of fragment numbers that correspond to the time stamp range provided.
" }, "NextToken":{ "shape":"String", "documentation":"If the returned list is truncated, the operation returns this token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Status Code: 403, The caller is not authorized to perform an operation on the given stream, or the token has expired.
", "error":{"httpStatusCode":401}, "exception":true }, "PageLimit":{ "type":"long", "max":1000, "min":1 }, "Payload":{ "type":"blob", "streaming":true }, "ResourceNotFoundException":{ "type":"structure", "members":{ "Message":{"shape":"ErrorMessage"} }, "documentation":"Kinesis Video Streams can't find the stream that you specified.
", "error":{"httpStatusCode":404}, "exception":true }, "StreamName":{ "type":"string", "max":256, "min":1, "pattern":"[a-zA-Z0-9_.-]+" }, "String":{ "type":"string", "min":1 }, "Timestamp":{"type":"timestamp"}, "TimestampRange":{ "type":"structure", "required":[ "StartTimestamp", "EndTimestamp" ], "members":{ "StartTimestamp":{ "shape":"Timestamp", "documentation":"The starting time stamp in the range of time stamps for which to return fragments.
" }, "EndTimestamp":{ "shape":"Timestamp", "documentation":"The ending time stamp in the range of time stamps for which to return fragments.
" } }, "documentation":"The range of time stamps for which to return fragments.
" } }, "documentation":"" }