@norskvideo/norsk-studio-built-ins 1.27.0-2025-05-21-b03b48ea → 1.27.0-2025-05-26-a443eb84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,64 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: The Gate Component
4
+ version: 1.0.0
5
+
6
+ paths:
7
+ /status:
8
+ get:
9
+ summary: The current status of this gate
10
+ responses:
11
+ 200:
12
+ description: The current status
13
+ content:
14
+ application/json:
15
+ schema:
16
+ $ref: "#/components/schemas/GateStatusBody"
17
+ put:
18
+ summary: Change the current status of this gate
19
+ requestBody:
20
+ description: The desired status
21
+ content:
22
+ application/json:
23
+ schema:
24
+ $ref: "#/components/schemas/GateStatusBody"
25
+ responses:
26
+ 204:
27
+ description: The status successfully updated
28
+ 400:
29
+ description: Invalid request
30
+ content:
31
+ application/json:
32
+ schema:
33
+ $ref: '#/components/schemas/errorResponse'
34
+ 404:
35
+ description: Component not found
36
+
37
+ components:
38
+ schemas:
39
+ GateStatus:
40
+ type: string
41
+ enum: ['open', 'closed']
42
+
43
+ GateStatusBody:
44
+ type: object
45
+ properties:
46
+ status:
47
+ $ref: '#/components/schemas/GateStatus'
48
+ required:
49
+ - status
50
+
51
+ emptyObject:
52
+ type: object
53
+ example: {}
54
+
55
+ errorResponse:
56
+ type: object
57
+ description: Details of why the request failed
58
+ properties:
59
+ error:
60
+ type: string
61
+ description: A description of the error
62
+ details:
63
+ type: string
64
+ description: The unacceptable data
@@ -70,6 +70,7 @@ class SmartSingleMediaSwitch extends base_nodes_1.CustomAutoDuplexNode {
70
70
  sampleRate: this.cfg.sampleRate,
71
71
  channelLayout: this.cfg.channelLayout,
72
72
  onInboundContextChange: this.onSwitchContext.bind(this),
73
+ transitionDurationMs: 0,
73
74
  onTransitionComplete: this.onTransitionComplete.bind(this)
74
75
  });
75
76
  this.audio = audio;
@@ -90,7 +91,8 @@ class SmartSingleMediaSwitch extends base_nodes_1.CustomAutoDuplexNode {
90
91
  async onSwitchContext(allStreams) {
91
92
  const oldSources = this.availableSources;
92
93
  this.availableSources = this.cfg.sources.filter((source) => {
93
- return !!allStreams.get(definitionToKey(source));
94
+ const matching = allStreams.get(definitionToKey(source))?.filter((s) => s.message.value);
95
+ return matching?.length == 1;
94
96
  }).map((s) => definitionToKey(s));
95
97
  (0, logging_1.debuglog)("Available sources discovered", { sources: this.availableSources, id: this.id });
96
98
  const active = this.availableSources.at(0);
@@ -113,7 +115,8 @@ class SmartSingleMediaSwitch extends base_nodes_1.CustomAutoDuplexNode {
113
115
  }
114
116
  async subscribe(subs) {
115
117
  this.subscriptions = subs;
116
- this.media = subs.map((s) => s.definition.media).filter((m, i, a) => a.indexOf(m) == i);
118
+ this.media = subs
119
+ .map((s) => s.definition.media).filter((m, i, a) => a.indexOf(m) == i);
117
120
  const subscriptions = subs.flatMap((s) => {
118
121
  return s.selectToPin(definitionToKey(s.definition));
119
122
  });
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.smartSingleMediaSwitch/runtime.ts"],"names":[],"mappings":";;;AAyEA,0CAWC;AApFD,qDAK+B;AAE/B,sDAAyD;AAEzD,kFAAyF;AAEzF,yEAAuE;AAkCvE,MAAqB,gCAAgC;IAKnD,KAAK,CAAC,MAAM,CAAC,KAAY,EACvB,GAAiC,EACjC,EAAqC,EACrC,EAAE,OAAO,EAA0G;QAEnH,MAAM,qBAAqB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACrD,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;QAC7I,CAAC,CAAA;QAED,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;YACxC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACzH,CAAC,CAAA;QAED,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;YACzC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1H,CAAC,CAAA;QACD,MAAM,YAAY,GAAG,EAAE,qBAAqB,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,GAAG,EAAE,CAAC;QACxF,MAAM,IAAI,GAAG,IAAI,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,EAAE,CAAC,IAAI,CAAC,CAAC;IACX,CAAC;CACF;AA1BD,mDA0BC;AAED,SAAgB,eAAe,CAAC,CAAyB;IACvD,MAAM,UAAU,GAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,CAAC,CAAC,UAAU;QACd,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,CAAC,aAAa;QACjB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,QAAQ;QACZ,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,CAAC,aAAa;QACjB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAaD,MAAa,sBAAuB,SAAQ,iCAAoB;IAC9D,KAAK,CAAQ;IACb,GAAG,CAAuC;IAC1C,KAAK,CAAiB;IACtB,KAAK,CAA8B;IACnC,MAAM,CAAkC;IACxC,WAAW,CAAgB;IAC3B,YAAY,GAAW,EAAE,CAAC;IAC1B,gBAAgB,GAAa,EAAE,CAAC;IAChC,aAAa,GAAiC,EAAE,CAAC;IACjD,KAAK,GAAY,EAAE,CAAC;IAEpB,KAAK,CAAC,UAAU;QACd,MAAM,KAAK,GAAG,MAAM,uBAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EACjD;YACE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB;YAClC,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB;YAC3C,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;YACrC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;SAChC,CAAC,CAAC;QACL,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YACjD,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa;YAC/B,UAAU,EAAE,YAAY;YACxB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YAC/B,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;YAC7B,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACnE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS;YAC3B,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;YACzB,YAAY,EAAE,UAAU;YACxB,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YACrC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;YAC7B,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YAC/B,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;YACrC,sBAAsB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,YAAY,KAAY,EAAE,GAAyC;QACjE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAyC;QAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YACzD,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;QAEjC,IAAA,kBAAQ,EAAC,8BAA8B,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAE1F,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAE3C,IAAI,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,MAAM,EAAE,CAAC;YAC1C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;YAC3B,MAAM,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;aAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;YAC/B,MAAM,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,CAAA;QAC7C,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC3C,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC/B,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAkC;QAChD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAExF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvC,OAAO,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;QACrD,CAAC,CAAC,CAAC;QAIH,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,IAAI,CAChB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAoB,EAAE,cAAc,EAAE,IAAA,sBAAU,EAAC,UAAU,CAAC,EAAE,CAChH,CAAC;QACJ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,IAAI,CAChB;gBACE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAA,sBAAU,EAAC,UAAU,CAAC;aAC3D,CACF,CAAC;QAEJ,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAGQ,KAAK,CAAC,KAAK;QAClB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF;AArHD,wDAqHC"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.smartSingleMediaSwitch/runtime.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.SmartSourceSwitch = void 0;
4
4
  const norsk_sdk_1 = require("@norskvideo/norsk-sdk");
5
5
  const runtime_1 = require("../input.silence/runtime");
6
6
  const base_nodes_1 = require("@norskvideo/norsk-studio/lib/extension/base-nodes");
7
+ const logging_1 = require("@norskvideo/norsk-studio/lib/server/logging");
7
8
  class SmartSourceSwitchDefinition {
8
9
  async create(norsk, cfg, cb, { updates }) {
9
10
  const onActiveSourceChanged = (activeSource) => {
@@ -54,6 +55,7 @@ class SmartSourceSwitch extends base_nodes_1.CustomAutoDuplexNode {
54
55
  outputResolution: this.cfg.resolution,
55
56
  frameRate: this.cfg.frameRate,
56
57
  sampleRate: this.cfg.sampleRate,
58
+ transitionDurationMs: 0,
57
59
  channelLayout: this.cfg.channelLayout,
58
60
  onInboundContextChange: this.onSwitchContext.bind(this),
59
61
  onTransitionComplete: this.onTransitionComplete.bind(this)
@@ -76,15 +78,17 @@ class SmartSourceSwitch extends base_nodes_1.CustomAutoDuplexNode {
76
78
  async onSwitchContext(allStreams) {
77
79
  const oldSources = this.availableSources;
78
80
  this.availableSources = this.cfg.sources.filter((s) => {
79
- const matching = allStreams.get(s);
80
- return matching?.length == this.media.length;
81
+ const matching = allStreams.get(s)?.filter((s) => s.message.value);
82
+ return matching?.length === this.media.length;
81
83
  });
82
84
  const active = this.availableSources.at(0);
83
85
  if (active && this.activeSource != active) {
84
86
  this.activeSource = active;
87
+ (0, logging_1.debuglog)("Switching to source as streams are available", { id: this.id, active });
85
88
  await this.smooth?.switchSource(active);
86
89
  }
87
90
  else if (!active && this.activeSource != 'fallback') {
91
+ (0, logging_1.debuglog)("Switching to fallback as no streams available", { id: this.id });
88
92
  this.activeSource = 'fallback';
89
93
  await this.smooth?.switchSource("fallback");
90
94
  }
@@ -109,7 +113,9 @@ class SmartSourceSwitch extends base_nodes_1.CustomAutoDuplexNode {
109
113
  subscriptions.push({
110
114
  source: this.video, sourceSelector: (0, norsk_sdk_1.videoToPin)("fallback")
111
115
  });
112
- this.smooth?.subscribeToPins(subscriptions, () => true);
116
+ this.smooth?.subscribeToPins(subscriptions, (_ctx) => {
117
+ return true;
118
+ });
113
119
  }
114
120
  async close() {
115
121
  await super.close();
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.smartSourceSwitch/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.smartSourceSwitch/runtime.ts"],"names":[],"mappings":";;;AAAA,qDAK+B;AAE/B,sDAAyD;AAEzD,kFAAyF;AAEzF,yEAAuE;AAkCvE,MAAqB,2BAA2B;IAK9C,KAAK,CAAC,MAAM,CAAC,KAAY,EACvB,GAA4B,EAC5B,EAAgC,EAChC,EAAE,OAAO,EAA2F;QAEpG,MAAM,qBAAqB,GAAG,CAAC,YAAoB,EAAE,EAAE;YACrD,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC,CAAA;QAED,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;YACxC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC,CAAA;QAED,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;YACzC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,CAAC,CAAA;QAED,MAAM,YAAY,GAAG,EAAE,qBAAqB,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,GAAG,EAAE,CAAC;QACxF,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACxD,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,EAAE,CAAC,IAAI,CAAC,CAAC;IACX,CAAC;CACF;AA3BD,8CA2BC;AAYD,MAAa,iBAAkB,SAAQ,iCAAoB;IACzD,KAAK,CAAQ;IACb,GAAG,CAAkC;IACrC,KAAK,CAAiB;IACtB,KAAK,CAA8B;IACnC,MAAM,CAAkC;IACxC,WAAW,CAAgB;IAC3B,YAAY,GAAW,EAAE,CAAC;IAC1B,gBAAgB,GAAa,EAAE,CAAC;IAChC,aAAa,GAAiC,EAAE,CAAC;IACjD,KAAK,GAAY,EAAE,CAAC;IAEpB,KAAK,CAAC,UAAU;QACd,MAAM,KAAK,GAAG,MAAM,uBAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EACjD;YACE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB;YAClC,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,gBAAgB;YAC3C,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;YACrC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;SAChC,CAAC,CAAC;QACL,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YACjD,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa;YAC/B,UAAU,EAAE,YAAY;YACxB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YAC/B,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;YAC7B,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACnE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS;YAC3B,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;YACzB,YAAY,EAAE,UAAU;YACxB,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YACrC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;YAC7B,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;YAC/B,oBAAoB,EAAE,CAAC;YACvB,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa;YACrC,sBAAsB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,YAAY,KAAY,EAAE,GAAoC;QAC5D,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAyC;QAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACpD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnE,OAAO,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;QAC/C,CAAC,CAAC,CAAA;QAGF,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAE3C,IAAI,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,MAAM,EAAE,CAAC;YAC1C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;YAC3B,IAAA,kBAAQ,EAAC,8CAA8C,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;YACjF,MAAM,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;aAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;YACtD,IAAA,kBAAQ,EAAC,+CAA+C,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;YAC1E,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;YAC/B,MAAM,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,CAAA;QAC7C,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC3C,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC/B,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAkC;QAChD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAExF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,IAAI,SAAS,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAmC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE7D,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,IAAI,CAChB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAoB,EAAE,cAAc,EAAE,IAAA,sBAAU,EAAC,UAAU,CAAC,EAAE,CAChH,CAAC;QACJ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,IAAI,CAChB;gBACE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAA,sBAAU,EAAC,UAAU,CAAC;aAC3D,CACF,CAAC;QAEJ,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACnD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IAGL,CAAC;IAGQ,KAAK,CAAC,KAAK;QAClB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF;AA1HD,8CA0HC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,187 @@
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 builder_1 = require("@norskvideo/norsk-studio/lib/test/_util/builder");
31
+ const document = __importStar(require("@norskvideo/norsk-studio/lib/runtime/document"));
32
+ const yaml_1 = __importDefault(require("yaml"));
33
+ const execution_1 = __importDefault(require("@norskvideo/norsk-studio/lib/runtime/execution"));
34
+ const sinks_1 = require("@norskvideo/norsk-studio/lib/test/_util/sinks");
35
+ const express_1 = __importDefault(require("express"));
36
+ const info_1 = __importDefault(require("../processor.gate/info"));
37
+ const chai_1 = require("chai");
38
+ const runtime_1 = require("@norskvideo/norsk-studio/lib/test/_util/runtime");
39
+ const client_types_1 = require("@norskvideo/norsk-studio/lib/extension/client-types");
40
+ const __1 = __importDefault(require(".."));
41
+ const util_1 = require("@norskvideo/norsk-studio/lib/shared/util");
42
+ const GateInfo = (0, info_1.default)(client_types_1.RegistrationConsts);
43
+ async function createRuntime() {
44
+ const runtime = await (0, runtime_1.testRuntime)();
45
+ await (0, __1.default)(runtime);
46
+ return runtime;
47
+ }
48
+ describe("Gate", () => {
49
+ const config = {
50
+ id: 'foo',
51
+ initialStatus: 'closed'
52
+ };
53
+ let listener = undefined;
54
+ let port = 0;
55
+ let app = undefined;
56
+ describe("Runtime", () => {
57
+ async function testDocument(cb) {
58
+ const runtime = await createRuntime();
59
+ const yaml = new builder_1.YamlBuilder();
60
+ const ss = new builder_1.YamlNodeBuilder('gate', GateInfo, config);
61
+ const a = app = (0, express_1.default)();
62
+ app.use(express_1.default.json());
63
+ await new Promise((r) => {
64
+ listener = a.listen(0, '127.0.0.1', () => {
65
+ const address = listener.address();
66
+ port = address.port;
67
+ r();
68
+ });
69
+ });
70
+ yaml.addNode((new builder_1.YamlNodeBuilder('primary', runtime_1.AvInput.info, { sourceName: true })).reify());
71
+ yaml.addNode((new builder_1.YamlNodeBuilder('backup', runtime_1.AvInput.info, { sourceName: true })).reify());
72
+ ss.subscribe("primary", ["video", "audio"]);
73
+ ss.subscribe("backup", ["video", "audio"]);
74
+ cb?.(yaml, ss);
75
+ yaml.addNode(ss.reify());
76
+ const compiled = document.load(__filename, runtime, yaml_1.default.stringify(yaml.reify()));
77
+ return compiled;
78
+ }
79
+ let norsk = undefined;
80
+ let result = undefined;
81
+ afterEach(async () => {
82
+ await norsk?.close();
83
+ listener.close();
84
+ await new Promise((r) => {
85
+ setTimeout(() => {
86
+ r();
87
+ }, 10.0);
88
+ });
89
+ norsk = undefined;
90
+ result = undefined;
91
+ });
92
+ const latestState = () => {
93
+ return result?.runtimeState.getNodeState('gate');
94
+ };
95
+ describe("Starting up in 'open' mode", () => {
96
+ it("Should output all streams", async () => {
97
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
98
+ const compiled = await testDocument((_yaml, ss) => {
99
+ ss.node.config = { ...ss.node.config, initialStatus: 'open' };
100
+ });
101
+ result = await (0, execution_1.default)(norsk, compiled, app);
102
+ const gate = result.components['gate'];
103
+ await Promise.all([
104
+ (0, sinks_1.assertNodeOutputsAudioFrames)(norsk, result, 'gate'),
105
+ (0, sinks_1.assertNodeOutputsVideoFrames)(norsk, result, 'gate'),
106
+ (0, sinks_1.waitForAssert)(() => gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 4, () => {
107
+ (0, chai_1.expect)(gate.status).equal('open');
108
+ (0, chai_1.expect)(latestState()?.status).equal('open');
109
+ (0, chai_1.expect)(gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 4);
110
+ }, 10000.0, 10.0)
111
+ ]);
112
+ });
113
+ });
114
+ describe("Starting up in 'closed' mode", () => {
115
+ it("Should output no streams", async () => {
116
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
117
+ const compiled = await testDocument((_yaml, ss) => {
118
+ ss.node.config = { ...ss.node.config, initialStatus: 'closed' };
119
+ });
120
+ result = await (0, execution_1.default)(norsk, compiled, app);
121
+ const gate = result.components['gate'];
122
+ await Promise.all([
123
+ (0, sinks_1.waitForAssert)(() => gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 0, () => {
124
+ (0, chai_1.expect)(gate.status).equal('closed');
125
+ (0, chai_1.expect)(latestState()?.status).equal('closed');
126
+ (0, chai_1.expect)(gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 0);
127
+ }, 10000.0, 10.0)
128
+ ]);
129
+ });
130
+ });
131
+ function apiUrl(id, port) {
132
+ return `http://127.0.0.1:${port}/${id}/status`;
133
+ }
134
+ describe("Closing the gate via the HTTP API", () => {
135
+ it("Should output no streams", async () => {
136
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
137
+ const compiled = await testDocument((_yaml, ss) => {
138
+ ss.node.config = { ...ss.node.config, initialStatus: 'open' };
139
+ });
140
+ result = await (0, execution_1.default)(norsk, compiled, app);
141
+ const gate = result.components['gate'];
142
+ await (0, util_1.waitForCondition)(() => gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 4);
143
+ const httpResult = await fetch(apiUrl(gate.id, port), {
144
+ method: 'PUT',
145
+ headers: {
146
+ 'Content-Type': 'application/json'
147
+ },
148
+ body: JSON.stringify({ status: 'closed' })
149
+ });
150
+ await Promise.all([
151
+ (0, sinks_1.waitForAssert)(() => gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 0, () => {
152
+ (0, chai_1.expect)(gate.status).equal('closed');
153
+ (0, chai_1.expect)(httpResult.status).equal(204);
154
+ (0, chai_1.expect)(latestState()?.status).equal('closed');
155
+ (0, chai_1.expect)(gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 0);
156
+ }, 10000.0, 10.0)
157
+ ]);
158
+ });
159
+ });
160
+ describe("Opening the gate via the HTTP API", () => {
161
+ it("Should output all the streams", async () => {
162
+ norsk = await norsk_sdk_1.Norsk.connect({ onShutdown: () => { } });
163
+ const compiled = await testDocument((_yaml, ss) => {
164
+ ss.node.config = { ...ss.node.config, initialStatus: 'closed' };
165
+ });
166
+ result = await (0, execution_1.default)(norsk, compiled, app);
167
+ const gate = result.components['gate'];
168
+ const httpResult = await fetch(apiUrl(gate.id, port), {
169
+ method: 'PUT',
170
+ headers: {
171
+ 'Content-Type': 'application/json'
172
+ },
173
+ body: JSON.stringify({ status: 'open' })
174
+ });
175
+ await Promise.all([
176
+ (0, sinks_1.waitForAssert)(() => gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 4, () => {
177
+ (0, chai_1.expect)(gate.status).equal('open');
178
+ (0, chai_1.expect)(httpResult.status).equal(204);
179
+ (0, chai_1.expect)(latestState()?.status).equal('open');
180
+ (0, chai_1.expect)(gate.relatedMediaNodes.output.flatMap((o) => o.outputStreams).length == 4);
181
+ }, 10000.0, 10.0)
182
+ ]);
183
+ });
184
+ });
185
+ });
186
+ });
187
+ //# sourceMappingURL=gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate.js","sourceRoot":"","sources":["../../src/test/gate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norskvideo/norsk-studio-built-ins",
3
- "version": "1.27.0-2025-05-21-b03b48ea",
3
+ "version": "1.27.0-2025-05-26-a443eb84",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "clean": "rm -rf lib client build",
@@ -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-05-21-59ecadb4",
26
- "@norskvideo/norsk-studio": "1.27.0-2025-05-21-b03b48ea",
25
+ "@norskvideo/norsk-sdk": "^1.0.402-2025-05-26-c7282067",
26
+ "@norskvideo/norsk-studio": "1.27.0-2025-05-26-a443eb84",
27
27
  "@norskvideo/webrtc-client": "^0.1.2",
28
28
  "@react-icons/all-files": "^4.1.0",
29
29
  "body-parser": "^1.20.2",