@norskvideo/norsk-studio-built-ins 1.19.0 → 1.26.0-2025-02-19-33cde15d
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 +5983 -699
- package/client/output.preview/styles.css +69 -69
- package/client/output.whep/styles.css +9 -0
- package/client/style.css +283 -856
- package/lib/info.js +14 -14
- package/lib/info.js.map +1 -1
- package/lib/input.rtmp/info.js +19 -5
- package/lib/input.rtmp/info.js.map +1 -1
- package/lib/input.rtmp/inline-view.js +3 -3
- package/lib/input.rtmp/runtime.d.ts +46 -7
- package/lib/input.rtmp/runtime.js +245 -59
- package/lib/input.rtmp/runtime.js.map +1 -1
- package/lib/input.rtmp/summary-view.d.ts +3 -5
- package/lib/input.rtmp/summary-view.js +51 -6
- package/lib/input.rtmp/summary-view.js.map +1 -1
- package/lib/input.rtmp/types.d.ts +193 -0
- package/lib/{processor.browserOverlay/openApi.js → input.rtmp/types.js} +1 -1
- package/lib/input.rtmp/types.js.map +1 -0
- package/lib/input.rtmp/types.yaml +147 -0
- package/lib/input.silence/info.js +9 -2
- package/lib/input.silence/info.js.map +1 -1
- package/lib/input.silence/runtime.d.ts +1 -0
- package/lib/input.silence/runtime.js.map +1 -1
- package/lib/input.srt-caller/info.js +8 -1
- package/lib/input.srt-caller/info.js.map +1 -1
- package/lib/input.srt-caller/runtime.d.ts +1 -0
- package/lib/input.srt-caller/runtime.js.map +1 -1
- package/lib/input.srt-listener/info.js +15 -2
- package/lib/input.srt-listener/info.js.map +1 -1
- package/lib/input.srt-listener/runtime.d.ts +41 -5
- package/lib/input.srt-listener/runtime.js +236 -57
- package/lib/input.srt-listener/runtime.js.map +1 -1
- package/lib/input.srt-listener/summary-view.d.ts +3 -5
- package/lib/input.srt-listener/summary-view.js +45 -6
- package/lib/input.srt-listener/summary-view.js.map +1 -1
- package/lib/input.srt-listener/types.d.ts +193 -0
- package/lib/input.srt-listener/types.js +3 -0
- package/lib/input.srt-listener/types.js.map +1 -0
- package/lib/input.srt-listener/types.yaml +145 -0
- package/lib/input.udp-ts/info.js +2 -1
- package/lib/input.udp-ts/info.js.map +1 -1
- package/lib/input.udp-ts/runtime.d.ts +1 -0
- package/lib/input.udp-ts/runtime.js.map +1 -1
- package/lib/input.videoTestCard/info.d.ts +1 -1
- package/lib/input.videoTestCard/info.js +17 -4
- package/lib/input.videoTestCard/info.js.map +1 -1
- package/lib/input.videoTestCard/runtime.d.ts +1 -0
- package/lib/output.autoCmaf/form-views.d.ts +2 -2
- package/lib/output.autoCmaf/form-views.js +13 -3
- package/lib/output.autoCmaf/form-views.js.map +1 -1
- package/lib/output.autoCmaf/info.d.ts +21 -2
- package/lib/output.autoCmaf/info.js +106 -32
- package/lib/output.autoCmaf/info.js.map +1 -1
- package/lib/output.autoCmaf/inline-view.d.ts +6 -0
- package/lib/output.autoCmaf/inline-view.js +8 -0
- package/lib/output.autoCmaf/inline-view.js.map +1 -0
- package/lib/output.autoCmaf/runtime.d.ts +29 -43
- package/lib/output.autoCmaf/runtime.js +314 -96
- package/lib/output.autoCmaf/runtime.js.map +1 -1
- package/lib/output.autoCmaf/summary-view.d.ts +4 -0
- package/lib/output.autoCmaf/summary-view.js +24 -0
- package/lib/output.autoCmaf/summary-view.js.map +1 -0
- package/lib/output.autoCmaf/summary.js +3 -0
- package/lib/output.autoCmaf/summary.js.map +1 -1
- package/lib/output.autoCmaf/types.d.ts +158 -0
- package/lib/output.autoCmaf/types.js +3 -0
- package/lib/output.autoCmaf/types.js.map +1 -0
- package/lib/output.autoCmaf/types.yaml +182 -0
- package/lib/output.autoHls/info.d.ts +3 -0
- package/lib/output.autoHls/info.js +22 -0
- package/lib/output.autoHls/info.js.map +1 -0
- package/lib/output.autoHls/runtime.d.ts +6 -0
- package/lib/output.autoHls/runtime.js +13 -0
- package/lib/output.autoHls/runtime.js.map +1 -0
- package/lib/output.preview/info.d.ts +5 -2
- package/lib/output.preview/info.js +23 -3
- package/lib/output.preview/info.js.map +1 -1
- package/lib/output.preview/inline-view.d.ts +2 -4
- package/lib/output.preview/inline-view.js +65 -7
- package/lib/output.preview/inline-view.js.map +1 -1
- package/lib/output.preview/runtime.d.ts +18 -12
- package/lib/output.preview/runtime.js +122 -33
- package/lib/output.preview/runtime.js.map +1 -1
- package/lib/output.preview/types.d.ts +56 -0
- package/lib/output.preview/types.js +3 -0
- package/lib/output.preview/types.js.map +1 -0
- package/lib/output.preview/types.yaml +37 -0
- package/lib/output.rtmp/info.js +14 -2
- package/lib/output.rtmp/info.js.map +1 -1
- package/lib/output.rtmp/inline-view.js +5 -2
- package/lib/output.rtmp/inline-view.js.map +1 -1
- package/lib/output.rtmp/runtime.d.ts +31 -5
- package/lib/output.rtmp/runtime.js +169 -34
- package/lib/output.rtmp/runtime.js.map +1 -1
- package/lib/output.rtmp/summary-view.d.ts +4 -0
- package/lib/output.rtmp/summary-view.js +24 -0
- package/lib/output.rtmp/summary-view.js.map +1 -0
- package/lib/output.rtmp/types.d.ts +101 -0
- package/lib/output.rtmp/types.js +3 -0
- package/lib/output.rtmp/types.js.map +1 -0
- package/lib/output.rtmp/types.yaml +30 -0
- package/lib/output.srt/info.d.ts +2 -2
- package/lib/output.srt/info.js +29 -1
- package/lib/output.srt/info.js.map +1 -1
- package/lib/output.srt/inline-view.d.ts +6 -0
- package/lib/output.srt/inline-view.js +8 -0
- package/lib/output.srt/inline-view.js.map +1 -0
- package/lib/output.srt/runtime.d.ts +35 -5
- package/lib/output.srt/runtime.js +174 -6
- package/lib/output.srt/runtime.js.map +1 -1
- package/lib/output.srt/summary-view.d.ts +4 -0
- package/lib/output.srt/summary-view.js +24 -0
- package/lib/output.srt/summary-view.js.map +1 -0
- package/lib/output.srt/types.d.ts +101 -0
- package/lib/output.srt/types.js +3 -0
- package/lib/output.srt/types.js.map +1 -0
- package/lib/output.srt/types.yaml +31 -0
- package/lib/output.statistics/info.js +3 -1
- package/lib/output.statistics/info.js.map +1 -1
- package/lib/output.statistics/inline-view.js +3 -2
- package/lib/output.statistics/inline-view.js.map +1 -1
- package/lib/output.statistics/runtime.d.ts +1 -0
- package/lib/output.statistics/runtime.js.map +1 -1
- package/lib/output.udpTs/info.js +4 -0
- package/lib/output.udpTs/info.js.map +1 -1
- package/lib/output.udpTs/runtime.d.ts +1 -0
- package/lib/output.udpTs/runtime.js.map +1 -1
- package/lib/output.whep/info.d.ts +2 -2
- package/lib/output.whep/info.js +61 -1
- package/lib/output.whep/info.js.map +1 -1
- package/lib/output.whep/inline-view.d.ts +4 -0
- package/lib/output.whep/inline-view.js +57 -0
- package/lib/output.whep/inline-view.js.map +1 -0
- package/lib/output.whep/runtime.d.ts +39 -5
- package/lib/output.whep/runtime.js +175 -13
- package/lib/output.whep/runtime.js.map +1 -1
- package/lib/output.whep/summary-view.d.ts +4 -0
- package/lib/output.whep/summary-view.js +24 -0
- package/lib/output.whep/summary-view.js.map +1 -0
- package/lib/output.whep/types.d.ts +101 -0
- package/lib/output.whep/types.js +3 -0
- package/lib/output.whep/types.js.map +1 -0
- package/lib/output.whep/types.yaml +30 -0
- package/lib/processor.audioEncoder/form-views.d.ts +8 -0
- package/lib/processor.audioEncoder/form-views.js +8 -0
- package/lib/processor.audioEncoder/form-views.js.map +1 -0
- package/lib/processor.audioEncoder/info.d.ts +3 -0
- package/lib/processor.audioEncoder/info.js +160 -0
- package/lib/processor.audioEncoder/info.js.map +1 -0
- package/lib/processor.audioEncoder/runtime.d.ts +21 -0
- package/lib/processor.audioEncoder/runtime.js +20 -0
- package/lib/processor.audioEncoder/runtime.js.map +1 -0
- package/lib/processor.browserOverlay/info.js +1 -0
- package/lib/processor.browserOverlay/info.js.map +1 -1
- package/lib/processor.browserOverlay/runtime.d.ts +1 -0
- package/lib/processor.browserOverlay/runtime.js +6 -26
- package/lib/processor.browserOverlay/runtime.js.map +1 -1
- package/lib/processor.browserOverlay/types.js +3 -0
- package/lib/processor.browserOverlay/types.js.map +1 -0
- package/lib/processor.cascadingSwitch/info.js +3 -2
- package/lib/processor.cascadingSwitch/info.js.map +1 -1
- package/lib/processor.cascadingSwitch/inline-view.js +3 -3
- package/lib/processor.cascadingSwitch/runtime.d.ts +1 -0
- package/lib/processor.cascadingSwitch/runtime.js +2 -2
- package/lib/processor.cascadingSwitch/runtime.js.map +1 -1
- package/lib/processor.fixedLadder/codec-editor.js +1 -1
- package/lib/processor.fixedLadder/codec-editor.js.map +1 -1
- package/lib/processor.fixedLadder/codec-view.d.ts +1 -1
- package/lib/processor.fixedLadder/codec-view.js +1 -1
- package/lib/processor.fixedLadder/codec-view.js.map +1 -1
- package/lib/processor.fixedLadder/info.d.ts +33 -7
- package/lib/processor.fixedLadder/info.js +19 -6
- package/lib/processor.fixedLadder/info.js.map +1 -1
- package/lib/processor.fixedLadder/runtime.d.ts +16 -29
- package/lib/processor.fixedLadder/runtime.js +16 -1
- package/lib/processor.fixedLadder/runtime.js.map +1 -1
- package/lib/processor.fixedLadder/types.d.ts +240 -0
- package/lib/processor.fixedLadder/types.js +3 -0
- package/lib/processor.fixedLadder/types.js.map +1 -0
- package/lib/processor.fixedLadder/types.yaml +541 -0
- package/lib/processor.onscreenGraphic/info.js +11 -5
- package/lib/processor.onscreenGraphic/info.js.map +1 -1
- package/lib/processor.onscreenGraphic/runtime.d.ts +27 -2
- package/lib/processor.onscreenGraphic/runtime.js +116 -52
- package/lib/processor.onscreenGraphic/runtime.js.map +1 -1
- package/lib/processor.onscreenGraphic/summary-view.d.ts +1 -1
- package/lib/processor.onscreenGraphic/summary-view.js +235 -11
- package/lib/processor.onscreenGraphic/summary-view.js.map +1 -1
- package/lib/processor.onscreenGraphic/types.d.ts +15 -1
- package/lib/processor.onscreenGraphic/types.yaml +63 -14
- package/lib/processor.streamKeyOverride/info.d.ts +3 -0
- package/lib/processor.streamKeyOverride/info.js +151 -0
- package/lib/processor.streamKeyOverride/info.js.map +1 -0
- package/lib/processor.streamKeyOverride/runtime.d.ts +55 -0
- package/lib/processor.streamKeyOverride/runtime.js +226 -0
- package/lib/processor.streamKeyOverride/runtime.js.map +1 -0
- package/lib/shared/api.d.ts +35 -0
- package/lib/shared/api.js +34 -0
- package/lib/shared/api.js.map +1 -0
- package/lib/test/auto-cmaf.js +219 -43
- package/lib/test/auto-cmaf.js.map +1 -1
- package/lib/test/onscreen-graphic.js +79 -42
- package/lib/test/onscreen-graphic.js.map +1 -1
- package/lib/test/preview.js +69 -64
- package/lib/test/preview.js.map +1 -1
- package/lib/test/rtmp-input.js +6 -3
- package/lib/test/rtmp-input.js.map +1 -1
- package/lib/test/rtmp-output.js +105 -1
- package/lib/test/rtmp-output.js.map +1 -1
- package/lib/test/srt-input-listener.js +331 -0
- package/lib/test/srt-input-listener.js.map +1 -1
- package/lib/test/srt-output.js +93 -4
- package/lib/test/srt-output.js.map +1 -1
- package/lib/test/whep-output.js +192 -5
- package/lib/test/whep-output.js.map +1 -1
- package/lib/util.stats.latency/info.js +1 -0
- package/lib/util.stats.latency/info.js.map +1 -1
- package/lib/util.stats.latency/runtime.d.ts +1 -0
- package/lib/util.stats.latency/runtime.js +2 -2
- package/lib/util.stats.latency/runtime.js.map +1 -1
- package/package.json +4 -4
- package/lib/processor.browserOverlay/openApi.js.map +0 -1
- package/lib/processor.whisper-transcribe/info.d.ts +0 -3
- package/lib/processor.whisper-transcribe/info.js +0 -44
- package/lib/processor.whisper-transcribe/info.js.map +0 -1
- package/lib/processor.whisper-transcribe/runtime.d.ts +0 -29
- package/lib/processor.whisper-transcribe/runtime.js +0 -83
- package/lib/processor.whisper-transcribe/runtime.js.map +0 -1
- package/lib/util.stats.ma35d/info.d.ts +0 -3
- package/lib/util.stats.ma35d/info.js +0 -79
- package/lib/util.stats.ma35d/info.js.map +0 -1
- package/lib/util.stats.ma35d/inline-view.d.ts +0 -6
- package/lib/util.stats.ma35d/inline-view.js +0 -76
- package/lib/util.stats.ma35d/inline-view.js.map +0 -1
- package/lib/util.stats.ma35d/runtime.d.ts +0 -21
- package/lib/util.stats.ma35d/runtime.js +0 -49
- package/lib/util.stats.ma35d/runtime.js.map +0 -1
- package/lib/util.timestamps/info.d.ts +0 -5
- package/lib/util.timestamps/info.js +0 -87
- package/lib/util.timestamps/info.js.map +0 -1
- package/lib/util.timestamps/inline-view.d.ts +0 -6
- package/lib/util.timestamps/inline-view.js +0 -94
- package/lib/util.timestamps/inline-view.js.map +0 -1
- package/lib/util.timestamps/runtime.d.ts +0 -29
- package/lib/util.timestamps/runtime.js +0 -40
- package/lib/util.timestamps/runtime.js.map +0 -1
- /package/lib/processor.browserOverlay/{openApi.d.ts → types.d.ts} +0 -0
package/lib/test/rtmp-output.js
CHANGED
@@ -39,6 +39,8 @@ const client_types_1 = require("@norskvideo/norsk-studio/lib/extension/client-ty
|
|
39
39
|
const runtime_types_1 = require("@norskvideo/norsk-studio/lib/extension/runtime-types");
|
40
40
|
const sinks_1 = require("@norskvideo/norsk-studio/lib/test/_util/sinks");
|
41
41
|
const chai_1 = require("chai");
|
42
|
+
const express_1 = __importDefault(require("express"));
|
43
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
42
44
|
const util_1 = require("@norskvideo/norsk-studio/lib/shared/util");
|
43
45
|
async function defaultRuntime() {
|
44
46
|
const runtime = (0, builder_1.emptyRuntime)();
|
@@ -60,8 +62,30 @@ describe("RTMP Output", () => {
|
|
60
62
|
return compiled;
|
61
63
|
}
|
62
64
|
let norsk = undefined;
|
65
|
+
let app;
|
66
|
+
let server;
|
67
|
+
let port;
|
68
|
+
beforeEach(async () => {
|
69
|
+
app = (0, express_1.default)();
|
70
|
+
app.use(express_1.default.json());
|
71
|
+
server = app.listen(0);
|
72
|
+
port = server.address().port;
|
73
|
+
});
|
63
74
|
afterEach(async () => {
|
64
|
-
|
75
|
+
try {
|
76
|
+
if (server) {
|
77
|
+
await new Promise((resolve) => {
|
78
|
+
server?.close(() => resolve());
|
79
|
+
});
|
80
|
+
}
|
81
|
+
if (norsk) {
|
82
|
+
await norsk.close().catch(() => { });
|
83
|
+
}
|
84
|
+
await new Promise(f => setTimeout(f, 1000));
|
85
|
+
}
|
86
|
+
catch (error) {
|
87
|
+
console.error('Error in afterEach cleanup:', error);
|
88
|
+
}
|
65
89
|
});
|
66
90
|
it("Provides an RTMP output when there is a stream", async () => {
|
67
91
|
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
@@ -100,5 +124,85 @@ describe("RTMP Output", () => {
|
|
100
124
|
await (0, util_1.waitForCondition)(() => sink.streamCount() == 2, 60000, 10);
|
101
125
|
(0, chai_1.expect)(sink.streamCount()).equal(2);
|
102
126
|
});
|
127
|
+
it("should handle initial state correctly", async () => {
|
128
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
129
|
+
const compiled = await testDocument();
|
130
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
131
|
+
const rtmp = result.components["rtmp"];
|
132
|
+
const input = result.components["input"];
|
133
|
+
const source = await (0, sources_1.videoAndAudio)(norsk, 'source');
|
134
|
+
rtmp.subscribe([new runtime_types_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), { type: "take-first-stream", select: client_types_1.Av })], { requireOneOfEverything: true });
|
135
|
+
const sink = new sinks_1.TraceSink(norsk, "sink");
|
136
|
+
await sink.initialised;
|
137
|
+
sink.subscribe([
|
138
|
+
new runtime_types_1.StudioNodeSubscriptionSource(input, compiled.components['input'].yaml, { type: 'take-all-streams', select: ["audio", "video"] }, (0, info_2.default)(client_types_1.RegistrationConsts))
|
139
|
+
]);
|
140
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 2, () => {
|
141
|
+
(0, chai_1.expect)(sink.streamCount()).equal(2);
|
142
|
+
}, 5000, 10);
|
143
|
+
});
|
144
|
+
it("should handle disable and enable cycle correctly", async () => {
|
145
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
146
|
+
const compiled = await testDocument();
|
147
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
148
|
+
const rtmp = result.components["rtmp"];
|
149
|
+
const input = result.components["input"];
|
150
|
+
const source = await (0, sources_1.videoAndAudio)(norsk, 'source');
|
151
|
+
rtmp.subscribe([new runtime_types_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), { type: "take-first-stream", select: client_types_1.Av })], { requireOneOfEverything: true });
|
152
|
+
const sink = new sinks_1.TraceSink(norsk, "sink");
|
153
|
+
await sink.initialised;
|
154
|
+
sink.subscribe([
|
155
|
+
new runtime_types_1.StudioNodeSubscriptionSource(input, compiled.components['input'].yaml, { type: 'take-all-streams', select: ["audio", "video"] }, (0, info_2.default)(client_types_1.RegistrationConsts))
|
156
|
+
]);
|
157
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 2, () => {
|
158
|
+
(0, chai_1.expect)(sink.streamCount()).equal(2);
|
159
|
+
}, 5000, 10);
|
160
|
+
const disableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${rtmp.id}/disable`, {
|
161
|
+
method: 'POST'
|
162
|
+
});
|
163
|
+
(0, chai_1.expect)(disableResponse.status).to.equal(204);
|
164
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 0, () => {
|
165
|
+
(0, chai_1.expect)(sink.streamCount()).equal(0);
|
166
|
+
}, 5000, 10);
|
167
|
+
const enableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${rtmp.id}/enable`, {
|
168
|
+
method: 'POST'
|
169
|
+
});
|
170
|
+
(0, chai_1.expect)(enableResponse.status).to.equal(204);
|
171
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 2, () => {
|
172
|
+
(0, chai_1.expect)(sink.streamCount()).equal(2);
|
173
|
+
}, 5000, 10);
|
174
|
+
});
|
175
|
+
it("should handle invalid API requests appropriately", async () => {
|
176
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
177
|
+
const compiled = await testDocument();
|
178
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
179
|
+
const rtmp = result.components["rtmp"];
|
180
|
+
const input = result.components["input"];
|
181
|
+
const source = await (0, sources_1.videoAndAudio)(norsk, 'source');
|
182
|
+
rtmp.subscribe([new runtime_types_1.StudioNodeSubscriptionSource(source, (0, sources_1.testSourceDescription)(), { type: "take-first-stream", select: client_types_1.Av })], { requireOneOfEverything: true });
|
183
|
+
const sink = new sinks_1.TraceSink(norsk, "sink");
|
184
|
+
await sink.initialised;
|
185
|
+
sink.subscribe([
|
186
|
+
new runtime_types_1.StudioNodeSubscriptionSource(input, compiled.components['input'].yaml, { type: 'take-all-streams', select: ["audio", "video"] }, (0, info_2.default)(client_types_1.RegistrationConsts))
|
187
|
+
]);
|
188
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 2, () => {
|
189
|
+
(0, chai_1.expect)(sink.streamCount()).equal(2);
|
190
|
+
}, 5000, 10);
|
191
|
+
const alreadyEnabledResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${rtmp.id}/enable`, {
|
192
|
+
method: 'POST'
|
193
|
+
});
|
194
|
+
(0, chai_1.expect)(alreadyEnabledResponse.status).to.equal(400);
|
195
|
+
const disableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${rtmp.id}/disable`, {
|
196
|
+
method: 'POST'
|
197
|
+
});
|
198
|
+
(0, chai_1.expect)(disableResponse.status).to.equal(204);
|
199
|
+
await (0, sinks_1.waitForAssert)(() => sink.streamCount() == 0, () => {
|
200
|
+
(0, chai_1.expect)(sink.streamCount()).equal(0);
|
201
|
+
}, 5000, 10);
|
202
|
+
const alreadyDisabledResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${rtmp.id}/disable`, {
|
203
|
+
method: 'POST'
|
204
|
+
});
|
205
|
+
(0, chai_1.expect)(alreadyDisabledResponse.status).to.equal(400);
|
206
|
+
});
|
103
207
|
});
|
104
208
|
//# sourceMappingURL=rtmp-output.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rtmp-output.js","sourceRoot":"","sources":["../../src/test/rtmp-output.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAA8C;AAC9C,2BAAkC;AAElC,
|
1
|
+
{"version":3,"file":"rtmp-output.js","sourceRoot":"","sources":["../../src/test/rtmp-output.ts"],"names":[],"mappings":"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"}
|
@@ -37,6 +37,8 @@ const info_1 = __importDefault(require("../input.srt-listener/info"));
|
|
37
37
|
const client_types_1 = require("@norskvideo/norsk-studio/lib/extension/client-types");
|
38
38
|
const runtime_types_1 = require("@norskvideo/norsk-studio/lib/extension/runtime-types");
|
39
39
|
const chai_1 = require("chai");
|
40
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
41
|
+
const express_1 = __importDefault(require("express"));
|
40
42
|
const util_1 = require("@norskvideo/norsk-studio/lib/shared/util");
|
41
43
|
const sources_1 = require("@norskvideo/norsk-studio/lib/test/_util/sources");
|
42
44
|
async function defaultRuntime() {
|
@@ -451,5 +453,334 @@ describe("SRT Listener Input", () => {
|
|
451
453
|
});
|
452
454
|
});
|
453
455
|
});
|
456
|
+
impl("Permissive SRT Listener stream management", {
|
457
|
+
id: 'srt',
|
458
|
+
displayName: 'srt',
|
459
|
+
port: 65403,
|
460
|
+
host: '0.0.0.0',
|
461
|
+
sourceNames: 'permissive',
|
462
|
+
streamIds: ['stream1'],
|
463
|
+
socketOptions: {}
|
464
|
+
}, (testDocument, _cfg) => {
|
465
|
+
let norsk = undefined;
|
466
|
+
let av = undefined;
|
467
|
+
let srt = undefined;
|
468
|
+
beforeEach(async () => {
|
469
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
470
|
+
av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
471
|
+
});
|
472
|
+
afterEach(async () => {
|
473
|
+
await srt?.close();
|
474
|
+
await norsk?.close();
|
475
|
+
await new Promise(f => setTimeout(f, 1000));
|
476
|
+
});
|
477
|
+
it("should reflect connected client in connectedStreams", async () => {
|
478
|
+
const compiled = await testDocument();
|
479
|
+
const result = await (0, execution_1.default)(norsk, compiled);
|
480
|
+
srt = await norsk.output.srt({
|
481
|
+
id: "av-srt1",
|
482
|
+
mode: "caller",
|
483
|
+
host: "127.0.0.1",
|
484
|
+
port: 65403,
|
485
|
+
streamId: 'stream1'
|
486
|
+
});
|
487
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
488
|
+
await (0, util_1.waitForCondition)(() => {
|
489
|
+
const state = result.runtimeState.latest["srt"];
|
490
|
+
return state.connectedStreams.includes('stream1');
|
491
|
+
}, 5000);
|
492
|
+
});
|
493
|
+
it("should remove disconnected client from connectedStreams", async () => {
|
494
|
+
const compiled = await testDocument();
|
495
|
+
const result = await (0, execution_1.default)(norsk, compiled);
|
496
|
+
srt = await norsk.output.srt({
|
497
|
+
id: "av-srt1",
|
498
|
+
mode: "caller",
|
499
|
+
host: "127.0.0.1",
|
500
|
+
port: 65403,
|
501
|
+
streamId: 'stream1'
|
502
|
+
});
|
503
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
504
|
+
await (0, util_1.waitForCondition)(() => {
|
505
|
+
const state = result.runtimeState.latest["srt"];
|
506
|
+
return state.connectedStreams.includes('stream1');
|
507
|
+
}, 5000);
|
508
|
+
await srt.close();
|
509
|
+
await (0, util_1.waitForCondition)(() => {
|
510
|
+
const state = result.runtimeState.latest["srt"];
|
511
|
+
return !state.connectedStreams.includes('stream1');
|
512
|
+
}, 5000);
|
513
|
+
});
|
514
|
+
});
|
515
|
+
impl("Restrictive SRT Listener stream management", {
|
516
|
+
id: 'srt',
|
517
|
+
displayName: 'srt',
|
518
|
+
port: 65403,
|
519
|
+
host: '0.0.0.0',
|
520
|
+
sourceNames: 'strict',
|
521
|
+
streamIds: ['stream1'],
|
522
|
+
socketOptions: {}
|
523
|
+
}, (testDocument, _cfg) => {
|
524
|
+
let norsk = undefined;
|
525
|
+
let av = undefined;
|
526
|
+
let srt = undefined;
|
527
|
+
beforeEach(async () => {
|
528
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
529
|
+
av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
530
|
+
});
|
531
|
+
afterEach(async () => {
|
532
|
+
await srt?.close();
|
533
|
+
await norsk?.close();
|
534
|
+
await new Promise(f => setTimeout(f, 1000));
|
535
|
+
});
|
536
|
+
it("should reflect connected client in connectedStreams", async () => {
|
537
|
+
const compiled = await testDocument();
|
538
|
+
const result = await (0, execution_1.default)(norsk, compiled);
|
539
|
+
srt = await norsk.output.srt({
|
540
|
+
id: "av-srt1",
|
541
|
+
mode: "caller",
|
542
|
+
host: "127.0.0.1",
|
543
|
+
port: 65403,
|
544
|
+
streamId: 'stream1'
|
545
|
+
});
|
546
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
547
|
+
await (0, util_1.waitForCondition)(() => {
|
548
|
+
const state = result.runtimeState.latest["srt"];
|
549
|
+
return state.connectedStreams.includes('stream1');
|
550
|
+
}, 5000);
|
551
|
+
});
|
552
|
+
it("should remove disconnected client from connectedStreams", async () => {
|
553
|
+
const compiled = await testDocument();
|
554
|
+
const result = await (0, execution_1.default)(norsk, compiled);
|
555
|
+
srt = await norsk.output.srt({
|
556
|
+
id: "av-srt1",
|
557
|
+
mode: "caller",
|
558
|
+
host: "127.0.0.1",
|
559
|
+
port: 65403,
|
560
|
+
streamId: 'stream1'
|
561
|
+
});
|
562
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
563
|
+
await (0, util_1.waitForCondition)(() => {
|
564
|
+
const state = result.runtimeState.latest["srt"];
|
565
|
+
return state.connectedStreams.includes('stream1');
|
566
|
+
}, 5000);
|
567
|
+
await srt.close();
|
568
|
+
await (0, util_1.waitForCondition)(() => {
|
569
|
+
const state = result.runtimeState.latest["srt"];
|
570
|
+
return !state.connectedStreams.includes('stream1');
|
571
|
+
}, 5000);
|
572
|
+
});
|
573
|
+
});
|
574
|
+
describe("SRT Input API", () => {
|
575
|
+
impl("with basic stream management", {
|
576
|
+
id: 'srt',
|
577
|
+
displayName: 'srt',
|
578
|
+
port: 65403,
|
579
|
+
host: '0.0.0.0',
|
580
|
+
sourceNames: 'permissive',
|
581
|
+
streamIds: ['stream1'],
|
582
|
+
socketOptions: {}
|
583
|
+
}, (testDocument, _cfg) => {
|
584
|
+
let norsk = undefined;
|
585
|
+
let app;
|
586
|
+
let server;
|
587
|
+
let port;
|
588
|
+
beforeEach(async () => {
|
589
|
+
norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
|
590
|
+
app = (0, express_1.default)();
|
591
|
+
app.use(express_1.default.json());
|
592
|
+
server = app.listen(0);
|
593
|
+
port = server.address().port;
|
594
|
+
});
|
595
|
+
afterEach(async () => {
|
596
|
+
await norsk?.close();
|
597
|
+
server?.close();
|
598
|
+
});
|
599
|
+
describe("http api", () => {
|
600
|
+
it("disconnect/reconnect cycle via HTTP API", async () => {
|
601
|
+
const compiled = await testDocument();
|
602
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
603
|
+
const srtNode = result.components['srt'];
|
604
|
+
const sink = new sinks_1.TraceSink(norsk, "sink");
|
605
|
+
await sink.initialised;
|
606
|
+
sink.subscribe([
|
607
|
+
new runtime_types_1.StudioNodeSubscriptionSource(srtNode, compiled.components['srt'].yaml, { type: 'take-specific-stream', select: ["audio", "video"], filter: 'stream1' }, (0, info_1.default)(client_types_1.RegistrationConsts))
|
608
|
+
]);
|
609
|
+
const av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
610
|
+
const srt = await norsk.output.srt({
|
611
|
+
id: "av-srt1",
|
612
|
+
mode: "caller",
|
613
|
+
host: "127.0.0.1",
|
614
|
+
port: 65403,
|
615
|
+
streamId: 'stream1',
|
616
|
+
});
|
617
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
618
|
+
await (0, util_1.waitForCondition)(() => sink.streamCount() === 2, 120000);
|
619
|
+
(0, chai_1.expect)(result.runtimeState.latest["srt"].connectedStreams).to.include('stream1');
|
620
|
+
const disconnectResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${srtNode.id}/disconnect`, {
|
621
|
+
method: 'POST',
|
622
|
+
headers: { 'Content-Type': 'application/json' },
|
623
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
624
|
+
});
|
625
|
+
(0, chai_1.expect)(disconnectResponse.status).to.equal(204);
|
626
|
+
await (0, util_1.waitForCondition)(() => sink.streamCount() === 0, 120000, 2);
|
627
|
+
await (0, util_1.waitForCondition)(() => sink.streamCount() === 2, 10000);
|
628
|
+
(0, chai_1.expect)(result.runtimeState.latest["srt"].connectedStreams).to.include('stream1');
|
629
|
+
});
|
630
|
+
it("handles invalid API requests appropriately", async () => {
|
631
|
+
const compiled = await testDocument();
|
632
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
633
|
+
const missingIdResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disconnect`, {
|
634
|
+
method: 'POST',
|
635
|
+
headers: { 'Content-Type': 'application/json' },
|
636
|
+
body: JSON.stringify({})
|
637
|
+
});
|
638
|
+
(0, chai_1.expect)(missingIdResponse.status).to.equal(400);
|
639
|
+
const nonExistentResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disconnect`, {
|
640
|
+
method: 'POST',
|
641
|
+
headers: { 'Content-Type': 'application/json' },
|
642
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
643
|
+
});
|
644
|
+
(0, chai_1.expect)(nonExistentResponse.status).to.equal(404);
|
645
|
+
});
|
646
|
+
it("should prevent connection to disabled stream", async () => {
|
647
|
+
const compiled = await testDocument();
|
648
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
649
|
+
const disableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disable`, {
|
650
|
+
method: 'POST',
|
651
|
+
headers: { 'Content-Type': 'application/json' },
|
652
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
653
|
+
});
|
654
|
+
(0, chai_1.expect)(disableResponse.status).to.equal(204);
|
655
|
+
const av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
656
|
+
const srt = await norsk.output.srt({
|
657
|
+
id: "av-srt1",
|
658
|
+
mode: "caller",
|
659
|
+
host: "127.0.0.1",
|
660
|
+
port: 65403,
|
661
|
+
streamId: 'stream1'
|
662
|
+
});
|
663
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
664
|
+
let failedToConnect = false;
|
665
|
+
await (0, util_1.waitForCondition)(() => {
|
666
|
+
const state = result.runtimeState.latest["srt"];
|
667
|
+
return state.connectedStreams.includes('stream1');
|
668
|
+
}, 2500).catch(() => {
|
669
|
+
failedToConnect = true;
|
670
|
+
}).finally(() => {
|
671
|
+
(0, chai_1.expect)(failedToConnect).is.true;
|
672
|
+
});
|
673
|
+
});
|
674
|
+
it("should allow reconnection after reset", async () => {
|
675
|
+
const compiled = await testDocument();
|
676
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
677
|
+
const av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
678
|
+
let srt = await norsk.output.srt({
|
679
|
+
id: "av-srt1",
|
680
|
+
mode: "caller",
|
681
|
+
host: "127.0.0.1",
|
682
|
+
port: 65403,
|
683
|
+
streamId: 'stream1'
|
684
|
+
});
|
685
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
686
|
+
await (0, util_1.waitForCondition)(() => {
|
687
|
+
const state = result.runtimeState.latest["srt"];
|
688
|
+
return state.connectedStreams.includes('stream1');
|
689
|
+
}, 5000);
|
690
|
+
const resetResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disconnect`, {
|
691
|
+
method: 'POST',
|
692
|
+
headers: { 'Content-Type': 'application/json' },
|
693
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
694
|
+
});
|
695
|
+
(0, chai_1.expect)(resetResponse.status).to.equal(204);
|
696
|
+
await (0, util_1.waitForCondition)(() => {
|
697
|
+
const state = result.runtimeState.latest["srt"];
|
698
|
+
return !state.connectedStreams.includes('stream1');
|
699
|
+
}, 5000);
|
700
|
+
srt = await norsk.output.srt({
|
701
|
+
id: "av-srt2",
|
702
|
+
mode: "caller",
|
703
|
+
host: "127.0.0.1",
|
704
|
+
port: 65403,
|
705
|
+
streamId: 'stream1'
|
706
|
+
});
|
707
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
708
|
+
await (0, util_1.waitForCondition)(() => {
|
709
|
+
const state = result.runtimeState.latest["srt"];
|
710
|
+
return state.connectedStreams.includes('stream1');
|
711
|
+
}, 5000);
|
712
|
+
});
|
713
|
+
it("should prevent reconnection of disabled stream", async () => {
|
714
|
+
const compiled = await testDocument();
|
715
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
716
|
+
const av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
717
|
+
let srt = await norsk.output.srt({
|
718
|
+
id: "av-srt1",
|
719
|
+
mode: "caller",
|
720
|
+
host: "127.0.0.1",
|
721
|
+
port: 65403,
|
722
|
+
streamId: 'stream1'
|
723
|
+
});
|
724
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
725
|
+
await (0, util_1.waitForCondition)(() => {
|
726
|
+
const state = result.runtimeState.latest["srt"];
|
727
|
+
return state.connectedStreams.includes('stream1');
|
728
|
+
}, 5000);
|
729
|
+
const disableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disable`, {
|
730
|
+
method: 'POST',
|
731
|
+
headers: { 'Content-Type': 'application/json' },
|
732
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
733
|
+
});
|
734
|
+
(0, chai_1.expect)(disableResponse.status).to.equal(204);
|
735
|
+
srt = await norsk.output.srt({
|
736
|
+
id: "av-srt2",
|
737
|
+
mode: "caller",
|
738
|
+
host: "127.0.0.1",
|
739
|
+
port: 65403,
|
740
|
+
streamId: 'stream1'
|
741
|
+
});
|
742
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
743
|
+
let failedToConnect = false;
|
744
|
+
await (0, util_1.waitForCondition)(() => {
|
745
|
+
const state = result.runtimeState.latest["srt"];
|
746
|
+
return state.connectedStreams.includes('stream1');
|
747
|
+
}, 2500).catch(() => {
|
748
|
+
failedToConnect = true;
|
749
|
+
}).finally(() => {
|
750
|
+
(0, chai_1.expect)(failedToConnect).is.true;
|
751
|
+
});
|
752
|
+
});
|
753
|
+
it("should allow connection after enabling disabled stream", async () => {
|
754
|
+
const compiled = await testDocument();
|
755
|
+
const result = await (0, execution_1.default)(norsk, compiled, app);
|
756
|
+
const disableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/disable`, {
|
757
|
+
method: 'POST',
|
758
|
+
headers: { 'Content-Type': 'application/json' },
|
759
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
760
|
+
});
|
761
|
+
(0, chai_1.expect)(disableResponse.status).to.equal(204);
|
762
|
+
const enableResponse = await (0, node_fetch_1.default)(`http://localhost:${port}/${result.components['srt'].id}/enable`, {
|
763
|
+
method: 'POST',
|
764
|
+
headers: { 'Content-Type': 'application/json' },
|
765
|
+
body: JSON.stringify({ streamId: 'stream1' })
|
766
|
+
});
|
767
|
+
(0, chai_1.expect)(enableResponse.status).to.equal(204);
|
768
|
+
const av = await (0, sources_1._videoAndAudio)(norsk, "source");
|
769
|
+
const srt = await norsk.output.srt({
|
770
|
+
id: "av-srt1",
|
771
|
+
mode: "caller",
|
772
|
+
host: "127.0.0.1",
|
773
|
+
port: 65403,
|
774
|
+
streamId: 'stream1'
|
775
|
+
});
|
776
|
+
srt.subscribe([{ source: av, sourceSelector: norsk_sdk_1.selectAV }]);
|
777
|
+
await (0, util_1.waitForCondition)(() => {
|
778
|
+
const state = result.runtimeState.latest["srt"];
|
779
|
+
return state.connectedStreams.includes('stream1');
|
780
|
+
}, 5000);
|
781
|
+
});
|
782
|
+
});
|
783
|
+
});
|
784
|
+
});
|
454
785
|
});
|
455
786
|
//# sourceMappingURL=srt-input-listener.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"srt-input-listener.js","sourceRoot":"","sources":["../../src/test/srt-input-listener.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"srt-input-listener.js","sourceRoot":"","sources":["../../src/test/srt-input-listener.ts"],"names":[],"mappings":"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"}
|