@blackmagic-controller/core
Version:
An npm module for interfacing with the Blackmagic usb/bluetooth controllers
87 lines • 5.7 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.AtemMicroPanelFactory = AtemMicroPanelFactory;
const base_js_1 = require("./base.js");
const id_js_1 = require("../id.js");
const controlsGenerator_js_1 = require("../controlsGenerator.js");
const callback_hook_js_1 = require("../services/callback-hook.js");
const default_js_1 = require("../services/properties/default.js");
const default_js_2 = require("../services/input/default.js");
const default_js_3 = require("../services/led/default.js");
const microPanelControls = [
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 5, 'macro', 0x01),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 6, 'key1-on', 0x02),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 7, 'key2-on', 0x03),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 8, 'key3-on', 0x04),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 9, 'key4-on', 0x05),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 5, 'next-background', 0x06),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 6, 'next-key1', 0x07),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 7, 'next-key2', 0x08),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 8, 'next-key3', 0x09),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 9, 'next-key4', 0x0a),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 0, 'program1', 0x0b),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 1, 'program2', 0x0c),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 2, 'program3', 0x0d),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 3, 'program4', 0x0e),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 4, 'program5', 0x0f),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 5, 'program6', 0x10),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 6, 'program7', 0x11),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 7, 'program8', 0x12),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 8, 'program9', 0x13),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 9, 'program10', 0x14),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 0, 'preview1', 0x15),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 1, 'preview2', 0x16),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 2, 'preview3', 0x17),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 3, 'preview4', 0x18),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 4, 'preview5', 0x19),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 5, 'preview6', 0x1a),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 6, 'preview7', 0x1b),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 7, 'preview8', 0x1c),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 8, 'preview9', 0x1d),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 9, 'preview10', 0x1e),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 10, 'mixeffect1', 0x1f),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 11, 'mixeffect2', 0x20),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 12, 'mixeffect3', 0x21),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(0, 13, 'mixeffect4', 0x22),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 11, 'transition-dip', 0x23),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 12, 'transition-dve', 0x24),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 13, 'transition-sting', 0x25),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 11, 'transition-mix', 0x27),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 12, 'transition-wipe', 0x28),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 13, 'transition-arm', 0x29),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 10, 'shift', 0x26),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 10, 'preview-transition', 0x2a),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 11, 'cut', 0x2b),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 13, 'auto', 0x2c),
{
type: 'tbar',
id: 0,
row: 0,
column: 14,
columnSpan: 1,
rowSpan: 4,
ledSegments: 16,
},
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 15, 'dsk1-tie', 0x2d),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(1, 16, 'dsk2-tie', 0x2e),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 15, 'dsk1-cut', 0x2f),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(2, 16, 'dsk2-cut', 0x30),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 15, 'dsk1-auto', 0x31),
(0, controlsGenerator_js_1.createRgbButtonDefinition)(3, 16, 'dsk2-auto', 0x32),
];
const atemMicroPanelProperties = {
MODEL: id_js_1.DeviceModelId.AtemMicroPanel,
PRODUCT_NAME: 'Atem Micro Panel',
CONTROLS: (0, controlsGenerator_js_1.freezeDefinitions)(microPanelControls),
};
function AtemMicroPanelFactory(device, options) {
const events = new callback_hook_js_1.CallbackHook();
return new base_js_1.BlackmagicControllerBase(device, options, {
deviceProperties: atemMicroPanelProperties,
events,
properties: new default_js_1.DefaultPropertiesService(device),
inputService: new default_js_2.DefaultInputService(atemMicroPanelProperties, events),
led: new default_js_3.DefaultLedService(device, atemMicroPanelProperties.CONTROLS),
});
}
//# sourceMappingURL=atem-micro-panel.js.map
;