@norskvideo/norsk-studio-built-ins 1.27.0-2025-04-05-9821db2f → 1.27.0-2025-04-08-3f13a32b

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 (89) hide show
  1. package/client/info.js +6874 -1193
  2. package/lib/info.js +29 -21
  3. package/lib/info.js.map +1 -1
  4. package/lib/output.autoCmaf/info.js +4 -132
  5. package/lib/output.autoCmaf/info.js.map +1 -1
  6. package/lib/output.autoCmaf/runtime.js +4 -54
  7. package/lib/output.autoCmaf/runtime.js.map +1 -1
  8. package/lib/output.autoCmaf/types.d.ts +31 -31
  9. package/lib/output.autoCmaf/types.yaml +4 -85
  10. package/lib/output.cmafMultiVariant/info.d.ts +15 -0
  11. package/lib/output.cmafMultiVariant/info.js +91 -0
  12. package/lib/output.cmafMultiVariant/info.js.map +1 -0
  13. package/lib/output.cmafMultiVariant/runtime.d.ts +37 -0
  14. package/lib/output.cmafMultiVariant/runtime.js +158 -0
  15. package/lib/output.cmafMultiVariant/runtime.js.map +1 -0
  16. package/lib/output.cmafMultiVariant/types.d.ts +130 -0
  17. package/lib/output.cmafMultiVariant/types.js +3 -0
  18. package/lib/output.cmafMultiVariant/types.js.map +1 -0
  19. package/lib/output.cmafMultiVariant/types.yaml +74 -0
  20. package/lib/output.cmafPlaylist/info.d.ts +22 -0
  21. package/lib/output.cmafPlaylist/info.js +114 -0
  22. package/lib/output.cmafPlaylist/info.js.map +1 -0
  23. package/lib/output.cmafPlaylist/runtime.d.ts +41 -0
  24. package/lib/output.cmafPlaylist/runtime.js +239 -0
  25. package/lib/output.cmafPlaylist/runtime.js.map +1 -0
  26. package/lib/output.cmafPlaylist/types.d.ts +155 -0
  27. package/lib/output.cmafPlaylist/types.js +3 -0
  28. package/lib/output.cmafPlaylist/types.js.map +1 -0
  29. package/lib/output.cmafPlaylist/types.yaml +90 -0
  30. package/lib/output.preview/inline-view.js +2 -2
  31. package/lib/output.preview/inline-view.js.map +1 -1
  32. package/lib/output.tsMediaPlaylist/info.d.ts +22 -0
  33. package/lib/output.tsMediaPlaylist/info.js +113 -0
  34. package/lib/output.tsMediaPlaylist/info.js.map +1 -0
  35. package/lib/output.tsMediaPlaylist/runtime.d.ts +41 -0
  36. package/lib/output.tsMediaPlaylist/runtime.js +225 -0
  37. package/lib/output.tsMediaPlaylist/runtime.js.map +1 -0
  38. package/lib/output.tsMediaPlaylist/types.d.ts +155 -0
  39. package/lib/output.tsMediaPlaylist/types.js +3 -0
  40. package/lib/output.tsMediaPlaylist/types.js.map +1 -0
  41. package/lib/output.tsMediaPlaylist/types.yaml +90 -0
  42. package/lib/output.tsMultiVariant/info.d.ts +15 -0
  43. package/lib/output.tsMultiVariant/info.js +91 -0
  44. package/lib/output.tsMultiVariant/info.js.map +1 -0
  45. package/lib/output.tsMultiVariant/runtime.d.ts +37 -0
  46. package/lib/output.tsMultiVariant/runtime.js +157 -0
  47. package/lib/output.tsMultiVariant/runtime.js.map +1 -0
  48. package/lib/output.tsMultiVariant/types.d.ts +130 -0
  49. package/lib/output.tsMultiVariant/types.js +3 -0
  50. package/lib/output.tsMultiVariant/types.js.map +1 -0
  51. package/lib/output.tsMultiVariant/types.yaml +74 -0
  52. package/lib/output.whep/inline-view.js +2 -2
  53. package/lib/output.whep/inline-view.js.map +1 -1
  54. package/lib/processor.fixedLadder/info.d.ts +3 -3
  55. package/lib/processor.fixedLadder/info.js +1159 -73
  56. package/lib/processor.fixedLadder/info.js.map +1 -1
  57. package/lib/processor.fixedLadder/nvidia-rate-control-view.d.ts +4 -0
  58. package/lib/processor.fixedLadder/nvidia-rate-control-view.js +20 -0
  59. package/lib/processor.fixedLadder/nvidia-rate-control-view.js.map +1 -0
  60. package/lib/processor.fixedLadder/nvidia-view.d.ts +5 -0
  61. package/lib/processor.fixedLadder/nvidia-view.js +20 -0
  62. package/lib/processor.fixedLadder/nvidia-view.js.map +1 -0
  63. package/lib/processor.fixedLadder/quadra-view.d.ts +6 -0
  64. package/lib/processor.fixedLadder/quadra-view.js +22 -0
  65. package/lib/processor.fixedLadder/quadra-view.js.map +1 -0
  66. package/lib/processor.fixedLadder/runtime.js.map +1 -1
  67. package/lib/processor.fixedLadder/software-view.d.ts +5 -0
  68. package/lib/processor.fixedLadder/software-view.js +20 -0
  69. package/lib/processor.fixedLadder/software-view.js.map +1 -0
  70. package/lib/processor.fixedLadder/types.d.ts +108 -20
  71. package/lib/processor.fixedLadder/types.yaml +241 -34
  72. package/lib/processor.fixedLadder/x26x-bitrate-view.d.ts +4 -0
  73. package/lib/processor.fixedLadder/x26x-bitrate-view.js +20 -0
  74. package/lib/processor.fixedLadder/x26x-bitrate-view.js.map +1 -0
  75. package/lib/shared/cmaf.d.ts +17 -0
  76. package/lib/shared/cmaf.js +198 -0
  77. package/lib/shared/cmaf.js.map +1 -0
  78. package/lib/{output.autoCmaf/form-views.d.ts → shared/playlist-form-views.d.ts} +1 -1
  79. package/lib/{output.autoCmaf/form-views.js → shared/playlist-form-views.js} +1 -1
  80. package/lib/shared/playlist-form-views.js.map +1 -0
  81. package/lib/shared/types.d.ts +158 -0
  82. package/lib/shared/types.js +3 -0
  83. package/lib/shared/types.js.map +1 -0
  84. package/lib/shared/types.yaml +182 -0
  85. package/lib/shared/whep.d.ts +6 -0
  86. package/lib/shared/whep.js +46 -0
  87. package/lib/shared/whep.js.map +1 -0
  88. package/package.json +3 -3
  89. package/lib/output.autoCmaf/form-views.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/output.cmafPlaylist/info.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { AncillaryNode, CmafAudioOutputNode, CmafDestinationSettings, CmafVideoOutputNode, CmafWebVttOutputNode, Norsk } from '@norskvideo/norsk-sdk';
2
+ import { InstanceRouteInfo, OnCreated, ServerComponentDefinition, StudioRuntime, StudioComponentInputStream, ServerComponentSchemas } from '@norskvideo/norsk-studio/lib/extension/runtime-types';
3
+ import { CustomAutoDuplexNode } from '@norskvideo/norsk-studio/lib/extension/base-nodes';
4
+ import { CryptoDetails } from '../shared/drm/cpix';
5
+ import { components } from './types';
6
+ export type CmafPlaylistSettings = components['schemas']['CmafConfig'];
7
+ export type CmafPlaylistState = components['schemas']['CmafOutputState'];
8
+ export type CmafPlaylistCommand = {
9
+ type: 'enable-output' | 'disable-output';
10
+ };
11
+ export type CmafPlaylistEvent = {
12
+ type: 'output-enabled' | 'output-disabled';
13
+ };
14
+ declare class CmafPlaylist extends CustomAutoDuplexNode {
15
+ norsk: Norsk;
16
+ cfg: CmafPlaylistSettings;
17
+ outputNode: CmafVideoOutputNode | CmafAudioOutputNode | CmafWebVttOutputNode | null;
18
+ ancillary: AncillaryNode | null;
19
+ enabled: boolean;
20
+ initialised: Promise<void>;
21
+ runtime: StudioRuntime<CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent>;
22
+ currentSources: StudioComponentInputStream[];
23
+ destinations: CmafDestinationSettings[];
24
+ advertDestinations: string[];
25
+ sessionId?: string;
26
+ crypto?: CryptoDetails;
27
+ static create(norsk: Norsk, cfg: CmafPlaylistSettings, runtime: StudioRuntime<CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent>): Promise<CmafPlaylist>;
28
+ constructor(cfg: CmafPlaylistSettings, norsk: Norsk, runtime: StudioRuntime<CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent>);
29
+ initialise(): Promise<void>;
30
+ enableOutput(): Promise<void>;
31
+ disableOutput(): Promise<void>;
32
+ subscribe(sources: StudioComponentInputStream[]): Promise<void>;
33
+ subscribeImpl(sources: StudioComponentInputStream[]): Promise<void>;
34
+ }
35
+ export default class CmafPlaylistDefinition implements ServerComponentDefinition<CmafPlaylistSettings, CmafPlaylist, CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent> {
36
+ create(norsk: Norsk, cfg: CmafPlaylistSettings, cb: OnCreated<CmafPlaylist>, runtime: StudioRuntime<CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent>): Promise<void>;
37
+ handleCommand(node: CmafPlaylist, command: CmafPlaylistCommand): Promise<void>;
38
+ instanceRoutes(): Promise<InstanceRouteInfo<CmafPlaylistSettings, CmafPlaylist, CmafPlaylistState, CmafPlaylistCommand, CmafPlaylistEvent>[]>;
39
+ schemas(): Promise<ServerComponentSchemas>;
40
+ }
41
+ export {};
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const base_nodes_1 = require("@norskvideo/norsk-studio/lib/extension/base-nodes");
7
+ const logging_1 = require("@norskvideo/norsk-studio/lib/server/logging");
8
+ const ezdrm_1 = require("../shared/drm/ezdrm");
9
+ const axinom_1 = require("../shared/drm/axinom");
10
+ const path_1 = __importDefault(require("path"));
11
+ const schemas_1 = require("../shared/schemas");
12
+ const api_1 = require("@norskvideo/norsk-studio/lib/server/api");
13
+ const cmaf_1 = require("../shared/cmaf");
14
+ class CmafPlaylist extends base_nodes_1.CustomAutoDuplexNode {
15
+ norsk;
16
+ cfg;
17
+ outputNode = null;
18
+ ancillary = null;
19
+ enabled = true;
20
+ initialised;
21
+ runtime;
22
+ currentSources = [];
23
+ destinations;
24
+ advertDestinations = [];
25
+ sessionId;
26
+ crypto;
27
+ static async create(norsk, cfg, runtime) {
28
+ const node = new CmafPlaylist(cfg, norsk, runtime);
29
+ await node.initialised;
30
+ return node;
31
+ }
32
+ constructor(cfg, norsk, runtime) {
33
+ super(cfg.id);
34
+ this.cfg = cfg;
35
+ this.id = cfg.id;
36
+ this.norsk = norsk;
37
+ this.runtime = runtime;
38
+ this.enabled = cfg.initialState == 'enabled';
39
+ if (!this.enabled) {
40
+ runtime.updates.raiseEvent({ type: 'output-disabled' });
41
+ }
42
+ if (this.cfg.sessionId) {
43
+ this.sessionId = (Math.random() + 1).toString(36).substring(7);
44
+ }
45
+ const r = (0, cmaf_1.reifyDestinations)({ publishingGroup: cfg.publishingGroup ?? "cmaf", destinations: cfg.destinations, segments: cfg.segments, sessionId: this.sessionId });
46
+ this.destinations = r.destinations;
47
+ this.advertDestinations = r.advertDestinations;
48
+ this.initialised = this.initialise();
49
+ }
50
+ async initialise() {
51
+ if (this.cfg.drmProvider) {
52
+ if (this.cfg.drmProvider === 'ezdrm') {
53
+ this.crypto = await (0, ezdrm_1.ezdrmInit)(this.cfg.__global?.ezdrmConfig);
54
+ }
55
+ if (this.cfg.drmProvider === 'axinom') {
56
+ this.crypto = await (0, axinom_1.axinomInit)(this.cfg.__global?.axinomConfig);
57
+ }
58
+ }
59
+ }
60
+ async enableOutput() {
61
+ if (!this.enabled) {
62
+ this.enabled = true;
63
+ this.runtime.updates.raiseEvent({ type: 'output-enabled' });
64
+ await this.subscribeImpl(this.currentSources);
65
+ (0, logging_1.debuglog)("Output enabled", { id: this.id });
66
+ }
67
+ }
68
+ async disableOutput() {
69
+ if (this.enabled) {
70
+ this.enabled = false;
71
+ if (this.outputNode) {
72
+ await this.outputNode.close();
73
+ this.outputNode = null;
74
+ }
75
+ this.runtime.updates.raiseEvent({
76
+ type: 'output-disabled'
77
+ });
78
+ (0, logging_1.debuglog)("Output disabled", { id: this.id });
79
+ }
80
+ }
81
+ async subscribe(sources) {
82
+ this.currentSources = sources;
83
+ await this.subscribeImpl(this.currentSources);
84
+ }
85
+ async subscribeImpl(sources) {
86
+ if (!this.enabled || sources.filter((s) => s.metadata).length == 0) {
87
+ (0, logging_1.debuglog)("Skipping context handling - output disabled", { id: this.id });
88
+ await this.outputNode?.close();
89
+ this.outputNode = null;
90
+ return;
91
+ }
92
+ const videoSource = sources.find((s) => s.isMedia("video"));
93
+ const audioSource = sources.find((s) => s.isMedia("audio"));
94
+ const subtitleSource = sources.find((s) => s.isMedia("subtitle"));
95
+ const ancillarySource = sources.find((s) => s.isMedia("ancillary"));
96
+ if (!this.outputNode) {
97
+ if (videoSource) {
98
+ const videoCryptoSettings = this.crypto ? {
99
+ encryption: this.crypto.video,
100
+ m3uAdditions: this.crypto.video.mediaSignaling,
101
+ mpdAdditions: this.crypto.video.dashSignalling,
102
+ } : {};
103
+ this.outputNode = await this.norsk.output.cmafVideo({
104
+ id: `${this.id}-cmaf`,
105
+ name: this.cfg.name ? this.cfg.name : this.id,
106
+ segmentDurationSeconds: this.cfg.segments.targetSegmentDuration,
107
+ partDurationSeconds: this.cfg.segments.targetPartDuration,
108
+ destinations: this.destinations,
109
+ ...videoCryptoSettings,
110
+ });
111
+ this.outputNode.subscribe([videoSource.select()]);
112
+ this.setup({ input: this.outputNode, output: [this.outputNode] });
113
+ this.runtime.report.registerOutput(this.outputNode.id, await this.outputNode.url());
114
+ }
115
+ else if (audioSource) {
116
+ const audioCryptoSettings = this.crypto ? {
117
+ encryption: this.crypto.audio,
118
+ m3uAdditions: this.crypto.audio.mediaSignaling,
119
+ mpdAdditions: this.crypto.audio.dashSignalling,
120
+ } : {};
121
+ this.outputNode = await this.norsk.output.cmafAudio({
122
+ id: `${this.id}-cmaf`,
123
+ name: this.cfg.name ? this.cfg.name : this.id,
124
+ segmentDurationSeconds: this.cfg.segments.targetSegmentDuration,
125
+ partDurationSeconds: this.cfg.segments.targetPartDuration,
126
+ destinations: this.destinations,
127
+ ...audioCryptoSettings,
128
+ });
129
+ this.outputNode.subscribe([audioSource.select()]);
130
+ this.setup({ input: this.outputNode, output: [this.outputNode] });
131
+ this.runtime.report.registerOutput(this.outputNode.id, await this.outputNode.url());
132
+ }
133
+ else if (subtitleSource) {
134
+ this.outputNode = await this.norsk.output.cmafWebVtt({
135
+ name: this.cfg.name ? this.cfg.name : this.id,
136
+ segmentDurationSeconds: this.cfg.segments.targetSegmentDuration,
137
+ destinations: this.destinations,
138
+ id: `${this.id}-webvtt`,
139
+ });
140
+ this.outputNode.subscribe([subtitleSource.select()]);
141
+ this.setup({ input: this.outputNode, output: [this.outputNode] });
142
+ this.runtime.report.registerOutput(this.outputNode.id, await this.outputNode.url());
143
+ }
144
+ if (ancillarySource && !this.ancillary) {
145
+ this.ancillary = await this.norsk.processor.transform.ancillary({
146
+ onScte35: (_stream, message) => {
147
+ const commandType = message.spliceCommand.type;
148
+ if (commandType != 'insert')
149
+ return;
150
+ const command = message.spliceCommand.value;
151
+ message.spliceCommand.value;
152
+ const adId = Math.random().toString().slice(-5);
153
+ const schedule = new Date();
154
+ schedule.setSeconds(schedule.getSeconds() + 8);
155
+ const now = new Date();
156
+ for (const d of this.advertDestinations) {
157
+ this.outputNode?.scheduleTag({
158
+ id: adId,
159
+ scte35: message,
160
+ startDate: schedule,
161
+ durationSeconds: Number((command.breakDuration?.duration ?? 0n) / BigInt(90000.0))
162
+ }, now, d);
163
+ }
164
+ }
165
+ });
166
+ this.ancillary.subscribe([ancillarySource.select()]);
167
+ }
168
+ }
169
+ }
170
+ }
171
+ class CmafPlaylistDefinition {
172
+ async create(norsk, cfg, cb, runtime) {
173
+ const node = await CmafPlaylist.create(norsk, cfg, runtime);
174
+ cb(node);
175
+ }
176
+ async handleCommand(node, command) {
177
+ switch (command.type) {
178
+ case 'enable-output':
179
+ await node.enableOutput();
180
+ break;
181
+ case 'disable-output':
182
+ await node.disableOutput();
183
+ break;
184
+ }
185
+ }
186
+ async instanceRoutes() {
187
+ return (0, api_1.defineApi)(path_1.default.join(__dirname, 'types.yaml'), {
188
+ '/enable': {
189
+ post: ({ runtime }) => async (_req, res) => {
190
+ try {
191
+ const state = runtime.updates.latest();
192
+ if (state.enabled) {
193
+ return res.status(400).json({ error: 'Output is already enabled' });
194
+ }
195
+ runtime.updates.update({ ...state, enabled: true });
196
+ runtime.updates.sendCommand({
197
+ type: 'enable-output'
198
+ });
199
+ runtime.updates.raiseEvent({
200
+ type: 'output-enabled'
201
+ });
202
+ res.sendStatus(204);
203
+ }
204
+ catch (error) {
205
+ console.error('Error in enable handler:', error);
206
+ res.status(500).json({ error: 'Failed to enable output' });
207
+ }
208
+ }
209
+ },
210
+ '/disable': {
211
+ post: ({ runtime }) => async (_req, res) => {
212
+ try {
213
+ const state = runtime.updates.latest();
214
+ if (!state.enabled) {
215
+ return res.status(400).json({ error: 'Output is already disabled' });
216
+ }
217
+ runtime.updates.update({ ...state, enabled: false });
218
+ runtime.updates.sendCommand({
219
+ type: 'disable-output'
220
+ });
221
+ runtime.updates.raiseEvent({
222
+ type: 'output-disabled'
223
+ });
224
+ res.sendStatus(204);
225
+ }
226
+ catch (error) {
227
+ console.error('Error in disable handler:', error);
228
+ res.status(500).json({ error: 'Failed to disable output' });
229
+ }
230
+ }
231
+ }
232
+ });
233
+ }
234
+ async schemas() {
235
+ return (0, schemas_1.schemaFromTypes)(path_1.default.join(__dirname, 'types.yaml'), { config: 'CmafConfig', state: 'CmafOutputState' });
236
+ }
237
+ }
238
+ exports.default = CmafPlaylistDefinition;
239
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/output.cmafPlaylist/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,155 @@
1
+ export interface paths {
2
+ "/enable": {
3
+ parameters: {
4
+ query?: never;
5
+ header?: never;
6
+ path?: never;
7
+ cookie?: never;
8
+ };
9
+ get?: never;
10
+ put?: never;
11
+ post: {
12
+ parameters: {
13
+ query?: never;
14
+ header?: never;
15
+ path?: never;
16
+ cookie?: never;
17
+ };
18
+ requestBody?: never;
19
+ responses: {
20
+ 204: {
21
+ headers: {
22
+ [name: string]: unknown;
23
+ };
24
+ content?: never;
25
+ };
26
+ 400: {
27
+ headers: {
28
+ [name: string]: unknown;
29
+ };
30
+ content?: never;
31
+ };
32
+ 500: {
33
+ headers: {
34
+ [name: string]: unknown;
35
+ };
36
+ content?: never;
37
+ };
38
+ };
39
+ };
40
+ delete?: never;
41
+ options?: never;
42
+ head?: never;
43
+ patch?: never;
44
+ trace?: never;
45
+ };
46
+ "/disable": {
47
+ parameters: {
48
+ query?: never;
49
+ header?: never;
50
+ path?: never;
51
+ cookie?: never;
52
+ };
53
+ get?: never;
54
+ put?: never;
55
+ post: {
56
+ parameters: {
57
+ query?: never;
58
+ header?: never;
59
+ path?: never;
60
+ cookie?: never;
61
+ };
62
+ requestBody?: never;
63
+ responses: {
64
+ 204: {
65
+ headers: {
66
+ [name: string]: unknown;
67
+ };
68
+ content?: never;
69
+ };
70
+ 400: {
71
+ headers: {
72
+ [name: string]: unknown;
73
+ };
74
+ content?: never;
75
+ };
76
+ 500: {
77
+ headers: {
78
+ [name: string]: unknown;
79
+ };
80
+ content?: never;
81
+ };
82
+ };
83
+ };
84
+ delete?: never;
85
+ options?: never;
86
+ head?: never;
87
+ patch?: never;
88
+ trace?: never;
89
+ };
90
+ }
91
+ export type webhooks = Record<string, never>;
92
+ export interface components {
93
+ schemas: {
94
+ InitialState: "enabled" | "disabled";
95
+ CmafConfig: {
96
+ id: string;
97
+ displayName: string;
98
+ name: string;
99
+ sessionId: boolean;
100
+ publishingGroup?: string;
101
+ segments: components["schemas"]["AutoCmafSegment"];
102
+ destinations: components["schemas"]["AutoCmafDestination"][];
103
+ initialState: components["schemas"]["InitialState"];
104
+ drmProvider?: "ezdrm" | "axinom";
105
+ notes?: string;
106
+ __global: {
107
+ ezdrmConfig?: components["schemas"]["EzDrmConfig"];
108
+ axinomConfig?: components["schemas"]["AxinomConfig"];
109
+ };
110
+ };
111
+ CmafOutputState: {
112
+ url?: string;
113
+ drmToken?: string;
114
+ enabled: boolean;
115
+ };
116
+ AutoCmafSegment: {
117
+ retentionPeriod: number;
118
+ defaultSegmentCount?: number;
119
+ targetSegmentDuration: number;
120
+ targetPartDuration: number;
121
+ holdBackSegments?: number;
122
+ holdBackParts?: number;
123
+ };
124
+ AutoCmafAkamaiDestination: {
125
+ type: "akamai";
126
+ ingest: string;
127
+ playback: string;
128
+ includeAdInsertions: boolean;
129
+ };
130
+ AutoCmafS3Destination: {
131
+ type: "s3";
132
+ host: string;
133
+ prefix: string;
134
+ includeAdInsertions: boolean;
135
+ };
136
+ AutoCmafDestination: components["schemas"]["AutoCmafAkamaiDestination"] | components["schemas"]["AutoCmafS3Destination"];
137
+ EzDrmConfig: {
138
+ token?: string;
139
+ pX?: string;
140
+ };
141
+ AxinomConfig: {
142
+ tenantId?: string;
143
+ managementKey?: string;
144
+ comKeyId?: string;
145
+ comKey?: string;
146
+ };
147
+ };
148
+ responses: never;
149
+ parameters: never;
150
+ requestBodies: never;
151
+ headers: never;
152
+ pathItems: never;
153
+ }
154
+ export type $defs = Record<string, never>;
155
+ export type operations = Record<string, never>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/output.cmafPlaylist/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,90 @@
1
+ openapi: 3.0.0
2
+ info:
3
+ title: Cmaf Media Playlist Component
4
+ version: 1.0.0
5
+
6
+ paths:
7
+ /enable:
8
+ post:
9
+ summary: Enable CMAF output
10
+ description: Enables output of CMAF streams if currently disabled
11
+ responses:
12
+ 204:
13
+ description: Output successfully enabled
14
+ 400:
15
+ description: Output is already enabled
16
+ 500:
17
+ description: Server error while enabling output
18
+ /disable:
19
+ post:
20
+ summary: Disable CMAF output
21
+ description: Disables output of CMAF streams if currently enabled
22
+ responses:
23
+ 204:
24
+ description: Output successfully disabled
25
+ 400:
26
+ description: Output is already disabled
27
+ 500:
28
+ description: Server error while disabling output
29
+
30
+ components:
31
+ schemas:
32
+ InitialState:
33
+ type: string
34
+ enum: [enabled, disabled]
35
+
36
+ CmafConfig:
37
+ type: object
38
+ required:
39
+ - id
40
+ - displayName
41
+ - name
42
+ - sessionId
43
+ - segments
44
+ - destinations
45
+ - initialState
46
+ - __global
47
+ properties:
48
+ id:
49
+ type: string
50
+ displayName:
51
+ type: string
52
+ name:
53
+ type: string
54
+ sessionId:
55
+ type: boolean
56
+ publishingGroup:
57
+ type: string
58
+ segments:
59
+ $ref: '../shared/types.yaml#/components/schemas/AutoCmafSegment'
60
+ destinations:
61
+ type: array
62
+ items:
63
+ $ref: '../shared/types.yaml#/components/schemas/AutoCmafDestination'
64
+ initialState:
65
+ $ref: '#/components/schemas/InitialState'
66
+ drmProvider:
67
+ type: string
68
+ enum: [ezdrm, axinom]
69
+ notes:
70
+ type: string
71
+ __global:
72
+ type: object
73
+ properties:
74
+ ezdrmConfig:
75
+ $ref: '../shared/types.yaml#/components/schemas/EzDrmConfig'
76
+ axinomConfig:
77
+ $ref: '../shared/types.yaml#/components/schemas/AxinomConfig'
78
+ additionalProperties: false
79
+
80
+ CmafOutputState:
81
+ type: object
82
+ required:
83
+ - enabled
84
+ properties:
85
+ url:
86
+ type: string
87
+ drmToken:
88
+ type: string
89
+ enabled:
90
+ type: boolean
@@ -2,14 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
4
  const react_1 = require("react");
5
- const webrtc_client_1 = require("@norskvideo/webrtc-client");
5
+ const whep_1 = require("../shared/whep");
6
6
  function InlineView({ state, config, raise }) {
7
7
  const url = state.url;
8
8
  const id = config.id;
9
9
  const [showPreview, setShowPreview] = (0, react_1.useState)(config.showPreview ?? true);
10
10
  const [client, setClient] = (0, react_1.useState)(null);
11
11
  const createClient = (url) => {
12
- const client = new webrtc_client_1.WhepClient({
12
+ const client = new whep_1.NorskWhepClient({
13
13
  url,
14
14
  container: document.getElementById(`preview-${id}`) ?? undefined,
15
15
  });
@@ -1 +1 @@
1
- {"version":3,"file":"inline-view.js","sourceRoot":"","sources":["../../src/output.preview/inline-view.tsx"],"names":[],"mappings":";;;AAAA,iCAA4C;AAG5C,6DAAuD;AAGvD,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAwD;IAChG,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;IACtB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;IACrB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;IAC3E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAoB,IAAI,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE;QACnC,MAAM,MAAM,GAAG,IAAI,0BAAU,CAAC;YAC5B,GAAG;YACH,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,SAAS;SACjE,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,MAAkB,EAAE,EAAE;QAC3C,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC5B,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACnC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;YACvB,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IAE9D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACzB,IAAI,MAAM,EAAE,CAAC;gBACX,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtB,SAAS,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,MAAM,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;YAClC,IAAI,MAAM,EAAE,CAAC;gBACX,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtB,SAAS,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YAED,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,CAAC;YAGlB,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC3D,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;YAC3B,CAAC;YAED,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YACpC,SAAS,CAAC,SAAS,CAAC,CAAC;YAErB,OAAO,GAAG,EAAE;gBACV,aAAa,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC,CAAA;QACH,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IAE/C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,cAAc,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;IAC7C,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAEzB,KAAK,IAAI,IAAA,iBAAS,EAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE9B,IAAI,CAAC,GAAG;QAAE,OAAO,mEAAQ,CAAC;IAE1B,SAAS,UAAU,CAAC,MAAiD;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC;QACX,CAAC;QAGD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;QAGjC,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC;QAGhC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE/C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,CACL,iCAAK,SAAS,EAAC,yBAAyB,aACtC,iCAAK,SAAS,EAAC,yBAAyB,aACtC,kCACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,gBAAgB,EAAE,EAAE,EACxB,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACjD,SAAS,EAAC,SAAS,GACnB,EACF,kCAAO,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,SAAS,EAAC,SAAS,6BAEjD,IACJ,EACN,iCAAK,SAAS,EAAC,2BAA2B,aACvC,WAAW,CAAC,CAAC,CAAC,CACb,iCAAK,SAAS,EAAC,eAAe,EAAC,EAAE,EAAE,WAAW,EAAE,EAAE,aAC/C,QAAQ,IAAI,CACX,gCACE,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,GAAG,EACX,GAAG,EAAC,SAAS,GACb,CACH,EACD,4CACG;yBACU,EAAE;aACd,GACO,IACJ,CACP,CAAC,CAAC,CAAC,CACF,gCAAK,SAAS,EAAC,gFAAgF,mCAEzF,CACP,EACD,gCAAK,SAAS,EAAC,gBAAgB,YAC7B,gCACE,SAAS,EAAE,sBAAsB,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,GAC9D,GACH,IACF,IACF,CACP,CAAC;AACJ,CAAC;AAED,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"inline-view.js","sourceRoot":"","sources":["../../src/output.preview/inline-view.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { HlsTsPlaylistCommand, HlsTsPlaylistEvent } from "./runtime";
2
+ import type Registration from "@norskvideo/norsk-studio/lib/extension/registration";
3
+ export default function (registration: Registration): import("@norskvideo/norsk-studio/lib/extension/client-types").NodeInfo<{
4
+ id: string;
5
+ displayName: string;
6
+ name: string;
7
+ sessionId: boolean;
8
+ publishingGroup?: string;
9
+ segments: import("./types").components["schemas"]["AutoCmafSegment"];
10
+ destinations: import("./types").components["schemas"]["AutoCmafDestination"][];
11
+ initialState: import("./types").components["schemas"]["InitialState"];
12
+ drmProvider?: "ezdrm" | "axinom";
13
+ notes?: string;
14
+ __global: {
15
+ ezdrmConfig?: import("./types").components["schemas"]["EzDrmConfig"];
16
+ axinomConfig?: import("./types").components["schemas"]["AxinomConfig"];
17
+ };
18
+ }, {
19
+ url?: string;
20
+ drmToken?: string;
21
+ enabled: boolean;
22
+ }, HlsTsPlaylistCommand, HlsTsPlaylistEvent>;