@norskvideo/norsk-studio-built-ins 1.27.0-2025-07-06-336ac6c6 → 1.27.0-2025-07-09-f9b24945

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 (135) hide show
  1. package/client/info.js +665 -284
  2. package/client/style.css +46 -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 +206 -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 +82 -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 +138 -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 +259 -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 +81 -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 +30 -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 +179 -104
  35. package/lib/output.autoCmaf/fullscreen.js +46 -1
  36. package/lib/output.autoCmaf/fullscreen.js.map +1 -1
  37. package/lib/output.autoCmaf/info.js +20 -0
  38. package/lib/output.autoCmaf/info.js.map +1 -1
  39. package/lib/output.autoCmaf/inline-view.d.ts +3 -2
  40. package/lib/output.autoCmaf/inline-view.js +72 -2
  41. package/lib/output.autoCmaf/inline-view.js.map +1 -1
  42. package/lib/output.autoCmaf/runtime.d.ts +2 -1
  43. package/lib/output.autoCmaf/runtime.js +41 -11
  44. package/lib/output.autoCmaf/runtime.js.map +1 -1
  45. package/lib/output.autoCmaf/types.d.ts +2 -0
  46. package/lib/output.autoCmaf/types.yaml +6 -0
  47. package/lib/output.cmafMultiVariant/runtime.js +2 -2
  48. package/lib/output.cmafMultiVariant/runtime.js.map +1 -1
  49. package/lib/output.cmafPlaylist/info.js +19 -0
  50. package/lib/output.cmafPlaylist/info.js.map +1 -1
  51. package/lib/output.cmafPlaylist/runtime.js +6 -3
  52. package/lib/output.cmafPlaylist/runtime.js.map +1 -1
  53. package/lib/output.cmafPlaylist/types.d.ts +1 -0
  54. package/lib/output.cmafPlaylist/types.yaml +3 -0
  55. package/lib/output.preview/inline-view.js +1 -1
  56. package/lib/output.preview/inline-view.js.map +1 -1
  57. package/lib/output.preview/runtime.js +2 -2
  58. package/lib/output.preview/runtime.js.map +1 -1
  59. package/lib/output.statistics/info.d.ts +172 -2
  60. package/lib/output.statistics/types.d.ts +400 -72
  61. package/lib/output.statistics/types.source.yaml +119 -0
  62. package/lib/output.statistics/types.yaml +333 -91
  63. package/lib/output.tsMediaPlaylist/runtime.js +2 -2
  64. package/lib/output.tsMediaPlaylist/runtime.js.map +1 -1
  65. package/lib/output.tsMultiVariant/runtime.js +1 -1
  66. package/lib/output.tsMultiVariant/runtime.js.map +1 -1
  67. package/lib/output.whep/runtime.js +3 -1
  68. package/lib/output.whep/runtime.js.map +1 -1
  69. package/lib/processor.audioEncoder/info.d.ts +10 -2
  70. package/lib/processor.audioEncoder/types.d.ts +23 -12
  71. package/lib/processor.audioEncoder/types.source.yaml +78 -0
  72. package/lib/processor.audioEncoder/types.yaml +103 -29
  73. package/lib/processor.browserOverlay/info.js +5 -3
  74. package/lib/processor.browserOverlay/info.js.map +1 -1
  75. package/lib/processor.browserOverlay/runtime.d.ts +2 -1
  76. package/lib/processor.browserOverlay/runtime.js +16 -2
  77. package/lib/processor.browserOverlay/runtime.js.map +1 -1
  78. package/lib/processor.fixedLadder/info.d.ts +182 -7
  79. package/lib/processor.fixedLadder/types.d.ts +619 -19
  80. package/lib/processor.fixedLadder/types.source.yaml +462 -0
  81. package/lib/processor.fixedLadder/types.yaml +336 -115
  82. package/lib/processor.makeProgram/info.d.ts +1 -0
  83. package/lib/processor.makeProgram/info.js +9 -0
  84. package/lib/processor.makeProgram/info.js.map +1 -1
  85. package/lib/processor.makeProgram/runtime.d.ts +2 -1
  86. package/lib/processor.makeProgram/runtime.js +14 -1
  87. package/lib/processor.makeProgram/runtime.js.map +1 -1
  88. package/lib/processor.makeProgram/types.d.ts +1 -0
  89. package/lib/processor.makeProgram/types.yaml +3 -1
  90. package/lib/processor.smartSingleMediaSwitch/info.d.ts +12 -4
  91. package/lib/processor.smartSingleMediaSwitch/types.d.ts +22 -18
  92. package/lib/processor.smartSingleMediaSwitch/types.source.yaml +115 -0
  93. package/lib/processor.smartSingleMediaSwitch/types.yaml +147 -50
  94. package/lib/processor.smartSourceSwitch/form-views.d.ts +6 -0
  95. package/lib/processor.smartSourceSwitch/form-views.js +11 -0
  96. package/lib/processor.smartSourceSwitch/form-views.js.map +1 -0
  97. package/lib/processor.smartSourceSwitch/info.d.ts +18 -4
  98. package/lib/processor.smartSourceSwitch/info.js +30 -0
  99. package/lib/processor.smartSourceSwitch/info.js.map +1 -1
  100. package/lib/processor.smartSourceSwitch/inline-view.js +9 -8
  101. package/lib/processor.smartSourceSwitch/inline-view.js.map +1 -1
  102. package/lib/processor.smartSourceSwitch/runtime.d.ts +4 -1
  103. package/lib/processor.smartSourceSwitch/runtime.js +56 -27
  104. package/lib/processor.smartSourceSwitch/runtime.js.map +1 -1
  105. package/lib/processor.smartSourceSwitch/types.d.ts +41 -18
  106. package/lib/processor.smartSourceSwitch/types.source.yaml +129 -0
  107. package/lib/processor.smartSourceSwitch/types.yaml +177 -48
  108. package/lib/processor.syncExternalAudio/info.d.ts +1 -0
  109. package/lib/processor.syncExternalAudio/types.d.ts +1 -0
  110. package/lib/processor.videoDecoder/info.js +4 -2
  111. package/lib/processor.videoDecoder/info.js.map +1 -1
  112. package/lib/processor.zoomTo/info.d.ts +54 -0
  113. package/lib/processor.zoomTo/info.js +174 -0
  114. package/lib/processor.zoomTo/info.js.map +1 -0
  115. package/lib/processor.zoomTo/runtime-types.d.ts +11 -0
  116. package/lib/processor.zoomTo/runtime-types.js +3 -0
  117. package/lib/processor.zoomTo/runtime-types.js.map +1 -0
  118. package/lib/processor.zoomTo/runtime.d.ts +45 -0
  119. package/lib/processor.zoomTo/runtime.js +323 -0
  120. package/lib/processor.zoomTo/runtime.js.map +1 -0
  121. package/lib/processor.zoomTo/types.d.ts +182 -0
  122. package/lib/processor.zoomTo/types.js +3 -0
  123. package/lib/processor.zoomTo/types.js.map +1 -0
  124. package/lib/processor.zoomTo/types.yaml +356 -0
  125. package/lib/test/auto-cmaf.js +7 -4
  126. package/lib/test/auto-cmaf.js.map +1 -1
  127. package/lib/test/smart-source-switch.js +117 -2
  128. package/lib/test/smart-source-switch.js.map +1 -1
  129. package/lib/test/zoom-to.d.ts +1 -0
  130. package/lib/test/zoom-to.js +345 -0
  131. package/lib/test/zoom-to.js.map +1 -0
  132. package/package.json +5 -5
  133. package/lib/output.autoCmaf/summary.d.ts +0 -6
  134. package/lib/output.autoCmaf/summary.js +0 -57
  135. package/lib/output.autoCmaf/summary.js.map +0 -1
@@ -39,7 +39,11 @@ const session_1 = __importDefault(require("@norskvideo/norsk-studio/lib/client/s
39
39
  const client_types_1 = require("@norskvideo/norsk-studio/lib/extension/client-types");
40
40
  const document_1 = require("@norskvideo/norsk-studio/lib/shared/document");
41
41
  const __1 = __importDefault(require(".."));
42
+ const path_1 = __importDefault(require("path"));
42
43
  const SmartSourceInfo = (0, info_1.default)(client_types_1.RegistrationConsts);
44
+ const getTestMp4Path = () => {
45
+ return path_1.default.join(__dirname, '../../data/TraditionalMusic.mp4');
46
+ };
43
47
  async function createRuntime() {
44
48
  const runtime = await (0, runtime_1.testRuntime)();
45
49
  await (0, __1.default)(runtime);
@@ -66,7 +70,10 @@ describe("SmartSource Switch", () => {
66
70
  },
67
71
  sampleRate: 48000,
68
72
  channelLayout: "mono",
69
- sources: []
73
+ sources: [],
74
+ fallback: {
75
+ kind: "testcard"
76
+ }
70
77
  };
71
78
  function getSwitch() {
72
79
  return session?.description.findNode(initialConfig.id);
@@ -166,7 +173,10 @@ describe("SmartSource Switch", () => {
166
173
  sources: [
167
174
  'primary',
168
175
  'backup'
169
- ]
176
+ ],
177
+ fallback: {
178
+ kind: 'testcard'
179
+ }
170
180
  };
171
181
  describe("Runtime", () => {
172
182
  async function testDocument(cb) {
@@ -277,5 +287,110 @@ describe("SmartSource Switch", () => {
277
287
  });
278
288
  });
279
289
  });
290
+ describe("MP4 Fallback Runtime", () => {
291
+ let norsk;
292
+ let result;
293
+ afterEach(async () => {
294
+ await norsk?.close();
295
+ await new Promise((r) => {
296
+ setTimeout(() => {
297
+ r();
298
+ }, 10.0);
299
+ });
300
+ norsk = undefined;
301
+ result = undefined;
302
+ });
303
+ async function testDocumentWithMp4(mp4FilePath, cb) {
304
+ const runtime = await createRuntime();
305
+ const configWithMp4 = {
306
+ ...config,
307
+ fallback: {
308
+ kind: 'file',
309
+ filePath: mp4FilePath
310
+ }
311
+ };
312
+ const yaml = new builder_1.YamlBuilder();
313
+ const ss = new builder_1.YamlNodeBuilder('switch', SmartSourceInfo, configWithMp4);
314
+ yaml.addNode((new builder_1.YamlNodeBuilder('primary', runtime_1.AvInput.info, { sourceName: true })).reify());
315
+ yaml.addNode((new builder_1.YamlNodeBuilder('backup', runtime_1.AvInput.info, { sourceName: true })).reify());
316
+ ss.subscribe("primary", ["video", "audio"]);
317
+ ss.subscribe("backup", ["video", "audio"]);
318
+ cb?.(yaml, ss);
319
+ yaml.addNode(ss.reify());
320
+ const compiled = document.load(__filename, runtime, yaml_1.default.stringify(yaml.reify()));
321
+ return compiled;
322
+ }
323
+ describe("No active inputs with MP4 fallback", () => {
324
+ it("Should output A/V from the MP4 fallback source", async () => {
325
+ const testMp4Path = getTestMp4Path();
326
+ const compiled = await testDocumentWithMp4(testMp4Path);
327
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
328
+ result = await (0, execution_1.default)(norsk, compiled);
329
+ const switcher = result.components['switch'];
330
+ const primary = result.components['primary'];
331
+ const backup = result.components['backup'];
332
+ await primary.close();
333
+ await backup.close();
334
+ await Promise.all([
335
+ (0, sinks_1.assertNodeOutputsAudioFrames)(norsk, result, 'switch'),
336
+ (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, 'switch'),
337
+ (0, sinks_1.waitForAssert)(() => switcher.activeSource == 'fallback', () => (0, chai_1.expect)(switcher.activeSource).equals('fallback'), 10000.0, 10.0)
338
+ ]);
339
+ });
340
+ });
341
+ describe("Switch from MP4 fallback to primary source", () => {
342
+ it("Should pause MP4 and switch to primary when source becomes available", async () => {
343
+ const testMp4Path = getTestMp4Path();
344
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
345
+ const compiled = await testDocumentWithMp4(testMp4Path);
346
+ result = await (0, execution_1.default)(norsk, compiled);
347
+ const switcher = result.components['switch'];
348
+ const primary = result.components['primary'];
349
+ const backup = result.components['backup'];
350
+ primary.pause();
351
+ backup.pause();
352
+ await (0, sinks_1.waitForAssert)(() => switcher.activeSource == 'fallback', () => (0, chai_1.expect)(switcher.activeSource).equals('fallback'), 10000.0, 10.0);
353
+ primary.start();
354
+ await Promise.all([
355
+ (0, sinks_1.assertNodeOutputsAudioFrames)(norsk, result, 'switch'),
356
+ (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, 'switch'),
357
+ (0, sinks_1.waitForAssert)(() => switcher.activeSource == 'primary', () => (0, chai_1.expect)(switcher.activeSource).equals('primary'), 10000.0, 10.0)
358
+ ]);
359
+ (0, chai_1.expect)(switcher.mp4).to.not.be.undefined;
360
+ });
361
+ });
362
+ describe("Switch from primary back to MP4 fallback", () => {
363
+ it("Should resume MP4 playback when all sources go offline", async () => {
364
+ const testMp4Path = getTestMp4Path();
365
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
366
+ const compiled = await testDocumentWithMp4(testMp4Path);
367
+ result = await (0, execution_1.default)(norsk, compiled);
368
+ const switcher = result.components['switch'];
369
+ const primary = result.components['primary'];
370
+ const backup = result.components['backup'];
371
+ backup.pause();
372
+ await (0, sinks_1.waitForAssert)(() => switcher.activeSource == 'primary', () => (0, chai_1.expect)(switcher.activeSource).equals('primary'), 10000.0, 10.0);
373
+ primary.pause();
374
+ await Promise.all([
375
+ (0, sinks_1.assertNodeOutputsAudioFrames)(norsk, result, 'switch'),
376
+ (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, 'switch'),
377
+ (0, sinks_1.waitForAssert)(() => switcher.activeSource == 'fallback', () => (0, chai_1.expect)(switcher.activeSource).equals('fallback'), 10000.0, 10.0)
378
+ ]);
379
+ (0, chai_1.expect)(switcher.mp4).to.not.be.undefined;
380
+ });
381
+ });
382
+ describe("MP4 fallback configuration", () => {
383
+ it("Should create MP4 input node when fallback kind is 'file'", async () => {
384
+ const testMp4Path = getTestMp4Path();
385
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
386
+ const compiled = await testDocumentWithMp4(testMp4Path);
387
+ result = await (0, execution_1.default)(norsk, compiled);
388
+ const switcher = result.components['switch'];
389
+ (0, chai_1.expect)(switcher.mp4).to.not.be.undefined;
390
+ (0, chai_1.expect)(switcher.audio).to.be.undefined;
391
+ (0, chai_1.expect)(switcher.video).to.be.undefined;
392
+ });
393
+ });
394
+ });
280
395
  });
281
396
  //# sourceMappingURL=smart-source-switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"smart-source-switch.js","sourceRoot":"","sources":["../../src/test/smart-source-switch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-source-switch.js","sourceRoot":"","sources":["../../src/test/smart-source-switch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,345 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const norsk_sdk_1 = require("@norskvideo/norsk-sdk");
30
+ const __1 = require("..");
31
+ const builder_1 = require("@norskvideo/norsk-studio/lib/test/_util/builder");
32
+ const document = __importStar(require("@norskvideo/norsk-studio/lib/runtime/document"));
33
+ const yaml_1 = __importDefault(require("yaml"));
34
+ const execution_1 = __importStar(require("@norskvideo/norsk-studio/lib/runtime/execution"));
35
+ const sources_1 = require("@norskvideo/norsk-studio/lib/test/_util/sources");
36
+ const sinks_1 = require("@norskvideo/norsk-studio/lib/test/_util/sinks");
37
+ const info_1 = __importDefault(require("../processor.zoomTo/info"));
38
+ const client_types_1 = require("@norskvideo/norsk-studio/lib/extension/client-types");
39
+ const util_1 = require("@norskvideo/norsk-studio/lib/shared/util");
40
+ const node_fetch_1 = __importDefault(require("node-fetch"));
41
+ const express_1 = __importDefault(require("express"));
42
+ const chai_1 = require("chai");
43
+ async function defaultRuntime() {
44
+ const runtime = (0, builder_1.emptyRuntime)();
45
+ await (0, __1.registerAll)(runtime);
46
+ return runtime;
47
+ }
48
+ const videoOpts = {
49
+ resolution: { width: 640, height: 360 },
50
+ frameRate: { frames: 25, seconds: 1 }
51
+ };
52
+ const outputResolution = { width: 1920, height: 1080 };
53
+ function apiUrl(id, port) {
54
+ return `http://127.0.0.1:${port}/${id}/zoom`;
55
+ }
56
+ describe("ZoomTo", () => {
57
+ async function testDocument(cfg) {
58
+ const runtime = await defaultRuntime();
59
+ const yaml = new builder_1.YamlBuilder()
60
+ .addNode(new builder_1.YamlNodeBuilder('zoomTo', (0, info_1.default)(client_types_1.RegistrationConsts), {
61
+ offsetX: 0,
62
+ offsetY: 0,
63
+ width: 100,
64
+ height: 100,
65
+ outputResolution,
66
+ transitionDurationMs: 300,
67
+ transitionEasing: 'ease_in_out',
68
+ ...cfg
69
+ }).reify())
70
+ .reify();
71
+ const compiled = document.load(__filename, runtime, yaml_1.default.stringify(yaml), { resolveConfig: true });
72
+ return compiled;
73
+ }
74
+ let norsk = undefined;
75
+ afterEach(async () => {
76
+ await norsk?.close();
77
+ });
78
+ it("Basic functionality - full frame crop", async () => {
79
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
80
+ const compiled = await testDocument();
81
+ const result = await (0, execution_1.default)(norsk, compiled);
82
+ const zoomTo = result.components["zoomTo"];
83
+ const source = await (0, sources_1.videoAndAudio)(norsk, 'source', videoOpts);
84
+ new execution_1.ComponentSubscriptions(norsk, zoomTo).setSources([
85
+ new execution_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), {
86
+ type: 'take-all-streams',
87
+ filter: [{ media: 'video' }, { media: 'audio' }]
88
+ })
89
+ ]);
90
+ await (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, "zoomTo", {
91
+ resolution: outputResolution,
92
+ frameRate: { frames: 25, seconds: 1 }
93
+ });
94
+ });
95
+ it("Basic functionality - 50% crop at center", async () => {
96
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
97
+ const compiled = await testDocument({
98
+ offsetX: 25,
99
+ offsetY: 25,
100
+ width: 50,
101
+ height: 50,
102
+ outputResolution,
103
+ transitionDurationMs: 300,
104
+ transitionEasing: 'ease_in_out'
105
+ });
106
+ const result = await (0, execution_1.default)(norsk, compiled);
107
+ const zoomTo = result.components["zoomTo"];
108
+ const source = await (0, sources_1.videoAndAudio)(norsk, 'source', videoOpts);
109
+ new execution_1.ComponentSubscriptions(norsk, zoomTo).setSources([
110
+ new execution_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), {
111
+ type: 'take-all-streams',
112
+ filter: [{ media: 'video' }, { media: 'audio' }]
113
+ })
114
+ ]);
115
+ await (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, "zoomTo", {
116
+ resolution: outputResolution,
117
+ frameRate: { frames: 25, seconds: 1 }
118
+ });
119
+ });
120
+ describe("HTTP API", () => {
121
+ let port = 0;
122
+ let listener;
123
+ let result;
124
+ beforeEach(async () => {
125
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
126
+ const compiled = await testDocument();
127
+ const app = (0, express_1.default)();
128
+ app.use(express_1.default.json());
129
+ result = await (0, execution_1.default)(norsk, compiled, app);
130
+ await new Promise((r) => {
131
+ listener = app.listen(0, '127.0.0.1', () => {
132
+ const address = listener.address();
133
+ port = address.port;
134
+ r();
135
+ });
136
+ });
137
+ const zoomTo = result.components["zoomTo"];
138
+ const source = await (0, sources_1.videoAndAudio)(norsk, 'source', videoOpts);
139
+ new execution_1.ComponentSubscriptions(norsk, zoomTo).setSources([
140
+ new execution_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), {
141
+ type: 'take-all-streams',
142
+ filter: [{ media: 'video' }]
143
+ })
144
+ ]);
145
+ await (0, util_1.waitForCondition)(() => {
146
+ const state = result.runtimeState.latest["zoomTo"];
147
+ return state.hasInputVideo === true;
148
+ }, 5000);
149
+ });
150
+ afterEach(async () => {
151
+ listener?.close();
152
+ });
153
+ it("GET /zoom returns current state", async () => {
154
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port));
155
+ (0, chai_1.expect)(httpResult.status).equal(200);
156
+ const body = await httpResult.json();
157
+ const zoom = body.zoom;
158
+ const inputVideo = body.inputVideo;
159
+ const resolution = inputVideo.resolution;
160
+ (0, chai_1.expect)(zoom.currentOffsetX).equal(0);
161
+ (0, chai_1.expect)(zoom.currentOffsetY).equal(0);
162
+ (0, chai_1.expect)(zoom.currentWidth).equal(100);
163
+ (0, chai_1.expect)(zoom.currentHeight).equal(100);
164
+ (0, chai_1.expect)(inputVideo.hasInputVideo).equal(true);
165
+ (0, chai_1.expect)(resolution.width).equal(640);
166
+ (0, chai_1.expect)(resolution.height).equal(360);
167
+ });
168
+ it("POST /zoom with percentage mode updates zoom", async () => {
169
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
170
+ method: 'POST',
171
+ headers: { 'Content-Type': 'application/json' },
172
+ body: JSON.stringify({
173
+ mode: 'percentage',
174
+ offsetX: 25,
175
+ offsetY: 25,
176
+ width: 50,
177
+ height: 50
178
+ })
179
+ });
180
+ (0, chai_1.expect)(httpResult.status).equal(204);
181
+ await (0, util_1.waitForCondition)(() => {
182
+ const state = result.runtimeState.latest["zoomTo"];
183
+ return state.currentOffsetX === 25 && state.currentWidth === 50;
184
+ }, 2000);
185
+ const getResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port));
186
+ const body = await getResult.json();
187
+ const zoom = body.zoom;
188
+ (0, chai_1.expect)(zoom.currentOffsetX).equal(25);
189
+ (0, chai_1.expect)(zoom.currentOffsetY).equal(25);
190
+ (0, chai_1.expect)(zoom.currentWidth).equal(50);
191
+ (0, chai_1.expect)(zoom.currentHeight).equal(50);
192
+ });
193
+ it("POST /zoom with pixel mode updates zoom", async () => {
194
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
195
+ method: 'POST',
196
+ headers: { 'Content-Type': 'application/json' },
197
+ body: JSON.stringify({
198
+ mode: 'pixel',
199
+ offsetXPx: 160,
200
+ offsetYPx: 90,
201
+ widthPx: 320,
202
+ heightPx: 180
203
+ })
204
+ });
205
+ (0, chai_1.expect)(httpResult.status).equal(204);
206
+ await (0, util_1.waitForCondition)(() => {
207
+ const state = result.runtimeState.latest["zoomTo"];
208
+ return state.currentOffsetX === 25 && state.currentWidth === 50;
209
+ }, 2000);
210
+ const getResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port));
211
+ const body = await getResult.json();
212
+ const zoom = body.zoom;
213
+ (0, chai_1.expect)(zoom.currentOffsetX).equal(25);
214
+ (0, chai_1.expect)(zoom.currentOffsetY).equal(25);
215
+ (0, chai_1.expect)(zoom.currentWidth).equal(50);
216
+ (0, chai_1.expect)(zoom.currentHeight).equal(50);
217
+ });
218
+ it("POST /zoom validates percentage bounds", async () => {
219
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
220
+ method: 'POST',
221
+ headers: { 'Content-Type': 'application/json' },
222
+ body: JSON.stringify({
223
+ mode: 'percentage',
224
+ offsetX: 80,
225
+ offsetY: 80,
226
+ width: 50,
227
+ height: 50
228
+ })
229
+ });
230
+ (0, chai_1.expect)(httpResult.status).equal(400);
231
+ const body = await httpResult.json();
232
+ (0, chai_1.expect)(body.error).equal('Invalid crop region');
233
+ });
234
+ it("POST /zoom validates pixel bounds", async () => {
235
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
236
+ method: 'POST',
237
+ headers: { 'Content-Type': 'application/json' },
238
+ body: JSON.stringify({
239
+ mode: 'pixel',
240
+ offsetXPx: -10,
241
+ offsetYPx: 0,
242
+ widthPx: 100,
243
+ heightPx: 100
244
+ })
245
+ });
246
+ (0, chai_1.expect)(httpResult.status).equal(400);
247
+ const body = await httpResult.json();
248
+ (0, chai_1.expect)(body.error).equal('Invalid range');
249
+ });
250
+ it("POST /zoom validates mode field", async () => {
251
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
252
+ method: 'POST',
253
+ headers: { 'Content-Type': 'application/json' },
254
+ body: JSON.stringify({
255
+ mode: 'invalid',
256
+ offsetX: 25,
257
+ offsetY: 25,
258
+ width: 50,
259
+ height: 50
260
+ })
261
+ });
262
+ (0, chai_1.expect)(httpResult.status).equal(400);
263
+ const body = await httpResult.json();
264
+ (0, chai_1.expect)(body.error).equal('Invalid mode');
265
+ });
266
+ });
267
+ describe("Edge cases", () => {
268
+ let listener;
269
+ let port = 0;
270
+ afterEach(async () => {
271
+ listener?.close();
272
+ });
273
+ it("API validates zero-width crop in percentage mode", async () => {
274
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
275
+ const compiled = await testDocument();
276
+ const app = (0, express_1.default)();
277
+ app.use(express_1.default.json());
278
+ const _result = await (0, execution_1.default)(norsk, compiled, app);
279
+ await new Promise((r) => {
280
+ listener = app.listen(0, '127.0.0.1', () => {
281
+ const address = listener.address();
282
+ port = address.port;
283
+ r();
284
+ });
285
+ });
286
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
287
+ method: 'POST',
288
+ headers: { 'Content-Type': 'application/json' },
289
+ body: JSON.stringify({
290
+ mode: 'percentage',
291
+ offsetX: 50,
292
+ offsetY: 50,
293
+ width: 0,
294
+ height: 50
295
+ })
296
+ });
297
+ (0, chai_1.expect)(httpResult.status).equal(400);
298
+ const body = await httpResult.json();
299
+ (0, chai_1.expect)(body.error).equal('Invalid range');
300
+ (0, chai_1.expect)(body.details).equal('Percentage values must be 0-100, width/height must be > 0');
301
+ });
302
+ it("API validates zero-height crop in pixel mode", async () => {
303
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
304
+ const compiled = await testDocument();
305
+ const app = (0, express_1.default)();
306
+ app.use(express_1.default.json());
307
+ const _result = await (0, execution_1.default)(norsk, compiled, app);
308
+ await new Promise((r) => {
309
+ listener = app.listen(0, '127.0.0.1', () => {
310
+ const address = listener.address();
311
+ port = address.port;
312
+ r();
313
+ });
314
+ });
315
+ const httpResult = await (0, node_fetch_1.default)(apiUrl('zoomTo', port), {
316
+ method: 'POST',
317
+ headers: { 'Content-Type': 'application/json' },
318
+ body: JSON.stringify({
319
+ mode: 'pixel',
320
+ offsetXPx: 100,
321
+ offsetYPx: 100,
322
+ widthPx: 50,
323
+ heightPx: 0
324
+ })
325
+ });
326
+ (0, chai_1.expect)(httpResult.status).equal(400);
327
+ const body = await httpResult.json();
328
+ (0, chai_1.expect)(body.error).equal('Invalid range');
329
+ (0, chai_1.expect)(body.details).equal('Pixel values must be non-negative, width/height must be > 0');
330
+ });
331
+ it("Handles component without input video", async () => {
332
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
333
+ const compiled = await testDocument();
334
+ const result = await (0, execution_1.default)(norsk, compiled);
335
+ await (0, util_1.waitForCondition)(() => {
336
+ const state = result.runtimeState.latest["zoomTo"];
337
+ return state.hasInputVideo === false;
338
+ }, 2000);
339
+ const state = result.runtimeState.latest["zoomTo"];
340
+ (0, chai_1.expect)(state.hasInputVideo).equal(false);
341
+ (0, chai_1.expect)(state.inputVideoResolution).to.be.undefined;
342
+ });
343
+ });
344
+ });
345
+ //# sourceMappingURL=zoom-to.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zoom-to.js","sourceRoot":"","sources":["../../src/test/zoom-to.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@norskvideo/norsk-studio-built-ins",
3
- "version": "1.27.0-2025-07-06-336ac6c6",
3
+ "version": "1.27.0-2025-07-09-f9b24945",
4
4
  "description": "",
5
5
  "scripts": {
6
- "clean": "rm -rf lib client build",
7
- "types": "make",
6
+ "clean": "rm -rf lib client build && make clean",
7
+ "types": "make -j 8",
8
8
  "build": "npm run types && npx studio-wrap-infos src/ && npx npm-run-all build:* && rm -rf build",
9
9
  "build:server": "npx tsc",
10
10
  "build:client": "npx tsc -p tsconfig-client.json && npx studio-bundle build/info.js client/info.js",
@@ -22,8 +22,8 @@
22
22
  "license": "MIT",
23
23
  "dependencies": {
24
24
  "@apidevtools/json-schema-ref-parser": "^12.0.1",
25
- "@norskvideo/norsk-sdk": "^1.0.402-2025-07-06-739d8f7d",
26
- "@norskvideo/norsk-studio": "1.27.0-2025-07-06-336ac6c6",
25
+ "@norskvideo/norsk-sdk": "^1.0.402-2025-07-09-3593ca7e",
26
+ "@norskvideo/norsk-studio": "1.27.0-2025-07-09-f9b24945",
27
27
  "@norskvideo/webrtc-client": "^0.1.2",
28
28
  "@react-icons/all-files": "^4.1.0",
29
29
  "body-parser": "^1.20.2",
@@ -1,6 +0,0 @@
1
- import type { CmafOutputState, AutoCmafConfig } from "./runtime";
2
- declare function InlineView({ state, config }: {
3
- state: CmafOutputState;
4
- config: AutoCmafConfig;
5
- }): import("react/jsx-runtime").JSX.Element;
6
- export default InlineView;