@norskvideo/norsk-studio-built-ins 1.27.0-2025-07-06-336ac6c6 → 1.27.0-2025-07-08-02bba8fe

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 (106) hide show
  1. package/client/info.js +226 -7
  2. package/client/style.css +8 -0
  3. package/lib/info.js +3 -1
  4. package/lib/info.js.map +1 -1
  5. package/lib/input.rtmp/info.d.ts +20 -1
  6. package/lib/input.rtmp/runtime.d.ts +20 -1
  7. package/lib/input.rtmp/types.d.ts +47 -27
  8. package/lib/input.rtmp/types.source.yaml +319 -0
  9. package/lib/input.rtmp/types.yaml +204 -131
  10. package/lib/input.silence/info.d.ts +4 -2
  11. package/lib/input.silence/types.d.ts +4 -7
  12. package/lib/input.silence/types.source.yaml +27 -0
  13. package/lib/input.silence/types.yaml +80 -4
  14. package/lib/input.srt-caller/info.d.ts +41 -4
  15. package/lib/input.srt-caller/types.d.ts +51 -43
  16. package/lib/input.srt-caller/types.source.yaml +70 -0
  17. package/lib/input.srt-caller/types.yaml +136 -24
  18. package/lib/input.srt-listener/info.d.ts +41 -4
  19. package/lib/input.srt-listener/runtime.d.ts +34 -3
  20. package/lib/input.srt-listener/types.d.ts +74 -44
  21. package/lib/input.srt-listener/types.source.yaml +329 -0
  22. package/lib/input.srt-listener/types.yaml +257 -132
  23. package/lib/input.udp-ts/info.d.ts +20 -1
  24. package/lib/input.udp-ts/types.d.ts +20 -25
  25. package/lib/input.udp-ts/types.source.yaml +40 -0
  26. package/lib/input.udp-ts/types.yaml +79 -3
  27. package/lib/input.videoTestCard/info.d.ts +8 -2
  28. package/lib/input.videoTestCard/types.d.ts +8 -10
  29. package/lib/input.videoTestCard/types.source.yaml +32 -0
  30. package/lib/input.videoTestCard/types.yaml +28 -6
  31. package/lib/input.whip/info.d.ts +7 -1
  32. package/lib/input.whip/types.d.ts +44 -28
  33. package/lib/input.whip/types.source.yaml +190 -0
  34. package/lib/input.whip/types.yaml +177 -104
  35. package/lib/output.autoCmaf/info.js +20 -0
  36. package/lib/output.autoCmaf/info.js.map +1 -1
  37. package/lib/output.autoCmaf/runtime.d.ts +2 -1
  38. package/lib/output.autoCmaf/runtime.js +35 -7
  39. package/lib/output.autoCmaf/runtime.js.map +1 -1
  40. package/lib/output.autoCmaf/types.d.ts +1 -0
  41. package/lib/output.autoCmaf/types.yaml +3 -0
  42. package/lib/output.cmafMultiVariant/runtime.js +2 -2
  43. package/lib/output.cmafMultiVariant/runtime.js.map +1 -1
  44. package/lib/output.cmafPlaylist/info.js +19 -0
  45. package/lib/output.cmafPlaylist/info.js.map +1 -1
  46. package/lib/output.cmafPlaylist/runtime.js +6 -3
  47. package/lib/output.cmafPlaylist/runtime.js.map +1 -1
  48. package/lib/output.cmafPlaylist/types.d.ts +1 -0
  49. package/lib/output.cmafPlaylist/types.yaml +3 -0
  50. package/lib/output.preview/runtime.js +2 -2
  51. package/lib/output.preview/runtime.js.map +1 -1
  52. package/lib/output.statistics/info.d.ts +172 -2
  53. package/lib/output.statistics/types.d.ts +400 -72
  54. package/lib/output.statistics/types.source.yaml +119 -0
  55. package/lib/output.statistics/types.yaml +331 -91
  56. package/lib/output.tsMediaPlaylist/runtime.js +2 -2
  57. package/lib/output.tsMediaPlaylist/runtime.js.map +1 -1
  58. package/lib/output.tsMultiVariant/runtime.js +1 -1
  59. package/lib/output.tsMultiVariant/runtime.js.map +1 -1
  60. package/lib/output.whep/runtime.js +3 -1
  61. package/lib/output.whep/runtime.js.map +1 -1
  62. package/lib/processor.audioEncoder/info.d.ts +10 -2
  63. package/lib/processor.audioEncoder/types.d.ts +23 -12
  64. package/lib/processor.audioEncoder/types.source.yaml +78 -0
  65. package/lib/processor.audioEncoder/types.yaml +101 -29
  66. package/lib/processor.fixedLadder/info.d.ts +182 -7
  67. package/lib/processor.fixedLadder/types.d.ts +619 -19
  68. package/lib/processor.fixedLadder/types.source.yaml +462 -0
  69. package/lib/processor.fixedLadder/types.yaml +334 -115
  70. package/lib/processor.makeProgram/info.d.ts +1 -0
  71. package/lib/processor.makeProgram/info.js +9 -0
  72. package/lib/processor.makeProgram/info.js.map +1 -1
  73. package/lib/processor.makeProgram/runtime.d.ts +2 -1
  74. package/lib/processor.makeProgram/runtime.js +14 -1
  75. package/lib/processor.makeProgram/runtime.js.map +1 -1
  76. package/lib/processor.makeProgram/types.d.ts +1 -0
  77. package/lib/processor.makeProgram/types.yaml +3 -1
  78. package/lib/processor.smartSingleMediaSwitch/info.d.ts +12 -4
  79. package/lib/processor.smartSingleMediaSwitch/types.d.ts +22 -18
  80. package/lib/processor.smartSingleMediaSwitch/types.source.yaml +115 -0
  81. package/lib/processor.smartSingleMediaSwitch/types.yaml +145 -50
  82. package/lib/processor.smartSourceSwitch/info.d.ts +12 -4
  83. package/lib/processor.smartSourceSwitch/types.d.ts +22 -18
  84. package/lib/processor.smartSourceSwitch/types.source.yaml +97 -0
  85. package/lib/processor.smartSourceSwitch/types.yaml +142 -48
  86. package/lib/processor.syncExternalAudio/info.d.ts +1 -0
  87. package/lib/processor.syncExternalAudio/types.d.ts +1 -0
  88. package/lib/processor.zoomTo/info.d.ts +54 -0
  89. package/lib/processor.zoomTo/info.js +172 -0
  90. package/lib/processor.zoomTo/info.js.map +1 -0
  91. package/lib/processor.zoomTo/runtime-types.d.ts +11 -0
  92. package/lib/processor.zoomTo/runtime-types.js +3 -0
  93. package/lib/processor.zoomTo/runtime-types.js.map +1 -0
  94. package/lib/processor.zoomTo/runtime.d.ts +45 -0
  95. package/lib/processor.zoomTo/runtime.js +307 -0
  96. package/lib/processor.zoomTo/runtime.js.map +1 -0
  97. package/lib/processor.zoomTo/types.d.ts +182 -0
  98. package/lib/processor.zoomTo/types.js +3 -0
  99. package/lib/processor.zoomTo/types.js.map +1 -0
  100. package/lib/processor.zoomTo/types.yaml +356 -0
  101. package/lib/test/auto-cmaf.js +7 -4
  102. package/lib/test/auto-cmaf.js.map +1 -1
  103. package/lib/test/zoom-to.d.ts +1 -0
  104. package/lib/test/zoom-to.js +345 -0
  105. package/lib/test/zoom-to.js.map +1 -0
  106. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/processor.makeProgram/info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/processor.makeProgram/info.ts"],"names":[],"mappings":";;AAKA,4BAgGC;AAED,8CAEC;AAtGD,yEAAsE;AAEtE,mBAAwB,EACtB,eAAe,EACf,GAAG,EACH,UAAU,EAAE,EAAE,CAAC,EAAE,GACJ;IACb,OAAO,eAAe,CAA0B;QAC9C,UAAU,EAAE,uBAAuB;QACnC,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,0FAA0F;QACvG,IAAI,EAAE,2BAAY;QAClB,YAAY,EAAE;YACZ,OAAO,EAAE;gBACP,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;aAC/C;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;oBACvB,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;wBAC1B,MAAM,MAAM,GAA2B,EAAE,GAAG,CAAC,EAAE,CAAC;wBAChD,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAA;wBACxC,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAA;wBAC5D,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,gBAAgB,GAAG,CAAC,CAAA;wBAC1C,IAAI,GAAG,CAAC,aAAa;4BACnB,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAA;wBAC1C,OAAO,MAAM,CAAC;oBAChB,CAAC,CAAC,IAAI,EAAE,CAAC;gBACX,CAAC;aACF;SACF;QACD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACtB,MAAM,IAAI,GAA2B,EAAE,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAClD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;YAC5C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1B,CAAC;QACD,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,UAAU,EAAE;oBACV,IAAI,EAAE,iCAAiC;oBACvC,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,IAAI;wBACd,YAAY,EAAE,EAAE;qBACjB;iBACF;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,oCAAoC;oBAC1C,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,QAAQ,EAAE,KAAK;wBACf,YAAY,EAAE,CAAC;wBACf,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;qBACpC;iBACF;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,4EAA4E;oBAClF,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,QAAQ,EAAE,IAAI;wBACd,YAAY,EAAE,GAAG;wBACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;qBACpC;iBACF;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,oCAAoC;oBAC1C,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,SAAS;wBACvB,QAAQ,EAAE,IAAI;qBACf;iBACF;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,mIAAmI;oBACzI,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,IAAI;qBACnB;iBACF;gBACD,KAAK,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;aACtF;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,iBAAiB,CAAC,CAAQ;IACxC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC/C,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Norsk, StreamKey, StreamKeyOverrideNode } from '@norskvideo/norsk-sdk';
1
+ import { Norsk, StreamKey, StreamKeyOverrideNode, StreamSyncNode } from '@norskvideo/norsk-sdk';
2
2
  import { CreatedMediaNode, OnCreated, RelatedMediaNodes, ServerComponentDefinition, StudioComponentInputStream, ServerComponentSchemas } from '@norskvideo/norsk-studio/lib/extension/runtime-types';
3
3
  import { components } from './types';
4
4
  export type StreamKeyOverrideConfig = components['schemas']['config'];
@@ -19,6 +19,7 @@ export declare class StreamKeyOverride implements CreatedMediaNode {
19
19
  initialised: Promise<void>;
20
20
  id: string;
21
21
  relatedMediaNodes: RelatedMediaNodes;
22
+ sync?: StreamSyncNode;
22
23
  static create(norsk: Norsk, cfg: StreamKeyOverrideConfig): Promise<StreamKeyOverride>;
23
24
  constructor(norsk: Norsk, cfg: StreamKeyOverrideConfig);
24
25
  initialise(): Promise<void>;
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.StreamKeyOverride = void 0;
7
+ const norsk_sdk_1 = require("@norskvideo/norsk-sdk");
7
8
  const runtime_types_1 = require("@norskvideo/norsk-studio/lib/extension/runtime-types");
8
9
  const path_1 = __importDefault(require("path"));
9
10
  const schemas_1 = require("../shared/schemas");
@@ -26,6 +27,7 @@ class StreamKeyOverride {
26
27
  initialised;
27
28
  id;
28
29
  relatedMediaNodes = new runtime_types_1.RelatedMediaNodes();
30
+ sync;
29
31
  static async create(norsk, cfg) {
30
32
  const node = new StreamKeyOverride(norsk, cfg);
31
33
  await node.initialised;
@@ -38,6 +40,12 @@ class StreamKeyOverride {
38
40
  this.initialised = this.initialise();
39
41
  }
40
42
  async initialise() {
43
+ if (this.cfg.sync) {
44
+ this.sync = await this.norsk.processor.transform.streamSync({
45
+ id: `${this.cfg.id}-sync`,
46
+ injectDiscontinuities: true
47
+ });
48
+ }
41
49
  }
42
50
  async subscribe(inputs) {
43
51
  if (this.mapping.length == 0) {
@@ -47,6 +55,7 @@ class StreamKeyOverride {
47
55
  node: undefined
48
56
  }));
49
57
  }
58
+ const nodes = [];
50
59
  await Promise.all(this.mapping.map(async (mapping, i) => {
51
60
  const input = inputs[i];
52
61
  if (!input.metadata) {
@@ -63,11 +72,15 @@ class StreamKeyOverride {
63
72
  id: `${this.id} -sko - ${i} `,
64
73
  streamKey: mapping.to
65
74
  });
66
- this.relatedMediaNodes.addOutput(mapping.node);
75
+ if (!this.sync) {
76
+ this.relatedMediaNodes.addOutput(mapping.node);
77
+ }
67
78
  this.relatedMediaNodes.addInput(mapping.node);
68
79
  }
69
80
  mapping.node.subscribe([input.select()]);
81
+ nodes.push(mapping.node);
70
82
  }));
83
+ this.sync?.subscribe(nodes.map((source) => ({ source, sourceSelector: norsk_sdk_1.selectAll })), (ctx) => ctx.streams.length === inputs.length);
71
84
  }
72
85
  }
73
86
  exports.StreamKeyOverride = StreamKeyOverride;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.makeProgram/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.makeProgram/runtime.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export interface components {
9
9
  programNumber: number;
10
10
  startingStreamId: number;
11
11
  renditionName?: string;
12
+ sync?: boolean;
12
13
  notes?: string;
13
14
  };
14
15
  };
@@ -24,6 +24,8 @@ components:
24
24
  minimum: 1
25
25
  renditionName:
26
26
  type: string
27
+ sync:
28
+ type: boolean
27
29
  notes:
28
30
  type: string
29
31
  required:
@@ -31,4 +33,4 @@ components:
31
33
  - displayName
32
34
  - sourceName
33
35
  - programNumber
34
- - startingStreamId
36
+ - startingStreamId
@@ -3,10 +3,18 @@ export default function ({ defineComponent, All, common: { Resolutions, FrameRat
3
3
  id: string;
4
4
  displayName: string;
5
5
  notes?: string;
6
- resolution: import("./types").components["schemas"]["Resolution"];
7
- frameRate: import("./types").components["schemas"]["FrameRate"];
8
- sampleRate: import("./types").components["schemas"]["SampleRate"];
9
- channelLayout: import("./types").components["schemas"]["ChannelLayout"];
6
+ resolution: {
7
+ width: number;
8
+ height: number;
9
+ };
10
+ frameRate: {
11
+ frames: number;
12
+ seconds: number;
13
+ };
14
+ sampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
15
+ channelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | ("l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown")[] | {
16
+ single: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
17
+ };
10
18
  sources: {
11
19
  media: "video" | "audio";
12
20
  sourceName?: string;
@@ -6,10 +6,18 @@ export interface components {
6
6
  id: string;
7
7
  displayName: string;
8
8
  notes?: string;
9
- resolution: components["schemas"]["Resolution"];
10
- frameRate: components["schemas"]["FrameRate"];
11
- sampleRate: components["schemas"]["SampleRate"];
12
- channelLayout: components["schemas"]["ChannelLayout"];
9
+ resolution: {
10
+ width: number;
11
+ height: number;
12
+ };
13
+ frameRate: {
14
+ frames: number;
15
+ seconds: number;
16
+ };
17
+ sampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
18
+ channelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | ("l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown")[] | {
19
+ single: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
20
+ };
13
21
  sources: {
14
22
  media: "video" | "audio";
15
23
  sourceName?: string;
@@ -24,7 +32,16 @@ export interface components {
24
32
  availableSources: number[];
25
33
  };
26
34
  Commands: Record<string, never>;
27
- Events: components["schemas"]["ActiveSourceChangedEvent"] | components["schemas"]["SourceOnlineEvent"] | components["schemas"]["SourceOfflineEvent"];
35
+ Events: {
36
+ type: "active-source-changed";
37
+ activeSourceIndex: number;
38
+ } | {
39
+ type: "source-online";
40
+ sourceIndex: number;
41
+ } | {
42
+ type: "source-offline";
43
+ sourceIndex: number;
44
+ };
28
45
  ActiveSourceChangedEvent: {
29
46
  type: "active-source-changed";
30
47
  activeSourceIndex: number;
@@ -37,19 +54,6 @@ export interface components {
37
54
  type: "source-offline";
38
55
  sourceIndex: number;
39
56
  };
40
- Resolution: {
41
- width: number;
42
- height: number;
43
- };
44
- FrameRate: {
45
- frames: number;
46
- seconds: number;
47
- };
48
- SampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
49
- ChannelName: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
50
- ChannelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | components["schemas"]["ChannelName"][] | {
51
- single: components["schemas"]["ChannelName"];
52
- };
53
57
  };
54
58
  responses: never;
55
59
  parameters: never;
@@ -0,0 +1,115 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: Smart Single Media Switch Processor Component
4
+ version: 1.0.0
5
+
6
+ paths: {}
7
+
8
+ components:
9
+ schemas:
10
+ config:
11
+ type: object
12
+ properties:
13
+ id:
14
+ type: string
15
+ displayName:
16
+ type: string
17
+ notes:
18
+ type: string
19
+ resolution:
20
+ $ref: '../../../core/src/types/base.yml#/components/schemas/Resolution'
21
+ frameRate:
22
+ $ref: '../../../core/src/types/base.yml#/components/schemas/FrameRate'
23
+ sampleRate:
24
+ $ref: '../../../core/src/types/base.yml#/components/schemas/SampleRate'
25
+ channelLayout:
26
+ $ref: '../../../core/src/types/base.yml#/components/schemas/ChannelLayout'
27
+ sources:
28
+ type: array
29
+ items:
30
+ type: object
31
+ properties:
32
+ media:
33
+ type: string
34
+ enum: ["video", "audio"]
35
+ sourceName:
36
+ type: string
37
+ programNumber:
38
+ type: integer
39
+ streamId:
40
+ type: integer
41
+ renditionName:
42
+ type: string
43
+ displayName:
44
+ type: string
45
+ required:
46
+ - media
47
+ - displayName
48
+ required:
49
+ - id
50
+ - displayName
51
+ - resolution
52
+ - frameRate
53
+ - sampleRate
54
+ - channelLayout
55
+ - sources
56
+
57
+ state:
58
+ type: object
59
+ properties:
60
+ activeSource:
61
+ type: integer
62
+ availableSources:
63
+ type: array
64
+ items:
65
+ type: integer
66
+ required:
67
+ - activeSource
68
+ - availableSources
69
+
70
+ Commands:
71
+ type: object
72
+ description: Currently no commands are implemented
73
+
74
+ Events:
75
+ oneOf:
76
+ - $ref: '#/components/schemas/ActiveSourceChangedEvent'
77
+ - $ref: '#/components/schemas/SourceOnlineEvent'
78
+ - $ref: '#/components/schemas/SourceOfflineEvent'
79
+
80
+ ActiveSourceChangedEvent:
81
+ type: object
82
+ properties:
83
+ type:
84
+ type: string
85
+ enum: ["active-source-changed"]
86
+ activeSourceIndex:
87
+ type: integer
88
+ required:
89
+ - type
90
+ - activeSourceIndex
91
+
92
+ SourceOnlineEvent:
93
+ type: object
94
+ properties:
95
+ type:
96
+ type: string
97
+ enum: ["source-online"]
98
+ sourceIndex:
99
+ type: integer
100
+ required:
101
+ - type
102
+ - sourceIndex
103
+
104
+ SourceOfflineEvent:
105
+ type: object
106
+ properties:
107
+ type:
108
+ type: string
109
+ enum: ["source-offline"]
110
+ sourceIndex:
111
+ type: integer
112
+ required:
113
+ - type
114
+ - sourceIndex
115
+
@@ -2,9 +2,7 @@ openapi: 3.0.0
2
2
  info:
3
3
  title: Smart Single Media Switch Processor Component
4
4
  version: 1.0.0
5
-
6
5
  paths: {}
7
-
8
6
  components:
9
7
  schemas:
10
8
  config:
@@ -17,13 +15,112 @@ components:
17
15
  notes:
18
16
  type: string
19
17
  resolution:
20
- $ref: '../../../core/src/types/base.yml#/components/schemas/Resolution'
18
+ type: object
19
+ description: Video resolution with width and height dimensions
20
+ properties:
21
+ width:
22
+ type: integer
23
+ minimum: 1
24
+ description: Width in pixels
25
+ height:
26
+ type: integer
27
+ minimum: 1
28
+ description: Height in pixels
29
+ required:
30
+ - width
31
+ - height
21
32
  frameRate:
22
- $ref: '../../../core/src/types/base.yml#/components/schemas/FrameRate'
33
+ type: object
34
+ properties:
35
+ frames:
36
+ type: integer
37
+ seconds:
38
+ type: integer
39
+ required:
40
+ - frames
41
+ - seconds
23
42
  sampleRate:
24
- $ref: '../../../core/src/types/base.yml#/components/schemas/SampleRate'
43
+ type: integer
44
+ enum:
45
+ - 8000
46
+ - 11025
47
+ - 12000
48
+ - 16000
49
+ - 22050
50
+ - 24000
51
+ - 32000
52
+ - 44100
53
+ - 48000
54
+ - 64000
55
+ - 88200
56
+ - 96000
57
+ description: Possible sample rates in Hz.
58
+ example: 48000
25
59
  channelLayout:
26
- $ref: '../../../core/src/types/base.yml#/components/schemas/ChannelLayout'
60
+ description: Channel layout for an audio stream. Can be one of several string
61
+ presets, an array of channel names, or an object with a single
62
+ property.
63
+ oneOf:
64
+ - type: string
65
+ enum:
66
+ - mono
67
+ - stereo
68
+ - surround
69
+ - "4.0"
70
+ - "5.0"
71
+ - "5.1"
72
+ - "7.1"
73
+ - 5.1.4
74
+ - 7.1.4
75
+ - type: array
76
+ items: &a1
77
+ type: string
78
+ enum:
79
+ - l
80
+ - r
81
+ - c
82
+ - lfe
83
+ - ls
84
+ - rs
85
+ - lc
86
+ - rc
87
+ - lsr
88
+ - rsr
89
+ - cs
90
+ - lsd
91
+ - rsd
92
+ - lss
93
+ - rss
94
+ - lw
95
+ - rw
96
+ - lv
97
+ - rv
98
+ - cv
99
+ - lvr
100
+ - rvr
101
+ - cvr
102
+ - lvss
103
+ - rvss
104
+ - ts
105
+ - lfe2
106
+ - lb
107
+ - rb
108
+ - cb
109
+ - lvs
110
+ - rvs
111
+ - lfe3
112
+ - leos
113
+ - reos
114
+ - hwbcal
115
+ - hwbcar
116
+ - lbs
117
+ - rbs
118
+ - unknown
119
+ - type: object
120
+ properties:
121
+ single: *a1
122
+ required:
123
+ - single
27
124
  sources:
28
125
  type: array
29
126
  items:
@@ -31,7 +128,9 @@ components:
31
128
  properties:
32
129
  media:
33
130
  type: string
34
- enum: ["video", "audio"]
131
+ enum:
132
+ - video
133
+ - audio
35
134
  sourceName:
36
135
  type: string
37
136
  programNumber:
@@ -53,7 +152,6 @@ components:
53
152
  - sampleRate
54
153
  - channelLayout
55
154
  - sources
56
-
57
155
  state:
58
156
  type: object
59
157
  properties:
@@ -66,50 +164,47 @@ components:
66
164
  required:
67
165
  - activeSource
68
166
  - availableSources
69
-
70
167
  Commands:
71
168
  type: object
72
169
  description: Currently no commands are implemented
73
-
74
170
  Events:
75
171
  oneOf:
76
- - $ref: '#/components/schemas/ActiveSourceChangedEvent'
77
- - $ref: '#/components/schemas/SourceOnlineEvent'
78
- - $ref: '#/components/schemas/SourceOfflineEvent'
79
-
80
- ActiveSourceChangedEvent:
81
- type: object
82
- properties:
83
- type:
84
- type: string
85
- enum: ["active-source-changed"]
86
- activeSourceIndex:
87
- type: integer
88
- required:
89
- - type
90
- - activeSourceIndex
91
-
92
- SourceOnlineEvent:
93
- type: object
94
- properties:
95
- type:
96
- type: string
97
- enum: ["source-online"]
98
- sourceIndex:
99
- type: integer
100
- required:
101
- - type
102
- - sourceIndex
103
-
104
- SourceOfflineEvent:
105
- type: object
106
- properties:
107
- type:
108
- type: string
109
- enum: ["source-offline"]
110
- sourceIndex:
111
- type: integer
112
- required:
113
- - type
114
- - sourceIndex
115
-
172
+ - &a2
173
+ type: object
174
+ properties:
175
+ type:
176
+ type: string
177
+ enum:
178
+ - active-source-changed
179
+ activeSourceIndex:
180
+ type: integer
181
+ required:
182
+ - type
183
+ - activeSourceIndex
184
+ - &a3
185
+ type: object
186
+ properties:
187
+ type:
188
+ type: string
189
+ enum:
190
+ - source-online
191
+ sourceIndex:
192
+ type: integer
193
+ required:
194
+ - type
195
+ - sourceIndex
196
+ - &a4
197
+ type: object
198
+ properties:
199
+ type:
200
+ type: string
201
+ enum:
202
+ - source-offline
203
+ sourceIndex:
204
+ type: integer
205
+ required:
206
+ - type
207
+ - sourceIndex
208
+ ActiveSourceChangedEvent: *a2
209
+ SourceOnlineEvent: *a3
210
+ SourceOfflineEvent: *a4
@@ -3,10 +3,18 @@ export default function ({ defineComponent, Av, common: { Resolutions, FrameRate
3
3
  id: string;
4
4
  displayName: string;
5
5
  notes?: string;
6
- resolution: import("./types").components["schemas"]["Resolution"];
7
- frameRate: import("./types").components["schemas"]["FrameRate"];
8
- sampleRate: import("./types").components["schemas"]["SampleRate"];
9
- channelLayout: import("./types").components["schemas"]["ChannelLayout"];
6
+ resolution: {
7
+ width: number;
8
+ height: number;
9
+ };
10
+ frameRate: {
11
+ frames: number;
12
+ seconds: number;
13
+ };
14
+ sampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
15
+ channelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | ("l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown")[] | {
16
+ single: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
17
+ };
10
18
  sources: string[];
11
19
  }, {
12
20
  activeSource: string;
@@ -6,10 +6,18 @@ export interface components {
6
6
  id: string;
7
7
  displayName: string;
8
8
  notes?: string;
9
- resolution: components["schemas"]["Resolution"];
10
- frameRate: components["schemas"]["FrameRate"];
11
- sampleRate: components["schemas"]["SampleRate"];
12
- channelLayout: components["schemas"]["ChannelLayout"];
9
+ resolution: {
10
+ width: number;
11
+ height: number;
12
+ };
13
+ frameRate: {
14
+ frames: number;
15
+ seconds: number;
16
+ };
17
+ sampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
18
+ channelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | ("l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown")[] | {
19
+ single: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
20
+ };
13
21
  sources: string[];
14
22
  };
15
23
  state: {
@@ -17,7 +25,16 @@ export interface components {
17
25
  availableSources: string[];
18
26
  };
19
27
  Commands: Record<string, never>;
20
- Events: components["schemas"]["ActiveSourceChangedEvent"] | components["schemas"]["SourceOnlineEvent"] | components["schemas"]["SourceOfflineEvent"];
28
+ Events: {
29
+ type: "active-source-changed";
30
+ activeSource: string;
31
+ } | {
32
+ type: "source-online";
33
+ source: string;
34
+ } | {
35
+ type: "source-offline";
36
+ source: string;
37
+ };
21
38
  ActiveSourceChangedEvent: {
22
39
  type: "active-source-changed";
23
40
  activeSource: string;
@@ -30,19 +47,6 @@ export interface components {
30
47
  type: "source-offline";
31
48
  source: string;
32
49
  };
33
- Resolution: {
34
- width: number;
35
- height: number;
36
- };
37
- FrameRate: {
38
- frames: number;
39
- seconds: number;
40
- };
41
- SampleRate: 8000 | 11025 | 12000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000 | 64000 | 88200 | 96000;
42
- ChannelName: "l" | "r" | "c" | "lfe" | "ls" | "rs" | "lc" | "rc" | "lsr" | "rsr" | "cs" | "lsd" | "rsd" | "lss" | "rss" | "lw" | "rw" | "lv" | "rv" | "cv" | "lvr" | "rvr" | "cvr" | "lvss" | "rvss" | "ts" | "lfe2" | "lb" | "rb" | "cb" | "lvs" | "rvs" | "lfe3" | "leos" | "reos" | "hwbcal" | "hwbcar" | "lbs" | "rbs" | "unknown";
43
- ChannelLayout: ("mono" | "stereo" | "surround" | "4.0" | "5.0" | "5.1" | "7.1" | "5.1.4" | "7.1.4") | components["schemas"]["ChannelName"][] | {
44
- single: components["schemas"]["ChannelName"];
45
- };
46
50
  };
47
51
  responses: never;
48
52
  parameters: never;