@imferno/schema 0.1.2

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.
@@ -0,0 +1,478 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "SourceAsset",
4
+ "type": "object",
5
+ "required": [
6
+ "audioLanguages",
7
+ "audioType",
8
+ "captionLanguages",
9
+ "contentKind",
10
+ "contentTitle",
11
+ "duration",
12
+ "editRate",
13
+ "forcedNarrativeLanguages",
14
+ "frameRate",
15
+ "sequences",
16
+ "subtitleLanguages",
17
+ "territory",
18
+ "tracks",
19
+ "videoDynamicRange",
20
+ "videoQuality"
21
+ ],
22
+ "properties": {
23
+ "audioLanguages": {
24
+ "type": "array",
25
+ "items": {
26
+ "type": "string"
27
+ }
28
+ },
29
+ "audioType": {
30
+ "$ref": "#/definitions/AudioType"
31
+ },
32
+ "captionLanguages": {
33
+ "type": "array",
34
+ "items": {
35
+ "type": "string"
36
+ }
37
+ },
38
+ "contentKind": {
39
+ "type": "string"
40
+ },
41
+ "contentTitle": {
42
+ "type": "string"
43
+ },
44
+ "duration": {
45
+ "type": "string"
46
+ },
47
+ "editRate": {
48
+ "type": "string"
49
+ },
50
+ "forcedNarrativeLanguages": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "string"
54
+ }
55
+ },
56
+ "frameRate": {
57
+ "type": "string"
58
+ },
59
+ "sequences": {
60
+ "type": "array",
61
+ "items": {
62
+ "$ref": "#/definitions/Sequence"
63
+ }
64
+ },
65
+ "subtitleLanguages": {
66
+ "type": "array",
67
+ "items": {
68
+ "type": "string"
69
+ }
70
+ },
71
+ "territory": {
72
+ "type": "string"
73
+ },
74
+ "tracks": {
75
+ "$ref": "#/definitions/Tracks"
76
+ },
77
+ "videoDynamicRange": {
78
+ "$ref": "#/definitions/VideoDynamicRange"
79
+ },
80
+ "videoQuality": {
81
+ "$ref": "#/definitions/VideoQuality"
82
+ }
83
+ },
84
+ "definitions": {
85
+ "AudioContentKind": {
86
+ "oneOf": [
87
+ {
88
+ "description": "Primary",
89
+ "type": "string",
90
+ "enum": [
91
+ "PRM"
92
+ ]
93
+ },
94
+ {
95
+ "description": "Visually Impaired",
96
+ "type": "string",
97
+ "enum": [
98
+ "VI"
99
+ ]
100
+ }
101
+ ]
102
+ },
103
+ "AudioTrack": {
104
+ "type": "object",
105
+ "required": [
106
+ "audioContentKind",
107
+ "channelCount",
108
+ "fragmentDuration",
109
+ "language",
110
+ "trackDuration",
111
+ "trackIdentifier",
112
+ "trackNumber",
113
+ "type"
114
+ ],
115
+ "properties": {
116
+ "atmosType": {
117
+ "type": [
118
+ "string",
119
+ "null"
120
+ ]
121
+ },
122
+ "audioContentKind": {
123
+ "$ref": "#/definitions/AudioContentKind"
124
+ },
125
+ "channelCount": {
126
+ "type": "integer",
127
+ "format": "uint32",
128
+ "minimum": 0.0
129
+ },
130
+ "fragmentDuration": {
131
+ "type": "string"
132
+ },
133
+ "language": {
134
+ "type": "string"
135
+ },
136
+ "mcaTagName": {
137
+ "description": "MCA tag name, e.g. \"5.1\", \"7.1\", \"Atmos\", \"Lt-Rt\"",
138
+ "type": [
139
+ "string",
140
+ "null"
141
+ ]
142
+ },
143
+ "mcaTagSymbol": {
144
+ "description": "MCA tag symbol, e.g. \"sg51\", \"sg71\", \"sgAtmos\", \"sgLtRt\"",
145
+ "type": [
146
+ "string",
147
+ "null"
148
+ ]
149
+ },
150
+ "sequenceNumber": {
151
+ "type": [
152
+ "integer",
153
+ "null"
154
+ ],
155
+ "format": "uint32",
156
+ "minimum": 0.0
157
+ },
158
+ "sequenceTrackId": {
159
+ "type": [
160
+ "string",
161
+ "null"
162
+ ]
163
+ },
164
+ "trackDuration": {
165
+ "type": "integer",
166
+ "format": "uint64",
167
+ "minimum": 0.0
168
+ },
169
+ "trackFile": {
170
+ "type": [
171
+ "string",
172
+ "null"
173
+ ]
174
+ },
175
+ "trackIdentifier": {
176
+ "type": "string"
177
+ },
178
+ "trackNumber": {
179
+ "type": "integer",
180
+ "format": "uint32",
181
+ "minimum": 0.0
182
+ },
183
+ "type": {
184
+ "$ref": "#/definitions/AudioType"
185
+ }
186
+ }
187
+ },
188
+ "AudioType": {
189
+ "type": "string",
190
+ "enum": [
191
+ "STEREO",
192
+ "DOLBY_DIGITAL",
193
+ "DOLBY_DIGITAL_PLUS",
194
+ "DOLBY_ATMOS"
195
+ ]
196
+ },
197
+ "Hdr10Metadata": {
198
+ "type": "object",
199
+ "required": [
200
+ "maxCll",
201
+ "maxFall"
202
+ ],
203
+ "properties": {
204
+ "maxCll": {
205
+ "type": "integer",
206
+ "format": "uint32",
207
+ "minimum": 0.0
208
+ },
209
+ "maxFall": {
210
+ "type": "integer",
211
+ "format": "uint32",
212
+ "minimum": 0.0
213
+ }
214
+ }
215
+ },
216
+ "Sequence": {
217
+ "type": "object",
218
+ "required": [
219
+ "id",
220
+ "segmentId",
221
+ "sequenceNumber",
222
+ "sequenceResources",
223
+ "trackId",
224
+ "type"
225
+ ],
226
+ "properties": {
227
+ "id": {
228
+ "type": "string"
229
+ },
230
+ "segmentId": {
231
+ "type": "string"
232
+ },
233
+ "sequenceNumber": {
234
+ "type": "integer",
235
+ "format": "uint32",
236
+ "minimum": 0.0
237
+ },
238
+ "sequenceResources": {
239
+ "type": "array",
240
+ "items": {
241
+ "$ref": "#/definitions/SequenceResource"
242
+ }
243
+ },
244
+ "trackId": {
245
+ "type": "string"
246
+ },
247
+ "type": {
248
+ "type": "string"
249
+ }
250
+ }
251
+ },
252
+ "SequenceResource": {
253
+ "type": "object",
254
+ "required": [
255
+ "id",
256
+ "intrinsicDuration",
257
+ "sourceDuration",
258
+ "sourceEncoding",
259
+ "trackFileId"
260
+ ],
261
+ "properties": {
262
+ "annotation": {
263
+ "type": [
264
+ "string",
265
+ "null"
266
+ ]
267
+ },
268
+ "editRate": {
269
+ "type": [
270
+ "string",
271
+ "null"
272
+ ]
273
+ },
274
+ "entryPoint": {
275
+ "type": [
276
+ "integer",
277
+ "null"
278
+ ],
279
+ "format": "uint64",
280
+ "minimum": 0.0
281
+ },
282
+ "id": {
283
+ "type": "string"
284
+ },
285
+ "intrinsicDuration": {
286
+ "type": "integer",
287
+ "format": "uint64",
288
+ "minimum": 0.0
289
+ },
290
+ "sourceDuration": {
291
+ "type": "integer",
292
+ "format": "uint64",
293
+ "minimum": 0.0
294
+ },
295
+ "sourceEncoding": {
296
+ "type": "string"
297
+ },
298
+ "trackFileId": {
299
+ "type": "string"
300
+ }
301
+ }
302
+ },
303
+ "TimedTextTrack": {
304
+ "type": "object",
305
+ "required": [
306
+ "fragmentDuration",
307
+ "language",
308
+ "trackDuration",
309
+ "trackIdentifier",
310
+ "trackNumber"
311
+ ],
312
+ "properties": {
313
+ "fragmentDuration": {
314
+ "type": "string"
315
+ },
316
+ "language": {
317
+ "type": "string"
318
+ },
319
+ "sequenceNumber": {
320
+ "type": [
321
+ "integer",
322
+ "null"
323
+ ],
324
+ "format": "uint32",
325
+ "minimum": 0.0
326
+ },
327
+ "sequenceTrackId": {
328
+ "type": [
329
+ "string",
330
+ "null"
331
+ ]
332
+ },
333
+ "trackDuration": {
334
+ "type": "integer",
335
+ "format": "uint64",
336
+ "minimum": 0.0
337
+ },
338
+ "trackIdentifier": {
339
+ "type": "string"
340
+ },
341
+ "trackNumber": {
342
+ "type": "integer",
343
+ "format": "uint32",
344
+ "minimum": 0.0
345
+ }
346
+ }
347
+ },
348
+ "Tracks": {
349
+ "type": "object",
350
+ "required": [
351
+ "AUDIO",
352
+ "CAPTIONS",
353
+ "FORCED_NARRATIVE",
354
+ "SUBTITLES",
355
+ "VIDEO"
356
+ ],
357
+ "properties": {
358
+ "AUDIO": {
359
+ "type": "array",
360
+ "items": {
361
+ "$ref": "#/definitions/AudioTrack"
362
+ }
363
+ },
364
+ "CAPTIONS": {
365
+ "type": "array",
366
+ "items": {
367
+ "$ref": "#/definitions/TimedTextTrack"
368
+ }
369
+ },
370
+ "FORCED_NARRATIVE": {
371
+ "type": "array",
372
+ "items": {
373
+ "$ref": "#/definitions/TimedTextTrack"
374
+ }
375
+ },
376
+ "SUBTITLES": {
377
+ "type": "array",
378
+ "items": {
379
+ "$ref": "#/definitions/TimedTextTrack"
380
+ }
381
+ },
382
+ "VIDEO": {
383
+ "type": "array",
384
+ "items": {
385
+ "$ref": "#/definitions/VideoTrack"
386
+ }
387
+ }
388
+ }
389
+ },
390
+ "VideoDynamicRange": {
391
+ "type": "string",
392
+ "enum": [
393
+ "SDR",
394
+ "HDR10",
395
+ "HDR_DOLBY_VISION"
396
+ ]
397
+ },
398
+ "VideoQuality": {
399
+ "type": "string",
400
+ "enum": [
401
+ "SD",
402
+ "HD",
403
+ "UHD"
404
+ ]
405
+ },
406
+ "VideoTrack": {
407
+ "type": "object",
408
+ "required": [
409
+ "dynamicRange",
410
+ "fragmentDuration",
411
+ "height",
412
+ "quality",
413
+ "trackDuration",
414
+ "trackIdentifier",
415
+ "trackNumber",
416
+ "width"
417
+ ],
418
+ "properties": {
419
+ "dynamicRange": {
420
+ "$ref": "#/definitions/VideoDynamicRange"
421
+ },
422
+ "fragmentDuration": {
423
+ "type": "string"
424
+ },
425
+ "hdr10Metadata": {
426
+ "anyOf": [
427
+ {
428
+ "$ref": "#/definitions/Hdr10Metadata"
429
+ },
430
+ {
431
+ "type": "null"
432
+ }
433
+ ]
434
+ },
435
+ "height": {
436
+ "type": "integer",
437
+ "format": "uint32",
438
+ "minimum": 0.0
439
+ },
440
+ "quality": {
441
+ "$ref": "#/definitions/VideoQuality"
442
+ },
443
+ "sequenceNumber": {
444
+ "type": [
445
+ "integer",
446
+ "null"
447
+ ],
448
+ "format": "uint32",
449
+ "minimum": 0.0
450
+ },
451
+ "sequenceTrackId": {
452
+ "type": [
453
+ "string",
454
+ "null"
455
+ ]
456
+ },
457
+ "trackDuration": {
458
+ "type": "integer",
459
+ "format": "uint64",
460
+ "minimum": 0.0
461
+ },
462
+ "trackIdentifier": {
463
+ "type": "string"
464
+ },
465
+ "trackNumber": {
466
+ "type": "integer",
467
+ "format": "uint32",
468
+ "minimum": 0.0
469
+ },
470
+ "width": {
471
+ "type": "integer",
472
+ "format": "uint32",
473
+ "minimum": 0.0
474
+ }
475
+ }
476
+ }
477
+ }
478
+ }