@norskvideo/norsk-studio-built-ins 1.0.0 → 1.0.2
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.
- package/client/info.js +279 -81
- package/lib/info.js +8 -6
- package/lib/info.js.map +1 -1
- package/lib/processor.dynamicBug/bug-selection.d.ts +9 -0
- package/lib/processor.dynamicBug/bug-selection.js +39 -0
- package/lib/processor.dynamicBug/bug-selection.js.map +1 -0
- package/lib/processor.dynamicBug/info.d.ts +3 -0
- package/lib/processor.dynamicBug/info.js +111 -0
- package/lib/processor.dynamicBug/info.js.map +1 -0
- package/lib/processor.dynamicBug/runtime.d.ts +59 -0
- package/lib/processor.dynamicBug/runtime.js +241 -0
- package/lib/processor.dynamicBug/runtime.js.map +1 -0
- package/lib/processor.dynamicBug/summary-view.d.ts +7 -0
- package/lib/processor.dynamicBug/summary-view.js +60 -0
- package/lib/processor.dynamicBug/summary-view.js.map +1 -0
- package/package.json +5 -3
package/lib/info.js
CHANGED
@@ -59,16 +59,18 @@ const info_20 = __importDefault(require("./processor.browserOverlay/info"));
|
|
59
59
|
AllComponents.push((r) => (0, info_20.default)(r));
|
60
60
|
const info_21 = __importDefault(require("./processor.cascadingSwitch/info"));
|
61
61
|
AllComponents.push((r) => (0, info_21.default)(r));
|
62
|
-
const info_22 = __importDefault(require("./processor.
|
62
|
+
const info_22 = __importDefault(require("./processor.dynamicBug/info"));
|
63
63
|
AllComponents.push((r) => (0, info_22.default)(r));
|
64
|
-
const info_23 = __importDefault(require("./processor.
|
64
|
+
const info_23 = __importDefault(require("./processor.fixedLadder/info"));
|
65
65
|
AllComponents.push((r) => (0, info_23.default)(r));
|
66
|
-
const info_24 = __importDefault(require("./processor.
|
66
|
+
const info_24 = __importDefault(require("./processor.monetise/info"));
|
67
67
|
AllComponents.push((r) => (0, info_24.default)(r));
|
68
|
-
const info_25 = __importDefault(require("./
|
68
|
+
const info_25 = __importDefault(require("./processor.whisper-transcribe/info"));
|
69
69
|
AllComponents.push((r) => (0, info_25.default)(r));
|
70
|
-
const info_26 = __importDefault(require("./util.
|
70
|
+
const info_26 = __importDefault(require("./util.latency/info"));
|
71
71
|
AllComponents.push((r) => (0, info_26.default)(r));
|
72
|
-
const info_27 = __importDefault(require("./util.
|
72
|
+
const info_27 = __importDefault(require("./util.ma35d/info"));
|
73
73
|
AllComponents.push((r) => (0, info_27.default)(r));
|
74
|
+
const info_28 = __importDefault(require("./util.timestamps/info"));
|
75
|
+
AllComponents.push((r) => (0, info_28.default)(r));
|
74
76
|
//# sourceMappingURL=info.js.map
|
package/lib/info.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"info.js","sourceRoot":"","sources":["../src/info.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../src/info.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import type { DynamicBugConfig } from "./runtime";
|
2
|
+
type BugSelectionProps = {
|
3
|
+
defaultValue?: string;
|
4
|
+
id: string;
|
5
|
+
onChanged: (value: string) => void;
|
6
|
+
latest: Partial<DynamicBugConfig>;
|
7
|
+
};
|
8
|
+
declare function BugSelection(props: BugSelectionProps): import("react/jsx-runtime").JSX.Element;
|
9
|
+
export default BugSelection;
|
@@ -0,0 +1,39 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
4
|
+
const react_1 = require("react");
|
5
|
+
function BugSelection(props) {
|
6
|
+
const [loading, setLoading] = (0, react_1.useState)(true);
|
7
|
+
(0, react_1.useEffect)(() => {
|
8
|
+
const fn = async () => {
|
9
|
+
const result = await fetch('components/processor.dynamicBug/bugs');
|
10
|
+
if (result.ok && result.body) {
|
11
|
+
const bugs = await result.json();
|
12
|
+
setBugs(bugs);
|
13
|
+
setLoading(false);
|
14
|
+
if (props.defaultValue)
|
15
|
+
props.onChanged(props.defaultValue);
|
16
|
+
}
|
17
|
+
else {
|
18
|
+
const text = await result.text();
|
19
|
+
throw new Error(text);
|
20
|
+
}
|
21
|
+
};
|
22
|
+
fn().catch(console.error);
|
23
|
+
}, []);
|
24
|
+
const [bugs, setBugs] = (0, react_1.useState)([]);
|
25
|
+
if (loading) {
|
26
|
+
return (0, jsx_runtime_1.jsx)("div", { children: "Loading.." });
|
27
|
+
}
|
28
|
+
if (bugs.length == 0) {
|
29
|
+
return (0, jsx_runtime_1.jsx)("div", { children: "No bugs loaded" });
|
30
|
+
}
|
31
|
+
return (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsxs)("select", { defaultValue: props.defaultValue, className: `node-editor-select-input`, id: props.id, onChange: myOnChange, onBlur: myOnChange, children: [(0, jsx_runtime_1.jsx)("option", { value: '', children: "---" }, "empty"), bugs.map((o, i) => {
|
32
|
+
return (0, jsx_runtime_1.jsx)("option", { value: o, children: o }, i);
|
33
|
+
})] }) });
|
34
|
+
function myOnChange(e) {
|
35
|
+
props.onChanged(e.target.value);
|
36
|
+
}
|
37
|
+
}
|
38
|
+
exports.default = BugSelection;
|
39
|
+
//# sourceMappingURL=bug-selection.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"bug-selection.js","sourceRoot":"","sources":["../../src/processor.dynamicBug/bug-selection.tsx"],"names":[],"mappings":";;;AAAA,iCAAyD;AAUzD,SAAS,YAAY,CAAC,KAAwB;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IAE7C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE;YACpB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAA;YAClE,IAAI,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAc,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,IAAI,KAAK,CAAC,YAAY;oBACpB,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAA;QACD,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAW,EAAE,CAAC,CAAC;IAE/C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,wDAAoB,CAAA;IAC7B,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,6DAAyB,CAAA;IAClC,CAAC;IAED,OAAO,0CACL,oCAAQ,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,0BAA0B,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,aACrI,mCAAoB,KAAK,EAAC,EAAE,qBAAhB,OAAO,CAAsB,EACxC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACjB,OAAO,mCAAgB,KAAK,EAAE,CAAC,YAAG,CAAC,IAAf,CAAC,CAAwB,CAAA;gBAC/C,CAAC,CAAC,IACK,GACL,CAAA;IAGN,SAAS,UAAU,CAAC,CAAiC;QACnD,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,kBAAe,YAAY,CAAC"}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import type Registration from "@norskvideo/norsk-studio/lib/extension/registration";
|
2
|
+
import type { DynamicBugCommand, DynamicBugConfig, DynamicBugEvent, DynamicBugState } from "./runtime";
|
3
|
+
export default function ({ defineComponent, Video, validation: { Port, unique } }: Registration): import("@norskvideo/norsk-studio/lib/extension/client-types").NodeInfo<DynamicBugConfig, DynamicBugState, DynamicBugCommand, DynamicBugEvent>;
|
@@ -0,0 +1,111 @@
|
|
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 config_1 = require("@norskvideo/norsk-studio/lib/shared/config");
|
30
|
+
const react_1 = __importDefault(require("react"));
|
31
|
+
function default_1({ defineComponent, Video, validation: { Port, unique } }) {
|
32
|
+
const BugSelection = react_1.default.lazy(async () => Promise.resolve().then(() => __importStar(require('./bug-selection'))));
|
33
|
+
const SummaryView = react_1.default.lazy(async () => Promise.resolve().then(() => __importStar(require('./summary-view'))));
|
34
|
+
return defineComponent({
|
35
|
+
identifier: 'processor.dynamicBug',
|
36
|
+
category: 'processor',
|
37
|
+
name: "Dynamic Bug",
|
38
|
+
subscription: {
|
39
|
+
accepts: {
|
40
|
+
type: 'single-stream',
|
41
|
+
media: Video
|
42
|
+
},
|
43
|
+
produces: {
|
44
|
+
type: "single-stream",
|
45
|
+
media: Video
|
46
|
+
}
|
47
|
+
},
|
48
|
+
extraValidation: function (ctx) {
|
49
|
+
ctx.requireVideo(1);
|
50
|
+
},
|
51
|
+
display: (desc) => {
|
52
|
+
return {
|
53
|
+
default: desc.config.defaultBug ?? 'none',
|
54
|
+
};
|
55
|
+
},
|
56
|
+
runtime: {
|
57
|
+
summary: SummaryView,
|
58
|
+
initialState: () => ({}),
|
59
|
+
handleEvent: (ev, state) => {
|
60
|
+
const evType = ev.type;
|
61
|
+
switch (evType) {
|
62
|
+
case "bug-changed":
|
63
|
+
return { ...state, activeBug: { file: ev.file, orientation: ev.orientation } };
|
64
|
+
default:
|
65
|
+
assertUnreachable(evType);
|
66
|
+
}
|
67
|
+
}
|
68
|
+
},
|
69
|
+
configForm: {
|
70
|
+
global: {
|
71
|
+
hardware: (0, config_1.HardwareSelection)()
|
72
|
+
},
|
73
|
+
form: {
|
74
|
+
defaultBug: {
|
75
|
+
help: "The default bug to render on the video (if any)",
|
76
|
+
hint: {
|
77
|
+
type: "custom",
|
78
|
+
component: BugSelection,
|
79
|
+
}
|
80
|
+
},
|
81
|
+
defaultOrientation: {
|
82
|
+
help: "The default location to render the bug in",
|
83
|
+
hint: {
|
84
|
+
type: 'select',
|
85
|
+
optional: true,
|
86
|
+
options: [
|
87
|
+
{ value: 'topleft', display: 'Top Left' },
|
88
|
+
{ value: 'topright', display: 'Top Right' },
|
89
|
+
{ value: 'bottomleft', display: 'Bottom Left' },
|
90
|
+
{ value: 'bottomright', display: 'Bottom Right' }
|
91
|
+
]
|
92
|
+
}
|
93
|
+
},
|
94
|
+
apiPort: {
|
95
|
+
help: "Port to open the API on",
|
96
|
+
hint: {
|
97
|
+
type: 'numeric',
|
98
|
+
defaultValue: 5000,
|
99
|
+
validation: Port,
|
100
|
+
global: unique('port')
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
104
|
+
}
|
105
|
+
});
|
106
|
+
}
|
107
|
+
exports.default = default_1;
|
108
|
+
function assertUnreachable(_) {
|
109
|
+
throw new Error("Didn't expect to get here");
|
110
|
+
}
|
111
|
+
//# sourceMappingURL=info.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../../src/processor.dynamicBug/info.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,uEAA+E;AAC/E,kDAA0B;AAG1B,mBAAwB,EACtB,eAAe,EACf,KAAK,EACL,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EACf;IACb,MAAM,YAAY,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,mDAAQ,iBAAiB,GAAC,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,mDAAQ,gBAAgB,GAAC,CAAC,CAAC;IAErE,OAAO,eAAe,CAAwE;QAC5F,UAAU,EAAE,sBAAsB;QAClC,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,aAAa;QACnB,YAAY,EAAE;YAEZ,OAAO,EAAE;gBACP,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,KAAK;aACb;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,KAAK;aACb;SACF;QACD,eAAe,EAAE,UAAS,GAAG;YAC3B,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM;aAC1C,CAAA;QACH,CAAC;QACD,OAAO,EAAE;YACP,OAAO,EAAE,WAAW;YACpB,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,EACpB,CAAC;YACF,WAAW,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;gBACzB,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC;gBACvB,QAAQ,MAAM,EAAE,CAAC;oBACf,KAAK,aAAa;wBAChB,OAAO,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;oBACjF;wBACE,iBAAiB,CAAC,MAAM,CAAC,CAAA;gBAE7B,CAAC;YACH,CAAC;SACF;QACD,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,QAAQ,EAAE,IAAA,0BAAiB,GAAE;aAC9B;YACD,IAAI,EAAE;gBACJ,UAAU,EAAE;oBACV,IAAI,EAAE,iDAAiD;oBACvD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,YAAY;qBACxB;iBACF;gBACD,kBAAkB,EAAE;oBAClB,IAAI,EAAE,2CAA2C;oBACjD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,IAAI;wBACd,OAAO,EAAE;4BACP,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE;4BACzC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE;4BAC3C,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE;4BAC/C,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE;yBAClD;qBACF;iBACF;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,yBAAyB;oBAC/B,IAAI,EAAE;wBACJ,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,IAAI;wBAClB,UAAU,EAAE,IAAI;wBAChB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;qBACvB;iBACF;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAnFD,4BAmFC;AAED,SAAS,iBAAiB,CAAC,CAAQ;IACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC/C,CAAC"}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import { ComposePart, FileImageInputNode, Norsk, SubscribeDestination, SubscriptionError, VideoComposeNode } from '@norskvideo/norsk-sdk';
|
2
|
+
import { CreatedMediaNode, OnCreated, RelatedMediaNodes, RuntimeUpdates, ServerComponentDefinition, StudioNodeSubscriptionSource, StudioRuntime } from '@norskvideo/norsk-studio/lib/extension/runtime-types';
|
3
|
+
import { HardwareAccelerationType } from '@norskvideo/norsk-studio/lib/shared/config';
|
4
|
+
import { Router } from 'express';
|
5
|
+
export type DynamicBugOrientation = "topleft" | "topright" | "bottomleft" | "bottomright";
|
6
|
+
export type DynamicBugConfig = {
|
7
|
+
__global: {
|
8
|
+
hardware?: HardwareAccelerationType;
|
9
|
+
dataDir?: string;
|
10
|
+
};
|
11
|
+
id: string;
|
12
|
+
displayName: string;
|
13
|
+
defaultBug?: string;
|
14
|
+
defaultOrientation?: DynamicBugOrientation;
|
15
|
+
apiPort: number;
|
16
|
+
};
|
17
|
+
export type DynamicBugState = {
|
18
|
+
activeBug?: {
|
19
|
+
file?: string;
|
20
|
+
orientation?: DynamicBugOrientation;
|
21
|
+
};
|
22
|
+
};
|
23
|
+
export type DynamicBugCommand = {
|
24
|
+
type: 'change-bug';
|
25
|
+
file?: string;
|
26
|
+
orientation?: DynamicBugOrientation;
|
27
|
+
};
|
28
|
+
export type DynamicBugEvent = {
|
29
|
+
type: 'bug-changed';
|
30
|
+
file?: string;
|
31
|
+
orientation?: DynamicBugOrientation;
|
32
|
+
};
|
33
|
+
export default class DynamicBugDefinition implements ServerComponentDefinition<DynamicBugConfig, DynamicBug, DynamicBugState, DynamicBugCommand, DynamicBugEvent> {
|
34
|
+
create(norsk: Norsk, cfg: DynamicBugConfig, cb: OnCreated<DynamicBug>, runtime: StudioRuntime<DynamicBugState, DynamicBugEvent>): Promise<void>;
|
35
|
+
routes(): Router;
|
36
|
+
handleCommand(node: DynamicBug, command: DynamicBugCommand): Promise<void>;
|
37
|
+
}
|
38
|
+
export declare class DynamicBug implements CreatedMediaNode, SubscribeDestination {
|
39
|
+
id: string;
|
40
|
+
relatedMediaNodes: RelatedMediaNodes;
|
41
|
+
norsk: Norsk;
|
42
|
+
cfg: DynamicBugConfig;
|
43
|
+
bug?: string;
|
44
|
+
orientation?: DynamicBugOrientation;
|
45
|
+
videoSource?: StudioNodeSubscriptionSource;
|
46
|
+
composeNode?: VideoComposeNode<"video" | "bug">;
|
47
|
+
imageSource?: FileImageInputNode;
|
48
|
+
initialised: Promise<void>;
|
49
|
+
updates: RuntimeUpdates<DynamicBugState, DynamicBugEvent>;
|
50
|
+
static create(norsk: Norsk, cfg: DynamicBugConfig, updates: RuntimeUpdates<DynamicBugState, DynamicBugEvent>): Promise<DynamicBug>;
|
51
|
+
constructor(norsk: Norsk, cfg: DynamicBugConfig, updates: RuntimeUpdates<DynamicBugState, DynamicBugEvent>);
|
52
|
+
sourceContextChange(_responseCallback: (error?: SubscriptionError | undefined) => void): Promise<boolean>;
|
53
|
+
doSubs(): void;
|
54
|
+
setupBug(bug?: string, orientation?: DynamicBugOrientation): Promise<void>;
|
55
|
+
imagePart(orientation: DynamicBugOrientation, videoWidth: number, videoHeight: number, imageWidth: number, imageHeight: number): ComposePart<"bug">;
|
56
|
+
videoPart(videoWidth: number, videoHeight: number): ComposePart<"video">;
|
57
|
+
initialise(): Promise<void>;
|
58
|
+
subscribe(sources: StudioNodeSubscriptionSource[]): void;
|
59
|
+
}
|
@@ -0,0 +1,241 @@
|
|
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
|
+
exports.DynamicBug = void 0;
|
7
|
+
const norsk_sdk_1 = require("@norskvideo/norsk-sdk");
|
8
|
+
const runtime_types_1 = require("@norskvideo/norsk-studio/lib/extension/runtime-types");
|
9
|
+
const logging_1 = require("@norskvideo/norsk-studio/lib/server/logging");
|
10
|
+
const config_1 = require("@norskvideo/norsk-studio/lib/shared/config");
|
11
|
+
const util_1 = require("@norskvideo/norsk-studio/lib/shared/util");
|
12
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
13
|
+
const path_1 = __importDefault(require("path"));
|
14
|
+
const cors_1 = __importDefault(require("cors"));
|
15
|
+
const body_parser_1 = __importDefault(require("body-parser"));
|
16
|
+
const express_1 = __importDefault(require("express"));
|
17
|
+
const multer_1 = __importDefault(require("multer"));
|
18
|
+
function bugDir() {
|
19
|
+
return path_1.default.resolve(process.env.norsk_data_dir || "data/bugs");
|
20
|
+
}
|
21
|
+
async function getBugs() {
|
22
|
+
const files = await promises_1.default.readdir(bugDir());
|
23
|
+
const images = files.filter((f) => {
|
24
|
+
return f.endsWith(".png") || f.endsWith(".jpg");
|
25
|
+
});
|
26
|
+
return images;
|
27
|
+
}
|
28
|
+
class DynamicBugDefinition {
|
29
|
+
async create(norsk, cfg, cb, runtime) {
|
30
|
+
const node = await DynamicBug.create(norsk, cfg, runtime.updates);
|
31
|
+
cb(node);
|
32
|
+
const expressApp = (0, express_1.default)();
|
33
|
+
expressApp.use(express_1.default.json());
|
34
|
+
expressApp.use((0, cors_1.default)());
|
35
|
+
expressApp.get("/active-bug", async (_req, res) => {
|
36
|
+
res.writeHead(200);
|
37
|
+
res.end(JSON.stringify({
|
38
|
+
bug: node.bug,
|
39
|
+
orientation: node.orientation
|
40
|
+
}));
|
41
|
+
});
|
42
|
+
expressApp.post("/active-bug", async (req, res) => {
|
43
|
+
if (!["topleft", "topright", "bottomleft", "bottomright"].includes(req.body.orientation)) {
|
44
|
+
res.writeHead(400);
|
45
|
+
res.end("bad orientation");
|
46
|
+
return;
|
47
|
+
}
|
48
|
+
const images = await getBugs();
|
49
|
+
if (!images.includes(req.body.bug)) {
|
50
|
+
res.writeHead(400);
|
51
|
+
res.end("bad bug");
|
52
|
+
return;
|
53
|
+
}
|
54
|
+
await node.setupBug(req.body.bug, req.body.orientation);
|
55
|
+
res.writeHead(200);
|
56
|
+
res.end("ok");
|
57
|
+
});
|
58
|
+
const storage = multer_1.default.diskStorage({
|
59
|
+
destination: bugDir(),
|
60
|
+
filename: function (_req, file, cb) {
|
61
|
+
cb(null, path_1.default.basename(file.originalname));
|
62
|
+
}
|
63
|
+
});
|
64
|
+
const upload = (0, multer_1.default)({ storage });
|
65
|
+
expressApp.post('/bugs', upload.single('file'), (_req, res) => {
|
66
|
+
res.send('File uploaded successfully');
|
67
|
+
});
|
68
|
+
expressApp.get("/bugs", (0, cors_1.default)({
|
69
|
+
origin: '*',
|
70
|
+
optionsSuccessStatus: 200
|
71
|
+
}), async (_req, res) => {
|
72
|
+
const images = await getBugs();
|
73
|
+
res.writeHead(200);
|
74
|
+
res.end(JSON.stringify(images));
|
75
|
+
});
|
76
|
+
expressApp.listen(cfg.apiPort);
|
77
|
+
}
|
78
|
+
routes() {
|
79
|
+
const router = express_1.default.Router();
|
80
|
+
router.use(body_parser_1.default.json());
|
81
|
+
router.get("/bugs", async (_req, res) => {
|
82
|
+
const images = await getBugs();
|
83
|
+
res.writeHead(200);
|
84
|
+
res.end(JSON.stringify(images));
|
85
|
+
});
|
86
|
+
return router;
|
87
|
+
}
|
88
|
+
async handleCommand(node, command) {
|
89
|
+
const commandType = command.type;
|
90
|
+
switch (commandType) {
|
91
|
+
case 'change-bug':
|
92
|
+
await node.setupBug(command.file, command.orientation);
|
93
|
+
break;
|
94
|
+
default:
|
95
|
+
(0, util_1.assertUnreachable)(commandType);
|
96
|
+
}
|
97
|
+
}
|
98
|
+
}
|
99
|
+
exports.default = DynamicBugDefinition;
|
100
|
+
class DynamicBug {
|
101
|
+
id;
|
102
|
+
relatedMediaNodes = new runtime_types_1.RelatedMediaNodes();
|
103
|
+
norsk;
|
104
|
+
cfg;
|
105
|
+
bug;
|
106
|
+
orientation;
|
107
|
+
videoSource;
|
108
|
+
composeNode;
|
109
|
+
imageSource;
|
110
|
+
initialised;
|
111
|
+
updates;
|
112
|
+
static async create(norsk, cfg, updates) {
|
113
|
+
const node = new DynamicBug(norsk, cfg, updates);
|
114
|
+
await node.initialised;
|
115
|
+
return node;
|
116
|
+
}
|
117
|
+
constructor(norsk, cfg, updates) {
|
118
|
+
this.cfg = cfg;
|
119
|
+
this.bug = cfg.defaultBug;
|
120
|
+
this.orientation = cfg.defaultOrientation;
|
121
|
+
this.id = cfg.id;
|
122
|
+
this.norsk = norsk;
|
123
|
+
this.initialised = this.initialise();
|
124
|
+
this.updates = updates;
|
125
|
+
}
|
126
|
+
async sourceContextChange(_responseCallback) {
|
127
|
+
if (!this.videoSource) {
|
128
|
+
return false;
|
129
|
+
}
|
130
|
+
const videoStream = this.videoSource.latestStreams()[0];
|
131
|
+
if (!videoStream) {
|
132
|
+
return false;
|
133
|
+
}
|
134
|
+
if (videoStream.metadata.message.case !== 'video') {
|
135
|
+
(0, logging_1.errorlog)("Media other than video received in dynamicBug node??", { id: this.id, metadata: videoStream.metadata });
|
136
|
+
return false;
|
137
|
+
}
|
138
|
+
if (!this.composeNode) {
|
139
|
+
this.composeNode = await this.norsk.processor.transform.videoCompose({
|
140
|
+
id: `${this.id}-compose`,
|
141
|
+
referenceStream: 'video',
|
142
|
+
hardwareAcceleration: (0, config_1.contractHardwareAcceleration)(this.cfg.__global.hardware, ["nvidia"]),
|
143
|
+
outputResolution: {
|
144
|
+
width: videoStream.metadata.message.value.width,
|
145
|
+
height: videoStream.metadata.message.value.height
|
146
|
+
},
|
147
|
+
parts: [
|
148
|
+
this.videoPart(videoStream.metadata.message.value.width, videoStream.metadata.message.value.height),
|
149
|
+
]
|
150
|
+
});
|
151
|
+
this.composeNode.subscribeToPins(this.videoSource.selectVideoToPin("video"));
|
152
|
+
this.relatedMediaNodes.addOutput(this.composeNode);
|
153
|
+
this.relatedMediaNodes.addInput(this.composeNode);
|
154
|
+
}
|
155
|
+
if (this.imageSource) {
|
156
|
+
const imageStream = this.imageSource.outputStreams[0];
|
157
|
+
if (imageStream && imageStream.message.case == 'video') {
|
158
|
+
this.composeNode?.updateConfig({
|
159
|
+
parts: [
|
160
|
+
this.videoPart(videoStream.metadata.message.value.width, videoStream.metadata.message.value.height),
|
161
|
+
this.imagePart(this.orientation ?? 'topleft', videoStream.metadata.message.value.width, videoStream.metadata.message.value.height, imageStream.message.value.width, imageStream.message.value.height)
|
162
|
+
]
|
163
|
+
});
|
164
|
+
}
|
165
|
+
else {
|
166
|
+
this.composeNode?.updateConfig({
|
167
|
+
parts: [
|
168
|
+
this.videoPart(videoStream.metadata.message.value.width, videoStream.metadata.message.value.height),
|
169
|
+
]
|
170
|
+
});
|
171
|
+
}
|
172
|
+
}
|
173
|
+
this.doSubs();
|
174
|
+
return false;
|
175
|
+
}
|
176
|
+
doSubs() {
|
177
|
+
if (!this.imageSource) {
|
178
|
+
this.composeNode?.subscribeToPins(this.videoSource?.selectVideoToPin("video") || []);
|
179
|
+
}
|
180
|
+
else {
|
181
|
+
this.composeNode?.subscribeToPins((this.videoSource?.selectVideoToPin("video") ?? []).concat([
|
182
|
+
{ source: this.imageSource, sourceSelector: (0, norsk_sdk_1.videoToPin)("bug") }
|
183
|
+
]));
|
184
|
+
}
|
185
|
+
}
|
186
|
+
async setupBug(bug, orientation) {
|
187
|
+
if (this.imageSource) {
|
188
|
+
await this.imageSource.close();
|
189
|
+
this.imageSource = undefined;
|
190
|
+
}
|
191
|
+
if (!bug) {
|
192
|
+
this.doSubs();
|
193
|
+
this.updates.raiseEvent({ type: 'bug-changed' });
|
194
|
+
return;
|
195
|
+
}
|
196
|
+
this.imageSource = await this.norsk.input.fileImage({
|
197
|
+
sourceName: `${this.id}-bug`,
|
198
|
+
fileName: path_1.default.join(bugDir(), bug)
|
199
|
+
});
|
200
|
+
this.imageSource.registerForContextChange(this);
|
201
|
+
this.bug = bug;
|
202
|
+
this.orientation = orientation;
|
203
|
+
this.updates.raiseEvent({ type: 'bug-changed', file: bug, orientation });
|
204
|
+
}
|
205
|
+
imagePart(orientation, videoWidth, videoHeight, imageWidth, imageHeight) {
|
206
|
+
imageWidth = Math.min(videoWidth - 100, imageWidth);
|
207
|
+
imageHeight = Math.min(videoHeight - 100, imageHeight);
|
208
|
+
const foo = {
|
209
|
+
id: "bug",
|
210
|
+
zIndex: 1,
|
211
|
+
sourceRect: { x: 0, y: 0, width: videoWidth, height: videoHeight },
|
212
|
+
referenceResolution: undefined,
|
213
|
+
destRect: (orientation == 'topleft' ? { x: 5, y: 5, width: imageWidth, height: imageHeight } :
|
214
|
+
orientation == 'topright' ? { x: videoWidth - imageWidth - 5, y: 5, width: imageWidth, height: imageHeight } :
|
215
|
+
orientation == 'bottomleft' ? { x: 5, y: videoHeight - imageHeight - 5, width: imageWidth, height: imageHeight } :
|
216
|
+
{ x: videoWidth - imageWidth - 5, y: videoHeight - imageHeight - 5, width: imageWidth, height: imageHeight }),
|
217
|
+
opacity: 1.0,
|
218
|
+
pin: "bug"
|
219
|
+
};
|
220
|
+
return foo;
|
221
|
+
}
|
222
|
+
videoPart(videoWidth, videoHeight) {
|
223
|
+
return {
|
224
|
+
id: "video",
|
225
|
+
zIndex: 0,
|
226
|
+
sourceRect: { x: 0, y: 0, width: videoWidth, height: videoHeight },
|
227
|
+
destRect: { x: 0, y: 0, width: videoWidth, height: videoHeight },
|
228
|
+
opacity: 1.0,
|
229
|
+
pin: "video"
|
230
|
+
};
|
231
|
+
}
|
232
|
+
async initialise() {
|
233
|
+
await this.setupBug(this.cfg.defaultBug, this.cfg.defaultOrientation);
|
234
|
+
}
|
235
|
+
subscribe(sources) {
|
236
|
+
this.videoSource = sources[0];
|
237
|
+
this.videoSource.registerForContextChange(this);
|
238
|
+
}
|
239
|
+
}
|
240
|
+
exports.DynamicBug = DynamicBug;
|
241
|
+
//# sourceMappingURL=runtime.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/processor.dynamicBug/runtime.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import type { DynamicBugState, DynamicBugConfig, DynamicBugCommand } from "./runtime";
|
2
|
+
declare function SummaryView({ state, config, sendCommand }: {
|
3
|
+
state: DynamicBugState;
|
4
|
+
config: DynamicBugConfig;
|
5
|
+
sendCommand: (cmd: DynamicBugCommand) => void;
|
6
|
+
}): import("react/jsx-runtime").JSX.Element;
|
7
|
+
export default SummaryView;
|
@@ -0,0 +1,60 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
4
|
+
const react_1 = require("react");
|
5
|
+
function SummaryView({ state, config, sendCommand }) {
|
6
|
+
const [bug, setBug] = (0, react_1.useState)(state.activeBug?.file ?? config.defaultBug);
|
7
|
+
const [orientation, setOrientation] = (0, react_1.useState)(state.activeBug?.orientation ?? config.defaultOrientation);
|
8
|
+
const [bugs, setBugs] = (0, react_1.useState)([]);
|
9
|
+
const [fileToUpload, setFileToUpload] = (0, react_1.useState)(undefined);
|
10
|
+
async function updateBugs() {
|
11
|
+
const result = await fetch('components/processor.dynamicBug/bugs');
|
12
|
+
if (result.ok && result.body) {
|
13
|
+
const bugs = await result.json();
|
14
|
+
setBugs(bugs);
|
15
|
+
}
|
16
|
+
else {
|
17
|
+
const text = await result.text();
|
18
|
+
throw new Error(text);
|
19
|
+
}
|
20
|
+
}
|
21
|
+
(0, react_1.useEffect)(() => {
|
22
|
+
const fn = async () => {
|
23
|
+
await updateBugs();
|
24
|
+
};
|
25
|
+
fn().catch(console.error);
|
26
|
+
}, []);
|
27
|
+
function onFileChange(e) {
|
28
|
+
if (e.target.files?.[0])
|
29
|
+
setFileToUpload(e.target.files[0]);
|
30
|
+
}
|
31
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("h2", { children: "Controls" }), (0, jsx_runtime_1.jsx)("label", { htmlFor: "select-preview", className: "mt-2", children: "Source" }), (0, jsx_runtime_1.jsxs)("select", { id: "select-bug", className: "mt-2 node-editor-select-input", onChange: (e) => {
|
32
|
+
setBug(e.currentTarget.value);
|
33
|
+
}, children: [(0, jsx_runtime_1.jsx)("option", { selected: bug === undefined, children: "---" }), (0, jsx_runtime_1.jsx)("option", { value: 'new', selected: bug === 'new', children: "New" }), bugs.map((s, i) => (0, jsx_runtime_1.jsx)("option", { selected: bug == s, value: s, children: s }, i))] }), (0, jsx_runtime_1.jsx)("form", { style: { display: bug === 'new' ? 'block' : 'none' }, onSubmit: (e) => e.preventDefault(), children: (0, jsx_runtime_1.jsx)("input", { type: "file", id: "file", name: "filename", onChange: onFileChange }) }), (0, jsx_runtime_1.jsxs)("select", { id: "select-orientation", className: "mt-2 node-editor-select-input", onChange: (e) => {
|
34
|
+
setOrientation(e.currentTarget.value);
|
35
|
+
}, children: [(0, jsx_runtime_1.jsx)("option", { selected: orientation === undefined, children: "---" }), (0, jsx_runtime_1.jsx)("option", { value: 'topleft', selected: orientation === 'topleft', children: "Top Left" }), (0, jsx_runtime_1.jsx)("option", { value: 'topright', selected: orientation === 'topright', children: "Top Right" }), (0, jsx_runtime_1.jsx)("option", { value: 'bottomleft', selected: orientation === 'bottomleft', children: "Bottom Left" }), (0, jsx_runtime_1.jsx)("option", { value: 'bottomright', selected: orientation === 'bottomright', children: "Bottom Right" })] }), (bug != state.activeBug?.file || orientation != state.activeBug?.orientation || fileToUpload) ?
|
36
|
+
(0, jsx_runtime_1.jsx)("button", { type: "button", className: "mt-2 mb-2 text-white w-full justify-center bg-primary-700 hover:bg-primary-800 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800", onClick: async (e) => {
|
37
|
+
e.preventDefault();
|
38
|
+
if (fileToUpload && bug === 'new') {
|
39
|
+
const form = new FormData();
|
40
|
+
const url = `http://${document.location.hostname}:${config.apiPort}/bugs`;
|
41
|
+
form.append('file', fileToUpload);
|
42
|
+
await fetch(url, {
|
43
|
+
method: 'POST',
|
44
|
+
body: form
|
45
|
+
});
|
46
|
+
setTimeout(async () => {
|
47
|
+
await updateBugs();
|
48
|
+
sendCommand({ type: "change-bug", file: fileToUpload.name, orientation });
|
49
|
+
setBug(fileToUpload.name);
|
50
|
+
setFileToUpload(undefined);
|
51
|
+
return;
|
52
|
+
}, 500);
|
53
|
+
}
|
54
|
+
else {
|
55
|
+
sendCommand({ type: "change-bug", file: bug, orientation });
|
56
|
+
}
|
57
|
+
}, children: "Commit" }) : (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})] });
|
58
|
+
}
|
59
|
+
exports.default = SummaryView;
|
60
|
+
//# sourceMappingURL=summary-view.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"summary-view.js","sourceRoot":"","sources":["../../src/processor.dynamicBug/summary-view.tsx"],"names":[],"mappings":"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"}
|