@aws-sdk/client-kinesis-video-archived-media 3.315.0 → 3.319.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.KinesisVideoArchivedMedia = void 0;
4
+ const smithy_client_1 = require("@aws-sdk/smithy-client");
4
5
  const GetClipCommand_1 = require("./commands/GetClipCommand");
5
6
  const GetDASHStreamingSessionURLCommand_1 = require("./commands/GetDASHStreamingSessionURLCommand");
6
7
  const GetHLSStreamingSessionURLCommand_1 = require("./commands/GetHLSStreamingSessionURLCommand");
@@ -8,90 +9,15 @@ const GetImagesCommand_1 = require("./commands/GetImagesCommand");
8
9
  const GetMediaForFragmentListCommand_1 = require("./commands/GetMediaForFragmentListCommand");
9
10
  const ListFragmentsCommand_1 = require("./commands/ListFragmentsCommand");
10
11
  const KinesisVideoArchivedMediaClient_1 = require("./KinesisVideoArchivedMediaClient");
12
+ const commands = {
13
+ GetClipCommand: GetClipCommand_1.GetClipCommand,
14
+ GetDASHStreamingSessionURLCommand: GetDASHStreamingSessionURLCommand_1.GetDASHStreamingSessionURLCommand,
15
+ GetHLSStreamingSessionURLCommand: GetHLSStreamingSessionURLCommand_1.GetHLSStreamingSessionURLCommand,
16
+ GetImagesCommand: GetImagesCommand_1.GetImagesCommand,
17
+ GetMediaForFragmentListCommand: GetMediaForFragmentListCommand_1.GetMediaForFragmentListCommand,
18
+ ListFragmentsCommand: ListFragmentsCommand_1.ListFragmentsCommand,
19
+ };
11
20
  class KinesisVideoArchivedMedia extends KinesisVideoArchivedMediaClient_1.KinesisVideoArchivedMediaClient {
12
- getClip(args, optionsOrCb, cb) {
13
- const command = new GetClipCommand_1.GetClipCommand(args);
14
- if (typeof optionsOrCb === "function") {
15
- this.send(command, optionsOrCb);
16
- }
17
- else if (typeof cb === "function") {
18
- if (typeof optionsOrCb !== "object")
19
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
20
- this.send(command, optionsOrCb || {}, cb);
21
- }
22
- else {
23
- return this.send(command, optionsOrCb);
24
- }
25
- }
26
- getDASHStreamingSessionURL(args, optionsOrCb, cb) {
27
- const command = new GetDASHStreamingSessionURLCommand_1.GetDASHStreamingSessionURLCommand(args);
28
- if (typeof optionsOrCb === "function") {
29
- this.send(command, optionsOrCb);
30
- }
31
- else if (typeof cb === "function") {
32
- if (typeof optionsOrCb !== "object")
33
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
34
- this.send(command, optionsOrCb || {}, cb);
35
- }
36
- else {
37
- return this.send(command, optionsOrCb);
38
- }
39
- }
40
- getHLSStreamingSessionURL(args, optionsOrCb, cb) {
41
- const command = new GetHLSStreamingSessionURLCommand_1.GetHLSStreamingSessionURLCommand(args);
42
- if (typeof optionsOrCb === "function") {
43
- this.send(command, optionsOrCb);
44
- }
45
- else if (typeof cb === "function") {
46
- if (typeof optionsOrCb !== "object")
47
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
48
- this.send(command, optionsOrCb || {}, cb);
49
- }
50
- else {
51
- return this.send(command, optionsOrCb);
52
- }
53
- }
54
- getImages(args, optionsOrCb, cb) {
55
- const command = new GetImagesCommand_1.GetImagesCommand(args);
56
- if (typeof optionsOrCb === "function") {
57
- this.send(command, optionsOrCb);
58
- }
59
- else if (typeof cb === "function") {
60
- if (typeof optionsOrCb !== "object")
61
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
62
- this.send(command, optionsOrCb || {}, cb);
63
- }
64
- else {
65
- return this.send(command, optionsOrCb);
66
- }
67
- }
68
- getMediaForFragmentList(args, optionsOrCb, cb) {
69
- const command = new GetMediaForFragmentListCommand_1.GetMediaForFragmentListCommand(args);
70
- if (typeof optionsOrCb === "function") {
71
- this.send(command, optionsOrCb);
72
- }
73
- else if (typeof cb === "function") {
74
- if (typeof optionsOrCb !== "object")
75
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
76
- this.send(command, optionsOrCb || {}, cb);
77
- }
78
- else {
79
- return this.send(command, optionsOrCb);
80
- }
81
- }
82
- listFragments(args, optionsOrCb, cb) {
83
- const command = new ListFragmentsCommand_1.ListFragmentsCommand(args);
84
- if (typeof optionsOrCb === "function") {
85
- this.send(command, optionsOrCb);
86
- }
87
- else if (typeof cb === "function") {
88
- if (typeof optionsOrCb !== "object")
89
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
90
- this.send(command, optionsOrCb || {}, cb);
91
- }
92
- else {
93
- return this.send(command, optionsOrCb);
94
- }
95
- }
96
21
  }
97
22
  exports.KinesisVideoArchivedMedia = KinesisVideoArchivedMedia;
23
+ (0, smithy_client_1.createAggregatedClient)(commands, KinesisVideoArchivedMedia);
@@ -1,93 +1,19 @@
1
+ import { createAggregatedClient } from "@aws-sdk/smithy-client";
1
2
  import { GetClipCommand } from "./commands/GetClipCommand";
2
3
  import { GetDASHStreamingSessionURLCommand, } from "./commands/GetDASHStreamingSessionURLCommand";
3
4
  import { GetHLSStreamingSessionURLCommand, } from "./commands/GetHLSStreamingSessionURLCommand";
4
5
  import { GetImagesCommand } from "./commands/GetImagesCommand";
5
6
  import { GetMediaForFragmentListCommand, } from "./commands/GetMediaForFragmentListCommand";
6
7
  import { ListFragmentsCommand, } from "./commands/ListFragmentsCommand";
7
- import { KinesisVideoArchivedMediaClient } from "./KinesisVideoArchivedMediaClient";
8
+ import { KinesisVideoArchivedMediaClient, } from "./KinesisVideoArchivedMediaClient";
9
+ const commands = {
10
+ GetClipCommand,
11
+ GetDASHStreamingSessionURLCommand,
12
+ GetHLSStreamingSessionURLCommand,
13
+ GetImagesCommand,
14
+ GetMediaForFragmentListCommand,
15
+ ListFragmentsCommand,
16
+ };
8
17
  export class KinesisVideoArchivedMedia extends KinesisVideoArchivedMediaClient {
9
- getClip(args, optionsOrCb, cb) {
10
- const command = new GetClipCommand(args);
11
- if (typeof optionsOrCb === "function") {
12
- this.send(command, optionsOrCb);
13
- }
14
- else if (typeof cb === "function") {
15
- if (typeof optionsOrCb !== "object")
16
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
17
- this.send(command, optionsOrCb || {}, cb);
18
- }
19
- else {
20
- return this.send(command, optionsOrCb);
21
- }
22
- }
23
- getDASHStreamingSessionURL(args, optionsOrCb, cb) {
24
- const command = new GetDASHStreamingSessionURLCommand(args);
25
- if (typeof optionsOrCb === "function") {
26
- this.send(command, optionsOrCb);
27
- }
28
- else if (typeof cb === "function") {
29
- if (typeof optionsOrCb !== "object")
30
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
31
- this.send(command, optionsOrCb || {}, cb);
32
- }
33
- else {
34
- return this.send(command, optionsOrCb);
35
- }
36
- }
37
- getHLSStreamingSessionURL(args, optionsOrCb, cb) {
38
- const command = new GetHLSStreamingSessionURLCommand(args);
39
- if (typeof optionsOrCb === "function") {
40
- this.send(command, optionsOrCb);
41
- }
42
- else if (typeof cb === "function") {
43
- if (typeof optionsOrCb !== "object")
44
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
45
- this.send(command, optionsOrCb || {}, cb);
46
- }
47
- else {
48
- return this.send(command, optionsOrCb);
49
- }
50
- }
51
- getImages(args, optionsOrCb, cb) {
52
- const command = new GetImagesCommand(args);
53
- if (typeof optionsOrCb === "function") {
54
- this.send(command, optionsOrCb);
55
- }
56
- else if (typeof cb === "function") {
57
- if (typeof optionsOrCb !== "object")
58
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
59
- this.send(command, optionsOrCb || {}, cb);
60
- }
61
- else {
62
- return this.send(command, optionsOrCb);
63
- }
64
- }
65
- getMediaForFragmentList(args, optionsOrCb, cb) {
66
- const command = new GetMediaForFragmentListCommand(args);
67
- if (typeof optionsOrCb === "function") {
68
- this.send(command, optionsOrCb);
69
- }
70
- else if (typeof cb === "function") {
71
- if (typeof optionsOrCb !== "object")
72
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
73
- this.send(command, optionsOrCb || {}, cb);
74
- }
75
- else {
76
- return this.send(command, optionsOrCb);
77
- }
78
- }
79
- listFragments(args, optionsOrCb, cb) {
80
- const command = new ListFragmentsCommand(args);
81
- if (typeof optionsOrCb === "function") {
82
- this.send(command, optionsOrCb);
83
- }
84
- else if (typeof cb === "function") {
85
- if (typeof optionsOrCb !== "object")
86
- throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
87
- this.send(command, optionsOrCb || {}, cb);
88
- }
89
- else {
90
- return this.send(command, optionsOrCb);
91
- }
92
- }
93
18
  }
19
+ createAggregatedClient(commands, KinesisVideoArchivedMedia);
@@ -6,488 +6,47 @@ import { GetImagesCommandInput, GetImagesCommandOutput } from "./commands/GetIma
6
6
  import { GetMediaForFragmentListCommandInput, GetMediaForFragmentListCommandOutput } from "./commands/GetMediaForFragmentListCommand";
7
7
  import { ListFragmentsCommandInput, ListFragmentsCommandOutput } from "./commands/ListFragmentsCommand";
8
8
  import { KinesisVideoArchivedMediaClient } from "./KinesisVideoArchivedMediaClient";
9
- /**
10
- * @public
11
- * <p></p>
12
- */
13
- export declare class KinesisVideoArchivedMedia extends KinesisVideoArchivedMediaClient {
9
+ export interface KinesisVideoArchivedMedia {
14
10
  /**
15
- * @public
16
- * <p>Downloads an MP4 file (clip) containing the archived, on-demand media from the
17
- * specified video stream over the specified time range. </p>
18
- * <p>Both the StreamName and the StreamARN parameters are optional, but you must specify
19
- * either the StreamName or the StreamARN when invoking this API operation. </p>
20
- *
21
- * <p>As a prerequisite to using GetCLip API, you must obtain an endpoint using
22
- * <code>GetDataEndpoint</code>, specifying GET_CLIP for<code></code> the
23
- * <code>APIName</code> parameter. </p>
24
- * <p>An Amazon Kinesis video stream has the following requirements for providing data
25
- * through MP4:</p>
26
- * <ul>
27
- * <li>
28
- * <p>The media must contain h.264 or h.265 encoded video and, optionally, AAC or
29
- * G.711 encoded audio. Specifically, the codec ID of track 1 should be
30
- * <code>V_MPEG/ISO/AVC</code> (for h.264) or V_MPEGH/ISO/HEVC (for H.265).
31
- * Optionally, the codec ID of track 2 should be <code>A_AAC</code> (for AAC) or
32
- * A_MS/ACM (for G.711).</p>
33
- * </li>
34
- * <li>
35
- * <p>Data retention must be greater than 0.</p>
36
- * </li>
37
- * <li>
38
- * <p>The video track of each fragment must contain codec private data in the
39
- * Advanced Video Coding (AVC) for H.264 format and HEVC for H.265 format. For more
40
- * information, see <a href="https://www.iso.org/standard/55980.html">MPEG-4
41
- * specification ISO/IEC 14496-15</a>. For information about adapting
42
- * stream data to a given format, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-reference-nal.html">NAL Adaptation Flags</a>.</p>
43
- * </li>
44
- * <li>
45
- * <p>The audio track (if present) of each fragment must contain codec private data
46
- * in the AAC format (<a href="https://www.iso.org/standard/43345.html">AAC
47
- * specification ISO/IEC 13818-7</a>) or the <a href="http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html">MS
48
- * Wave format</a>.</p>
49
- * </li>
50
- * </ul>
51
- *
52
- * <p>You can monitor the amount of outgoing data by monitoring the
53
- * <code>GetClip.OutgoingBytes</code> Amazon CloudWatch metric. For information about
54
- * using CloudWatch to monitor Kinesis Video Streams, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/monitoring.html">Monitoring Kinesis Video Streams</a>. For pricing information, see <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Amazon Kinesis Video
55
- * Streams Pricing</a> and <a href="https://aws.amazon.com/pricing/">AWS
56
- * Pricing</a>. Charges for outgoing AWS data apply.</p>
11
+ * @see {@link GetClipCommand}
57
12
  */
58
13
  getClip(args: GetClipCommandInput, options?: __HttpHandlerOptions): Promise<GetClipCommandOutput>;
59
14
  getClip(args: GetClipCommandInput, cb: (err: any, data?: GetClipCommandOutput) => void): void;
60
15
  getClip(args: GetClipCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetClipCommandOutput) => void): void;
61
16
  /**
62
- * @public
63
- * <p>Retrieves an MPEG Dynamic Adaptive Streaming over HTTP (DASH) URL for the stream. You
64
- * can then open the URL in a media player to view the stream contents.</p>
65
- *
66
- * <p>Both the <code>StreamName</code> and the <code>StreamARN</code> parameters are
67
- * optional, but you must specify either the <code>StreamName</code> or the
68
- * <code>StreamARN</code> when invoking this API operation.</p>
69
- * <p>An Amazon Kinesis video stream has the following requirements for providing data
70
- * through MPEG-DASH:</p>
71
- * <ul>
72
- * <li>
73
- * <p>The media must contain h.264 or h.265 encoded video and, optionally, AAC or
74
- * G.711 encoded audio. Specifically, the codec ID of track 1 should be
75
- * <code>V_MPEG/ISO/AVC</code> (for h.264) or V_MPEGH/ISO/HEVC (for H.265).
76
- * Optionally, the codec ID of track 2 should be <code>A_AAC</code> (for AAC) or
77
- * A_MS/ACM (for G.711).</p>
78
- * </li>
79
- * <li>
80
- * <p>Data retention must be greater than 0.</p>
81
- * </li>
82
- * <li>
83
- * <p>The video track of each fragment must contain codec private data in the
84
- * Advanced Video Coding (AVC) for H.264 format and HEVC for H.265 format. For more
85
- * information, see <a href="https://www.iso.org/standard/55980.html">MPEG-4
86
- * specification ISO/IEC 14496-15</a>. For information about adapting
87
- * stream data to a given format, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-reference-nal.html">NAL Adaptation Flags</a>.</p>
88
- * </li>
89
- * <li>
90
- * <p>The audio track (if present) of each fragment must contain codec private data
91
- * in the AAC format (<a href="https://www.iso.org/standard/43345.html">AAC
92
- * specification ISO/IEC 13818-7</a>) or the <a href="http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html">MS
93
- * Wave format</a>.</p>
94
- * </li>
95
- * </ul>
96
- *
97
- * <p>The following procedure shows how to use MPEG-DASH with Kinesis Video Streams:</p>
98
- * <ol>
99
- * <li>
100
- * <p>Get an endpoint using <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_GetDataEndpoint.html">GetDataEndpoint</a>, specifying
101
- * <code>GET_DASH_STREAMING_SESSION_URL</code> for the <code>APIName</code>
102
- * parameter.</p>
103
- * </li>
104
- * <li>
105
- * <p>Retrieve the MPEG-DASH URL using <code>GetDASHStreamingSessionURL</code>.
106
- * Kinesis Video Streams creates an MPEG-DASH streaming session to be used for
107
- * accessing content in a stream using the MPEG-DASH protocol.
108
- * <code>GetDASHStreamingSessionURL</code> returns an authenticated URL (that
109
- * includes an encrypted session token) for the session's MPEG-DASH
110
- * <i>manifest</i> (the root resource needed for streaming with
111
- * MPEG-DASH).</p>
112
- * <note>
113
- * <p>Don't share or store this token where an unauthorized entity can access
114
- * it. The token provides access to the content of the stream. Safeguard the
115
- * token with the same measures that you use with your AWS credentials.</p>
116
- * </note>
117
- * <p>The media that is made available through the manifest consists only of the
118
- * requested stream, time range, and format. No other media data (such as frames
119
- * outside the requested window or alternate bitrates) is made available.</p>
120
- * </li>
121
- * <li>
122
- * <p>Provide the URL (containing the encrypted session token) for the MPEG-DASH
123
- * manifest to a media player that supports the MPEG-DASH protocol. Kinesis Video
124
- * Streams makes the initialization fragment and media fragments available through
125
- * the manifest URL. The initialization fragment contains the codec private data
126
- * for the stream, and other data needed to set up the video or audio decoder and
127
- * renderer. The media fragments contain encoded video frames or encoded audio
128
- * samples.</p>
129
- * </li>
130
- * <li>
131
- * <p>The media player receives the authenticated URL and requests stream metadata
132
- * and media data normally. When the media player requests data, it calls the
133
- * following actions:</p>
134
- * <ul>
135
- * <li>
136
- * <p>
137
- * <b>GetDASHManifest:</b> Retrieves an MPEG DASH
138
- * manifest, which contains the metadata for the media that you want to
139
- * playback.</p>
140
- * </li>
141
- * <li>
142
- * <p>
143
- * <b>GetMP4InitFragment:</b> Retrieves the MP4
144
- * initialization fragment. The media player typically loads the
145
- * initialization fragment before loading any media fragments. This
146
- * fragment contains the "<code>fytp</code>" and "<code>moov</code>" MP4
147
- * atoms, and the child atoms that are needed to initialize the media
148
- * player decoder.</p>
149
- * <p>The initialization fragment does not correspond to a fragment in a
150
- * Kinesis video stream. It contains only the codec private data for the
151
- * stream and respective track, which the media player needs to decode the
152
- * media frames.</p>
153
- * </li>
154
- * <li>
155
- * <p>
156
- * <b>GetMP4MediaFragment:</b> Retrieves MP4
157
- * media fragments. These fragments contain the "<code>moof</code>" and
158
- * "<code>mdat</code>" MP4 atoms and their child atoms, containing the
159
- * encoded fragment's media frames and their timestamps. </p>
160
- * <note>
161
- * <p>After the first media fragment is made available in a streaming
162
- * session, any fragments that don't contain the same codec private
163
- * data cause an error to be returned when those different media
164
- * fragments are loaded. Therefore, the codec private data should not
165
- * change between fragments in a session. This also means that the
166
- * session fails if the fragments in a stream change from having only
167
- * video to having both audio and video.</p>
168
- * </note>
169
- * <p>Data retrieved with this action is billable. See <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Pricing</a> for details.</p>
170
- * </li>
171
- * </ul>
172
- * </li>
173
- * </ol>
174
- * <note>
175
- * <p>For restrictions that apply to MPEG-DASH sessions, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html">Kinesis Video Streams Limits</a>.</p>
176
- * </note>
177
- * <p>You can monitor the amount of data that the media player consumes by monitoring the
178
- * <code>GetMP4MediaFragment.OutgoingBytes</code> Amazon CloudWatch metric. For
179
- * information about using CloudWatch to monitor Kinesis Video Streams, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/monitoring.html">Monitoring Kinesis Video Streams</a>. For pricing information, see <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Amazon Kinesis Video
180
- * Streams Pricing</a> and <a href="https://aws.amazon.com/pricing/">AWS
181
- * Pricing</a>. Charges for both HLS sessions and outgoing AWS data apply.</p>
182
- * <p>For more information about HLS, see <a href="https://developer.apple.com/streaming/">HTTP Live Streaming</a> on the
183
- * <a href="https://developer.apple.com">Apple Developer site</a>.</p>
184
- *
185
- * <important>
186
- * <p>If an error is thrown after invoking a Kinesis Video Streams archived media API,
187
- * in addition to the HTTP status code and the response body, it includes the following
188
- * pieces of information: </p>
189
- * <ul>
190
- * <li>
191
- * <p>
192
- * <code>x-amz-ErrorType</code> HTTP header – contains a more specific error
193
- * type in addition to what the HTTP status code provides. </p>
194
- * </li>
195
- * <li>
196
- * <p>
197
- * <code>x-amz-RequestId</code> HTTP header – if you want to report an issue to
198
- * AWS, the support team can better diagnose the problem if given the Request
199
- * Id.</p>
200
- * </li>
201
- * </ul>
202
- * <p>Both the HTTP status code and the ErrorType header can be utilized to make
203
- * programmatic decisions about whether errors are retry-able and under what
204
- * conditions, as well as provide information on what actions the client programmer
205
- * might need to take in order to successfully try again.</p>
206
- * <p>For more information, see the <b>Errors</b> section at
207
- * the bottom of this topic, as well as <a href="https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/CommonErrors.html">Common Errors</a>.
208
- * </p>
209
- * </important>
17
+ * @see {@link GetDASHStreamingSessionURLCommand}
210
18
  */
211
19
  getDASHStreamingSessionURL(args: GetDASHStreamingSessionURLCommandInput, options?: __HttpHandlerOptions): Promise<GetDASHStreamingSessionURLCommandOutput>;
212
20
  getDASHStreamingSessionURL(args: GetDASHStreamingSessionURLCommandInput, cb: (err: any, data?: GetDASHStreamingSessionURLCommandOutput) => void): void;
213
21
  getDASHStreamingSessionURL(args: GetDASHStreamingSessionURLCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetDASHStreamingSessionURLCommandOutput) => void): void;
214
22
  /**
215
- * @public
216
- * <p>Retrieves an HTTP Live Streaming (HLS) URL for the stream. You can then open the URL
217
- * in a browser or media player to view the stream contents.</p>
218
- * <p>Both the <code>StreamName</code> and the <code>StreamARN</code> parameters are
219
- * optional, but you must specify either the <code>StreamName</code> or the
220
- * <code>StreamARN</code> when invoking this API operation.</p>
221
- * <p>An Amazon Kinesis video stream has the following requirements for providing data
222
- * through HLS:</p>
223
- * <ul>
224
- * <li>
225
- * <p>The media must contain h.264 or h.265 encoded video and, optionally, AAC
226
- * encoded audio. Specifically, the codec ID of track 1 should be
227
- * <code>V_MPEG/ISO/AVC</code> (for h.264) or <code>V_MPEG/ISO/HEVC</code> (for
228
- * h.265). Optionally, the codec ID of track 2 should be <code>A_AAC</code>.</p>
229
- * </li>
230
- * <li>
231
- * <p>Data retention must be greater than 0.</p>
232
- * </li>
233
- * <li>
234
- * <p>The video track of each fragment must contain codec private data in the
235
- * Advanced Video Coding (AVC) for H.264 format or HEVC for H.265 format (<a href="https://www.iso.org/standard/55980.html">MPEG-4 specification ISO/IEC
236
- * 14496-15</a>). For information about adapting stream data to a given
237
- * format, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/producer-reference-nal.html">NAL Adaptation Flags</a>.</p>
238
- * </li>
239
- * <li>
240
- * <p>The audio track (if present) of each fragment must contain codec private data
241
- * in the AAC format (<a href="https://www.iso.org/standard/43345.html">AAC
242
- * specification ISO/IEC 13818-7</a>).</p>
243
- * </li>
244
- * </ul>
245
- * <p>Kinesis Video Streams HLS sessions contain fragments in the fragmented MPEG-4 form
246
- * (also called fMP4 or CMAF) or the MPEG-2 form (also called TS chunks, which the HLS
247
- * specification also supports). For more information about HLS fragment types, see the
248
- * <a href="https://tools.ietf.org/html/draft-pantos-http-live-streaming-23">HLS
249
- * specification</a>.</p>
250
- * <p>The following procedure shows how to use HLS with Kinesis Video Streams:</p>
251
- * <ol>
252
- * <li>
253
- * <p>Get an endpoint using <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_GetDataEndpoint.html">GetDataEndpoint</a>, specifying
254
- * <code>GET_HLS_STREAMING_SESSION_URL</code> for the <code>APIName</code>
255
- * parameter.</p>
256
- * </li>
257
- * <li>
258
- * <p>Retrieve the HLS URL using <code>GetHLSStreamingSessionURL</code>. Kinesis
259
- * Video Streams creates an HLS streaming session to be used for accessing content
260
- * in a stream using the HLS protocol. <code>GetHLSStreamingSessionURL</code>
261
- * returns an authenticated URL (that includes an encrypted session token) for the
262
- * session's HLS <i>master playlist</i> (the root resource needed for
263
- * streaming with HLS).</p>
264
- * <note>
265
- * <p>Don't share or store this token where an unauthorized entity could access
266
- * it. The token provides access to the content of the stream. Safeguard the
267
- * token with the same measures that you would use with your AWS
268
- * credentials.</p>
269
- * </note>
270
- * <p>The media that is made available through the playlist consists only of the
271
- * requested stream, time range, and format. No other media data (such as frames
272
- * outside the requested window or alternate bitrates) is made available.</p>
273
- * </li>
274
- * <li>
275
- * <p>Provide the URL (containing the encrypted session token) for the HLS master
276
- * playlist to a media player that supports the HLS protocol. Kinesis Video Streams
277
- * makes the HLS media playlist, initialization fragment, and media fragments
278
- * available through the master playlist URL. The initialization fragment contains
279
- * the codec private data for the stream, and other data needed to set up the video
280
- * or audio decoder and renderer. The media fragments contain H.264-encoded video
281
- * frames or AAC-encoded audio samples.</p>
282
- * </li>
283
- * <li>
284
- * <p>The media player receives the authenticated URL and requests stream metadata
285
- * and media data normally. When the media player requests data, it calls the
286
- * following actions:</p>
287
- * <ul>
288
- * <li>
289
- * <p>
290
- * <b>GetHLSMasterPlaylist:</b> Retrieves an HLS
291
- * master playlist, which contains a URL for the
292
- * <code>GetHLSMediaPlaylist</code> action for each track, and
293
- * additional metadata for the media player, including estimated bitrate
294
- * and resolution.</p>
295
- * </li>
296
- * <li>
297
- * <p>
298
- * <b>GetHLSMediaPlaylist:</b> Retrieves an HLS
299
- * media playlist, which contains a URL to access the MP4 initialization
300
- * fragment with the <code>GetMP4InitFragment</code> action, and URLs to
301
- * access the MP4 media fragments with the <code>GetMP4MediaFragment</code>
302
- * actions. The HLS media playlist also contains metadata about the stream
303
- * that the player needs to play it, such as whether the
304
- * <code>PlaybackMode</code> is <code>LIVE</code> or
305
- * <code>ON_DEMAND</code>. The HLS media playlist is typically static
306
- * for sessions with a <code>PlaybackType</code> of <code>ON_DEMAND</code>.
307
- * The HLS media playlist is continually updated with new fragments for
308
- * sessions with a <code>PlaybackType</code> of <code>LIVE</code>. There is
309
- * a distinct HLS media playlist for the video track and the audio track
310
- * (if applicable) that contains MP4 media URLs for the specific track.
311
- * </p>
312
- * </li>
313
- * <li>
314
- * <p>
315
- * <b>GetMP4InitFragment:</b> Retrieves the MP4
316
- * initialization fragment. The media player typically loads the
317
- * initialization fragment before loading any media fragments. This
318
- * fragment contains the "<code>fytp</code>" and "<code>moov</code>" MP4
319
- * atoms, and the child atoms that are needed to initialize the media
320
- * player decoder.</p>
321
- * <p>The initialization fragment does not correspond to a fragment in a
322
- * Kinesis video stream. It contains only the codec private data for the
323
- * stream and respective track, which the media player needs to decode the
324
- * media frames.</p>
325
- * </li>
326
- * <li>
327
- * <p>
328
- * <b>GetMP4MediaFragment:</b> Retrieves MP4
329
- * media fragments. These fragments contain the "<code>moof</code>" and
330
- * "<code>mdat</code>" MP4 atoms and their child atoms, containing the
331
- * encoded fragment's media frames and their timestamps. </p>
332
- * <note>
333
- * <p>After the first media fragment is made available in a streaming
334
- * session, any fragments that don't contain the same codec private
335
- * data cause an error to be returned when those different media
336
- * fragments are loaded. Therefore, the codec private data should not
337
- * change between fragments in a session. This also means that the
338
- * session fails if the fragments in a stream change from having only
339
- * video to having both audio and video.</p>
340
- * </note>
341
- * <p>Data retrieved with this action is billable. See <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Pricing</a> for details.</p>
342
- * </li>
343
- * <li>
344
- * <p>
345
- * <b>GetTSFragment:</b> Retrieves MPEG TS
346
- * fragments containing both initialization and media data for all tracks
347
- * in the stream.</p>
348
- * <note>
349
- * <p>If the <code>ContainerFormat</code> is <code>MPEG_TS</code>, this
350
- * API is used instead of <code>GetMP4InitFragment</code> and
351
- * <code>GetMP4MediaFragment</code> to retrieve stream
352
- * media.</p>
353
- * </note>
354
- * <p>Data retrieved with this action is billable. For more information, see
355
- * <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Kinesis Video Streams pricing</a>.</p>
356
- * </li>
357
- * </ul>
358
- * </li>
359
- * </ol>
360
- * <p>A streaming session URL must not be shared between players. The service
361
- * might throttle a session if multiple media players are sharing it. For
362
- * connection limits, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html">Kinesis Video Streams Limits</a>.</p>
363
- * <p>You can monitor the amount of data that the media player consumes by monitoring the
364
- * <code>GetMP4MediaFragment.OutgoingBytes</code> Amazon CloudWatch metric. For
365
- * information about using CloudWatch to monitor Kinesis Video Streams, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/monitoring.html">Monitoring Kinesis Video Streams</a>. For pricing information, see <a href="https://aws.amazon.com/kinesis/video-streams/pricing/">Amazon Kinesis Video
366
- * Streams Pricing</a> and <a href="https://aws.amazon.com/pricing/">AWS
367
- * Pricing</a>. Charges for both HLS sessions and outgoing AWS data apply.</p>
368
- * <p>For more information about HLS, see <a href="https://developer.apple.com/streaming/">HTTP Live Streaming</a> on the
369
- * <a href="https://developer.apple.com">Apple Developer site</a>.</p>
370
- *
371
- * <important>
372
- * <p>If an error is thrown after invoking a Kinesis Video Streams archived media API,
373
- * in addition to the HTTP status code and the response body, it includes the following
374
- * pieces of information: </p>
375
- * <ul>
376
- * <li>
377
- * <p>
378
- * <code>x-amz-ErrorType</code> HTTP header – contains a more specific error
379
- * type in addition to what the HTTP status code provides. </p>
380
- * </li>
381
- * <li>
382
- * <p>
383
- * <code>x-amz-RequestId</code> HTTP header – if you want to report an issue to
384
- * AWS, the support team can better diagnose the problem if given the Request
385
- * Id.</p>
386
- * </li>
387
- * </ul>
388
- * <p>Both the HTTP status code and the ErrorType header can be utilized to make
389
- * programmatic decisions about whether errors are retry-able and under what
390
- * conditions, as well as provide information on what actions the client programmer
391
- * might need to take in order to successfully try again.</p>
392
- * <p>For more information, see the <b>Errors</b> section at
393
- * the bottom of this topic, as well as <a href="https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/CommonErrors.html">Common Errors</a>.
394
- * </p>
395
- * </important>
23
+ * @see {@link GetHLSStreamingSessionURLCommand}
396
24
  */
397
25
  getHLSStreamingSessionURL(args: GetHLSStreamingSessionURLCommandInput, options?: __HttpHandlerOptions): Promise<GetHLSStreamingSessionURLCommandOutput>;
398
26
  getHLSStreamingSessionURL(args: GetHLSStreamingSessionURLCommandInput, cb: (err: any, data?: GetHLSStreamingSessionURLCommandOutput) => void): void;
399
27
  getHLSStreamingSessionURL(args: GetHLSStreamingSessionURLCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetHLSStreamingSessionURLCommandOutput) => void): void;
400
28
  /**
401
- * @public
402
- * <p>Retrieves a list of Images corresponding to each timestamp for a given time range, sampling interval, and image format configuration.</p>
29
+ * @see {@link GetImagesCommand}
403
30
  */
404
31
  getImages(args: GetImagesCommandInput, options?: __HttpHandlerOptions): Promise<GetImagesCommandOutput>;
405
32
  getImages(args: GetImagesCommandInput, cb: (err: any, data?: GetImagesCommandOutput) => void): void;
406
33
  getImages(args: GetImagesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetImagesCommandOutput) => void): void;
407
34
  /**
408
- * @public
409
- * <p>Gets media for a list of fragments (specified by fragment number) from the archived
410
- * data in an Amazon Kinesis video stream.</p>
411
- *
412
- * <note>
413
- * <p>You must first call the <code>GetDataEndpoint</code> API to get an endpoint.
414
- * Then send the <code>GetMediaForFragmentList</code> requests to this endpoint using
415
- * the <a href="https://docs.aws.amazon.com/cli/latest/reference/">--endpoint-url
416
- * parameter</a>. </p>
417
- * </note>
418
- *
419
- * <p>For limits, see <a href="http://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html">Kinesis Video Streams Limits</a>.</p>
420
- *
421
- * <important>
422
- * <p>If an error is thrown after invoking a Kinesis Video Streams archived media API,
423
- * in addition to the HTTP status code and the response body, it includes the following
424
- * pieces of information: </p>
425
- * <ul>
426
- * <li>
427
- * <p>
428
- * <code>x-amz-ErrorType</code> HTTP header – contains a more specific error
429
- * type in addition to what the HTTP status code provides. </p>
430
- * </li>
431
- * <li>
432
- * <p>
433
- * <code>x-amz-RequestId</code> HTTP header – if you want to report an issue to
434
- * AWS, the support team can better diagnose the problem if given the Request
435
- * Id.</p>
436
- * </li>
437
- * </ul>
438
- * <p>Both the HTTP status code and the ErrorType header can be utilized to make
439
- * programmatic decisions about whether errors are retry-able and under what
440
- * conditions, as well as provide information on what actions the client programmer
441
- * might need to take in order to successfully try again.</p>
442
- * <p>For more information, see the <b>Errors</b> section at
443
- * the bottom of this topic, as well as <a href="https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/CommonErrors.html">Common Errors</a>.
444
- * </p>
445
- * </important>
35
+ * @see {@link GetMediaForFragmentListCommand}
446
36
  */
447
37
  getMediaForFragmentList(args: GetMediaForFragmentListCommandInput, options?: __HttpHandlerOptions): Promise<GetMediaForFragmentListCommandOutput>;
448
38
  getMediaForFragmentList(args: GetMediaForFragmentListCommandInput, cb: (err: any, data?: GetMediaForFragmentListCommandOutput) => void): void;
449
39
  getMediaForFragmentList(args: GetMediaForFragmentListCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetMediaForFragmentListCommandOutput) => void): void;
450
40
  /**
451
- * @public
452
- * <p>Returns a list of <a>Fragment</a> objects from the specified stream and
453
- * timestamp range within the archived data.</p>
454
- * <p>Listing fragments is eventually consistent. This means that even if the producer
455
- * receives an acknowledgment that a fragment is persisted, the result might not be
456
- * returned immediately from a request to <code>ListFragments</code>. However, results are
457
- * typically available in less than one second.</p>
458
- * <note>
459
- * <p>You must first call the <code>GetDataEndpoint</code> API to get an endpoint.
460
- * Then send the <code>ListFragments</code> requests to this endpoint using the <a href="https://docs.aws.amazon.com/cli/latest/reference/">--endpoint-url
461
- * parameter</a>. </p>
462
- * </note>
463
- *
464
- * <important>
465
- * <p>If an error is thrown after invoking a Kinesis Video Streams archived media API,
466
- * in addition to the HTTP status code and the response body, it includes the following
467
- * pieces of information: </p>
468
- * <ul>
469
- * <li>
470
- * <p>
471
- * <code>x-amz-ErrorType</code> HTTP header – contains a more specific error
472
- * type in addition to what the HTTP status code provides. </p>
473
- * </li>
474
- * <li>
475
- * <p>
476
- * <code>x-amz-RequestId</code> HTTP header – if you want to report an issue to
477
- * AWS, the support team can better diagnose the problem if given the Request
478
- * Id.</p>
479
- * </li>
480
- * </ul>
481
- * <p>Both the HTTP status code and the ErrorType header can be utilized to make
482
- * programmatic decisions about whether errors are retry-able and under what
483
- * conditions, as well as provide information on what actions the client programmer
484
- * might need to take in order to successfully try again.</p>
485
- * <p>For more information, see the <b>Errors</b> section at
486
- * the bottom of this topic, as well as <a href="https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/CommonErrors.html">Common Errors</a>.
487
- * </p>
488
- * </important>
41
+ * @see {@link ListFragmentsCommand}
489
42
  */
490
43
  listFragments(args: ListFragmentsCommandInput, options?: __HttpHandlerOptions): Promise<ListFragmentsCommandOutput>;
491
44
  listFragments(args: ListFragmentsCommandInput, cb: (err: any, data?: ListFragmentsCommandOutput) => void): void;
492
45
  listFragments(args: ListFragmentsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListFragmentsCommandOutput) => void): void;
493
46
  }
47
+ /**
48
+ * @public
49
+ * <p></p>
50
+ */
51
+ export declare class KinesisVideoArchivedMedia extends KinesisVideoArchivedMediaClient implements KinesisVideoArchivedMedia {
52
+ }
@@ -24,7 +24,7 @@ import {
24
24
  ListFragmentsCommandOutput,
25
25
  } from "./commands/ListFragmentsCommand";
26
26
  import { KinesisVideoArchivedMediaClient } from "./KinesisVideoArchivedMediaClient";
27
- export declare class KinesisVideoArchivedMedia extends KinesisVideoArchivedMediaClient {
27
+ export interface KinesisVideoArchivedMedia {
28
28
  getClip(
29
29
  args: GetClipCommandInput,
30
30
  options?: __HttpHandlerOptions
@@ -104,3 +104,6 @@ export declare class KinesisVideoArchivedMedia extends KinesisVideoArchivedMedia
104
104
  cb: (err: any, data?: ListFragmentsCommandOutput) => void
105
105
  ): void;
106
106
  }
107
+ export declare class KinesisVideoArchivedMedia
108
+ extends KinesisVideoArchivedMediaClient
109
+ implements KinesisVideoArchivedMedia {}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-kinesis-video-archived-media",
3
3
  "description": "AWS SDK for JavaScript Kinesis Video Archived Media Client for Node.js, Browser and React Native",
4
- "version": "3.315.0",
4
+ "version": "3.319.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",
@@ -21,9 +21,9 @@
21
21
  "dependencies": {
22
22
  "@aws-crypto/sha256-browser": "3.0.0",
23
23
  "@aws-crypto/sha256-js": "3.0.0",
24
- "@aws-sdk/client-sts": "3.315.0",
24
+ "@aws-sdk/client-sts": "3.319.0",
25
25
  "@aws-sdk/config-resolver": "3.310.0",
26
- "@aws-sdk/credential-provider-node": "3.315.0",
26
+ "@aws-sdk/credential-provider-node": "3.319.0",
27
27
  "@aws-sdk/fetch-http-handler": "3.310.0",
28
28
  "@aws-sdk/hash-node": "3.310.0",
29
29
  "@aws-sdk/invalid-dependency": "3.310.0",
@@ -36,19 +36,19 @@
36
36
  "@aws-sdk/middleware-serde": "3.310.0",
37
37
  "@aws-sdk/middleware-signing": "3.310.0",
38
38
  "@aws-sdk/middleware-stack": "3.310.0",
39
- "@aws-sdk/middleware-user-agent": "3.310.0",
39
+ "@aws-sdk/middleware-user-agent": "3.319.0",
40
40
  "@aws-sdk/node-config-provider": "3.310.0",
41
41
  "@aws-sdk/node-http-handler": "3.310.0",
42
42
  "@aws-sdk/protocol-http": "3.310.0",
43
- "@aws-sdk/smithy-client": "3.315.0",
43
+ "@aws-sdk/smithy-client": "3.316.0",
44
44
  "@aws-sdk/types": "3.310.0",
45
45
  "@aws-sdk/url-parser": "3.310.0",
46
46
  "@aws-sdk/util-base64": "3.310.0",
47
47
  "@aws-sdk/util-body-length-browser": "3.310.0",
48
48
  "@aws-sdk/util-body-length-node": "3.310.0",
49
- "@aws-sdk/util-defaults-mode-browser": "3.315.0",
50
- "@aws-sdk/util-defaults-mode-node": "3.315.0",
51
- "@aws-sdk/util-endpoints": "3.310.0",
49
+ "@aws-sdk/util-defaults-mode-browser": "3.316.0",
50
+ "@aws-sdk/util-defaults-mode-node": "3.316.0",
51
+ "@aws-sdk/util-endpoints": "3.319.0",
52
52
  "@aws-sdk/util-retry": "3.310.0",
53
53
  "@aws-sdk/util-stream-browser": "3.310.0",
54
54
  "@aws-sdk/util-stream-node": "3.310.0",