@blackmagic-controller/core
Version:
An npm module for interfacing with the Blackmagic usb/bluetooth controllers
36 lines • 1.57 kB
JavaScript
import { BlackmagicControllerModelId } from './info.js';
import { AtemMicroPanelFactory } from './models/atem-micro-panel.js';
import { authenticate } from './authenticate.js';
import { ResolveReplayEditorFactory } from './models/resolve-replay-editor.js';
import { ResolveSpeedEditorFactory } from './models/resolve-speed-editor.js';
export * from './types.js';
export * from './info.js';
export * from './controlDefinition.js';
export { BlackmagicControllerProxy } from './proxy.js';
/** Blackmagic vendor id */
export const VENDOR_ID = 0x1edb;
/** List of all the known models, and the classes to use them */
export const DEVICE_MODELS2 = {
[BlackmagicControllerModelId.AtemMicroPanel]: {
productIds: [0xbef0],
factory: AtemMicroPanelFactory,
authenticate: async (device) => authenticate(device, 5),
},
[BlackmagicControllerModelId.DaVinciResolveReplayEditor]: {
productIds: [0xda11],
factory: ResolveReplayEditorFactory,
authenticate: async (device) => {
// Perform twice because thats what resolve appears to do
await authenticate(device, 6);
return authenticate(device, 6);
},
},
[BlackmagicControllerModelId.DaVinciResolveSpeedEditor]: {
productIds: [0xda0e],
factory: ResolveSpeedEditorFactory,
authenticate: async (device) => authenticate(device, 6),
},
};
/** @deprecated maybe? */
export const DEVICE_MODELS = Object.entries(DEVICE_MODELS2).map(([id, spec]) => ({ id: id, ...spec }));
//# sourceMappingURL=index.js.map