@norskvideo/norsk-studio-built-ins 1.19.0 → 1.26.0-2025-02-19-e81e84b9

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 (247) hide show
  1. package/client/info.js +5983 -699
  2. package/client/output.preview/styles.css +69 -69
  3. package/client/output.whep/styles.css +9 -0
  4. package/client/style.css +283 -856
  5. package/lib/info.js +14 -14
  6. package/lib/info.js.map +1 -1
  7. package/lib/input.rtmp/info.js +19 -5
  8. package/lib/input.rtmp/info.js.map +1 -1
  9. package/lib/input.rtmp/inline-view.js +3 -3
  10. package/lib/input.rtmp/runtime.d.ts +46 -7
  11. package/lib/input.rtmp/runtime.js +245 -59
  12. package/lib/input.rtmp/runtime.js.map +1 -1
  13. package/lib/input.rtmp/summary-view.d.ts +3 -5
  14. package/lib/input.rtmp/summary-view.js +51 -6
  15. package/lib/input.rtmp/summary-view.js.map +1 -1
  16. package/lib/input.rtmp/types.d.ts +193 -0
  17. package/lib/{processor.browserOverlay/openApi.js → input.rtmp/types.js} +1 -1
  18. package/lib/input.rtmp/types.js.map +1 -0
  19. package/lib/input.rtmp/types.yaml +147 -0
  20. package/lib/input.silence/info.js +9 -2
  21. package/lib/input.silence/info.js.map +1 -1
  22. package/lib/input.silence/runtime.d.ts +1 -0
  23. package/lib/input.silence/runtime.js.map +1 -1
  24. package/lib/input.srt-caller/info.js +8 -1
  25. package/lib/input.srt-caller/info.js.map +1 -1
  26. package/lib/input.srt-caller/runtime.d.ts +1 -0
  27. package/lib/input.srt-caller/runtime.js.map +1 -1
  28. package/lib/input.srt-listener/info.js +15 -2
  29. package/lib/input.srt-listener/info.js.map +1 -1
  30. package/lib/input.srt-listener/runtime.d.ts +41 -5
  31. package/lib/input.srt-listener/runtime.js +236 -57
  32. package/lib/input.srt-listener/runtime.js.map +1 -1
  33. package/lib/input.srt-listener/summary-view.d.ts +3 -5
  34. package/lib/input.srt-listener/summary-view.js +45 -6
  35. package/lib/input.srt-listener/summary-view.js.map +1 -1
  36. package/lib/input.srt-listener/types.d.ts +193 -0
  37. package/lib/input.srt-listener/types.js +3 -0
  38. package/lib/input.srt-listener/types.js.map +1 -0
  39. package/lib/input.srt-listener/types.yaml +145 -0
  40. package/lib/input.udp-ts/info.js +2 -1
  41. package/lib/input.udp-ts/info.js.map +1 -1
  42. package/lib/input.udp-ts/runtime.d.ts +1 -0
  43. package/lib/input.udp-ts/runtime.js.map +1 -1
  44. package/lib/input.videoTestCard/info.d.ts +1 -1
  45. package/lib/input.videoTestCard/info.js +17 -4
  46. package/lib/input.videoTestCard/info.js.map +1 -1
  47. package/lib/input.videoTestCard/runtime.d.ts +1 -0
  48. package/lib/output.autoCmaf/form-views.d.ts +2 -2
  49. package/lib/output.autoCmaf/form-views.js +13 -3
  50. package/lib/output.autoCmaf/form-views.js.map +1 -1
  51. package/lib/output.autoCmaf/info.d.ts +21 -2
  52. package/lib/output.autoCmaf/info.js +106 -32
  53. package/lib/output.autoCmaf/info.js.map +1 -1
  54. package/lib/output.autoCmaf/inline-view.d.ts +6 -0
  55. package/lib/output.autoCmaf/inline-view.js +8 -0
  56. package/lib/output.autoCmaf/inline-view.js.map +1 -0
  57. package/lib/output.autoCmaf/runtime.d.ts +29 -43
  58. package/lib/output.autoCmaf/runtime.js +314 -96
  59. package/lib/output.autoCmaf/runtime.js.map +1 -1
  60. package/lib/output.autoCmaf/summary-view.d.ts +4 -0
  61. package/lib/output.autoCmaf/summary-view.js +24 -0
  62. package/lib/output.autoCmaf/summary-view.js.map +1 -0
  63. package/lib/output.autoCmaf/summary.js +3 -0
  64. package/lib/output.autoCmaf/summary.js.map +1 -1
  65. package/lib/output.autoCmaf/types.d.ts +158 -0
  66. package/lib/output.autoCmaf/types.js +3 -0
  67. package/lib/output.autoCmaf/types.js.map +1 -0
  68. package/lib/output.autoCmaf/types.yaml +182 -0
  69. package/lib/output.autoHls/info.d.ts +3 -0
  70. package/lib/output.autoHls/info.js +22 -0
  71. package/lib/output.autoHls/info.js.map +1 -0
  72. package/lib/output.autoHls/runtime.d.ts +6 -0
  73. package/lib/output.autoHls/runtime.js +13 -0
  74. package/lib/output.autoHls/runtime.js.map +1 -0
  75. package/lib/output.preview/info.d.ts +5 -2
  76. package/lib/output.preview/info.js +23 -3
  77. package/lib/output.preview/info.js.map +1 -1
  78. package/lib/output.preview/inline-view.d.ts +2 -4
  79. package/lib/output.preview/inline-view.js +65 -7
  80. package/lib/output.preview/inline-view.js.map +1 -1
  81. package/lib/output.preview/runtime.d.ts +18 -12
  82. package/lib/output.preview/runtime.js +122 -33
  83. package/lib/output.preview/runtime.js.map +1 -1
  84. package/lib/output.preview/types.d.ts +56 -0
  85. package/lib/output.preview/types.js +3 -0
  86. package/lib/output.preview/types.js.map +1 -0
  87. package/lib/output.preview/types.yaml +37 -0
  88. package/lib/output.rtmp/info.js +14 -2
  89. package/lib/output.rtmp/info.js.map +1 -1
  90. package/lib/output.rtmp/inline-view.js +5 -2
  91. package/lib/output.rtmp/inline-view.js.map +1 -1
  92. package/lib/output.rtmp/runtime.d.ts +31 -5
  93. package/lib/output.rtmp/runtime.js +169 -34
  94. package/lib/output.rtmp/runtime.js.map +1 -1
  95. package/lib/output.rtmp/summary-view.d.ts +4 -0
  96. package/lib/output.rtmp/summary-view.js +24 -0
  97. package/lib/output.rtmp/summary-view.js.map +1 -0
  98. package/lib/output.rtmp/types.d.ts +101 -0
  99. package/lib/output.rtmp/types.js +3 -0
  100. package/lib/output.rtmp/types.js.map +1 -0
  101. package/lib/output.rtmp/types.yaml +30 -0
  102. package/lib/output.srt/info.d.ts +2 -2
  103. package/lib/output.srt/info.js +29 -1
  104. package/lib/output.srt/info.js.map +1 -1
  105. package/lib/output.srt/inline-view.d.ts +6 -0
  106. package/lib/output.srt/inline-view.js +8 -0
  107. package/lib/output.srt/inline-view.js.map +1 -0
  108. package/lib/output.srt/runtime.d.ts +35 -5
  109. package/lib/output.srt/runtime.js +174 -6
  110. package/lib/output.srt/runtime.js.map +1 -1
  111. package/lib/output.srt/summary-view.d.ts +4 -0
  112. package/lib/output.srt/summary-view.js +24 -0
  113. package/lib/output.srt/summary-view.js.map +1 -0
  114. package/lib/output.srt/types.d.ts +101 -0
  115. package/lib/output.srt/types.js +3 -0
  116. package/lib/output.srt/types.js.map +1 -0
  117. package/lib/output.srt/types.yaml +31 -0
  118. package/lib/output.statistics/info.js +3 -1
  119. package/lib/output.statistics/info.js.map +1 -1
  120. package/lib/output.statistics/inline-view.js +3 -2
  121. package/lib/output.statistics/inline-view.js.map +1 -1
  122. package/lib/output.statistics/runtime.d.ts +1 -0
  123. package/lib/output.statistics/runtime.js.map +1 -1
  124. package/lib/output.udpTs/info.js +4 -0
  125. package/lib/output.udpTs/info.js.map +1 -1
  126. package/lib/output.udpTs/runtime.d.ts +1 -0
  127. package/lib/output.udpTs/runtime.js.map +1 -1
  128. package/lib/output.whep/info.d.ts +2 -2
  129. package/lib/output.whep/info.js +61 -1
  130. package/lib/output.whep/info.js.map +1 -1
  131. package/lib/output.whep/inline-view.d.ts +4 -0
  132. package/lib/output.whep/inline-view.js +57 -0
  133. package/lib/output.whep/inline-view.js.map +1 -0
  134. package/lib/output.whep/runtime.d.ts +39 -5
  135. package/lib/output.whep/runtime.js +175 -13
  136. package/lib/output.whep/runtime.js.map +1 -1
  137. package/lib/output.whep/summary-view.d.ts +4 -0
  138. package/lib/output.whep/summary-view.js +24 -0
  139. package/lib/output.whep/summary-view.js.map +1 -0
  140. package/lib/output.whep/types.d.ts +101 -0
  141. package/lib/output.whep/types.js +3 -0
  142. package/lib/output.whep/types.js.map +1 -0
  143. package/lib/output.whep/types.yaml +30 -0
  144. package/lib/processor.audioEncoder/form-views.d.ts +8 -0
  145. package/lib/processor.audioEncoder/form-views.js +8 -0
  146. package/lib/processor.audioEncoder/form-views.js.map +1 -0
  147. package/lib/processor.audioEncoder/info.d.ts +3 -0
  148. package/lib/processor.audioEncoder/info.js +160 -0
  149. package/lib/processor.audioEncoder/info.js.map +1 -0
  150. package/lib/processor.audioEncoder/runtime.d.ts +21 -0
  151. package/lib/processor.audioEncoder/runtime.js +20 -0
  152. package/lib/processor.audioEncoder/runtime.js.map +1 -0
  153. package/lib/processor.browserOverlay/info.js +1 -0
  154. package/lib/processor.browserOverlay/info.js.map +1 -1
  155. package/lib/processor.browserOverlay/runtime.d.ts +1 -0
  156. package/lib/processor.browserOverlay/runtime.js +6 -26
  157. package/lib/processor.browserOverlay/runtime.js.map +1 -1
  158. package/lib/processor.browserOverlay/types.js +3 -0
  159. package/lib/processor.browserOverlay/types.js.map +1 -0
  160. package/lib/processor.cascadingSwitch/info.js +3 -2
  161. package/lib/processor.cascadingSwitch/info.js.map +1 -1
  162. package/lib/processor.cascadingSwitch/inline-view.js +3 -3
  163. package/lib/processor.cascadingSwitch/runtime.d.ts +1 -0
  164. package/lib/processor.cascadingSwitch/runtime.js +2 -2
  165. package/lib/processor.cascadingSwitch/runtime.js.map +1 -1
  166. package/lib/processor.fixedLadder/codec-editor.js +1 -1
  167. package/lib/processor.fixedLadder/codec-editor.js.map +1 -1
  168. package/lib/processor.fixedLadder/codec-view.d.ts +1 -1
  169. package/lib/processor.fixedLadder/codec-view.js +1 -1
  170. package/lib/processor.fixedLadder/codec-view.js.map +1 -1
  171. package/lib/processor.fixedLadder/info.d.ts +33 -7
  172. package/lib/processor.fixedLadder/info.js +19 -6
  173. package/lib/processor.fixedLadder/info.js.map +1 -1
  174. package/lib/processor.fixedLadder/runtime.d.ts +16 -29
  175. package/lib/processor.fixedLadder/runtime.js +16 -1
  176. package/lib/processor.fixedLadder/runtime.js.map +1 -1
  177. package/lib/processor.fixedLadder/types.d.ts +240 -0
  178. package/lib/processor.fixedLadder/types.js +3 -0
  179. package/lib/processor.fixedLadder/types.js.map +1 -0
  180. package/lib/processor.fixedLadder/types.yaml +541 -0
  181. package/lib/processor.onscreenGraphic/info.js +11 -5
  182. package/lib/processor.onscreenGraphic/info.js.map +1 -1
  183. package/lib/processor.onscreenGraphic/runtime.d.ts +27 -2
  184. package/lib/processor.onscreenGraphic/runtime.js +116 -52
  185. package/lib/processor.onscreenGraphic/runtime.js.map +1 -1
  186. package/lib/processor.onscreenGraphic/summary-view.d.ts +1 -1
  187. package/lib/processor.onscreenGraphic/summary-view.js +235 -11
  188. package/lib/processor.onscreenGraphic/summary-view.js.map +1 -1
  189. package/lib/processor.onscreenGraphic/types.d.ts +15 -1
  190. package/lib/processor.onscreenGraphic/types.yaml +63 -14
  191. package/lib/processor.streamKeyOverride/info.d.ts +3 -0
  192. package/lib/processor.streamKeyOverride/info.js +151 -0
  193. package/lib/processor.streamKeyOverride/info.js.map +1 -0
  194. package/lib/processor.streamKeyOverride/runtime.d.ts +55 -0
  195. package/lib/processor.streamKeyOverride/runtime.js +226 -0
  196. package/lib/processor.streamKeyOverride/runtime.js.map +1 -0
  197. package/lib/shared/api.d.ts +35 -0
  198. package/lib/shared/api.js +34 -0
  199. package/lib/shared/api.js.map +1 -0
  200. package/lib/test/auto-cmaf.js +219 -43
  201. package/lib/test/auto-cmaf.js.map +1 -1
  202. package/lib/test/onscreen-graphic.js +79 -42
  203. package/lib/test/onscreen-graphic.js.map +1 -1
  204. package/lib/test/preview.js +69 -64
  205. package/lib/test/preview.js.map +1 -1
  206. package/lib/test/rtmp-input.js +6 -3
  207. package/lib/test/rtmp-input.js.map +1 -1
  208. package/lib/test/rtmp-output.js +105 -1
  209. package/lib/test/rtmp-output.js.map +1 -1
  210. package/lib/test/srt-input-listener.js +331 -0
  211. package/lib/test/srt-input-listener.js.map +1 -1
  212. package/lib/test/srt-output.js +93 -4
  213. package/lib/test/srt-output.js.map +1 -1
  214. package/lib/test/whep-output.js +192 -5
  215. package/lib/test/whep-output.js.map +1 -1
  216. package/lib/util.stats.latency/info.js +1 -0
  217. package/lib/util.stats.latency/info.js.map +1 -1
  218. package/lib/util.stats.latency/runtime.d.ts +1 -0
  219. package/lib/util.stats.latency/runtime.js +2 -2
  220. package/lib/util.stats.latency/runtime.js.map +1 -1
  221. package/package.json +4 -4
  222. package/lib/processor.browserOverlay/openApi.js.map +0 -1
  223. package/lib/processor.whisper-transcribe/info.d.ts +0 -3
  224. package/lib/processor.whisper-transcribe/info.js +0 -44
  225. package/lib/processor.whisper-transcribe/info.js.map +0 -1
  226. package/lib/processor.whisper-transcribe/runtime.d.ts +0 -29
  227. package/lib/processor.whisper-transcribe/runtime.js +0 -83
  228. package/lib/processor.whisper-transcribe/runtime.js.map +0 -1
  229. package/lib/util.stats.ma35d/info.d.ts +0 -3
  230. package/lib/util.stats.ma35d/info.js +0 -79
  231. package/lib/util.stats.ma35d/info.js.map +0 -1
  232. package/lib/util.stats.ma35d/inline-view.d.ts +0 -6
  233. package/lib/util.stats.ma35d/inline-view.js +0 -76
  234. package/lib/util.stats.ma35d/inline-view.js.map +0 -1
  235. package/lib/util.stats.ma35d/runtime.d.ts +0 -21
  236. package/lib/util.stats.ma35d/runtime.js +0 -49
  237. package/lib/util.stats.ma35d/runtime.js.map +0 -1
  238. package/lib/util.timestamps/info.d.ts +0 -5
  239. package/lib/util.timestamps/info.js +0 -87
  240. package/lib/util.timestamps/info.js.map +0 -1
  241. package/lib/util.timestamps/inline-view.d.ts +0 -6
  242. package/lib/util.timestamps/inline-view.js +0 -94
  243. package/lib/util.timestamps/inline-view.js.map +0 -1
  244. package/lib/util.timestamps/runtime.d.ts +0 -29
  245. package/lib/util.timestamps/runtime.js +0 -40
  246. package/lib/util.timestamps/runtime.js.map +0 -1
  247. /package/lib/processor.browserOverlay/{openApi.d.ts → types.d.ts} +0 -0
@@ -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
- await norsk?.close();
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":"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"}
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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"}