@svta/cml-error-codes 0.1.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.
- package/LICENSE +201 -0
- package/NOTICE.md +2 -0
- package/README.md +56 -0
- package/dist/index.d.ts +1775 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1285 -0
- package/dist/index.js.map +1 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/package.json +58 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,1285 @@
|
|
|
1
|
+
//#region src/SvtaErrorCategory.ts
|
|
2
|
+
/**
|
|
3
|
+
* SVTA error category 0: Unknown error
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
const SVTA_ERROR_CATEGORY_UNKNOWN = 0;
|
|
8
|
+
/**
|
|
9
|
+
* SVTA error category 1: Issues with the content itself, such as an unsupported format
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
const SVTA_ERROR_CATEGORY_MEDIA_CONTENT = 1;
|
|
14
|
+
/**
|
|
15
|
+
* SVTA error category 2: Player unable to sustain the experience
|
|
16
|
+
*
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
const SVTA_ERROR_CATEGORY_PLAYBACK = 2;
|
|
20
|
+
/**
|
|
21
|
+
* SVTA error category 3: Issues on the network, including unavailable resources
|
|
22
|
+
*
|
|
23
|
+
* @public
|
|
24
|
+
*/
|
|
25
|
+
const SVTA_ERROR_CATEGORY_NETWORK = 3;
|
|
26
|
+
/**
|
|
27
|
+
* SVTA error category 4: Security related error, including authentication or entitlement issues
|
|
28
|
+
*
|
|
29
|
+
* @public
|
|
30
|
+
*/
|
|
31
|
+
const SVTA_ERROR_CATEGORY_CONTENT_PROTECTION = 4;
|
|
32
|
+
/**
|
|
33
|
+
* SVTA error category 5: Defective captions or audio description
|
|
34
|
+
*
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
const SVTA_ERROR_CATEGORY_ACCESSIBILITY = 5;
|
|
38
|
+
/**
|
|
39
|
+
* SVTA error category 6: Framework supporting the play out of the stream on a second device
|
|
40
|
+
*
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
const SVTA_ERROR_CATEGORY_REMOTE_PLAY = 6;
|
|
44
|
+
/**
|
|
45
|
+
* SVTA error category 7: Issues triggered by ad insertion
|
|
46
|
+
*
|
|
47
|
+
* @public
|
|
48
|
+
*/
|
|
49
|
+
const SVTA_ERROR_CATEGORY_ADVERTISING = 7;
|
|
50
|
+
/**
|
|
51
|
+
* SVTA error category 99: Reserved category for Publisher-defined errors
|
|
52
|
+
*
|
|
53
|
+
* @public
|
|
54
|
+
*/
|
|
55
|
+
const SVTA_ERROR_CATEGORY_CUSTOM = 99;
|
|
56
|
+
/**
|
|
57
|
+
* SVTA standardized error code categories. The category of an error code
|
|
58
|
+
* occupies its thousands digits: `Math.floor(code / 1000)` yields the
|
|
59
|
+
* category of any SVTA error code.
|
|
60
|
+
*
|
|
61
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
62
|
+
*
|
|
63
|
+
* @enum
|
|
64
|
+
*
|
|
65
|
+
* @public
|
|
66
|
+
*/
|
|
67
|
+
const SvtaErrorCategory = {
|
|
68
|
+
UNKNOWN: SVTA_ERROR_CATEGORY_UNKNOWN,
|
|
69
|
+
MEDIA_CONTENT: SVTA_ERROR_CATEGORY_MEDIA_CONTENT,
|
|
70
|
+
PLAYBACK: SVTA_ERROR_CATEGORY_PLAYBACK,
|
|
71
|
+
NETWORK: SVTA_ERROR_CATEGORY_NETWORK,
|
|
72
|
+
CONTENT_PROTECTION: SVTA_ERROR_CATEGORY_CONTENT_PROTECTION,
|
|
73
|
+
ACCESSIBILITY: SVTA_ERROR_CATEGORY_ACCESSIBILITY,
|
|
74
|
+
REMOTE_PLAY: SVTA_ERROR_CATEGORY_REMOTE_PLAY,
|
|
75
|
+
ADVERTISING: SVTA_ERROR_CATEGORY_ADVERTISING,
|
|
76
|
+
CUSTOM: SVTA_ERROR_CATEGORY_CUSTOM
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/getSvtaErrorCategory.ts
|
|
81
|
+
/**
|
|
82
|
+
* Get the `SvtaErrorCategory` of an SVTA error code, per the spec's
|
|
83
|
+
* `code / 1000` rule.
|
|
84
|
+
*
|
|
85
|
+
* @param code - An SVTA error code.
|
|
86
|
+
* @returns The error category. Returns `undefined` if the code is not a
|
|
87
|
+
* non-negative integer, or if the spec does not assign its category.
|
|
88
|
+
* Categories 8-98 and above 99 are reserved for future use.
|
|
89
|
+
*
|
|
90
|
+
* @public
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* {@includeCode ../test/getSvtaErrorCategory.test.ts#example}
|
|
94
|
+
*/
|
|
95
|
+
function getSvtaErrorCategory(code) {
|
|
96
|
+
if (!Number.isInteger(code)) return;
|
|
97
|
+
const category = Math.floor(code / 1e3);
|
|
98
|
+
if (category >= SvtaErrorCategory.UNKNOWN && category <= SvtaErrorCategory.ADVERTISING || category === SvtaErrorCategory.CUSTOM) return category;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
//#endregion
|
|
102
|
+
//#region src/getSvtaErrorIndex.ts
|
|
103
|
+
/**
|
|
104
|
+
* Get the error index of an SVTA error code, per the spec's
|
|
105
|
+
* `code mod 1000` rule. The index identifies the specific error within
|
|
106
|
+
* its category: native indices are 0-99, embedded external codes (HTTP,
|
|
107
|
+
* VAST) are 100-999.
|
|
108
|
+
*
|
|
109
|
+
* @param code - An SVTA error code.
|
|
110
|
+
* @returns The error index within the code's category, or `undefined`
|
|
111
|
+
* if the code is not a non-negative integer.
|
|
112
|
+
*
|
|
113
|
+
* @public
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* {@includeCode ../test/getSvtaErrorIndex.test.ts#example}
|
|
117
|
+
*/
|
|
118
|
+
function getSvtaErrorIndex(code) {
|
|
119
|
+
if (!Number.isInteger(code) || code < 0) return;
|
|
120
|
+
return code % 1e3;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
//#endregion
|
|
124
|
+
//#region src/httpStatusToSvtaErrorCode.ts
|
|
125
|
+
/**
|
|
126
|
+
* Embed an HTTP response status code into the SVTA Network error
|
|
127
|
+
* category, per the external code embedding rule of SVTA2070. HTTP 404
|
|
128
|
+
* becomes 3404.
|
|
129
|
+
*
|
|
130
|
+
* Values outside the valid HTTP status range (integers 100-599) return
|
|
131
|
+
* the unknown network error code (3000) rather than throwing, so error
|
|
132
|
+
* reporting paths cannot fail.
|
|
133
|
+
*
|
|
134
|
+
* @param status - An HTTP response status code (100-599).
|
|
135
|
+
* @returns The SVTA network error code embedding the status.
|
|
136
|
+
*
|
|
137
|
+
* @public
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* {@includeCode ../test/httpStatusToSvtaErrorCode.test.ts#example}
|
|
141
|
+
*/
|
|
142
|
+
function httpStatusToSvtaErrorCode(status) {
|
|
143
|
+
const base = SvtaErrorCategory.NETWORK * 1e3;
|
|
144
|
+
if (!Number.isInteger(status) || status < 100 || status > 599) return base;
|
|
145
|
+
return base + status;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
//#endregion
|
|
149
|
+
//#region src/SvtaAccessibilityErrorCode.ts
|
|
150
|
+
/**
|
|
151
|
+
* SVTA 5 [Accessibility] 000: Unknown accessibility error
|
|
152
|
+
*
|
|
153
|
+
* @public
|
|
154
|
+
*/
|
|
155
|
+
const SVTA_ACCESSIBILITY_UNKNOWN = 5e3;
|
|
156
|
+
/**
|
|
157
|
+
* SVTA 5 [Accessibility] 001: Unable to parse timed text
|
|
158
|
+
*
|
|
159
|
+
* @public
|
|
160
|
+
*/
|
|
161
|
+
const SVTA_TIMED_TEXT_PARSE_ERROR = 5001;
|
|
162
|
+
/**
|
|
163
|
+
* SVTA 5 [Accessibility] 002: Unable to render timed text
|
|
164
|
+
*
|
|
165
|
+
* @public
|
|
166
|
+
*/
|
|
167
|
+
const SVTA_TIMED_TEXT_RENDER_ERROR = 5002;
|
|
168
|
+
/**
|
|
169
|
+
* SVTA 5 [Accessibility] 003: Timed text exceeds content duration
|
|
170
|
+
*
|
|
171
|
+
* @public
|
|
172
|
+
*/
|
|
173
|
+
const SVTA_TIMED_TEXT_EXCEEDS_CONTENT_DURATION = 5003;
|
|
174
|
+
/**
|
|
175
|
+
* SVTA 5 [Accessibility] 004: Audio description exceeds content duration
|
|
176
|
+
*
|
|
177
|
+
* @public
|
|
178
|
+
*/
|
|
179
|
+
const SVTA_AUDIO_DESCRIPTION_EXCEEDS_CONTENT_DURATION = 5004;
|
|
180
|
+
/**
|
|
181
|
+
* SVTA standardized error codes in the Accessibility category (5xxx):
|
|
182
|
+
* defective captions or audio description.
|
|
183
|
+
*
|
|
184
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
185
|
+
*
|
|
186
|
+
* @enum
|
|
187
|
+
*
|
|
188
|
+
* @public
|
|
189
|
+
*/
|
|
190
|
+
const SvtaAccessibilityErrorCode = {
|
|
191
|
+
UNKNOWN: SVTA_ACCESSIBILITY_UNKNOWN,
|
|
192
|
+
TIMED_TEXT_PARSE_ERROR: SVTA_TIMED_TEXT_PARSE_ERROR,
|
|
193
|
+
TIMED_TEXT_RENDER_ERROR: SVTA_TIMED_TEXT_RENDER_ERROR,
|
|
194
|
+
TIMED_TEXT_EXCEEDS_CONTENT_DURATION: SVTA_TIMED_TEXT_EXCEEDS_CONTENT_DURATION,
|
|
195
|
+
AUDIO_DESCRIPTION_EXCEEDS_CONTENT_DURATION: SVTA_AUDIO_DESCRIPTION_EXCEEDS_CONTENT_DURATION
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
//#endregion
|
|
199
|
+
//#region src/SvtaAdvertisingErrorCode.ts
|
|
200
|
+
/**
|
|
201
|
+
* SVTA 7 [Advertising] 000: Unknown advertising error
|
|
202
|
+
*
|
|
203
|
+
* @public
|
|
204
|
+
*/
|
|
205
|
+
const SVTA_ADVERTISING_UNKNOWN = 7e3;
|
|
206
|
+
/**
|
|
207
|
+
* SVTA 7 [Advertising] 001: Ad blocker detected
|
|
208
|
+
*
|
|
209
|
+
* @public
|
|
210
|
+
*/
|
|
211
|
+
const SVTA_AD_BLOCKER_DETECTED = 7001;
|
|
212
|
+
/**
|
|
213
|
+
* SVTA 7 [Advertising] 100: Unable to parse VAST XML
|
|
214
|
+
*
|
|
215
|
+
* @public
|
|
216
|
+
*/
|
|
217
|
+
const SVTA_VAST_PARSE_ERROR = 7100;
|
|
218
|
+
/**
|
|
219
|
+
* SVTA 7 [Advertising] 101: Invalid VAST schema
|
|
220
|
+
*
|
|
221
|
+
* @public
|
|
222
|
+
*/
|
|
223
|
+
const SVTA_VAST_SCHEMA_VALIDATION_ERROR = 7101;
|
|
224
|
+
/**
|
|
225
|
+
* SVTA 7 [Advertising] 102: VAST response version not supported
|
|
226
|
+
*
|
|
227
|
+
* @public
|
|
228
|
+
*/
|
|
229
|
+
const SVTA_VAST_VERSION_UNSUPPORTED = 7102;
|
|
230
|
+
/**
|
|
231
|
+
* SVTA 7 [Advertising] 200: Video player expected different ad type
|
|
232
|
+
*
|
|
233
|
+
* @public
|
|
234
|
+
*/
|
|
235
|
+
const SVTA_AD_TYPE_MISMATCH = 7200;
|
|
236
|
+
/**
|
|
237
|
+
* SVTA 7 [Advertising] 201: Creative has different linearity than player expected (non-fatal)
|
|
238
|
+
*
|
|
239
|
+
* @public
|
|
240
|
+
*/
|
|
241
|
+
const SVTA_LINEARITY_MISMATCH = 7201;
|
|
242
|
+
/**
|
|
243
|
+
* SVTA 7 [Advertising] 202: Creative has different duration than player expected (non-fatal)
|
|
244
|
+
*
|
|
245
|
+
* @public
|
|
246
|
+
*/
|
|
247
|
+
const SVTA_DURATION_MISMATCH = 7202;
|
|
248
|
+
/**
|
|
249
|
+
* SVTA 7 [Advertising] 203: Creative has different size than player expected (non-fatal)
|
|
250
|
+
*
|
|
251
|
+
* @public
|
|
252
|
+
*/
|
|
253
|
+
const SVTA_SIZE_MISMATCH = 7203;
|
|
254
|
+
/**
|
|
255
|
+
* SVTA 7 [Advertising] 300: Wrapper failed to deliver VAST response for unknown reason
|
|
256
|
+
*
|
|
257
|
+
* @public
|
|
258
|
+
*/
|
|
259
|
+
const SVTA_WRAPPER_ERROR = 7300;
|
|
260
|
+
/**
|
|
261
|
+
* SVTA 7 [Advertising] 301: VAST response redirect timed out
|
|
262
|
+
*
|
|
263
|
+
* @public
|
|
264
|
+
*/
|
|
265
|
+
const SVTA_WRAPPER_TIMEOUT = 7301;
|
|
266
|
+
/**
|
|
267
|
+
* SVTA 7 [Advertising] 302: Wrapper limit reached (e.g. too many redirects)
|
|
268
|
+
*
|
|
269
|
+
* @public
|
|
270
|
+
*/
|
|
271
|
+
const SVTA_WRAPPER_LIMIT_REACHED = 7302;
|
|
272
|
+
/**
|
|
273
|
+
* SVTA 7 [Advertising] 303: VAST response was empty
|
|
274
|
+
*
|
|
275
|
+
* @public
|
|
276
|
+
*/
|
|
277
|
+
const SVTA_EMPTY_WRAPPER_RESPONSE = 7303;
|
|
278
|
+
/**
|
|
279
|
+
* SVTA 7 [Advertising] 400: Unable to display linear ad
|
|
280
|
+
*
|
|
281
|
+
* @public
|
|
282
|
+
*/
|
|
283
|
+
const SVTA_LINEAR_AD_ERROR = 7400;
|
|
284
|
+
/**
|
|
285
|
+
* SVTA 7 [Advertising] 401: Media file not found
|
|
286
|
+
*
|
|
287
|
+
* @public
|
|
288
|
+
*/
|
|
289
|
+
const SVTA_MEDIA_FILE_NOT_FOUND = 7401;
|
|
290
|
+
/**
|
|
291
|
+
* SVTA 7 [Advertising] 402: Media file unavailable
|
|
292
|
+
*
|
|
293
|
+
* @public
|
|
294
|
+
*/
|
|
295
|
+
const SVTA_MEDIA_FILE_UNAVAILABLE = 7402;
|
|
296
|
+
/**
|
|
297
|
+
* SVTA 7 [Advertising] 403: VAST response contained no supported MIME types
|
|
298
|
+
*
|
|
299
|
+
* @public
|
|
300
|
+
*/
|
|
301
|
+
const SVTA_NO_SUPPORTED_MEDIA_TYPE = 7403;
|
|
302
|
+
/**
|
|
303
|
+
* SVTA 7 [Advertising] 405: Unable to display media file
|
|
304
|
+
*
|
|
305
|
+
* @public
|
|
306
|
+
*/
|
|
307
|
+
const SVTA_MEDIA_FILE_DISPLAY_ERROR = 7405;
|
|
308
|
+
/**
|
|
309
|
+
* SVTA 7 [Advertising] 406: Required mezzanine file missing
|
|
310
|
+
*
|
|
311
|
+
* @public
|
|
312
|
+
*/
|
|
313
|
+
const SVTA_MEZZANINE_MISSING = 7406;
|
|
314
|
+
/**
|
|
315
|
+
* SVTA 7 [Advertising] 407: Mezzanine file was downloaded for the first time
|
|
316
|
+
*
|
|
317
|
+
* @public
|
|
318
|
+
*/
|
|
319
|
+
const SVTA_MEZZANINE_DOWNLOADING = 7407;
|
|
320
|
+
/**
|
|
321
|
+
* SVTA 7 [Advertising] 408: VAST response contained rejected ad
|
|
322
|
+
*
|
|
323
|
+
* @public
|
|
324
|
+
*/
|
|
325
|
+
const SVTA_REJECTED_AD = 7408;
|
|
326
|
+
/**
|
|
327
|
+
* SVTA 7 [Advertising] 409: Could not execute creative defined in interactiveCreativeFile
|
|
328
|
+
*
|
|
329
|
+
* @public
|
|
330
|
+
*/
|
|
331
|
+
const SVTA_INTERACTIVE_CREATIVE_ERROR = 7409;
|
|
332
|
+
/**
|
|
333
|
+
* SVTA 7 [Advertising] 410: Could not execute code in verification node
|
|
334
|
+
*
|
|
335
|
+
* @public
|
|
336
|
+
*/
|
|
337
|
+
const SVTA_VERIFICATION_ERROR = 7410;
|
|
338
|
+
/**
|
|
339
|
+
* SVTA 7 [Advertising] 500: Video player unable to display non-linear ad for unknown reason
|
|
340
|
+
*
|
|
341
|
+
* @public
|
|
342
|
+
*/
|
|
343
|
+
const SVTA_NONLINEAR_AD_ERROR = 7500;
|
|
344
|
+
/**
|
|
345
|
+
* SVTA 7 [Advertising] 501: Non-linear ad dimensions did not match display area
|
|
346
|
+
*
|
|
347
|
+
* @public
|
|
348
|
+
*/
|
|
349
|
+
const SVTA_NONLINEAR_DIMENSION_MISMATCH = 7501;
|
|
350
|
+
/**
|
|
351
|
+
* SVTA 7 [Advertising] 502: Unable to fetch non-linear ad resource
|
|
352
|
+
*
|
|
353
|
+
* @public
|
|
354
|
+
*/
|
|
355
|
+
const SVTA_NONLINEAR_AD_FETCH_ERROR = 7502;
|
|
356
|
+
/**
|
|
357
|
+
* SVTA 7 [Advertising] 503: Non-linear ad did not contain a supported type
|
|
358
|
+
*
|
|
359
|
+
* @public
|
|
360
|
+
*/
|
|
361
|
+
const SVTA_UNSUPPORTED_NONLINEAR_AD = 7503;
|
|
362
|
+
/**
|
|
363
|
+
* SVTA 7 [Advertising] 600: Could not display companion ad (non-fatal)
|
|
364
|
+
*
|
|
365
|
+
* @public
|
|
366
|
+
*/
|
|
367
|
+
const SVTA_COMPANION_AD_ERROR = 7600;
|
|
368
|
+
/**
|
|
369
|
+
* SVTA 7 [Advertising] 601: Companion ad dimensions did not match display area
|
|
370
|
+
*
|
|
371
|
+
* @public
|
|
372
|
+
*/
|
|
373
|
+
const SVTA_COMPANION_DIMENSION_MISMATCH = 7601;
|
|
374
|
+
/**
|
|
375
|
+
* SVTA 7 [Advertising] 602: Unable to display required companion ad
|
|
376
|
+
*
|
|
377
|
+
* @public
|
|
378
|
+
*/
|
|
379
|
+
const SVTA_REQUIRED_COMPANION_AD_ERROR = 7602;
|
|
380
|
+
/**
|
|
381
|
+
* SVTA 7 [Advertising] 603: Unable to fetch companion ad resource
|
|
382
|
+
*
|
|
383
|
+
* @public
|
|
384
|
+
*/
|
|
385
|
+
const SVTA_COMPANION_AD_FETCH_ERROR = 7603;
|
|
386
|
+
/**
|
|
387
|
+
* SVTA 7 [Advertising] 900: Undefined VAST error
|
|
388
|
+
*
|
|
389
|
+
* @public
|
|
390
|
+
*/
|
|
391
|
+
const SVTA_UNDEFINED_VAST_ERROR = 7900;
|
|
392
|
+
/**
|
|
393
|
+
* SVTA 7 [Advertising] 901: Unknown VPAID error
|
|
394
|
+
*
|
|
395
|
+
* @public
|
|
396
|
+
*/
|
|
397
|
+
const SVTA_VPAID_ERROR = 7901;
|
|
398
|
+
/**
|
|
399
|
+
* SVTA 7 [Advertising] 999: VAST response document was empty
|
|
400
|
+
*
|
|
401
|
+
* SVTA2070 maps the four-digit IAB VAST error 1009 to this code.
|
|
402
|
+
*
|
|
403
|
+
* @public
|
|
404
|
+
*/
|
|
405
|
+
const SVTA_EMPTY_VAST_RESPONSE = 7999;
|
|
406
|
+
/**
|
|
407
|
+
* SVTA standardized error codes in the Advertising category (7xxx):
|
|
408
|
+
* issues triggered by ad insertion.
|
|
409
|
+
*
|
|
410
|
+
* IAB VAST error codes embed into this category at indices 100 through
|
|
411
|
+
* 999. `7301` is VAST error 301. See `vastErrorToSvtaErrorCode`.
|
|
412
|
+
* VAST defines no error 404, so there is no `7404`. The four-digit VAST
|
|
413
|
+
* error 1009 (empty VAST response) maps to `7999`.
|
|
414
|
+
*
|
|
415
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
416
|
+
* @see {@link https://www.iab.com/wp-content/uploads/2016/01/VAST_4-0_2016-01-21.pdf | IAB VAST 4.0 §2.3.6.3 Error Codes}
|
|
417
|
+
*
|
|
418
|
+
* @enum
|
|
419
|
+
*
|
|
420
|
+
* @public
|
|
421
|
+
*/
|
|
422
|
+
const SvtaAdvertisingErrorCode = {
|
|
423
|
+
UNKNOWN: SVTA_ADVERTISING_UNKNOWN,
|
|
424
|
+
AD_BLOCKER_DETECTED: SVTA_AD_BLOCKER_DETECTED,
|
|
425
|
+
VAST_PARSE_ERROR: SVTA_VAST_PARSE_ERROR,
|
|
426
|
+
VAST_SCHEMA_VALIDATION_ERROR: SVTA_VAST_SCHEMA_VALIDATION_ERROR,
|
|
427
|
+
VAST_VERSION_UNSUPPORTED: SVTA_VAST_VERSION_UNSUPPORTED,
|
|
428
|
+
AD_TYPE_MISMATCH: SVTA_AD_TYPE_MISMATCH,
|
|
429
|
+
LINEARITY_MISMATCH: SVTA_LINEARITY_MISMATCH,
|
|
430
|
+
DURATION_MISMATCH: SVTA_DURATION_MISMATCH,
|
|
431
|
+
SIZE_MISMATCH: SVTA_SIZE_MISMATCH,
|
|
432
|
+
WRAPPER_ERROR: SVTA_WRAPPER_ERROR,
|
|
433
|
+
WRAPPER_TIMEOUT: SVTA_WRAPPER_TIMEOUT,
|
|
434
|
+
WRAPPER_LIMIT_REACHED: SVTA_WRAPPER_LIMIT_REACHED,
|
|
435
|
+
EMPTY_WRAPPER_RESPONSE: SVTA_EMPTY_WRAPPER_RESPONSE,
|
|
436
|
+
LINEAR_AD_ERROR: SVTA_LINEAR_AD_ERROR,
|
|
437
|
+
MEDIA_FILE_NOT_FOUND: SVTA_MEDIA_FILE_NOT_FOUND,
|
|
438
|
+
MEDIA_FILE_UNAVAILABLE: SVTA_MEDIA_FILE_UNAVAILABLE,
|
|
439
|
+
NO_SUPPORTED_MEDIA_TYPE: SVTA_NO_SUPPORTED_MEDIA_TYPE,
|
|
440
|
+
MEDIA_FILE_DISPLAY_ERROR: SVTA_MEDIA_FILE_DISPLAY_ERROR,
|
|
441
|
+
MEZZANINE_MISSING: SVTA_MEZZANINE_MISSING,
|
|
442
|
+
MEZZANINE_DOWNLOADING: SVTA_MEZZANINE_DOWNLOADING,
|
|
443
|
+
REJECTED_AD: SVTA_REJECTED_AD,
|
|
444
|
+
INTERACTIVE_CREATIVE_ERROR: SVTA_INTERACTIVE_CREATIVE_ERROR,
|
|
445
|
+
VERIFICATION_ERROR: SVTA_VERIFICATION_ERROR,
|
|
446
|
+
NONLINEAR_AD_ERROR: SVTA_NONLINEAR_AD_ERROR,
|
|
447
|
+
NONLINEAR_DIMENSION_MISMATCH: SVTA_NONLINEAR_DIMENSION_MISMATCH,
|
|
448
|
+
NONLINEAR_AD_FETCH_ERROR: SVTA_NONLINEAR_AD_FETCH_ERROR,
|
|
449
|
+
UNSUPPORTED_NONLINEAR_AD: SVTA_UNSUPPORTED_NONLINEAR_AD,
|
|
450
|
+
COMPANION_AD_ERROR: SVTA_COMPANION_AD_ERROR,
|
|
451
|
+
COMPANION_DIMENSION_MISMATCH: SVTA_COMPANION_DIMENSION_MISMATCH,
|
|
452
|
+
REQUIRED_COMPANION_AD_ERROR: SVTA_REQUIRED_COMPANION_AD_ERROR,
|
|
453
|
+
COMPANION_AD_FETCH_ERROR: SVTA_COMPANION_AD_FETCH_ERROR,
|
|
454
|
+
UNDEFINED_VAST_ERROR: SVTA_UNDEFINED_VAST_ERROR,
|
|
455
|
+
VPAID_ERROR: SVTA_VPAID_ERROR,
|
|
456
|
+
EMPTY_VAST_RESPONSE: SVTA_EMPTY_VAST_RESPONSE
|
|
457
|
+
};
|
|
458
|
+
|
|
459
|
+
//#endregion
|
|
460
|
+
//#region src/SvtaContentProtectionErrorCode.ts
|
|
461
|
+
/**
|
|
462
|
+
* SVTA 4 [Content Protection] 000: Unknown content protection error
|
|
463
|
+
*
|
|
464
|
+
* @public
|
|
465
|
+
*/
|
|
466
|
+
const SVTA_CONTENT_PROTECTION_UNKNOWN = 4e3;
|
|
467
|
+
/**
|
|
468
|
+
* SVTA 4 [Content Protection] 001: Concurrent stream limit exceeded
|
|
469
|
+
*
|
|
470
|
+
* @public
|
|
471
|
+
*/
|
|
472
|
+
const SVTA_CONCURRENT_STREAM_LIMIT_EXCEEDED = 4001;
|
|
473
|
+
/**
|
|
474
|
+
* SVTA 4 [Content Protection] 002: Entitlement refused
|
|
475
|
+
*
|
|
476
|
+
* @public
|
|
477
|
+
*/
|
|
478
|
+
const SVTA_ENTITLEMENT_REFUSED = 4002;
|
|
479
|
+
/**
|
|
480
|
+
* SVTA 4 [Content Protection] 003: License expired
|
|
481
|
+
*
|
|
482
|
+
* @public
|
|
483
|
+
*/
|
|
484
|
+
const SVTA_LICENSE_EXPIRED = 4003;
|
|
485
|
+
/**
|
|
486
|
+
* SVTA 4 [Content Protection] 004: Bad license request
|
|
487
|
+
*
|
|
488
|
+
* @public
|
|
489
|
+
*/
|
|
490
|
+
const SVTA_BAD_LICENSE_REQUEST = 4004;
|
|
491
|
+
/**
|
|
492
|
+
* SVTA 4 [Content Protection] 005: License server timeout
|
|
493
|
+
*
|
|
494
|
+
* @public
|
|
495
|
+
*/
|
|
496
|
+
const SVTA_LICENSE_SERVER_TIMEOUT = 4005;
|
|
497
|
+
/**
|
|
498
|
+
* SVTA 4 [Content Protection] 006: Insufficient DRM robustness level
|
|
499
|
+
*
|
|
500
|
+
* @public
|
|
501
|
+
*/
|
|
502
|
+
const SVTA_INSUFFICIENT_DRM_ROBUSTNESS = 4006;
|
|
503
|
+
/**
|
|
504
|
+
* SVTA 4 [Content Protection] 007: Insufficient output protection
|
|
505
|
+
*
|
|
506
|
+
* @public
|
|
507
|
+
*/
|
|
508
|
+
const SVTA_INSUFFICIENT_OUTPUT_PROTECTION = 4007;
|
|
509
|
+
/**
|
|
510
|
+
* SVTA 4 [Content Protection] 008: Unsupported or unavailable DRM system
|
|
511
|
+
*
|
|
512
|
+
* @public
|
|
513
|
+
*/
|
|
514
|
+
const SVTA_UNSUPPORTED_DRM_SYSTEM = 4008;
|
|
515
|
+
/**
|
|
516
|
+
* SVTA 4 [Content Protection] 009: Access restricted due to unsupported geo
|
|
517
|
+
*
|
|
518
|
+
* @public
|
|
519
|
+
*/
|
|
520
|
+
const SVTA_GEO_RESTRICTED = 4009;
|
|
521
|
+
/**
|
|
522
|
+
* SVTA 4 [Content Protection] 010: DRM initialization error
|
|
523
|
+
*
|
|
524
|
+
* @public
|
|
525
|
+
*/
|
|
526
|
+
const SVTA_DRM_INITIALIZATION_ERROR = 4010;
|
|
527
|
+
/**
|
|
528
|
+
* SVTA 4 [Content Protection] 011: CDN unauthorized
|
|
529
|
+
*
|
|
530
|
+
* @public
|
|
531
|
+
*/
|
|
532
|
+
const SVTA_CDN_UNAUTHORIZED = 4011;
|
|
533
|
+
/**
|
|
534
|
+
* SVTA 4 [Content Protection] 012: Invalid access token
|
|
535
|
+
*
|
|
536
|
+
* @public
|
|
537
|
+
*/
|
|
538
|
+
const SVTA_INVALID_ACCESS_TOKEN = 4012;
|
|
539
|
+
/**
|
|
540
|
+
* SVTA 4 [Content Protection] 013: DRM certificate error
|
|
541
|
+
*
|
|
542
|
+
* @public
|
|
543
|
+
*/
|
|
544
|
+
const SVTA_DRM_CERTIFICATE_ERROR = 4013;
|
|
545
|
+
/**
|
|
546
|
+
* SVTA 4 [Content Protection] 014: DRM session error
|
|
547
|
+
*
|
|
548
|
+
* @public
|
|
549
|
+
*/
|
|
550
|
+
const SVTA_DRM_SESSION_ERROR = 4014;
|
|
551
|
+
/**
|
|
552
|
+
* SVTA 4 [Content Protection] 015: DRM initialization data or configuration missing
|
|
553
|
+
*
|
|
554
|
+
* @public
|
|
555
|
+
*/
|
|
556
|
+
const SVTA_DRM_CONFIGURATION_MISSING = 4015;
|
|
557
|
+
/**
|
|
558
|
+
* SVTA 4 [Content Protection] 016: DRM license response rejected
|
|
559
|
+
*
|
|
560
|
+
* @public
|
|
561
|
+
*/
|
|
562
|
+
const SVTA_LICENSE_RESPONSE_REJECTED = 4016;
|
|
563
|
+
/**
|
|
564
|
+
* SVTA 4 [Content Protection] 017: Persistent session DRM error
|
|
565
|
+
*
|
|
566
|
+
* @public
|
|
567
|
+
*/
|
|
568
|
+
const SVTA_PERSISTENT_SESSION_ERROR = 4017;
|
|
569
|
+
/**
|
|
570
|
+
* SVTA 4 [Content Protection] 018: Required permission rejected
|
|
571
|
+
*
|
|
572
|
+
* @public
|
|
573
|
+
*/
|
|
574
|
+
const SVTA_PERMISSION_REJECTED = 4018;
|
|
575
|
+
/**
|
|
576
|
+
* SVTA 4 [Content Protection] 019: Failed to load decryption key
|
|
577
|
+
*
|
|
578
|
+
* @public
|
|
579
|
+
*/
|
|
580
|
+
const SVTA_KEY_LOAD_ERROR = 4019;
|
|
581
|
+
/**
|
|
582
|
+
* SVTA 4 [Content Protection] 020: Failed to decrypt segment
|
|
583
|
+
*
|
|
584
|
+
* @public
|
|
585
|
+
*/
|
|
586
|
+
const SVTA_SEGMENT_DECRYPTION_ERROR = 4020;
|
|
587
|
+
/**
|
|
588
|
+
* SVTA 4 [Content Protection] 021: Failed to generate DRM license request
|
|
589
|
+
*
|
|
590
|
+
* @public
|
|
591
|
+
*/
|
|
592
|
+
const SVTA_LICENSE_REQUEST_GENERATION_ERROR = 4021;
|
|
593
|
+
/**
|
|
594
|
+
* SVTA standardized error codes in the Content Protection category
|
|
595
|
+
* (4xxx): security related errors, including authentication and
|
|
596
|
+
* entitlement issues.
|
|
597
|
+
*
|
|
598
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
599
|
+
*
|
|
600
|
+
* @enum
|
|
601
|
+
*
|
|
602
|
+
* @public
|
|
603
|
+
*/
|
|
604
|
+
const SvtaContentProtectionErrorCode = {
|
|
605
|
+
UNKNOWN: SVTA_CONTENT_PROTECTION_UNKNOWN,
|
|
606
|
+
CONCURRENT_STREAM_LIMIT_EXCEEDED: SVTA_CONCURRENT_STREAM_LIMIT_EXCEEDED,
|
|
607
|
+
ENTITLEMENT_REFUSED: SVTA_ENTITLEMENT_REFUSED,
|
|
608
|
+
LICENSE_EXPIRED: SVTA_LICENSE_EXPIRED,
|
|
609
|
+
BAD_LICENSE_REQUEST: SVTA_BAD_LICENSE_REQUEST,
|
|
610
|
+
LICENSE_SERVER_TIMEOUT: SVTA_LICENSE_SERVER_TIMEOUT,
|
|
611
|
+
INSUFFICIENT_DRM_ROBUSTNESS: SVTA_INSUFFICIENT_DRM_ROBUSTNESS,
|
|
612
|
+
INSUFFICIENT_OUTPUT_PROTECTION: SVTA_INSUFFICIENT_OUTPUT_PROTECTION,
|
|
613
|
+
UNSUPPORTED_DRM_SYSTEM: SVTA_UNSUPPORTED_DRM_SYSTEM,
|
|
614
|
+
GEO_RESTRICTED: SVTA_GEO_RESTRICTED,
|
|
615
|
+
DRM_INITIALIZATION_ERROR: SVTA_DRM_INITIALIZATION_ERROR,
|
|
616
|
+
CDN_UNAUTHORIZED: SVTA_CDN_UNAUTHORIZED,
|
|
617
|
+
INVALID_ACCESS_TOKEN: SVTA_INVALID_ACCESS_TOKEN,
|
|
618
|
+
DRM_CERTIFICATE_ERROR: SVTA_DRM_CERTIFICATE_ERROR,
|
|
619
|
+
DRM_SESSION_ERROR: SVTA_DRM_SESSION_ERROR,
|
|
620
|
+
DRM_CONFIGURATION_MISSING: SVTA_DRM_CONFIGURATION_MISSING,
|
|
621
|
+
LICENSE_RESPONSE_REJECTED: SVTA_LICENSE_RESPONSE_REJECTED,
|
|
622
|
+
PERSISTENT_SESSION_ERROR: SVTA_PERSISTENT_SESSION_ERROR,
|
|
623
|
+
PERMISSION_REJECTED: SVTA_PERMISSION_REJECTED,
|
|
624
|
+
KEY_LOAD_ERROR: SVTA_KEY_LOAD_ERROR,
|
|
625
|
+
SEGMENT_DECRYPTION_ERROR: SVTA_SEGMENT_DECRYPTION_ERROR,
|
|
626
|
+
LICENSE_REQUEST_GENERATION_ERROR: SVTA_LICENSE_REQUEST_GENERATION_ERROR
|
|
627
|
+
};
|
|
628
|
+
|
|
629
|
+
//#endregion
|
|
630
|
+
//#region src/SvtaCustomErrorCode.ts
|
|
631
|
+
/**
|
|
632
|
+
* SVTA 99 [Custom] 000: Unknown custom error
|
|
633
|
+
*
|
|
634
|
+
* @public
|
|
635
|
+
*/
|
|
636
|
+
const SVTA_CUSTOM_UNKNOWN = 99e3;
|
|
637
|
+
/**
|
|
638
|
+
* SVTA standardized error code in the Custom category (99xxx): the
|
|
639
|
+
* category reserved for Publisher-defined errors. Codes 99001 through
|
|
640
|
+
* 99999 are available for bespoke Publisher use.
|
|
641
|
+
*
|
|
642
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
643
|
+
*
|
|
644
|
+
* @enum
|
|
645
|
+
*
|
|
646
|
+
* @public
|
|
647
|
+
*/
|
|
648
|
+
const SvtaCustomErrorCode = { UNKNOWN: SVTA_CUSTOM_UNKNOWN };
|
|
649
|
+
|
|
650
|
+
//#endregion
|
|
651
|
+
//#region src/SvtaMediaContentErrorCode.ts
|
|
652
|
+
/**
|
|
653
|
+
* SVTA 1 [Media Content] 000: Unknown media content error
|
|
654
|
+
*
|
|
655
|
+
* @public
|
|
656
|
+
*/
|
|
657
|
+
const SVTA_MEDIA_CONTENT_UNKNOWN = 1e3;
|
|
658
|
+
/**
|
|
659
|
+
* SVTA 1 [Media Content] 001: Media unavailable
|
|
660
|
+
*
|
|
661
|
+
* @public
|
|
662
|
+
*/
|
|
663
|
+
const SVTA_MEDIA_UNAVAILABLE = 1001;
|
|
664
|
+
/**
|
|
665
|
+
* SVTA 1 [Media Content] 002: Invalid manifest
|
|
666
|
+
*
|
|
667
|
+
* @public
|
|
668
|
+
*/
|
|
669
|
+
const SVTA_INVALID_MANIFEST = 1002;
|
|
670
|
+
/**
|
|
671
|
+
* SVTA 1 [Media Content] 003: Track not available
|
|
672
|
+
*
|
|
673
|
+
* @public
|
|
674
|
+
*/
|
|
675
|
+
const SVTA_TRACK_NOT_AVAILABLE = 1003;
|
|
676
|
+
/**
|
|
677
|
+
* SVTA 1 [Media Content] 004: Unsupported video format
|
|
678
|
+
*
|
|
679
|
+
* @public
|
|
680
|
+
*/
|
|
681
|
+
const SVTA_UNSUPPORTED_VIDEO_FORMAT = 1004;
|
|
682
|
+
/**
|
|
683
|
+
* SVTA 1 [Media Content] 005: Unsupported audio format
|
|
684
|
+
*
|
|
685
|
+
* @public
|
|
686
|
+
*/
|
|
687
|
+
const SVTA_UNSUPPORTED_AUDIO_FORMAT = 1005;
|
|
688
|
+
/**
|
|
689
|
+
* SVTA 1 [Media Content] 006: Unsupported text format
|
|
690
|
+
*
|
|
691
|
+
* @public
|
|
692
|
+
*/
|
|
693
|
+
const SVTA_UNSUPPORTED_TEXT_FORMAT = 1006;
|
|
694
|
+
/**
|
|
695
|
+
* SVTA 1 [Media Content] 007: Invalid composition track segment time
|
|
696
|
+
*
|
|
697
|
+
* @public
|
|
698
|
+
*/
|
|
699
|
+
const SVTA_INVALID_COMPOSITION_TRACK_SEGMENT_TIME = 1007;
|
|
700
|
+
/**
|
|
701
|
+
* SVTA 1 [Media Content] 008: Segment exceeds specified bitrate for track
|
|
702
|
+
*
|
|
703
|
+
* @public
|
|
704
|
+
*/
|
|
705
|
+
const SVTA_SEGMENT_EXCEEDS_TRACK_BITRATE = 1008;
|
|
706
|
+
/**
|
|
707
|
+
* SVTA 1 [Media Content] 009: Misaligned track duration
|
|
708
|
+
*
|
|
709
|
+
* @public
|
|
710
|
+
*/
|
|
711
|
+
const SVTA_MISALIGNED_TRACK_DURATION = 1009;
|
|
712
|
+
/**
|
|
713
|
+
* SVTA standardized error codes in the Media Content category (1xxx):
|
|
714
|
+
* issues with the content itself.
|
|
715
|
+
*
|
|
716
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
717
|
+
*
|
|
718
|
+
* @enum
|
|
719
|
+
*
|
|
720
|
+
* @public
|
|
721
|
+
*/
|
|
722
|
+
const SvtaMediaContentErrorCode = {
|
|
723
|
+
UNKNOWN: SVTA_MEDIA_CONTENT_UNKNOWN,
|
|
724
|
+
MEDIA_UNAVAILABLE: SVTA_MEDIA_UNAVAILABLE,
|
|
725
|
+
INVALID_MANIFEST: SVTA_INVALID_MANIFEST,
|
|
726
|
+
TRACK_NOT_AVAILABLE: SVTA_TRACK_NOT_AVAILABLE,
|
|
727
|
+
UNSUPPORTED_VIDEO_FORMAT: SVTA_UNSUPPORTED_VIDEO_FORMAT,
|
|
728
|
+
UNSUPPORTED_AUDIO_FORMAT: SVTA_UNSUPPORTED_AUDIO_FORMAT,
|
|
729
|
+
UNSUPPORTED_TEXT_FORMAT: SVTA_UNSUPPORTED_TEXT_FORMAT,
|
|
730
|
+
INVALID_COMPOSITION_TRACK_SEGMENT_TIME: SVTA_INVALID_COMPOSITION_TRACK_SEGMENT_TIME,
|
|
731
|
+
SEGMENT_EXCEEDS_TRACK_BITRATE: SVTA_SEGMENT_EXCEEDS_TRACK_BITRATE,
|
|
732
|
+
MISALIGNED_TRACK_DURATION: SVTA_MISALIGNED_TRACK_DURATION
|
|
733
|
+
};
|
|
734
|
+
|
|
735
|
+
//#endregion
|
|
736
|
+
//#region src/SvtaNetworkErrorCode.ts
|
|
737
|
+
/**
|
|
738
|
+
* SVTA 3 [Network] 000: Unknown network error
|
|
739
|
+
*
|
|
740
|
+
* @public
|
|
741
|
+
*/
|
|
742
|
+
const SVTA_NETWORK_UNKNOWN = 3e3;
|
|
743
|
+
/**
|
|
744
|
+
* SVTA 3 [Network] 001: No network connection
|
|
745
|
+
*
|
|
746
|
+
* @public
|
|
747
|
+
*/
|
|
748
|
+
const SVTA_NO_NETWORK_CONNECTION = 3001;
|
|
749
|
+
/**
|
|
750
|
+
* SVTA 3 [Network] 002: HTTP timeout
|
|
751
|
+
*
|
|
752
|
+
* @public
|
|
753
|
+
*/
|
|
754
|
+
const SVTA_HTTP_TIMEOUT = 3002;
|
|
755
|
+
/**
|
|
756
|
+
* SVTA 3 [Network] 003: Unable to resolve host
|
|
757
|
+
*
|
|
758
|
+
* @public
|
|
759
|
+
*/
|
|
760
|
+
const SVTA_HOST_RESOLUTION_ERROR = 3003;
|
|
761
|
+
/**
|
|
762
|
+
* SVTA 3 [Network] 004: Resource not found
|
|
763
|
+
*
|
|
764
|
+
* @public
|
|
765
|
+
*/
|
|
766
|
+
const SVTA_RESOURCE_NOT_FOUND = 3004;
|
|
767
|
+
/**
|
|
768
|
+
* SVTA 3 [Network] 005: Invalid URI
|
|
769
|
+
*
|
|
770
|
+
* @public
|
|
771
|
+
*/
|
|
772
|
+
const SVTA_INVALID_URI = 3005;
|
|
773
|
+
/**
|
|
774
|
+
* SVTA 3 [Network] 006: Unsupported URI scheme
|
|
775
|
+
*
|
|
776
|
+
* @public
|
|
777
|
+
*/
|
|
778
|
+
const SVTA_UNSUPPORTED_URI_SCHEME = 3006;
|
|
779
|
+
/**
|
|
780
|
+
* SVTA 3 [Network] 007: Download error
|
|
781
|
+
*
|
|
782
|
+
* @public
|
|
783
|
+
*/
|
|
784
|
+
const SVTA_DOWNLOAD_ERROR = 3007;
|
|
785
|
+
/**
|
|
786
|
+
* SVTA 3 [Network] 008: Max retries have been exceeded
|
|
787
|
+
*
|
|
788
|
+
* @public
|
|
789
|
+
*/
|
|
790
|
+
const SVTA_MAX_RETRIES_EXCEEDED = 3008;
|
|
791
|
+
/**
|
|
792
|
+
* SVTA 3 [Network] 009: Insufficient bandwidth to support playback of current presentation
|
|
793
|
+
*
|
|
794
|
+
* @public
|
|
795
|
+
*/
|
|
796
|
+
const SVTA_INSUFFICIENT_BANDWIDTH = 3009;
|
|
797
|
+
/**
|
|
798
|
+
* SVTA 3 [Network] 010: Resource denied
|
|
799
|
+
*
|
|
800
|
+
* @public
|
|
801
|
+
*/
|
|
802
|
+
const SVTA_RESOURCE_DENIED = 3010;
|
|
803
|
+
/**
|
|
804
|
+
* SVTA 3 [Network] 011: Invalid HTTP content type value
|
|
805
|
+
*
|
|
806
|
+
* @public
|
|
807
|
+
*/
|
|
808
|
+
const SVTA_INVALID_HTTP_CONTENT_TYPE = 3011;
|
|
809
|
+
/**
|
|
810
|
+
* SVTA standardized error codes in the Network category (3xxx): issues
|
|
811
|
+
* on the network, including unavailable resources.
|
|
812
|
+
*
|
|
813
|
+
* HTTP response status codes embed into this category at indices 100
|
|
814
|
+
* through 599. `3404` is an HTTP 404 response. See
|
|
815
|
+
* `httpStatusToSvtaErrorCode`.
|
|
816
|
+
*
|
|
817
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
818
|
+
*
|
|
819
|
+
* @enum
|
|
820
|
+
*
|
|
821
|
+
* @public
|
|
822
|
+
*/
|
|
823
|
+
const SvtaNetworkErrorCode = {
|
|
824
|
+
UNKNOWN: SVTA_NETWORK_UNKNOWN,
|
|
825
|
+
NO_NETWORK_CONNECTION: SVTA_NO_NETWORK_CONNECTION,
|
|
826
|
+
HTTP_TIMEOUT: SVTA_HTTP_TIMEOUT,
|
|
827
|
+
HOST_RESOLUTION_ERROR: SVTA_HOST_RESOLUTION_ERROR,
|
|
828
|
+
RESOURCE_NOT_FOUND: SVTA_RESOURCE_NOT_FOUND,
|
|
829
|
+
INVALID_URI: SVTA_INVALID_URI,
|
|
830
|
+
UNSUPPORTED_URI_SCHEME: SVTA_UNSUPPORTED_URI_SCHEME,
|
|
831
|
+
DOWNLOAD_ERROR: SVTA_DOWNLOAD_ERROR,
|
|
832
|
+
MAX_RETRIES_EXCEEDED: SVTA_MAX_RETRIES_EXCEEDED,
|
|
833
|
+
INSUFFICIENT_BANDWIDTH: SVTA_INSUFFICIENT_BANDWIDTH,
|
|
834
|
+
RESOURCE_DENIED: SVTA_RESOURCE_DENIED,
|
|
835
|
+
INVALID_HTTP_CONTENT_TYPE: SVTA_INVALID_HTTP_CONTENT_TYPE
|
|
836
|
+
};
|
|
837
|
+
|
|
838
|
+
//#endregion
|
|
839
|
+
//#region src/SvtaPlaybackErrorCode.ts
|
|
840
|
+
/**
|
|
841
|
+
* SVTA 2 [Playback] 000: Unknown playback error
|
|
842
|
+
*
|
|
843
|
+
* @public
|
|
844
|
+
*/
|
|
845
|
+
const SVTA_PLAYBACK_UNKNOWN = 2e3;
|
|
846
|
+
/**
|
|
847
|
+
* SVTA 2 [Playback] 001: Video buffer underrun
|
|
848
|
+
*
|
|
849
|
+
* @public
|
|
850
|
+
*/
|
|
851
|
+
const SVTA_VIDEO_BUFFER_UNDERRUN = 2001;
|
|
852
|
+
/**
|
|
853
|
+
* SVTA 2 [Playback] 002: Audio buffer underrun
|
|
854
|
+
*
|
|
855
|
+
* @public
|
|
856
|
+
*/
|
|
857
|
+
const SVTA_AUDIO_BUFFER_UNDERRUN = 2002;
|
|
858
|
+
/**
|
|
859
|
+
* SVTA 2 [Playback] 003: Video buffering timeout
|
|
860
|
+
*
|
|
861
|
+
* @public
|
|
862
|
+
*/
|
|
863
|
+
const SVTA_VIDEO_BUFFERING_TIMEOUT = 2003;
|
|
864
|
+
/**
|
|
865
|
+
* SVTA 2 [Playback] 004: Audio buffering timeout
|
|
866
|
+
*
|
|
867
|
+
* @public
|
|
868
|
+
*/
|
|
869
|
+
const SVTA_AUDIO_BUFFERING_TIMEOUT = 2004;
|
|
870
|
+
/**
|
|
871
|
+
* SVTA 2 [Playback] 005: Unable to parse manifest
|
|
872
|
+
*
|
|
873
|
+
* @public
|
|
874
|
+
*/
|
|
875
|
+
const SVTA_MANIFEST_PARSE_ERROR = 2005;
|
|
876
|
+
/**
|
|
877
|
+
* SVTA 2 [Playback] 006: Segment parse error
|
|
878
|
+
*
|
|
879
|
+
* @public
|
|
880
|
+
*/
|
|
881
|
+
const SVTA_SEGMENT_PARSE_ERROR = 2006;
|
|
882
|
+
/**
|
|
883
|
+
* SVTA 2 [Playback] 007: Unable to decode video
|
|
884
|
+
*
|
|
885
|
+
* @public
|
|
886
|
+
*/
|
|
887
|
+
const SVTA_VIDEO_DECODE_ERROR = 2007;
|
|
888
|
+
/**
|
|
889
|
+
* SVTA 2 [Playback] 008: Unable to decode audio
|
|
890
|
+
*
|
|
891
|
+
* @public
|
|
892
|
+
*/
|
|
893
|
+
const SVTA_AUDIO_DECODE_ERROR = 2008;
|
|
894
|
+
/**
|
|
895
|
+
* SVTA 2 [Playback] 009: Video dropped frame count exceeds threshold
|
|
896
|
+
*
|
|
897
|
+
* @public
|
|
898
|
+
*/
|
|
899
|
+
const SVTA_VIDEO_DROPPED_FRAMES_EXCEEDED = 2009;
|
|
900
|
+
/**
|
|
901
|
+
* SVTA 2 [Playback] 010: Playhead exceeds content duration
|
|
902
|
+
*
|
|
903
|
+
* @public
|
|
904
|
+
*/
|
|
905
|
+
const SVTA_PLAYHEAD_EXCEEDS_CONTENT_DURATION = 2010;
|
|
906
|
+
/**
|
|
907
|
+
* SVTA 2 [Playback] 011: No supported video track
|
|
908
|
+
*
|
|
909
|
+
* @public
|
|
910
|
+
*/
|
|
911
|
+
const SVTA_NO_SUPPORTED_VIDEO_TRACK = 2011;
|
|
912
|
+
/**
|
|
913
|
+
* SVTA 2 [Playback] 012: No supported audio track
|
|
914
|
+
*
|
|
915
|
+
* @public
|
|
916
|
+
*/
|
|
917
|
+
const SVTA_NO_SUPPORTED_AUDIO_TRACK = 2012;
|
|
918
|
+
/**
|
|
919
|
+
* SVTA 2 [Playback] 013: No matching codec / profile / level
|
|
920
|
+
*
|
|
921
|
+
* @public
|
|
922
|
+
*/
|
|
923
|
+
const SVTA_NO_MATCHING_CODEC = 2013;
|
|
924
|
+
/**
|
|
925
|
+
* SVTA 2 [Playback] 014: Primary manifest load error
|
|
926
|
+
*
|
|
927
|
+
* @public
|
|
928
|
+
*/
|
|
929
|
+
const SVTA_PRIMARY_MANIFEST_LOAD_ERROR = 2014;
|
|
930
|
+
/**
|
|
931
|
+
* SVTA 2 [Playback] 015: Primary manifest load timeout
|
|
932
|
+
*
|
|
933
|
+
* @public
|
|
934
|
+
*/
|
|
935
|
+
const SVTA_PRIMARY_MANIFEST_LOAD_TIMEOUT = 2015;
|
|
936
|
+
/**
|
|
937
|
+
* SVTA 2 [Playback] 016: Unable to parse track from manifest
|
|
938
|
+
*
|
|
939
|
+
* @public
|
|
940
|
+
*/
|
|
941
|
+
const SVTA_MANIFEST_TRACK_PARSE_ERROR = 2016;
|
|
942
|
+
/**
|
|
943
|
+
* SVTA 2 [Playback] 017: Secondary manifest / asset list load error
|
|
944
|
+
*
|
|
945
|
+
* @public
|
|
946
|
+
*/
|
|
947
|
+
const SVTA_SECONDARY_MANIFEST_LOAD_ERROR = 2017;
|
|
948
|
+
/**
|
|
949
|
+
* SVTA 2 [Playback] 018: Unable to parse secondary manifest / asset list
|
|
950
|
+
*
|
|
951
|
+
* @public
|
|
952
|
+
*/
|
|
953
|
+
const SVTA_SECONDARY_MANIFEST_PARSE_ERROR = 2018;
|
|
954
|
+
/**
|
|
955
|
+
* SVTA 2 [Playback] 019: Unable to switch tracks
|
|
956
|
+
*
|
|
957
|
+
* @public
|
|
958
|
+
*/
|
|
959
|
+
const SVTA_TRACK_SWITCH_ERROR = 2019;
|
|
960
|
+
/**
|
|
961
|
+
* SVTA 2 [Playback] 020: Track load error
|
|
962
|
+
*
|
|
963
|
+
* @public
|
|
964
|
+
*/
|
|
965
|
+
const SVTA_TRACK_LOAD_ERROR = 2020;
|
|
966
|
+
/**
|
|
967
|
+
* SVTA 2 [Playback] 021: Remux issue
|
|
968
|
+
*
|
|
969
|
+
* @public
|
|
970
|
+
*/
|
|
971
|
+
const SVTA_REMUX_ERROR = 2021;
|
|
972
|
+
/**
|
|
973
|
+
* SVTA 2 [Playback] 022: Buffer initialization error
|
|
974
|
+
*
|
|
975
|
+
* @public
|
|
976
|
+
*/
|
|
977
|
+
const SVTA_BUFFER_INITIALIZATION_ERROR = 2022;
|
|
978
|
+
/**
|
|
979
|
+
* SVTA 2 [Playback] 023: Buffer append error
|
|
980
|
+
*
|
|
981
|
+
* @public
|
|
982
|
+
*/
|
|
983
|
+
const SVTA_BUFFER_APPEND_ERROR = 2023;
|
|
984
|
+
/**
|
|
985
|
+
* SVTA 2 [Playback] 024: Buffer remove error
|
|
986
|
+
*
|
|
987
|
+
* @public
|
|
988
|
+
*/
|
|
989
|
+
const SVTA_BUFFER_REMOVE_ERROR = 2024;
|
|
990
|
+
/**
|
|
991
|
+
* SVTA 2 [Playback] 025: Buffer full error
|
|
992
|
+
*
|
|
993
|
+
* @public
|
|
994
|
+
*/
|
|
995
|
+
const SVTA_BUFFER_FULL_ERROR = 2025;
|
|
996
|
+
/**
|
|
997
|
+
* SVTA 2 [Playback] 026: Buffer seek over hole
|
|
998
|
+
*
|
|
999
|
+
* @public
|
|
1000
|
+
*/
|
|
1001
|
+
const SVTA_BUFFER_SEEK_OVER_HOLE = 2026;
|
|
1002
|
+
/**
|
|
1003
|
+
* SVTA 2 [Playback] 027: Buffer nudge on stall
|
|
1004
|
+
*
|
|
1005
|
+
* @public
|
|
1006
|
+
*/
|
|
1007
|
+
const SVTA_BUFFER_NUDGE_ON_STALL = 2027;
|
|
1008
|
+
/**
|
|
1009
|
+
* SVTA 2 [Playback] 028: Out of memory
|
|
1010
|
+
*
|
|
1011
|
+
* @public
|
|
1012
|
+
*/
|
|
1013
|
+
const SVTA_OUT_OF_MEMORY = 2028;
|
|
1014
|
+
/**
|
|
1015
|
+
* SVTA 2 [Playback] 029: Segment load error
|
|
1016
|
+
*
|
|
1017
|
+
* @public
|
|
1018
|
+
*/
|
|
1019
|
+
const SVTA_SEGMENT_LOAD_ERROR = 2029;
|
|
1020
|
+
/**
|
|
1021
|
+
* SVTA 2 [Playback] 030: Segment timeout error
|
|
1022
|
+
*
|
|
1023
|
+
* @public
|
|
1024
|
+
*/
|
|
1025
|
+
const SVTA_SEGMENT_TIMEOUT_ERROR = 2030;
|
|
1026
|
+
/**
|
|
1027
|
+
* SVTA 2 [Playback] 031: Initialization segment error
|
|
1028
|
+
*
|
|
1029
|
+
* @public
|
|
1030
|
+
*/
|
|
1031
|
+
const SVTA_INITIALIZATION_SEGMENT_ERROR = 2031;
|
|
1032
|
+
/**
|
|
1033
|
+
* SVTA 2 [Playback] 032: Time sync failed error
|
|
1034
|
+
*
|
|
1035
|
+
* @public
|
|
1036
|
+
*/
|
|
1037
|
+
const SVTA_TIME_SYNC_ERROR = 2032;
|
|
1038
|
+
/**
|
|
1039
|
+
* SVTA 2 [Playback] 033: Fragment load error
|
|
1040
|
+
*
|
|
1041
|
+
* @public
|
|
1042
|
+
*/
|
|
1043
|
+
const SVTA_FRAGMENT_LOAD_ERROR = 2033;
|
|
1044
|
+
/**
|
|
1045
|
+
* SVTA 2 [Playback] 034: Fragment timeout error
|
|
1046
|
+
*
|
|
1047
|
+
* @public
|
|
1048
|
+
*/
|
|
1049
|
+
const SVTA_FRAGMENT_TIMEOUT_ERROR = 2034;
|
|
1050
|
+
/**
|
|
1051
|
+
* SVTA 2 [Playback] 035: Live timeshifting content out of bounds
|
|
1052
|
+
*
|
|
1053
|
+
* @public
|
|
1054
|
+
*/
|
|
1055
|
+
const SVTA_LIVE_TIMESHIFT_OUT_OF_BOUNDS = 2035;
|
|
1056
|
+
/**
|
|
1057
|
+
* SVTA 2 [Playback] 036: Switched to higher latency
|
|
1058
|
+
*
|
|
1059
|
+
* @public
|
|
1060
|
+
*/
|
|
1061
|
+
const SVTA_SWITCHED_TO_HIGHER_LATENCY = 2036;
|
|
1062
|
+
/**
|
|
1063
|
+
* SVTA 2 [Playback] 037: Unable to switch to fullscreen
|
|
1064
|
+
*
|
|
1065
|
+
* @public
|
|
1066
|
+
*/
|
|
1067
|
+
const SVTA_FULLSCREEN_ERROR = 2037;
|
|
1068
|
+
/**
|
|
1069
|
+
* SVTA 2 [Playback] 038: Unable to present picture-in-picture
|
|
1070
|
+
*
|
|
1071
|
+
* @public
|
|
1072
|
+
*/
|
|
1073
|
+
const SVTA_PICTURE_IN_PICTURE_ERROR = 2038;
|
|
1074
|
+
/**
|
|
1075
|
+
* SVTA 2 [Playback] 039: Manifest feature unsupported
|
|
1076
|
+
*
|
|
1077
|
+
* @public
|
|
1078
|
+
*/
|
|
1079
|
+
const SVTA_MANIFEST_FEATURE_UNSUPPORTED = 2039;
|
|
1080
|
+
/**
|
|
1081
|
+
* SVTA 2 [Playback] 040: Content steering manifest load error
|
|
1082
|
+
*
|
|
1083
|
+
* @public
|
|
1084
|
+
*/
|
|
1085
|
+
const SVTA_CONTENT_STEERING_MANIFEST_LOAD_ERROR = 2040;
|
|
1086
|
+
/**
|
|
1087
|
+
* SVTA 2 [Playback] 041: Unable to parse content steering manifest
|
|
1088
|
+
*
|
|
1089
|
+
* @public
|
|
1090
|
+
*/
|
|
1091
|
+
const SVTA_CONTENT_STEERING_MANIFEST_PARSE_ERROR = 2041;
|
|
1092
|
+
/**
|
|
1093
|
+
* SVTA standardized error codes in the Playback category (2xxx): the
|
|
1094
|
+
* player is unable to sustain the playback experience.
|
|
1095
|
+
*
|
|
1096
|
+
* When signalling a buffer event for a track the player cannot identify,
|
|
1097
|
+
* the spec designates `VIDEO_BUFFER_UNDERRUN` (2001) as the default.
|
|
1098
|
+
*
|
|
1099
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
1100
|
+
*
|
|
1101
|
+
* @enum
|
|
1102
|
+
*
|
|
1103
|
+
* @public
|
|
1104
|
+
*/
|
|
1105
|
+
const SvtaPlaybackErrorCode = {
|
|
1106
|
+
UNKNOWN: SVTA_PLAYBACK_UNKNOWN,
|
|
1107
|
+
VIDEO_BUFFER_UNDERRUN: SVTA_VIDEO_BUFFER_UNDERRUN,
|
|
1108
|
+
AUDIO_BUFFER_UNDERRUN: SVTA_AUDIO_BUFFER_UNDERRUN,
|
|
1109
|
+
VIDEO_BUFFERING_TIMEOUT: SVTA_VIDEO_BUFFERING_TIMEOUT,
|
|
1110
|
+
AUDIO_BUFFERING_TIMEOUT: SVTA_AUDIO_BUFFERING_TIMEOUT,
|
|
1111
|
+
MANIFEST_PARSE_ERROR: SVTA_MANIFEST_PARSE_ERROR,
|
|
1112
|
+
SEGMENT_PARSE_ERROR: SVTA_SEGMENT_PARSE_ERROR,
|
|
1113
|
+
VIDEO_DECODE_ERROR: SVTA_VIDEO_DECODE_ERROR,
|
|
1114
|
+
AUDIO_DECODE_ERROR: SVTA_AUDIO_DECODE_ERROR,
|
|
1115
|
+
VIDEO_DROPPED_FRAMES_EXCEEDED: SVTA_VIDEO_DROPPED_FRAMES_EXCEEDED,
|
|
1116
|
+
PLAYHEAD_EXCEEDS_CONTENT_DURATION: SVTA_PLAYHEAD_EXCEEDS_CONTENT_DURATION,
|
|
1117
|
+
NO_SUPPORTED_VIDEO_TRACK: SVTA_NO_SUPPORTED_VIDEO_TRACK,
|
|
1118
|
+
NO_SUPPORTED_AUDIO_TRACK: SVTA_NO_SUPPORTED_AUDIO_TRACK,
|
|
1119
|
+
NO_MATCHING_CODEC: SVTA_NO_MATCHING_CODEC,
|
|
1120
|
+
PRIMARY_MANIFEST_LOAD_ERROR: SVTA_PRIMARY_MANIFEST_LOAD_ERROR,
|
|
1121
|
+
PRIMARY_MANIFEST_LOAD_TIMEOUT: SVTA_PRIMARY_MANIFEST_LOAD_TIMEOUT,
|
|
1122
|
+
MANIFEST_TRACK_PARSE_ERROR: SVTA_MANIFEST_TRACK_PARSE_ERROR,
|
|
1123
|
+
SECONDARY_MANIFEST_LOAD_ERROR: SVTA_SECONDARY_MANIFEST_LOAD_ERROR,
|
|
1124
|
+
SECONDARY_MANIFEST_PARSE_ERROR: SVTA_SECONDARY_MANIFEST_PARSE_ERROR,
|
|
1125
|
+
TRACK_SWITCH_ERROR: SVTA_TRACK_SWITCH_ERROR,
|
|
1126
|
+
TRACK_LOAD_ERROR: SVTA_TRACK_LOAD_ERROR,
|
|
1127
|
+
REMUX_ERROR: SVTA_REMUX_ERROR,
|
|
1128
|
+
BUFFER_INITIALIZATION_ERROR: SVTA_BUFFER_INITIALIZATION_ERROR,
|
|
1129
|
+
BUFFER_APPEND_ERROR: SVTA_BUFFER_APPEND_ERROR,
|
|
1130
|
+
BUFFER_REMOVE_ERROR: SVTA_BUFFER_REMOVE_ERROR,
|
|
1131
|
+
BUFFER_FULL_ERROR: SVTA_BUFFER_FULL_ERROR,
|
|
1132
|
+
BUFFER_SEEK_OVER_HOLE: SVTA_BUFFER_SEEK_OVER_HOLE,
|
|
1133
|
+
BUFFER_NUDGE_ON_STALL: SVTA_BUFFER_NUDGE_ON_STALL,
|
|
1134
|
+
OUT_OF_MEMORY: SVTA_OUT_OF_MEMORY,
|
|
1135
|
+
SEGMENT_LOAD_ERROR: SVTA_SEGMENT_LOAD_ERROR,
|
|
1136
|
+
SEGMENT_TIMEOUT_ERROR: SVTA_SEGMENT_TIMEOUT_ERROR,
|
|
1137
|
+
INITIALIZATION_SEGMENT_ERROR: SVTA_INITIALIZATION_SEGMENT_ERROR,
|
|
1138
|
+
TIME_SYNC_ERROR: SVTA_TIME_SYNC_ERROR,
|
|
1139
|
+
FRAGMENT_LOAD_ERROR: SVTA_FRAGMENT_LOAD_ERROR,
|
|
1140
|
+
FRAGMENT_TIMEOUT_ERROR: SVTA_FRAGMENT_TIMEOUT_ERROR,
|
|
1141
|
+
LIVE_TIMESHIFT_OUT_OF_BOUNDS: SVTA_LIVE_TIMESHIFT_OUT_OF_BOUNDS,
|
|
1142
|
+
SWITCHED_TO_HIGHER_LATENCY: SVTA_SWITCHED_TO_HIGHER_LATENCY,
|
|
1143
|
+
FULLSCREEN_ERROR: SVTA_FULLSCREEN_ERROR,
|
|
1144
|
+
PICTURE_IN_PICTURE_ERROR: SVTA_PICTURE_IN_PICTURE_ERROR,
|
|
1145
|
+
MANIFEST_FEATURE_UNSUPPORTED: SVTA_MANIFEST_FEATURE_UNSUPPORTED,
|
|
1146
|
+
CONTENT_STEERING_MANIFEST_LOAD_ERROR: SVTA_CONTENT_STEERING_MANIFEST_LOAD_ERROR,
|
|
1147
|
+
CONTENT_STEERING_MANIFEST_PARSE_ERROR: SVTA_CONTENT_STEERING_MANIFEST_PARSE_ERROR
|
|
1148
|
+
};
|
|
1149
|
+
|
|
1150
|
+
//#endregion
|
|
1151
|
+
//#region src/SvtaRemotePlayErrorCode.ts
|
|
1152
|
+
/**
|
|
1153
|
+
* SVTA 6 [Remote Play] 000: Unknown remote play error
|
|
1154
|
+
*
|
|
1155
|
+
* @public
|
|
1156
|
+
*/
|
|
1157
|
+
const SVTA_REMOTE_PLAY_UNKNOWN = 6e3;
|
|
1158
|
+
/**
|
|
1159
|
+
* SVTA 6 [Remote Play] 001: Sender unable to initialize remote play
|
|
1160
|
+
*
|
|
1161
|
+
* @public
|
|
1162
|
+
*/
|
|
1163
|
+
const SVTA_SENDER_INITIALIZATION_ERROR = 6001;
|
|
1164
|
+
/**
|
|
1165
|
+
* SVTA 6 [Remote Play] 002: Sender unable to make a connection to the receiver
|
|
1166
|
+
*
|
|
1167
|
+
* @public
|
|
1168
|
+
*/
|
|
1169
|
+
const SVTA_SENDER_CONNECTION_ERROR = 6002;
|
|
1170
|
+
/**
|
|
1171
|
+
* SVTA 6 [Remote Play] 003: Receiver does not exist or is unavailable
|
|
1172
|
+
*
|
|
1173
|
+
* @public
|
|
1174
|
+
*/
|
|
1175
|
+
const SVTA_RECEIVER_UNAVAILABLE = 6003;
|
|
1176
|
+
/**
|
|
1177
|
+
* SVTA 6 [Remote Play] 004: Receiver refused remote play connection
|
|
1178
|
+
*
|
|
1179
|
+
* @public
|
|
1180
|
+
*/
|
|
1181
|
+
const SVTA_RECEIVER_CONNECTION_REFUSED = 6004;
|
|
1182
|
+
/**
|
|
1183
|
+
* SVTA 6 [Remote Play] 005: Connection to the receiver lost
|
|
1184
|
+
*
|
|
1185
|
+
* @public
|
|
1186
|
+
*/
|
|
1187
|
+
const SVTA_RECEIVER_CONNECTION_LOST = 6005;
|
|
1188
|
+
/**
|
|
1189
|
+
* SVTA 6 [Remote Play] 006: Connection to the sender lost
|
|
1190
|
+
*
|
|
1191
|
+
* @public
|
|
1192
|
+
*/
|
|
1193
|
+
const SVTA_SENDER_CONNECTION_LOST = 6006;
|
|
1194
|
+
/**
|
|
1195
|
+
* SVTA 6 [Remote Play] 007: Receiver is not supported to playback this stream
|
|
1196
|
+
*
|
|
1197
|
+
* @public
|
|
1198
|
+
*/
|
|
1199
|
+
const SVTA_RECEIVER_UNSUPPORTED_STREAM = 6007;
|
|
1200
|
+
/**
|
|
1201
|
+
* SVTA 6 [Remote Play] 008: Receiver is already in remote play
|
|
1202
|
+
*
|
|
1203
|
+
* @public
|
|
1204
|
+
*/
|
|
1205
|
+
const SVTA_RECEIVER_ALREADY_IN_REMOTE_PLAY = 6008;
|
|
1206
|
+
/**
|
|
1207
|
+
* SVTA 6 [Remote Play] 009: Receiver terminated playback because of an error
|
|
1208
|
+
*
|
|
1209
|
+
* @public
|
|
1210
|
+
*/
|
|
1211
|
+
const SVTA_RECEIVER_PLAYBACK_ERROR = 6009;
|
|
1212
|
+
/**
|
|
1213
|
+
* SVTA standardized error codes in the Remote Play category (6xxx): the
|
|
1214
|
+
* framework supporting play out of the stream on a second device.
|
|
1215
|
+
*
|
|
1216
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
1217
|
+
*
|
|
1218
|
+
* @enum
|
|
1219
|
+
*
|
|
1220
|
+
* @public
|
|
1221
|
+
*/
|
|
1222
|
+
const SvtaRemotePlayErrorCode = {
|
|
1223
|
+
UNKNOWN: SVTA_REMOTE_PLAY_UNKNOWN,
|
|
1224
|
+
SENDER_INITIALIZATION_ERROR: SVTA_SENDER_INITIALIZATION_ERROR,
|
|
1225
|
+
SENDER_CONNECTION_ERROR: SVTA_SENDER_CONNECTION_ERROR,
|
|
1226
|
+
RECEIVER_UNAVAILABLE: SVTA_RECEIVER_UNAVAILABLE,
|
|
1227
|
+
RECEIVER_CONNECTION_REFUSED: SVTA_RECEIVER_CONNECTION_REFUSED,
|
|
1228
|
+
RECEIVER_CONNECTION_LOST: SVTA_RECEIVER_CONNECTION_LOST,
|
|
1229
|
+
SENDER_CONNECTION_LOST: SVTA_SENDER_CONNECTION_LOST,
|
|
1230
|
+
RECEIVER_UNSUPPORTED_STREAM: SVTA_RECEIVER_UNSUPPORTED_STREAM,
|
|
1231
|
+
RECEIVER_ALREADY_IN_REMOTE_PLAY: SVTA_RECEIVER_ALREADY_IN_REMOTE_PLAY,
|
|
1232
|
+
RECEIVER_PLAYBACK_ERROR: SVTA_RECEIVER_PLAYBACK_ERROR
|
|
1233
|
+
};
|
|
1234
|
+
|
|
1235
|
+
//#endregion
|
|
1236
|
+
//#region src/SvtaUnknownErrorCode.ts
|
|
1237
|
+
/**
|
|
1238
|
+
* SVTA 0 [Unknown] 999: Unknown error
|
|
1239
|
+
*
|
|
1240
|
+
* @public
|
|
1241
|
+
*/
|
|
1242
|
+
const SVTA_UNKNOWN = 999;
|
|
1243
|
+
/**
|
|
1244
|
+
* SVTA standardized error code in the Unknown category: the error is
|
|
1245
|
+
* entirely unclassified. `999` is the only code below 1000, so fully
|
|
1246
|
+
* unknown errors can be filtered by returning codes less than 1000.
|
|
1247
|
+
*
|
|
1248
|
+
* @see {@link https://www.svta.org/product/svta2070/ | SVTA2070: Standardized Error Codes}
|
|
1249
|
+
*
|
|
1250
|
+
* @enum
|
|
1251
|
+
*
|
|
1252
|
+
* @public
|
|
1253
|
+
*/
|
|
1254
|
+
const SvtaUnknownErrorCode = { UNKNOWN: SVTA_UNKNOWN };
|
|
1255
|
+
|
|
1256
|
+
//#endregion
|
|
1257
|
+
//#region src/vastErrorToSvtaErrorCode.ts
|
|
1258
|
+
/**
|
|
1259
|
+
* Embed an IAB VAST error code into the SVTA Advertising error category,
|
|
1260
|
+
* per the external code embedding rule of SVTA2070. VAST error 301
|
|
1261
|
+
* becomes 7301. The four-digit VAST error 1009 (empty VAST response)
|
|
1262
|
+
* does not fit a three-digit index, so SVTA2070 maps it to 7999.
|
|
1263
|
+
*
|
|
1264
|
+
* Values outside the valid VAST error code range (integers 100-999, or
|
|
1265
|
+
* 1009) return the unknown advertising error code (7000) rather than
|
|
1266
|
+
* throwing, so error reporting paths cannot fail.
|
|
1267
|
+
*
|
|
1268
|
+
* @param vastError - An IAB VAST error code (100-999, or 1009).
|
|
1269
|
+
* @returns The SVTA advertising error code embedding the VAST error.
|
|
1270
|
+
*
|
|
1271
|
+
* @public
|
|
1272
|
+
*
|
|
1273
|
+
* @example
|
|
1274
|
+
* {@includeCode ../test/vastErrorToSvtaErrorCode.test.ts#example}
|
|
1275
|
+
*/
|
|
1276
|
+
function vastErrorToSvtaErrorCode(vastError) {
|
|
1277
|
+
const base = SvtaErrorCategory.ADVERTISING * 1e3;
|
|
1278
|
+
if (vastError === 1009) return base + 999;
|
|
1279
|
+
if (!Number.isInteger(vastError) || vastError < 100 || vastError > 999) return base;
|
|
1280
|
+
return base + vastError;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
//#endregion
|
|
1284
|
+
export { SVTA_ACCESSIBILITY_UNKNOWN, SVTA_ADVERTISING_UNKNOWN, SVTA_AD_BLOCKER_DETECTED, SVTA_AD_TYPE_MISMATCH, SVTA_AUDIO_BUFFERING_TIMEOUT, SVTA_AUDIO_BUFFER_UNDERRUN, SVTA_AUDIO_DECODE_ERROR, SVTA_AUDIO_DESCRIPTION_EXCEEDS_CONTENT_DURATION, SVTA_BAD_LICENSE_REQUEST, SVTA_BUFFER_APPEND_ERROR, SVTA_BUFFER_FULL_ERROR, SVTA_BUFFER_INITIALIZATION_ERROR, SVTA_BUFFER_NUDGE_ON_STALL, SVTA_BUFFER_REMOVE_ERROR, SVTA_BUFFER_SEEK_OVER_HOLE, SVTA_CDN_UNAUTHORIZED, SVTA_COMPANION_AD_ERROR, SVTA_COMPANION_AD_FETCH_ERROR, SVTA_COMPANION_DIMENSION_MISMATCH, SVTA_CONCURRENT_STREAM_LIMIT_EXCEEDED, SVTA_CONTENT_PROTECTION_UNKNOWN, SVTA_CONTENT_STEERING_MANIFEST_LOAD_ERROR, SVTA_CONTENT_STEERING_MANIFEST_PARSE_ERROR, SVTA_CUSTOM_UNKNOWN, SVTA_DOWNLOAD_ERROR, SVTA_DRM_CERTIFICATE_ERROR, SVTA_DRM_CONFIGURATION_MISSING, SVTA_DRM_INITIALIZATION_ERROR, SVTA_DRM_SESSION_ERROR, SVTA_DURATION_MISMATCH, SVTA_EMPTY_VAST_RESPONSE, SVTA_EMPTY_WRAPPER_RESPONSE, SVTA_ENTITLEMENT_REFUSED, SVTA_ERROR_CATEGORY_ACCESSIBILITY, SVTA_ERROR_CATEGORY_ADVERTISING, SVTA_ERROR_CATEGORY_CONTENT_PROTECTION, SVTA_ERROR_CATEGORY_CUSTOM, SVTA_ERROR_CATEGORY_MEDIA_CONTENT, SVTA_ERROR_CATEGORY_NETWORK, SVTA_ERROR_CATEGORY_PLAYBACK, SVTA_ERROR_CATEGORY_REMOTE_PLAY, SVTA_ERROR_CATEGORY_UNKNOWN, SVTA_FRAGMENT_LOAD_ERROR, SVTA_FRAGMENT_TIMEOUT_ERROR, SVTA_FULLSCREEN_ERROR, SVTA_GEO_RESTRICTED, SVTA_HOST_RESOLUTION_ERROR, SVTA_HTTP_TIMEOUT, SVTA_INITIALIZATION_SEGMENT_ERROR, SVTA_INSUFFICIENT_BANDWIDTH, SVTA_INSUFFICIENT_DRM_ROBUSTNESS, SVTA_INSUFFICIENT_OUTPUT_PROTECTION, SVTA_INTERACTIVE_CREATIVE_ERROR, SVTA_INVALID_ACCESS_TOKEN, SVTA_INVALID_COMPOSITION_TRACK_SEGMENT_TIME, SVTA_INVALID_HTTP_CONTENT_TYPE, SVTA_INVALID_MANIFEST, SVTA_INVALID_URI, SVTA_KEY_LOAD_ERROR, SVTA_LICENSE_EXPIRED, SVTA_LICENSE_REQUEST_GENERATION_ERROR, SVTA_LICENSE_RESPONSE_REJECTED, SVTA_LICENSE_SERVER_TIMEOUT, SVTA_LINEARITY_MISMATCH, SVTA_LINEAR_AD_ERROR, SVTA_LIVE_TIMESHIFT_OUT_OF_BOUNDS, SVTA_MANIFEST_FEATURE_UNSUPPORTED, SVTA_MANIFEST_PARSE_ERROR, SVTA_MANIFEST_TRACK_PARSE_ERROR, SVTA_MAX_RETRIES_EXCEEDED, SVTA_MEDIA_CONTENT_UNKNOWN, SVTA_MEDIA_FILE_DISPLAY_ERROR, SVTA_MEDIA_FILE_NOT_FOUND, SVTA_MEDIA_FILE_UNAVAILABLE, SVTA_MEDIA_UNAVAILABLE, SVTA_MEZZANINE_DOWNLOADING, SVTA_MEZZANINE_MISSING, SVTA_MISALIGNED_TRACK_DURATION, SVTA_NETWORK_UNKNOWN, SVTA_NONLINEAR_AD_ERROR, SVTA_NONLINEAR_AD_FETCH_ERROR, SVTA_NONLINEAR_DIMENSION_MISMATCH, SVTA_NO_MATCHING_CODEC, SVTA_NO_NETWORK_CONNECTION, SVTA_NO_SUPPORTED_AUDIO_TRACK, SVTA_NO_SUPPORTED_MEDIA_TYPE, SVTA_NO_SUPPORTED_VIDEO_TRACK, SVTA_OUT_OF_MEMORY, SVTA_PERMISSION_REJECTED, SVTA_PERSISTENT_SESSION_ERROR, SVTA_PICTURE_IN_PICTURE_ERROR, SVTA_PLAYBACK_UNKNOWN, SVTA_PLAYHEAD_EXCEEDS_CONTENT_DURATION, SVTA_PRIMARY_MANIFEST_LOAD_ERROR, SVTA_PRIMARY_MANIFEST_LOAD_TIMEOUT, SVTA_RECEIVER_ALREADY_IN_REMOTE_PLAY, SVTA_RECEIVER_CONNECTION_LOST, SVTA_RECEIVER_CONNECTION_REFUSED, SVTA_RECEIVER_PLAYBACK_ERROR, SVTA_RECEIVER_UNAVAILABLE, SVTA_RECEIVER_UNSUPPORTED_STREAM, SVTA_REJECTED_AD, SVTA_REMOTE_PLAY_UNKNOWN, SVTA_REMUX_ERROR, SVTA_REQUIRED_COMPANION_AD_ERROR, SVTA_RESOURCE_DENIED, SVTA_RESOURCE_NOT_FOUND, SVTA_SECONDARY_MANIFEST_LOAD_ERROR, SVTA_SECONDARY_MANIFEST_PARSE_ERROR, SVTA_SEGMENT_DECRYPTION_ERROR, SVTA_SEGMENT_EXCEEDS_TRACK_BITRATE, SVTA_SEGMENT_LOAD_ERROR, SVTA_SEGMENT_PARSE_ERROR, SVTA_SEGMENT_TIMEOUT_ERROR, SVTA_SENDER_CONNECTION_ERROR, SVTA_SENDER_CONNECTION_LOST, SVTA_SENDER_INITIALIZATION_ERROR, SVTA_SIZE_MISMATCH, SVTA_SWITCHED_TO_HIGHER_LATENCY, SVTA_TIMED_TEXT_EXCEEDS_CONTENT_DURATION, SVTA_TIMED_TEXT_PARSE_ERROR, SVTA_TIMED_TEXT_RENDER_ERROR, SVTA_TIME_SYNC_ERROR, SVTA_TRACK_LOAD_ERROR, SVTA_TRACK_NOT_AVAILABLE, SVTA_TRACK_SWITCH_ERROR, SVTA_UNDEFINED_VAST_ERROR, SVTA_UNKNOWN, SVTA_UNSUPPORTED_AUDIO_FORMAT, SVTA_UNSUPPORTED_DRM_SYSTEM, SVTA_UNSUPPORTED_NONLINEAR_AD, SVTA_UNSUPPORTED_TEXT_FORMAT, SVTA_UNSUPPORTED_URI_SCHEME, SVTA_UNSUPPORTED_VIDEO_FORMAT, SVTA_VAST_PARSE_ERROR, SVTA_VAST_SCHEMA_VALIDATION_ERROR, SVTA_VAST_VERSION_UNSUPPORTED, SVTA_VERIFICATION_ERROR, SVTA_VIDEO_BUFFERING_TIMEOUT, SVTA_VIDEO_BUFFER_UNDERRUN, SVTA_VIDEO_DECODE_ERROR, SVTA_VIDEO_DROPPED_FRAMES_EXCEEDED, SVTA_VPAID_ERROR, SVTA_WRAPPER_ERROR, SVTA_WRAPPER_LIMIT_REACHED, SVTA_WRAPPER_TIMEOUT, SvtaAccessibilityErrorCode, SvtaAdvertisingErrorCode, SvtaContentProtectionErrorCode, SvtaCustomErrorCode, SvtaErrorCategory, SvtaMediaContentErrorCode, SvtaNetworkErrorCode, SvtaPlaybackErrorCode, SvtaRemotePlayErrorCode, SvtaUnknownErrorCode, getSvtaErrorCategory, getSvtaErrorIndex, httpStatusToSvtaErrorCode, vastErrorToSvtaErrorCode };
|
|
1285
|
+
//# sourceMappingURL=index.js.map
|