@norskvideo/norsk-studio-built-ins 1.27.0-2025-07-06-336ac6c6 → 1.27.0-2025-07-08-02bba8fe

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.
Files changed (106) hide show
  1. package/client/info.js +226 -7
  2. package/client/style.css +8 -0
  3. package/lib/info.js +3 -1
  4. package/lib/info.js.map +1 -1
  5. package/lib/input.rtmp/info.d.ts +20 -1
  6. package/lib/input.rtmp/runtime.d.ts +20 -1
  7. package/lib/input.rtmp/types.d.ts +47 -27
  8. package/lib/input.rtmp/types.source.yaml +319 -0
  9. package/lib/input.rtmp/types.yaml +204 -131
  10. package/lib/input.silence/info.d.ts +4 -2
  11. package/lib/input.silence/types.d.ts +4 -7
  12. package/lib/input.silence/types.source.yaml +27 -0
  13. package/lib/input.silence/types.yaml +80 -4
  14. package/lib/input.srt-caller/info.d.ts +41 -4
  15. package/lib/input.srt-caller/types.d.ts +51 -43
  16. package/lib/input.srt-caller/types.source.yaml +70 -0
  17. package/lib/input.srt-caller/types.yaml +136 -24
  18. package/lib/input.srt-listener/info.d.ts +41 -4
  19. package/lib/input.srt-listener/runtime.d.ts +34 -3
  20. package/lib/input.srt-listener/types.d.ts +74 -44
  21. package/lib/input.srt-listener/types.source.yaml +329 -0
  22. package/lib/input.srt-listener/types.yaml +257 -132
  23. package/lib/input.udp-ts/info.d.ts +20 -1
  24. package/lib/input.udp-ts/types.d.ts +20 -25
  25. package/lib/input.udp-ts/types.source.yaml +40 -0
  26. package/lib/input.udp-ts/types.yaml +79 -3
  27. package/lib/input.videoTestCard/info.d.ts +8 -2
  28. package/lib/input.videoTestCard/types.d.ts +8 -10
  29. package/lib/input.videoTestCard/types.source.yaml +32 -0
  30. package/lib/input.videoTestCard/types.yaml +28 -6
  31. package/lib/input.whip/info.d.ts +7 -1
  32. package/lib/input.whip/types.d.ts +44 -28
  33. package/lib/input.whip/types.source.yaml +190 -0
  34. package/lib/input.whip/types.yaml +177 -104
  35. package/lib/output.autoCmaf/info.js +20 -0
  36. package/lib/output.autoCmaf/info.js.map +1 -1
  37. package/lib/output.autoCmaf/runtime.d.ts +2 -1
  38. package/lib/output.autoCmaf/runtime.js +35 -7
  39. package/lib/output.autoCmaf/runtime.js.map +1 -1
  40. package/lib/output.autoCmaf/types.d.ts +1 -0
  41. package/lib/output.autoCmaf/types.yaml +3 -0
  42. package/lib/output.cmafMultiVariant/runtime.js +2 -2
  43. package/lib/output.cmafMultiVariant/runtime.js.map +1 -1
  44. package/lib/output.cmafPlaylist/info.js +19 -0
  45. package/lib/output.cmafPlaylist/info.js.map +1 -1
  46. package/lib/output.cmafPlaylist/runtime.js +6 -3
  47. package/lib/output.cmafPlaylist/runtime.js.map +1 -1
  48. package/lib/output.cmafPlaylist/types.d.ts +1 -0
  49. package/lib/output.cmafPlaylist/types.yaml +3 -0
  50. package/lib/output.preview/runtime.js +2 -2
  51. package/lib/output.preview/runtime.js.map +1 -1
  52. package/lib/output.statistics/info.d.ts +172 -2
  53. package/lib/output.statistics/types.d.ts +400 -72
  54. package/lib/output.statistics/types.source.yaml +119 -0
  55. package/lib/output.statistics/types.yaml +331 -91
  56. package/lib/output.tsMediaPlaylist/runtime.js +2 -2
  57. package/lib/output.tsMediaPlaylist/runtime.js.map +1 -1
  58. package/lib/output.tsMultiVariant/runtime.js +1 -1
  59. package/lib/output.tsMultiVariant/runtime.js.map +1 -1
  60. package/lib/output.whep/runtime.js +3 -1
  61. package/lib/output.whep/runtime.js.map +1 -1
  62. package/lib/processor.audioEncoder/info.d.ts +10 -2
  63. package/lib/processor.audioEncoder/types.d.ts +23 -12
  64. package/lib/processor.audioEncoder/types.source.yaml +78 -0
  65. package/lib/processor.audioEncoder/types.yaml +101 -29
  66. package/lib/processor.fixedLadder/info.d.ts +182 -7
  67. package/lib/processor.fixedLadder/types.d.ts +619 -19
  68. package/lib/processor.fixedLadder/types.source.yaml +462 -0
  69. package/lib/processor.fixedLadder/types.yaml +334 -115
  70. package/lib/processor.makeProgram/info.d.ts +1 -0
  71. package/lib/processor.makeProgram/info.js +9 -0
  72. package/lib/processor.makeProgram/info.js.map +1 -1
  73. package/lib/processor.makeProgram/runtime.d.ts +2 -1
  74. package/lib/processor.makeProgram/runtime.js +14 -1
  75. package/lib/processor.makeProgram/runtime.js.map +1 -1
  76. package/lib/processor.makeProgram/types.d.ts +1 -0
  77. package/lib/processor.makeProgram/types.yaml +3 -1
  78. package/lib/processor.smartSingleMediaSwitch/info.d.ts +12 -4
  79. package/lib/processor.smartSingleMediaSwitch/types.d.ts +22 -18
  80. package/lib/processor.smartSingleMediaSwitch/types.source.yaml +115 -0
  81. package/lib/processor.smartSingleMediaSwitch/types.yaml +145 -50
  82. package/lib/processor.smartSourceSwitch/info.d.ts +12 -4
  83. package/lib/processor.smartSourceSwitch/types.d.ts +22 -18
  84. package/lib/processor.smartSourceSwitch/types.source.yaml +97 -0
  85. package/lib/processor.smartSourceSwitch/types.yaml +142 -48
  86. package/lib/processor.syncExternalAudio/info.d.ts +1 -0
  87. package/lib/processor.syncExternalAudio/types.d.ts +1 -0
  88. package/lib/processor.zoomTo/info.d.ts +54 -0
  89. package/lib/processor.zoomTo/info.js +172 -0
  90. package/lib/processor.zoomTo/info.js.map +1 -0
  91. package/lib/processor.zoomTo/runtime-types.d.ts +11 -0
  92. package/lib/processor.zoomTo/runtime-types.js +3 -0
  93. package/lib/processor.zoomTo/runtime-types.js.map +1 -0
  94. package/lib/processor.zoomTo/runtime.d.ts +45 -0
  95. package/lib/processor.zoomTo/runtime.js +307 -0
  96. package/lib/processor.zoomTo/runtime.js.map +1 -0
  97. package/lib/processor.zoomTo/types.d.ts +182 -0
  98. package/lib/processor.zoomTo/types.js +3 -0
  99. package/lib/processor.zoomTo/types.js.map +1 -0
  100. package/lib/processor.zoomTo/types.yaml +356 -0
  101. package/lib/test/auto-cmaf.js +7 -4
  102. package/lib/test/auto-cmaf.js.map +1 -1
  103. package/lib/test/zoom-to.d.ts +1 -0
  104. package/lib/test/zoom-to.js +345 -0
  105. package/lib/test/zoom-to.js.map +1 -0
  106. package/package.json +3 -3
@@ -2,7 +2,6 @@ openapi: 3.0.0
2
2
  info:
3
3
  title: SRT Listener Input Component
4
4
  version: 1.0.0
5
-
6
5
  paths:
7
6
  /disconnect:
8
7
  post:
@@ -15,16 +14,17 @@ paths:
15
14
  application/json:
16
15
  schema:
17
16
  type: object
18
- required: ['streamId']
17
+ required:
18
+ - streamId
19
19
  properties:
20
20
  streamId:
21
21
  type: string
22
22
  description: The ID of the stream to disconnect
23
23
  example: camera1
24
24
  responses:
25
- 204:
25
+ "204":
26
26
  description: The stream was successfully disconnected
27
- 404:
27
+ "404":
28
28
  description: The specified stream was not found
29
29
  content:
30
30
  application/json:
@@ -37,7 +37,7 @@ paths:
37
37
  details:
38
38
  type: string
39
39
  description: Additional error details
40
- 500:
40
+ "500":
41
41
  description: Failed to disconnect the stream
42
42
  content:
43
43
  application/json:
@@ -50,7 +50,6 @@ paths:
50
50
  details:
51
51
  type: string
52
52
  description: Additional error details
53
-
54
53
  /enable:
55
54
  post:
56
55
  summary: Re-enables a disabled SRT stream
@@ -62,16 +61,17 @@ paths:
62
61
  application/json:
63
62
  schema:
64
63
  type: object
65
- required: ['streamId']
64
+ required:
65
+ - streamId
66
66
  properties:
67
67
  streamId:
68
68
  type: string
69
69
  description: The Id of the stream to re-enable
70
70
  example: camera1
71
71
  responses:
72
- 204:
72
+ "204":
73
73
  description: The stream was successfully re-enabled
74
- 400:
74
+ "400":
75
75
  description: Stream is already connected or invalid request
76
76
  content:
77
77
  application/json:
@@ -84,7 +84,7 @@ paths:
84
84
  details:
85
85
  type: string
86
86
  description: Additional error details
87
- 500:
87
+ "500":
88
88
  description: Failed to re-enable stream
89
89
  content:
90
90
  application/json:
@@ -100,7 +100,7 @@ paths:
100
100
  /disable:
101
101
  post:
102
102
  summary: Disables an SRT stream by id
103
- description:
103
+ description: null
104
104
  x-route-type: instance
105
105
  requestBody:
106
106
  description: The stream to disable
@@ -108,16 +108,17 @@ paths:
108
108
  application/json:
109
109
  schema:
110
110
  type: object
111
- required: ['streamId']
111
+ required:
112
+ - streamId
112
113
  properties:
113
114
  streamId:
114
115
  type: string
115
116
  description: The Id of the stream to disable
116
117
  example: camera1
117
118
  responses:
118
- 204:
119
+ "204":
119
120
  description: The stream was successfully disabled
120
- 400:
121
+ "400":
121
122
  description: The stream isn't known about, or invalid request
122
123
  content:
123
124
  application/json:
@@ -130,7 +131,7 @@ paths:
130
131
  details:
131
132
  type: string
132
133
  description: Additional error details
133
- 500:
134
+ "500":
134
135
  description: Failed to disable stream
135
136
  content:
136
137
  application/json:
@@ -143,7 +144,6 @@ paths:
143
144
  details:
144
145
  type: string
145
146
  description: Additional error details
146
-
147
147
  components:
148
148
  schemas:
149
149
  Config:
@@ -171,7 +171,9 @@ components:
171
171
  description: Passphrase for encryption
172
172
  sourceNames:
173
173
  type: string
174
- enum: ["permissive", "strict"]
174
+ enum:
175
+ - permissive
176
+ - strict
175
177
  description: Stream ID assignment mode
176
178
  streamIds:
177
179
  type: array
@@ -179,9 +181,106 @@ components:
179
181
  type: string
180
182
  description: List of expected stream IDs
181
183
  socketOptions:
182
- $ref: '../shared/srt.yaml#/components/schemas/SocketOptions'
184
+ type: object
185
+ description: SRT socket configuration options
186
+ properties:
187
+ peerLatency:
188
+ type: number
189
+ description: The latency value provided by the sender side as a minimum value
190
+ for the receiver (SRTO_PEERLATENCY)
191
+ receiveLatency:
192
+ type: number
193
+ description: The latency value in the receiving direction of the socket
194
+ (SRTO_RCVLATENCY)
195
+ inputBandwidth:
196
+ type: number
197
+ description: Input bandwidth (SRTO_INPUTBW)
198
+ overheadBandwidth:
199
+ type: number
200
+ description: Overhead bandwidth (SRTO_OHEADBW)
201
+ maxBandwidth:
202
+ type: number
203
+ description: Max bandwidth (SRTO_MAXBW)
183
204
  streamMappings:
184
- $ref: '../../../core/src/types/base.yml#/components/schemas/StreamMappingConfiguration'
205
+ type: object
206
+ description: Configuration for mapping input streams to output streams
207
+ properties:
208
+ streams:
209
+ type: array
210
+ items:
211
+ type: object
212
+ description: Individual stream mapping entry
213
+ properties:
214
+ outputKey:
215
+ type: object
216
+ properties:
217
+ streamId:
218
+ type: integer
219
+ programNumber:
220
+ type: integer
221
+ sourceName:
222
+ type: string
223
+ renditionName:
224
+ type: string
225
+ required:
226
+ - streamId
227
+ - programNumber
228
+ - sourceName
229
+ - renditionName
230
+ displayName:
231
+ type: string
232
+ description: Optional display name for this stream
233
+ media:
234
+ type: string
235
+ enum:
236
+ - video
237
+ - audio
238
+ - subtitle
239
+ - ancillary
240
+ - playlist
241
+ description: Media type for stream mapping
242
+ filters:
243
+ type: array
244
+ items:
245
+ oneOf:
246
+ - type: object
247
+ properties:
248
+ type:
249
+ type: string
250
+ enum:
251
+ - sourceName
252
+ - language
253
+ - codec
254
+ - renditionName
255
+ value:
256
+ type: string
257
+ required:
258
+ - type
259
+ - value
260
+ - type: object
261
+ properties:
262
+ type:
263
+ type: string
264
+ enum:
265
+ - streamId
266
+ - programNumber
267
+ value:
268
+ type: integer
269
+ required:
270
+ - type
271
+ - value
272
+ description: Optional conditions for stream selection
273
+ missingBehaviour:
274
+ type: string
275
+ enum:
276
+ - fill
277
+ - skip
278
+ description: Behavior when no matching stream is found
279
+ required:
280
+ - outputKey
281
+ - media
282
+ required:
283
+ - streams
185
284
  required:
186
285
  - id
187
286
  - displayName
@@ -190,7 +289,6 @@ components:
190
289
  - socketOptions
191
290
  - port
192
291
  - host
193
-
194
292
  State:
195
293
  type: object
196
294
  properties:
@@ -202,8 +300,39 @@ components:
202
300
  type: array
203
301
  items:
204
302
  type: string
205
- metrics:
206
- $ref: '../shared/srt.yaml#/components/schemas/SrtListenerMetrics'
303
+ metrics: &a4
304
+ type: object
305
+ description: Metrics for SRT listener connections
306
+ properties:
307
+ connectionCount:
308
+ type: number
309
+ description: Number of active connections
310
+ packetsLost:
311
+ type: array
312
+ items:
313
+ type: number
314
+ description: Array of packets lost per connection
315
+ packetsResent:
316
+ type: array
317
+ items:
318
+ type: number
319
+ description: Array of packets resent per connection
320
+ packetsSent:
321
+ type: array
322
+ items:
323
+ type: number
324
+ description: Array of packets sent per connection
325
+ packetsReceived:
326
+ type: array
327
+ items:
328
+ type: number
329
+ description: Array of packets received per connection
330
+ required:
331
+ - connectionCount
332
+ - packetsLost
333
+ - packetsResent
334
+ - packetsSent
335
+ - packetsReceived
207
336
  names:
208
337
  type: array
209
338
  items:
@@ -213,117 +342,113 @@ components:
213
342
  - disabledStreams
214
343
  - metrics
215
344
  - names
216
-
217
345
  Commands:
218
346
  oneOf:
219
- - $ref: '#/components/schemas/DisableSourceCommand'
220
- - $ref: '#/components/schemas/EnableSourceCommand'
221
- - $ref: '#/components/schemas/ResetSourceCommand'
222
-
223
- DisableSourceCommand:
224
- type: object
225
- properties:
226
- type:
227
- type: string
228
- enum: ["disable-source"]
229
- streamId:
230
- type: string
231
- required:
232
- - type
233
- - streamId
234
-
235
- EnableSourceCommand:
236
- type: object
237
- properties:
238
- type:
239
- type: string
240
- enum: ["enable-source"]
241
- streamId:
242
- type: string
243
- required:
244
- - type
245
- - streamId
246
-
247
- ResetSourceCommand:
248
- type: object
249
- properties:
250
- type:
251
- type: string
252
- enum: ["reset-source"]
253
- streamId:
254
- type: string
255
- required:
256
- - type
257
- - streamId
258
-
347
+ - &a1
348
+ type: object
349
+ properties:
350
+ type:
351
+ type: string
352
+ enum:
353
+ - disable-source
354
+ streamId:
355
+ type: string
356
+ required:
357
+ - type
358
+ - streamId
359
+ - &a2
360
+ type: object
361
+ properties:
362
+ type:
363
+ type: string
364
+ enum:
365
+ - enable-source
366
+ streamId:
367
+ type: string
368
+ required:
369
+ - type
370
+ - streamId
371
+ - &a3
372
+ type: object
373
+ properties:
374
+ type:
375
+ type: string
376
+ enum:
377
+ - reset-source
378
+ streamId:
379
+ type: string
380
+ required:
381
+ - type
382
+ - streamId
383
+ DisableSourceCommand: *a1
384
+ EnableSourceCommand: *a2
385
+ ResetSourceCommand: *a3
259
386
  Events:
260
387
  oneOf:
261
- - $ref: '#/components/schemas/SourceConnectedEvent'
262
- - $ref: '#/components/schemas/SourceDisconnectedEvent'
263
- - $ref: '#/components/schemas/SourceEnabledEvent'
264
- - $ref: '#/components/schemas/SourceDisabledEvent'
265
- - $ref: '#/components/schemas/MetricsUpdatedEvent'
266
-
267
- SourceConnectedEvent:
268
- type: object
269
- properties:
270
- type:
271
- type: string
272
- enum: ["source-connected"]
273
- streamId:
274
- type: string
275
- index:
276
- type: number
277
- required:
278
- - type
279
- - streamId
280
- - index
281
-
282
- SourceDisconnectedEvent:
283
- type: object
284
- properties:
285
- type:
286
- type: string
287
- enum: ["source-disconnected"]
288
- streamId:
289
- type: string
290
- required:
291
- - type
292
- - streamId
293
-
294
- SourceEnabledEvent:
295
- type: object
296
- properties:
297
- type:
298
- type: string
299
- enum: ["source-enabled"]
300
- streamId:
301
- type: string
302
- required:
303
- - type
304
- - streamId
305
-
306
- SourceDisabledEvent:
307
- type: object
308
- properties:
309
- type:
310
- type: string
311
- enum: ["source-disabled"]
312
- streamId:
313
- type: string
314
- required:
315
- - type
316
- - streamId
317
-
318
- MetricsUpdatedEvent:
319
- type: object
320
- properties:
321
- type:
322
- type: string
323
- enum: ["metrics-updated"]
324
- metrics:
325
- $ref: '../shared/srt.yaml#/components/schemas/SrtListenerMetrics'
326
- required:
327
- - type
328
- - metrics
329
-
388
+ - &a5
389
+ type: object
390
+ properties:
391
+ type:
392
+ type: string
393
+ enum:
394
+ - source-connected
395
+ streamId:
396
+ type: string
397
+ index:
398
+ type: number
399
+ required:
400
+ - type
401
+ - streamId
402
+ - index
403
+ - &a6
404
+ type: object
405
+ properties:
406
+ type:
407
+ type: string
408
+ enum:
409
+ - source-disconnected
410
+ streamId:
411
+ type: string
412
+ required:
413
+ - type
414
+ - streamId
415
+ - &a7
416
+ type: object
417
+ properties:
418
+ type:
419
+ type: string
420
+ enum:
421
+ - source-enabled
422
+ streamId:
423
+ type: string
424
+ required:
425
+ - type
426
+ - streamId
427
+ - &a8
428
+ type: object
429
+ properties:
430
+ type:
431
+ type: string
432
+ enum:
433
+ - source-disabled
434
+ streamId:
435
+ type: string
436
+ required:
437
+ - type
438
+ - streamId
439
+ - &a9
440
+ type: object
441
+ properties:
442
+ type:
443
+ type: string
444
+ enum:
445
+ - metrics-updated
446
+ metrics: *a4
447
+ required:
448
+ - type
449
+ - metrics
450
+ SourceConnectedEvent: *a5
451
+ SourceDisconnectedEvent: *a6
452
+ SourceEnabledEvent: *a7
453
+ SourceDisabledEvent: *a8
454
+ MetricsUpdatedEvent: *a9
@@ -8,5 +8,24 @@ export default function ({ defineComponent, singleAvStreamMapping, singleAvStrea
8
8
  rtpDecapsulate?: boolean;
9
9
  host: string;
10
10
  port: number;
11
- streamMappings?: import("./types").components["schemas"]["StreamMappingConfiguration"];
11
+ streamMappings?: {
12
+ streams: {
13
+ outputKey: {
14
+ streamId: number;
15
+ programNumber: number;
16
+ sourceName: string;
17
+ renditionName: string;
18
+ };
19
+ displayName?: string;
20
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
21
+ filters?: ({
22
+ type: "sourceName" | "language" | "codec" | "renditionName";
23
+ value: string;
24
+ } | {
25
+ type: "streamId" | "programNumber";
26
+ value: number;
27
+ })[];
28
+ missingBehaviour?: "fill" | "skip";
29
+ }[];
30
+ };
12
31
  }, object, object, object>;
@@ -11,31 +11,26 @@ export interface components {
11
11
  rtpDecapsulate?: boolean;
12
12
  host: string;
13
13
  port: number;
14
- streamMappings?: components["schemas"]["StreamMappingConfiguration"];
15
- };
16
- StreamKey: {
17
- streamId: number;
18
- programNumber: number;
19
- sourceName: string;
20
- renditionName: string;
21
- };
22
- MediaType: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
23
- StreamMappingFilter: {
24
- type: "sourceName" | "language" | "codec" | "renditionName";
25
- value: string;
26
- } | {
27
- type: "streamId" | "programNumber";
28
- value: number;
29
- };
30
- StreamMappingEntry: {
31
- outputKey: components["schemas"]["StreamKey"];
32
- displayName?: string;
33
- media: components["schemas"]["MediaType"];
34
- filters?: components["schemas"]["StreamMappingFilter"][];
35
- missingBehaviour?: "fill" | "skip";
36
- };
37
- StreamMappingConfiguration: {
38
- streams: components["schemas"]["StreamMappingEntry"][];
14
+ streamMappings?: {
15
+ streams: {
16
+ outputKey: {
17
+ streamId: number;
18
+ programNumber: number;
19
+ sourceName: string;
20
+ renditionName: string;
21
+ };
22
+ displayName?: string;
23
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
24
+ filters?: ({
25
+ type: "sourceName" | "language" | "codec" | "renditionName";
26
+ value: string;
27
+ } | {
28
+ type: "streamId" | "programNumber";
29
+ value: number;
30
+ })[];
31
+ missingBehaviour?: "fill" | "skip";
32
+ }[];
33
+ };
39
34
  };
40
35
  };
41
36
  responses: never;
@@ -0,0 +1,40 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: UDP TS Input
4
+ version: 1.0.0
5
+
6
+ paths: {}
7
+
8
+ components:
9
+ schemas:
10
+ Config:
11
+ type: object
12
+ required:
13
+ - id
14
+ - displayName
15
+ - host
16
+ - port
17
+ properties:
18
+ id:
19
+ type: string
20
+ displayName:
21
+ type: string
22
+ notes:
23
+ type: string
24
+ interface:
25
+ type: string
26
+ description: Optional interface to bind to
27
+ timeout:
28
+ type: number
29
+ description: Timeout in milliseconds before determining the input is closed
30
+ rtpDecapsulate:
31
+ type: boolean
32
+ description: Whether to expect the input TS to be encapsulated in RTP via RFC 2250
33
+ host:
34
+ type: string
35
+ description: The IP or hostname of the remote server
36
+ port:
37
+ type: number
38
+ description: The port the remote server is listening on
39
+ streamMappings:
40
+ $ref: '../../../core/src/types/base.yml#/components/schemas/StreamMappingConfiguration'