@norskvideo/norsk-studio-built-ins 1.27.0-2025-07-09-1c530503 → 1.27.0-2025-07-10-5b6e3f99

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,247 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: File Input Component
4
+ version: 1.0.0
5
+
6
+ paths:
7
+ /play:
8
+ post:
9
+ summary: Start playing a file
10
+ description: Dynamically creates a file input node and starts playback
11
+ x-route-type: instance
12
+ requestBody:
13
+ description: The file to play
14
+ content:
15
+ application/json:
16
+ schema:
17
+ type: object
18
+ required: ['filePath']
19
+ properties:
20
+ filePath:
21
+ type: string
22
+ description: Absolute path to the file to play
23
+ example: /media/video.mp4
24
+ loop:
25
+ type: boolean
26
+ description: Whether to loop the file continuously
27
+ responses:
28
+ 200:
29
+ description: Playback started successfully
30
+ content:
31
+ application/json:
32
+ schema:
33
+ type: object
34
+ properties:
35
+ status:
36
+ type: string
37
+ enum: ["playing"]
38
+ filePath:
39
+ type: string
40
+ 400:
41
+ description: Invalid request or already playing
42
+ content:
43
+ application/json:
44
+ schema:
45
+ type: object
46
+ properties:
47
+ error:
48
+ type: string
49
+ description: A description of the error
50
+ 500:
51
+ description: Failed to start playback
52
+ content:
53
+ application/json:
54
+ schema:
55
+ type: object
56
+ properties:
57
+ error:
58
+ type: string
59
+ description: A description of the error
60
+
61
+ /stop:
62
+ post:
63
+ summary: Stop current playback
64
+ description: Stops the current file playback and cleans up resources
65
+ x-route-type: instance
66
+ responses:
67
+ 200:
68
+ description: Playback stopped successfully
69
+ content:
70
+ application/json:
71
+ schema:
72
+ type: object
73
+ properties:
74
+ status:
75
+ type: string
76
+ enum: ["stopped"]
77
+ 500:
78
+ description: Failed to stop playback
79
+ content:
80
+ application/json:
81
+ schema:
82
+ type: object
83
+ properties:
84
+ error:
85
+ type: string
86
+ description: A description of the error
87
+
88
+ /status:
89
+ get:
90
+ summary: Get current playback status
91
+ description: Returns the current state of the file input component
92
+ x-route-type: instance
93
+ responses:
94
+ 200:
95
+ description: Current status
96
+ content:
97
+ application/json:
98
+ schema:
99
+ $ref: '#/components/schemas/State'
100
+
101
+ components:
102
+ schemas:
103
+ Config:
104
+ type: object
105
+ properties:
106
+ id:
107
+ type: string
108
+ description: Component ID
109
+ displayName:
110
+ type: string
111
+ description: Component display name
112
+ notes:
113
+ type: string
114
+ description: Optional notes about the component
115
+ sourceName:
116
+ type: string
117
+ description: Source name for output streams
118
+ initialFilename:
119
+ type: string
120
+ description: Optional file to start playing automatically on component startup
121
+ initialLoop:
122
+ type: boolean
123
+ description: Whether to loop the initial file continuously
124
+ streamMappings:
125
+ $ref: '../../../core/src/types/base.yml#/components/schemas/StreamMappingConfiguration'
126
+ required:
127
+ - id
128
+ - displayName
129
+ - sourceName
130
+
131
+ State:
132
+ type: object
133
+ properties:
134
+ status:
135
+ type: string
136
+ enum: ["idle", "playing", "error"]
137
+ description: Current playback status
138
+ currentFile:
139
+ type: string
140
+ nullable: true
141
+ description: Path to currently playing file
142
+ isLooping:
143
+ type: boolean
144
+ description: Whether the current file is looping
145
+ error:
146
+ type: string
147
+ nullable: true
148
+ description: Error message if status is error
149
+ required:
150
+ - status
151
+ - currentFile
152
+ - isLooping
153
+ - error
154
+
155
+ Commands:
156
+ oneOf:
157
+ - $ref: '#/components/schemas/PlayCommand'
158
+ - $ref: '#/components/schemas/StopCommand'
159
+
160
+ PlayCommand:
161
+ type: object
162
+ properties:
163
+ type:
164
+ type: string
165
+ enum: ["play"]
166
+ filePath:
167
+ type: string
168
+ description: Absolute path to the file to play
169
+ loop:
170
+ type: boolean
171
+ description: Whether to loop the file continuously
172
+ required:
173
+ - type
174
+ - filePath
175
+
176
+ StopCommand:
177
+ type: object
178
+ properties:
179
+ type:
180
+ type: string
181
+ enum: ["stop"]
182
+ required:
183
+ - type
184
+
185
+ Events:
186
+ oneOf:
187
+ - $ref: '#/components/schemas/PlaybackStartedEvent'
188
+ - $ref: '#/components/schemas/PlaybackCompletedEvent'
189
+ - $ref: '#/components/schemas/PlaybackStoppedEvent'
190
+ - $ref: '#/components/schemas/PlaybackErrorEvent'
191
+
192
+ PlaybackStartedEvent:
193
+ type: object
194
+ properties:
195
+ type:
196
+ type: string
197
+ enum: ["playback-started"]
198
+ filePath:
199
+ type: string
200
+ description: Path to the file that started playing
201
+ isLooping:
202
+ type: boolean
203
+ description: Whether the file is playing in loop mode
204
+ required:
205
+ - type
206
+ - filePath
207
+ - isLooping
208
+
209
+ PlaybackCompletedEvent:
210
+ type: object
211
+ properties:
212
+ type:
213
+ type: string
214
+ enum: ["playback-completed"]
215
+ filePath:
216
+ type: string
217
+ description: Path to the file that completed
218
+ required:
219
+ - type
220
+ - filePath
221
+
222
+ PlaybackStoppedEvent:
223
+ type: object
224
+ properties:
225
+ type:
226
+ type: string
227
+ enum: ["playback-stopped"]
228
+ required:
229
+ - type
230
+
231
+ PlaybackErrorEvent:
232
+ type: object
233
+ properties:
234
+ type:
235
+ type: string
236
+ enum: ["playback-error"]
237
+ error:
238
+ type: string
239
+ description: Error description
240
+ filePath:
241
+ type: string
242
+ nullable: true
243
+ description: Path to the file that caused the error
244
+ required:
245
+ - type
246
+ - error
247
+
@@ -0,0 +1,324 @@
1
+ # This file has been generated, please edit types.source.yaml instead
2
+
3
+ openapi: 3.0.0
4
+ info:
5
+ title: File Input Component
6
+ version: 1.0.0
7
+ paths:
8
+ /play:
9
+ post:
10
+ summary: Start playing a file
11
+ description: Dynamically creates a file input node and starts playback
12
+ x-route-type: instance
13
+ requestBody:
14
+ description: The file to play
15
+ content:
16
+ application/json:
17
+ schema:
18
+ type: object
19
+ required:
20
+ - filePath
21
+ properties:
22
+ filePath:
23
+ type: string
24
+ description: Absolute path to the file to play
25
+ example: /media/video.mp4
26
+ loop:
27
+ type: boolean
28
+ description: Whether to loop the file continuously
29
+ responses:
30
+ "200":
31
+ description: Playback started successfully
32
+ content:
33
+ application/json:
34
+ schema:
35
+ type: object
36
+ properties:
37
+ status:
38
+ type: string
39
+ enum:
40
+ - playing
41
+ filePath:
42
+ type: string
43
+ "400":
44
+ description: Invalid request or already playing
45
+ content:
46
+ application/json:
47
+ schema:
48
+ type: object
49
+ properties:
50
+ error:
51
+ type: string
52
+ description: A description of the error
53
+ "500":
54
+ description: Failed to start playback
55
+ content:
56
+ application/json:
57
+ schema:
58
+ type: object
59
+ properties:
60
+ error:
61
+ type: string
62
+ description: A description of the error
63
+ /stop:
64
+ post:
65
+ summary: Stop current playback
66
+ description: Stops the current file playback and cleans up resources
67
+ x-route-type: instance
68
+ responses:
69
+ "200":
70
+ description: Playback stopped successfully
71
+ content:
72
+ application/json:
73
+ schema:
74
+ type: object
75
+ properties:
76
+ status:
77
+ type: string
78
+ enum:
79
+ - stopped
80
+ "500":
81
+ description: Failed to stop playback
82
+ content:
83
+ application/json:
84
+ schema:
85
+ type: object
86
+ properties:
87
+ error:
88
+ type: string
89
+ description: A description of the error
90
+ /status:
91
+ get:
92
+ summary: Get current playback status
93
+ description: Returns the current state of the file input component
94
+ x-route-type: instance
95
+ responses:
96
+ "200":
97
+ description: Current status
98
+ content:
99
+ application/json:
100
+ schema: &a1
101
+ type: object
102
+ properties:
103
+ status:
104
+ type: string
105
+ enum:
106
+ - idle
107
+ - playing
108
+ - error
109
+ description: Current playback status
110
+ currentFile:
111
+ type: string
112
+ nullable: true
113
+ description: Path to currently playing file
114
+ isLooping:
115
+ type: boolean
116
+ description: Whether the current file is looping
117
+ error:
118
+ type: string
119
+ nullable: true
120
+ description: Error message if status is error
121
+ required:
122
+ - status
123
+ - currentFile
124
+ - isLooping
125
+ - error
126
+ components:
127
+ schemas:
128
+ Config:
129
+ type: object
130
+ properties:
131
+ id:
132
+ type: string
133
+ description: Component ID
134
+ displayName:
135
+ type: string
136
+ description: Component display name
137
+ notes:
138
+ type: string
139
+ description: Optional notes about the component
140
+ sourceName:
141
+ type: string
142
+ description: Source name for output streams
143
+ initialFilename:
144
+ type: string
145
+ description: Optional file to start playing automatically on component startup
146
+ initialLoop:
147
+ type: boolean
148
+ description: Whether to loop the initial file continuously
149
+ streamMappings:
150
+ type: object
151
+ description: Configuration for mapping input streams to output streams
152
+ properties:
153
+ streams:
154
+ type: array
155
+ items:
156
+ type: object
157
+ description: Individual stream mapping entry
158
+ properties:
159
+ outputKey:
160
+ type: object
161
+ properties:
162
+ streamId:
163
+ type: integer
164
+ programNumber:
165
+ type: integer
166
+ sourceName:
167
+ type: string
168
+ renditionName:
169
+ type: string
170
+ required:
171
+ - streamId
172
+ - programNumber
173
+ - sourceName
174
+ - renditionName
175
+ displayName:
176
+ type: string
177
+ description: Optional display name for this stream
178
+ media:
179
+ type: string
180
+ enum:
181
+ - video
182
+ - audio
183
+ - subtitle
184
+ - ancillary
185
+ - playlist
186
+ description: Media type for stream mapping
187
+ filters:
188
+ type: array
189
+ items:
190
+ oneOf:
191
+ - type: object
192
+ properties:
193
+ type:
194
+ type: string
195
+ enum:
196
+ - sourceName
197
+ - language
198
+ - codec
199
+ - renditionName
200
+ value:
201
+ type: string
202
+ required:
203
+ - type
204
+ - value
205
+ - type: object
206
+ properties:
207
+ type:
208
+ type: string
209
+ enum:
210
+ - streamId
211
+ - programNumber
212
+ value:
213
+ type: integer
214
+ required:
215
+ - type
216
+ - value
217
+ description: Optional conditions for stream selection
218
+ missingBehaviour:
219
+ type: string
220
+ enum:
221
+ - fill
222
+ - skip
223
+ description: Behavior when no matching stream is found
224
+ required:
225
+ - outputKey
226
+ - media
227
+ required:
228
+ - streams
229
+ required:
230
+ - id
231
+ - displayName
232
+ - sourceName
233
+ State: *a1
234
+ Commands:
235
+ oneOf:
236
+ - &a2
237
+ type: object
238
+ properties:
239
+ type:
240
+ type: string
241
+ enum:
242
+ - play
243
+ filePath:
244
+ type: string
245
+ description: Absolute path to the file to play
246
+ loop:
247
+ type: boolean
248
+ description: Whether to loop the file continuously
249
+ required:
250
+ - type
251
+ - filePath
252
+ - &a3
253
+ type: object
254
+ properties:
255
+ type:
256
+ type: string
257
+ enum:
258
+ - stop
259
+ required:
260
+ - type
261
+ PlayCommand: *a2
262
+ StopCommand: *a3
263
+ Events:
264
+ oneOf:
265
+ - &a4
266
+ type: object
267
+ properties:
268
+ type:
269
+ type: string
270
+ enum:
271
+ - playback-started
272
+ filePath:
273
+ type: string
274
+ description: Path to the file that started playing
275
+ isLooping:
276
+ type: boolean
277
+ description: Whether the file is playing in loop mode
278
+ required:
279
+ - type
280
+ - filePath
281
+ - isLooping
282
+ - &a5
283
+ type: object
284
+ properties:
285
+ type:
286
+ type: string
287
+ enum:
288
+ - playback-completed
289
+ filePath:
290
+ type: string
291
+ description: Path to the file that completed
292
+ required:
293
+ - type
294
+ - filePath
295
+ - &a6
296
+ type: object
297
+ properties:
298
+ type:
299
+ type: string
300
+ enum:
301
+ - playback-stopped
302
+ required:
303
+ - type
304
+ - &a7
305
+ type: object
306
+ properties:
307
+ type:
308
+ type: string
309
+ enum:
310
+ - playback-error
311
+ error:
312
+ type: string
313
+ description: Error description
314
+ filePath:
315
+ type: string
316
+ nullable: true
317
+ description: Path to the file that caused the error
318
+ required:
319
+ - type
320
+ - error
321
+ PlaybackStartedEvent: *a4
322
+ PlaybackCompletedEvent: *a5
323
+ PlaybackStoppedEvent: *a6
324
+ PlaybackErrorEvent: *a7
@@ -66,7 +66,7 @@ function FullscreenView({ state, config }) {
66
66
  else if (element.canPlayType('application/vnd.apple.mpegurl')) {
67
67
  element.src = url;
68
68
  }
69
- }, [id, url]);
69
+ }, [config.__global?.ezdrmConfig?.pX, config.drmProvider, id, state.drmToken, url]);
70
70
  if (!url)
71
71
  return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: "..." });
72
72
  { }
@@ -1 +1 @@
1
- {"version":3,"file":"fullscreen.js","sourceRoot":"","sources":["../../src/output.autoCmaf/fullscreen.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fullscreen.js","sourceRoot":"","sources":["../../src/output.autoCmaf/fullscreen.tsx"],"names":[],"mappings":"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"}
@@ -518,7 +518,7 @@ class AutoCmaf extends base_nodes_1.CustomSinkNode {
518
518
  return [];
519
519
  });
520
520
  subscribes.push(new Promise((resolve, _reject) => {
521
- this.mv?.subscribe(defaultSources.map((s) => ({ source: s.source, sourceSelector: s.sourceSelector })), (ctx) => ctx.streams.length == defaultSources.length, (_) => resolve({}));
521
+ this.mv?.subscribe(defaultSources.map((s) => ({ source: s.source, sourceSelector: s.sourceSelector })), (ctx) => ctx.streams.length == defaultSources.length * this.destinations.length, (_) => resolve({}));
522
522
  }));
523
523
  for (const mv of this.currentMultiVariants) {
524
524
  const sources = this.currentMedia.flatMap((m) => {
@@ -527,7 +527,7 @@ class AutoCmaf extends base_nodes_1.CustomSinkNode {
527
527
  return [];
528
528
  });
529
529
  subscribes.push(new Promise((resolve, _reject) => {
530
- mv.node?.subscribe(sources, (ctx) => ctx.streams.length == sources.length, (_) => resolve({}));
530
+ mv.node?.subscribe(sources, (ctx) => ctx.streams.length == sources.length * this.destinations.length, (_) => resolve({}));
531
531
  }));
532
532
  }
533
533
  await Promise.all(subscribes);