@joergmittaglawo/dmvconfig
Version:
DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.
110 lines (109 loc) • 3.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.All = exports.LiveView = exports.Video = exports.Audio = exports.lower = exports.lift = void 0;
const VScript = require("vscript");
const _Video = require("./Video");
exports.lift = {
LiveView: (kwl, socket) => kwl ? (new LiveView(new VScript.Subtree(socket, kwl))) : null,
Video: (kwl, socket) => kwl ? (new Video(new VScript.Subtree(socket, kwl))) : null,
VideoBlackDetect: (kwl, socket) => kwl ? (new VideoBlackDetect(new VScript.Subtree(socket, kwl))) : null,
Audio: (kwl, socket) => kwl ? (new Audio(new VScript.Subtree(socket, kwl))) : null
};
exports.lower = {
LiveView: (ref) => ref ? ref.raw.kwl : null,
Video: (ref) => ref ? ref.raw.kwl : null,
VideoBlackDetect: (ref) => ref ? ref.raw.kwl : null,
Audio: (ref) => ref ? ref.raw.kwl : null
};
class Audio {
constructor(raw) {
this.raw = raw;
}
get active() {
return new VScript.duplexKeyword(this, "active");
}
get silence_detect_duration() {
return new VScript.duplexKeyword(this, "silence_detect_duration");
}
get non_silence_detect_duration() {
return new VScript.duplexKeyword(this, "non_silence_detect_duration");
}
get detect_level() {
return new VScript.duplexKeyword(this, "detect_level");
}
}
exports.Audio = Audio;
class VideoBlackDetect {
constructor(raw) {
this.raw = raw;
}
/**
Luminance threshold for black detect
*/
get threshold_y() {
return new VScript.duplexKeyword(this, "threshold_y");
}
/**
Chrominance threshold for black detect
*/
get threshold_c() {
return new VScript.duplexKeyword(this, "threshold_c");
}
/**
How many pixels can be above the threshold for black to be detected
*/
get threshold_pixels() {
return new VScript.duplexKeyword(this, "threshold_pixels");
}
/**
How long the video must be black before it is signaled as black
*/
get attack() {
return new VScript.duplexKeyword(this, "attack");
}
/**
How long the video must be none black before it is signaled as not black
*/
get release() {
return new VScript.duplexKeyword(this, "release");
}
}
class Video {
constructor(raw) {
this.raw = raw;
}
get active() {
return new VScript.duplexKeyword(this, "active");
}
get freeze_detect_duration() {
return new VScript.duplexKeyword(this, "freeze_detect_duration");
}
get black_detect() {
return new VideoBlackDetect(this.raw.find("black_detect"));
}
}
exports.Video = Video;
class LiveView {
constructor(raw) {
this.raw = raw;
}
get source() {
return new VScript.duplexKeyword(this, "source", { lift: _Video.lift.Essence, lower: _Video.lower.Essence });
}
get running() {
return new VScript.rKeyword(this, "running");
}
get signature() {
return new VScript.rKeyword(this, "signature", { lift: _Video.lift.TimestampedSignature, lower: _Video.lower.TimestampedSignature });
}
}
exports.LiveView = LiveView;
class All {
constructor(raw) {
this.raw = raw;
}
get audio() { return new Audio(this.raw.find("audio")); }
get video() { return new Video(this.raw.find("video")); }
get live_view() { return new LiveView(this.raw.find("live_view")); }
}
exports.All = All;