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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/client/info.js +665 -284
  2. package/client/style.css +46 -0
  3. package/lib/info.js +3 -1
  4. package/lib/info.js.map +1 -1
  5. package/lib/input.rtmp/info.d.ts +20 -1
  6. package/lib/input.rtmp/runtime.d.ts +20 -1
  7. package/lib/input.rtmp/types.d.ts +47 -27
  8. package/lib/input.rtmp/types.source.yaml +319 -0
  9. package/lib/input.rtmp/types.yaml +206 -131
  10. package/lib/input.silence/info.d.ts +4 -2
  11. package/lib/input.silence/types.d.ts +4 -7
  12. package/lib/input.silence/types.source.yaml +27 -0
  13. package/lib/input.silence/types.yaml +82 -4
  14. package/lib/input.srt-caller/info.d.ts +41 -4
  15. package/lib/input.srt-caller/types.d.ts +51 -43
  16. package/lib/input.srt-caller/types.source.yaml +70 -0
  17. package/lib/input.srt-caller/types.yaml +138 -24
  18. package/lib/input.srt-listener/info.d.ts +41 -4
  19. package/lib/input.srt-listener/runtime.d.ts +34 -3
  20. package/lib/input.srt-listener/types.d.ts +74 -44
  21. package/lib/input.srt-listener/types.source.yaml +329 -0
  22. package/lib/input.srt-listener/types.yaml +259 -132
  23. package/lib/input.udp-ts/info.d.ts +20 -1
  24. package/lib/input.udp-ts/types.d.ts +20 -25
  25. package/lib/input.udp-ts/types.source.yaml +40 -0
  26. package/lib/input.udp-ts/types.yaml +81 -3
  27. package/lib/input.videoTestCard/info.d.ts +8 -2
  28. package/lib/input.videoTestCard/types.d.ts +8 -10
  29. package/lib/input.videoTestCard/types.source.yaml +32 -0
  30. package/lib/input.videoTestCard/types.yaml +30 -6
  31. package/lib/input.whip/info.d.ts +7 -1
  32. package/lib/input.whip/types.d.ts +44 -28
  33. package/lib/input.whip/types.source.yaml +190 -0
  34. package/lib/input.whip/types.yaml +179 -104
  35. package/lib/output.autoCmaf/fullscreen.js +46 -1
  36. package/lib/output.autoCmaf/fullscreen.js.map +1 -1
  37. package/lib/output.autoCmaf/info.js +20 -0
  38. package/lib/output.autoCmaf/info.js.map +1 -1
  39. package/lib/output.autoCmaf/inline-view.d.ts +3 -2
  40. package/lib/output.autoCmaf/inline-view.js +72 -2
  41. package/lib/output.autoCmaf/inline-view.js.map +1 -1
  42. package/lib/output.autoCmaf/runtime.d.ts +2 -1
  43. package/lib/output.autoCmaf/runtime.js +41 -11
  44. package/lib/output.autoCmaf/runtime.js.map +1 -1
  45. package/lib/output.autoCmaf/types.d.ts +2 -0
  46. package/lib/output.autoCmaf/types.yaml +6 -0
  47. package/lib/output.cmafMultiVariant/runtime.js +2 -2
  48. package/lib/output.cmafMultiVariant/runtime.js.map +1 -1
  49. package/lib/output.cmafPlaylist/info.js +19 -0
  50. package/lib/output.cmafPlaylist/info.js.map +1 -1
  51. package/lib/output.cmafPlaylist/runtime.js +6 -3
  52. package/lib/output.cmafPlaylist/runtime.js.map +1 -1
  53. package/lib/output.cmafPlaylist/types.d.ts +1 -0
  54. package/lib/output.cmafPlaylist/types.yaml +3 -0
  55. package/lib/output.preview/inline-view.js +1 -1
  56. package/lib/output.preview/inline-view.js.map +1 -1
  57. package/lib/output.preview/runtime.js +2 -2
  58. package/lib/output.preview/runtime.js.map +1 -1
  59. package/lib/output.statistics/info.d.ts +172 -2
  60. package/lib/output.statistics/types.d.ts +400 -72
  61. package/lib/output.statistics/types.source.yaml +119 -0
  62. package/lib/output.statistics/types.yaml +333 -91
  63. package/lib/output.tsMediaPlaylist/runtime.js +2 -2
  64. package/lib/output.tsMediaPlaylist/runtime.js.map +1 -1
  65. package/lib/output.tsMultiVariant/runtime.js +1 -1
  66. package/lib/output.tsMultiVariant/runtime.js.map +1 -1
  67. package/lib/output.whep/runtime.js +3 -1
  68. package/lib/output.whep/runtime.js.map +1 -1
  69. package/lib/processor.audioEncoder/info.d.ts +10 -2
  70. package/lib/processor.audioEncoder/types.d.ts +23 -12
  71. package/lib/processor.audioEncoder/types.source.yaml +78 -0
  72. package/lib/processor.audioEncoder/types.yaml +103 -29
  73. package/lib/processor.browserOverlay/info.js +5 -3
  74. package/lib/processor.browserOverlay/info.js.map +1 -1
  75. package/lib/processor.browserOverlay/runtime.d.ts +2 -1
  76. package/lib/processor.browserOverlay/runtime.js +16 -2
  77. package/lib/processor.browserOverlay/runtime.js.map +1 -1
  78. package/lib/processor.fixedLadder/info.d.ts +182 -7
  79. package/lib/processor.fixedLadder/types.d.ts +619 -19
  80. package/lib/processor.fixedLadder/types.source.yaml +462 -0
  81. package/lib/processor.fixedLadder/types.yaml +336 -115
  82. package/lib/processor.makeProgram/info.d.ts +1 -0
  83. package/lib/processor.makeProgram/info.js +9 -0
  84. package/lib/processor.makeProgram/info.js.map +1 -1
  85. package/lib/processor.makeProgram/runtime.d.ts +2 -1
  86. package/lib/processor.makeProgram/runtime.js +14 -1
  87. package/lib/processor.makeProgram/runtime.js.map +1 -1
  88. package/lib/processor.makeProgram/types.d.ts +1 -0
  89. package/lib/processor.makeProgram/types.yaml +3 -1
  90. package/lib/processor.smartSingleMediaSwitch/info.d.ts +12 -4
  91. package/lib/processor.smartSingleMediaSwitch/types.d.ts +22 -18
  92. package/lib/processor.smartSingleMediaSwitch/types.source.yaml +115 -0
  93. package/lib/processor.smartSingleMediaSwitch/types.yaml +147 -50
  94. package/lib/processor.smartSourceSwitch/form-views.d.ts +6 -0
  95. package/lib/processor.smartSourceSwitch/form-views.js +11 -0
  96. package/lib/processor.smartSourceSwitch/form-views.js.map +1 -0
  97. package/lib/processor.smartSourceSwitch/info.d.ts +18 -4
  98. package/lib/processor.smartSourceSwitch/info.js +30 -0
  99. package/lib/processor.smartSourceSwitch/info.js.map +1 -1
  100. package/lib/processor.smartSourceSwitch/inline-view.js +9 -8
  101. package/lib/processor.smartSourceSwitch/inline-view.js.map +1 -1
  102. package/lib/processor.smartSourceSwitch/runtime.d.ts +4 -1
  103. package/lib/processor.smartSourceSwitch/runtime.js +56 -27
  104. package/lib/processor.smartSourceSwitch/runtime.js.map +1 -1
  105. package/lib/processor.smartSourceSwitch/types.d.ts +41 -18
  106. package/lib/processor.smartSourceSwitch/types.source.yaml +129 -0
  107. package/lib/processor.smartSourceSwitch/types.yaml +177 -48
  108. package/lib/processor.syncExternalAudio/info.d.ts +1 -0
  109. package/lib/processor.syncExternalAudio/types.d.ts +1 -0
  110. package/lib/processor.videoDecoder/info.js +4 -2
  111. package/lib/processor.videoDecoder/info.js.map +1 -1
  112. package/lib/processor.zoomTo/info.d.ts +54 -0
  113. package/lib/processor.zoomTo/info.js +174 -0
  114. package/lib/processor.zoomTo/info.js.map +1 -0
  115. package/lib/processor.zoomTo/runtime-types.d.ts +11 -0
  116. package/lib/processor.zoomTo/runtime-types.js +3 -0
  117. package/lib/processor.zoomTo/runtime-types.js.map +1 -0
  118. package/lib/processor.zoomTo/runtime.d.ts +45 -0
  119. package/lib/processor.zoomTo/runtime.js +323 -0
  120. package/lib/processor.zoomTo/runtime.js.map +1 -0
  121. package/lib/processor.zoomTo/types.d.ts +182 -0
  122. package/lib/processor.zoomTo/types.js +3 -0
  123. package/lib/processor.zoomTo/types.js.map +1 -0
  124. package/lib/processor.zoomTo/types.yaml +356 -0
  125. package/lib/test/auto-cmaf.js +7 -4
  126. package/lib/test/auto-cmaf.js.map +1 -1
  127. package/lib/test/smart-source-switch.js +117 -2
  128. package/lib/test/smart-source-switch.js.map +1 -1
  129. package/lib/test/zoom-to.d.ts +1 -0
  130. package/lib/test/zoom-to.js +345 -0
  131. package/lib/test/zoom-to.js.map +1 -0
  132. package/package.json +5 -5
  133. package/lib/output.autoCmaf/summary.d.ts +0 -6
  134. package/lib/output.autoCmaf/summary.js +0 -57
  135. package/lib/output.autoCmaf/summary.js.map +0 -1
@@ -10,55 +10,63 @@ export interface components {
10
10
  port: number;
11
11
  passphrase?: string;
12
12
  streamId?: string;
13
- socketOptions: components["schemas"]["SocketOptions"];
14
- streamMappings?: components["schemas"]["StreamMappingConfiguration"];
13
+ socketOptions: {
14
+ peerLatency?: number;
15
+ receiveLatency?: number;
16
+ inputBandwidth?: number;
17
+ overheadBandwidth?: number;
18
+ maxBandwidth?: number;
19
+ };
20
+ streamMappings?: {
21
+ streams: {
22
+ outputKey: {
23
+ streamId: number;
24
+ programNumber: number;
25
+ sourceName: string;
26
+ renditionName: string;
27
+ };
28
+ displayName?: string;
29
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
30
+ filters?: ({
31
+ type: "sourceName" | "language" | "codec" | "renditionName";
32
+ value: string;
33
+ } | {
34
+ type: "streamId" | "programNumber";
35
+ value: number;
36
+ })[];
37
+ missingBehaviour?: "fill" | "skip";
38
+ }[];
39
+ };
15
40
  };
16
41
  State: {
17
- metrics: components["schemas"]["SrtCallerMetrics"];
42
+ metrics: {
43
+ connectionCount: number;
44
+ packetsLost: number;
45
+ packetsResent: number;
46
+ packetsSent: number;
47
+ packetsReceived: number;
48
+ };
18
49
  };
19
50
  Commands: Record<string, never>;
20
- Events: components["schemas"]["MetricsUpdatedEvent"];
21
- MetricsUpdatedEvent: {
51
+ Events: {
22
52
  type: "metrics-updated";
23
- metrics: components["schemas"]["SrtCallerMetrics"];
24
- };
25
- SocketOptions: {
26
- peerLatency?: number;
27
- receiveLatency?: number;
28
- inputBandwidth?: number;
29
- overheadBandwidth?: number;
30
- maxBandwidth?: number;
31
- };
32
- StreamKey: {
33
- streamId: number;
34
- programNumber: number;
35
- sourceName: string;
36
- renditionName: string;
37
- };
38
- MediaType: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
39
- StreamMappingFilter: {
40
- type: "sourceName" | "language" | "codec" | "renditionName";
41
- value: string;
42
- } | {
43
- type: "streamId" | "programNumber";
44
- value: number;
53
+ metrics: {
54
+ connectionCount: number;
55
+ packetsLost: number;
56
+ packetsResent: number;
57
+ packetsSent: number;
58
+ packetsReceived: number;
59
+ };
45
60
  };
46
- StreamMappingEntry: {
47
- outputKey: components["schemas"]["StreamKey"];
48
- displayName?: string;
49
- media: components["schemas"]["MediaType"];
50
- filters?: components["schemas"]["StreamMappingFilter"][];
51
- missingBehaviour?: "fill" | "skip";
52
- };
53
- StreamMappingConfiguration: {
54
- streams: components["schemas"]["StreamMappingEntry"][];
55
- };
56
- SrtCallerMetrics: {
57
- connectionCount: number;
58
- packetsLost: number;
59
- packetsResent: number;
60
- packetsSent: number;
61
- packetsReceived: number;
61
+ MetricsUpdatedEvent: {
62
+ type: "metrics-updated";
63
+ metrics: {
64
+ connectionCount: number;
65
+ packetsLost: number;
66
+ packetsResent: number;
67
+ packetsSent: number;
68
+ packetsReceived: number;
69
+ };
62
70
  };
63
71
  };
64
72
  responses: never;
@@ -0,0 +1,70 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: SRT Caller Input
4
+ version: 1.0.0
5
+
6
+ paths: {}
7
+
8
+ components:
9
+ schemas:
10
+ Config:
11
+ type: object
12
+ required:
13
+ - id
14
+ - displayName
15
+ - host
16
+ - port
17
+ - socketOptions
18
+ properties:
19
+ id:
20
+ type: string
21
+ displayName:
22
+ type: string
23
+ notes:
24
+ type: string
25
+ host:
26
+ type: string
27
+ description: The IP or hostname of the remote server
28
+ port:
29
+ type: number
30
+ description: The port to connect to in caller mode
31
+ passphrase:
32
+ type: string
33
+ description: Passphrase for encryption
34
+ streamId:
35
+ type: string
36
+ description: Stream ID to set on the socket when acting in caller mode
37
+ socketOptions:
38
+ $ref: '../shared/srt.yaml#/components/schemas/SocketOptions'
39
+ streamMappings:
40
+ $ref: '../../../core/src/types/base.yml#/components/schemas/StreamMappingConfiguration'
41
+
42
+
43
+ State:
44
+ type: object
45
+ required:
46
+ - metrics
47
+ properties:
48
+ metrics:
49
+ $ref: '../shared/srt.yaml#/components/schemas/SrtCallerMetrics'
50
+
51
+
52
+ Commands:
53
+ type: object
54
+ additionalProperties: false
55
+
56
+ Events:
57
+ oneOf:
58
+ - $ref: '#/components/schemas/MetricsUpdatedEvent'
59
+
60
+ MetricsUpdatedEvent:
61
+ type: object
62
+ required:
63
+ - type
64
+ - metrics
65
+ properties:
66
+ type:
67
+ type: string
68
+ enum: ['metrics-updated']
69
+ metrics:
70
+ $ref: '../shared/srt.yaml#/components/schemas/SrtCallerMetrics'
@@ -1,10 +1,10 @@
1
+ # This file has been generated, please edit types.source.yaml instead
2
+
1
3
  openapi: 3.0.0
2
4
  info:
3
5
  title: SRT Caller Input
4
6
  version: 1.0.0
5
-
6
7
  paths: {}
7
-
8
8
  components:
9
9
  schemas:
10
10
  Config:
@@ -35,36 +35,150 @@ components:
35
35
  type: string
36
36
  description: Stream ID to set on the socket when acting in caller mode
37
37
  socketOptions:
38
- $ref: '../shared/srt.yaml#/components/schemas/SocketOptions'
38
+ type: object
39
+ description: SRT socket configuration options
40
+ properties:
41
+ peerLatency:
42
+ type: number
43
+ description: The latency value provided by the sender side as a minimum value
44
+ for the receiver (SRTO_PEERLATENCY)
45
+ receiveLatency:
46
+ type: number
47
+ description: The latency value in the receiving direction of the socket
48
+ (SRTO_RCVLATENCY)
49
+ inputBandwidth:
50
+ type: number
51
+ description: Input bandwidth (SRTO_INPUTBW)
52
+ overheadBandwidth:
53
+ type: number
54
+ description: Overhead bandwidth (SRTO_OHEADBW)
55
+ maxBandwidth:
56
+ type: number
57
+ description: Max bandwidth (SRTO_MAXBW)
39
58
  streamMappings:
40
- $ref: '../../../core/src/types/base.yml#/components/schemas/StreamMappingConfiguration'
41
-
42
-
59
+ type: object
60
+ description: Configuration for mapping input streams to output streams
61
+ properties:
62
+ streams:
63
+ type: array
64
+ items:
65
+ type: object
66
+ description: Individual stream mapping entry
67
+ properties:
68
+ outputKey:
69
+ type: object
70
+ properties:
71
+ streamId:
72
+ type: integer
73
+ programNumber:
74
+ type: integer
75
+ sourceName:
76
+ type: string
77
+ renditionName:
78
+ type: string
79
+ required:
80
+ - streamId
81
+ - programNumber
82
+ - sourceName
83
+ - renditionName
84
+ displayName:
85
+ type: string
86
+ description: Optional display name for this stream
87
+ media:
88
+ type: string
89
+ enum:
90
+ - video
91
+ - audio
92
+ - subtitle
93
+ - ancillary
94
+ - playlist
95
+ description: Media type for stream mapping
96
+ filters:
97
+ type: array
98
+ items:
99
+ oneOf:
100
+ - type: object
101
+ properties:
102
+ type:
103
+ type: string
104
+ enum:
105
+ - sourceName
106
+ - language
107
+ - codec
108
+ - renditionName
109
+ value:
110
+ type: string
111
+ required:
112
+ - type
113
+ - value
114
+ - type: object
115
+ properties:
116
+ type:
117
+ type: string
118
+ enum:
119
+ - streamId
120
+ - programNumber
121
+ value:
122
+ type: integer
123
+ required:
124
+ - type
125
+ - value
126
+ description: Optional conditions for stream selection
127
+ missingBehaviour:
128
+ type: string
129
+ enum:
130
+ - fill
131
+ - skip
132
+ description: Behavior when no matching stream is found
133
+ required:
134
+ - outputKey
135
+ - media
136
+ required:
137
+ - streams
43
138
  State:
44
139
  type: object
45
140
  required:
46
141
  - metrics
47
142
  properties:
48
- metrics:
49
- $ref: '../shared/srt.yaml#/components/schemas/SrtCallerMetrics'
50
-
51
-
143
+ metrics: &a1
144
+ type: object
145
+ description: Metrics for SRT caller connections
146
+ properties:
147
+ connectionCount:
148
+ type: number
149
+ description: Number of active connections
150
+ packetsLost:
151
+ type: number
152
+ description: Number of packets lost
153
+ packetsResent:
154
+ type: number
155
+ description: Number of packets resent
156
+ packetsSent:
157
+ type: number
158
+ description: Number of packets sent
159
+ packetsReceived:
160
+ type: number
161
+ description: Number of packets received
162
+ required:
163
+ - connectionCount
164
+ - packetsLost
165
+ - packetsResent
166
+ - packetsSent
167
+ - packetsReceived
52
168
  Commands:
53
169
  type: object
54
170
  additionalProperties: false
55
-
56
171
  Events:
57
172
  oneOf:
58
- - $ref: '#/components/schemas/MetricsUpdatedEvent'
59
-
60
- MetricsUpdatedEvent:
61
- type: object
62
- required:
63
- - type
64
- - metrics
65
- properties:
66
- type:
67
- type: string
68
- enum: ['metrics-updated']
69
- metrics:
70
- $ref: '../shared/srt.yaml#/components/schemas/SrtCallerMetrics'
173
+ - &a2
174
+ type: object
175
+ required:
176
+ - type
177
+ - metrics
178
+ properties:
179
+ type:
180
+ type: string
181
+ enum:
182
+ - metrics-updated
183
+ metrics: *a1
184
+ MetricsUpdatedEvent: *a2
@@ -11,12 +11,43 @@ export default function ({ defineComponent, mappingsToStreams, StreamMappingForm
11
11
  passphrase?: string;
12
12
  sourceNames: "permissive" | "strict";
13
13
  streamIds: string[];
14
- socketOptions: import("./types").components["schemas"]["SocketOptions"];
15
- streamMappings?: import("./types").components["schemas"]["StreamMappingConfiguration"];
14
+ socketOptions: {
15
+ peerLatency?: number;
16
+ receiveLatency?: number;
17
+ inputBandwidth?: number;
18
+ overheadBandwidth?: number;
19
+ maxBandwidth?: number;
20
+ };
21
+ streamMappings?: {
22
+ streams: {
23
+ outputKey: {
24
+ streamId: number;
25
+ programNumber: number;
26
+ sourceName: string;
27
+ renditionName: string;
28
+ };
29
+ displayName?: string;
30
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
31
+ filters?: ({
32
+ type: "sourceName" | "language" | "codec" | "renditionName";
33
+ value: string;
34
+ } | {
35
+ type: "streamId" | "programNumber";
36
+ value: number;
37
+ })[];
38
+ missingBehaviour?: "fill" | "skip";
39
+ }[];
40
+ };
16
41
  }, {
17
42
  connectedStreams: string[];
18
43
  disabledStreams: string[];
19
- metrics: import("./types").components["schemas"]["SrtListenerMetrics"];
44
+ metrics: {
45
+ connectionCount: number;
46
+ packetsLost: number[];
47
+ packetsResent: number[];
48
+ packetsSent: number[];
49
+ packetsReceived: number[];
50
+ };
20
51
  names: string[];
21
52
  }, object, {
22
53
  type: "source-connected";
@@ -33,5 +64,11 @@ export default function ({ defineComponent, mappingsToStreams, StreamMappingForm
33
64
  streamId: string;
34
65
  } | {
35
66
  type: "metrics-updated";
36
- metrics: import("./types").components["schemas"]["SrtListenerMetrics"];
67
+ metrics: {
68
+ connectionCount: number;
69
+ packetsLost: number[];
70
+ packetsResent: number[];
71
+ packetsSent: number[];
72
+ packetsReceived: number[];
73
+ };
37
74
  }>;
@@ -39,12 +39,43 @@ export default class SrtInputDefinition implements ServerComponentDefinition<Srt
39
39
  passphrase?: string;
40
40
  sourceNames: "permissive" | "strict";
41
41
  streamIds: string[];
42
- socketOptions: components["schemas"]["SocketOptions"];
43
- streamMappings?: components["schemas"]["StreamMappingConfiguration"];
42
+ socketOptions: {
43
+ peerLatency?: number;
44
+ receiveLatency?: number;
45
+ inputBandwidth?: number;
46
+ overheadBandwidth?: number;
47
+ maxBandwidth?: number;
48
+ };
49
+ streamMappings?: {
50
+ streams: {
51
+ outputKey: {
52
+ streamId: number;
53
+ programNumber: number;
54
+ sourceName: string;
55
+ renditionName: string;
56
+ };
57
+ displayName?: string;
58
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
59
+ filters?: ({
60
+ type: "sourceName" | "language" | "codec" | "renditionName";
61
+ value: string;
62
+ } | {
63
+ type: "streamId" | "programNumber";
64
+ value: number;
65
+ })[];
66
+ missingBehaviour?: "fill" | "skip";
67
+ }[];
68
+ };
44
69
  }, SrtInput, {
45
70
  connectedStreams: string[];
46
71
  disabledStreams: string[];
47
- metrics: components["schemas"]["SrtListenerMetrics"];
72
+ metrics: {
73
+ connectionCount: number;
74
+ packetsLost: number[];
75
+ packetsResent: number[];
76
+ packetsSent: number[];
77
+ packetsReceived: number[];
78
+ };
48
79
  names: string[];
49
80
  }, {
50
81
  type: "disable-source";
@@ -192,16 +192,56 @@ export interface components {
192
192
  passphrase?: string;
193
193
  sourceNames: "permissive" | "strict";
194
194
  streamIds: string[];
195
- socketOptions: components["schemas"]["SocketOptions"];
196
- streamMappings?: components["schemas"]["StreamMappingConfiguration"];
195
+ socketOptions: {
196
+ peerLatency?: number;
197
+ receiveLatency?: number;
198
+ inputBandwidth?: number;
199
+ overheadBandwidth?: number;
200
+ maxBandwidth?: number;
201
+ };
202
+ streamMappings?: {
203
+ streams: {
204
+ outputKey: {
205
+ streamId: number;
206
+ programNumber: number;
207
+ sourceName: string;
208
+ renditionName: string;
209
+ };
210
+ displayName?: string;
211
+ media: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
212
+ filters?: ({
213
+ type: "sourceName" | "language" | "codec" | "renditionName";
214
+ value: string;
215
+ } | {
216
+ type: "streamId" | "programNumber";
217
+ value: number;
218
+ })[];
219
+ missingBehaviour?: "fill" | "skip";
220
+ }[];
221
+ };
197
222
  };
198
223
  State: {
199
224
  connectedStreams: string[];
200
225
  disabledStreams: string[];
201
- metrics: components["schemas"]["SrtListenerMetrics"];
226
+ metrics: {
227
+ connectionCount: number;
228
+ packetsLost: number[];
229
+ packetsResent: number[];
230
+ packetsSent: number[];
231
+ packetsReceived: number[];
232
+ };
202
233
  names: string[];
203
234
  };
204
- Commands: components["schemas"]["DisableSourceCommand"] | components["schemas"]["EnableSourceCommand"] | components["schemas"]["ResetSourceCommand"];
235
+ Commands: {
236
+ type: "disable-source";
237
+ streamId: string;
238
+ } | {
239
+ type: "enable-source";
240
+ streamId: string;
241
+ } | {
242
+ type: "reset-source";
243
+ streamId: string;
244
+ };
205
245
  DisableSourceCommand: {
206
246
  type: "disable-source";
207
247
  streamId: string;
@@ -214,7 +254,29 @@ export interface components {
214
254
  type: "reset-source";
215
255
  streamId: string;
216
256
  };
217
- Events: components["schemas"]["SourceConnectedEvent"] | components["schemas"]["SourceDisconnectedEvent"] | components["schemas"]["SourceEnabledEvent"] | components["schemas"]["SourceDisabledEvent"] | components["schemas"]["MetricsUpdatedEvent"];
257
+ Events: {
258
+ type: "source-connected";
259
+ streamId: string;
260
+ index: number;
261
+ } | {
262
+ type: "source-disconnected";
263
+ streamId: string;
264
+ } | {
265
+ type: "source-enabled";
266
+ streamId: string;
267
+ } | {
268
+ type: "source-disabled";
269
+ streamId: string;
270
+ } | {
271
+ type: "metrics-updated";
272
+ metrics: {
273
+ connectionCount: number;
274
+ packetsLost: number[];
275
+ packetsResent: number[];
276
+ packetsSent: number[];
277
+ packetsReceived: number[];
278
+ };
279
+ };
218
280
  SourceConnectedEvent: {
219
281
  type: "source-connected";
220
282
  streamId: string;
@@ -234,45 +296,13 @@ export interface components {
234
296
  };
235
297
  MetricsUpdatedEvent: {
236
298
  type: "metrics-updated";
237
- metrics: components["schemas"]["SrtListenerMetrics"];
238
- };
239
- SocketOptions: {
240
- peerLatency?: number;
241
- receiveLatency?: number;
242
- inputBandwidth?: number;
243
- overheadBandwidth?: number;
244
- maxBandwidth?: number;
245
- };
246
- StreamKey: {
247
- streamId: number;
248
- programNumber: number;
249
- sourceName: string;
250
- renditionName: string;
251
- };
252
- MediaType: "video" | "audio" | "subtitle" | "ancillary" | "playlist";
253
- StreamMappingFilter: {
254
- type: "sourceName" | "language" | "codec" | "renditionName";
255
- value: string;
256
- } | {
257
- type: "streamId" | "programNumber";
258
- value: number;
259
- };
260
- StreamMappingEntry: {
261
- outputKey: components["schemas"]["StreamKey"];
262
- displayName?: string;
263
- media: components["schemas"]["MediaType"];
264
- filters?: components["schemas"]["StreamMappingFilter"][];
265
- missingBehaviour?: "fill" | "skip";
266
- };
267
- StreamMappingConfiguration: {
268
- streams: components["schemas"]["StreamMappingEntry"][];
269
- };
270
- SrtListenerMetrics: {
271
- connectionCount: number;
272
- packetsLost: number[];
273
- packetsResent: number[];
274
- packetsSent: number[];
275
- packetsReceived: number[];
299
+ metrics: {
300
+ connectionCount: number;
301
+ packetsLost: number[];
302
+ packetsResent: number[];
303
+ packetsSent: number[];
304
+ packetsReceived: number[];
305
+ };
276
306
  };
277
307
  };
278
308
  responses: never;