@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.
- package/client/info.js +654 -478
- package/client/style.css +29 -0
- package/lib/info.js +42 -40
- package/lib/info.js.map +1 -1
- package/lib/input.file/info.d.ts +50 -0
- package/lib/input.file/info.js +141 -0
- package/lib/input.file/info.js.map +1 -0
- package/lib/input.file/inline-view.d.ts +6 -0
- package/lib/input.file/inline-view.js +24 -0
- package/lib/input.file/inline-view.js.map +1 -0
- package/lib/input.file/runtime.d.ts +70 -0
- package/lib/input.file/runtime.js +227 -0
- package/lib/input.file/runtime.js.map +1 -0
- package/lib/input.file/types.d.ts +243 -0
- package/lib/input.file/types.js +3 -0
- package/lib/input.file/types.js.map +1 -0
- package/lib/input.file/types.source.yaml +247 -0
- package/lib/input.file/types.yaml +324 -0
- package/lib/output.autoCmaf/fullscreen.js +1 -1
- package/lib/output.autoCmaf/fullscreen.js.map +1 -1
- package/lib/output.autoCmaf/runtime.js +2 -2
- package/lib/output.autoCmaf/runtime.js.map +1 -1
- package/lib/processor.fixedLadder/info.js +8 -0
- package/lib/processor.fixedLadder/info.js.map +1 -1
- package/lib/test/file-input.d.ts +1 -0
- package/lib/test/file-input.js +444 -0
- package/lib/test/file-input.js.map +1 -0
- package/package.json +3 -3
@@ -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":";;;;;;AAAA,iCAAkC;AAElC,oDAAyB;AAEzB,SAAS,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAsD;IAC3F,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;IACtB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;IACrB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAqB,CAAC;QAE3E,IAAI,gBAAG,CAAC,WAAW,EAAE,EAAE,CAAC;YACtB,IAAI,kBAAsC,CAAC;YAC3C,MAAM,OAAO,GAAuC,EAAE,CAAC;YACvD,IAAI,MAAM,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;gBACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACvD,kBAAkB,GAAG,2EAA2E,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACvJ,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACpC,kBAAkB,GAAG,0DAA0D,CAAC;gBAChF,OAAO,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC9C,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,gBAAG,CAAC;gBAClB,kBAAkB;gBAClB,UAAU,EAAE,CAAC,CAAC,kBAAkB;gBAChC,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;oBACvB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;wBACxB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBACrB,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;4BACpB,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC7B,CAAC;oBACH,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YACH,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACpB,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEzB,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,GAAG,CAAC,EAAE,CAAC,gBAAG,CAAC,MAAM,CAAC,KAAK,EAAE,
|
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);
|