atem-connection
Version:
Typescript Node.js library for connecting with an ATEM switcher.
95 lines • 3 kB
TypeScript
import * as Enum from '../../enums';
import * as USK from './upstreamKeyers';
import * as DSK from './downstreamKeyers';
import * as SuperSource from './superSource';
export { USK, DSK, SuperSource };
export interface DipTransitionSettings {
rate: number;
input: number;
}
export interface DVETransitionSettings {
rate: number;
logoRate: number;
style: Enum.DVEEffect;
fillSource: number;
keySource: number;
enableKey: boolean;
preMultiplied: boolean;
clip: number;
gain: number;
invertKey: boolean;
reverse: boolean;
flipFlop: boolean;
}
export interface MixTransitionSettings {
rate: number;
}
export interface StingerTransitionSettings {
source: number;
preMultipliedKey: boolean;
clip: number;
gain: number;
invert: boolean;
preroll: number;
clipDuration: number;
triggerPoint: number;
mixRate: number;
}
export interface WipeTransitionSettings {
rate: number;
pattern: number;
borderWidth: number;
borderInput: number;
symmetry: number;
borderSoftness: number;
xPosition: number;
yPosition: number;
reverseDirection: boolean;
flipFlop: boolean;
}
export interface TransitionProperties {
/** If in a transition, this is the style of the running transition. If no transition is active it will mirror nextStyle */
readonly style: Enum.TransitionStyle;
/** If in a transition, this is the selection of the running transition. If no transition is active it will mirror nextSelection */
readonly selection: Enum.TransitionSelection[];
/** The style for the next transition */
nextStyle: Enum.TransitionStyle;
/** The selection for the next transition */
nextSelection: Enum.TransitionSelection[];
}
export interface TransitionSettings {
dip?: DipTransitionSettings;
DVE?: DVETransitionSettings;
mix?: MixTransitionSettings;
stinger?: StingerTransitionSettings;
wipe?: WipeTransitionSettings;
}
export interface TransitionPosition {
readonly inTransition: boolean;
readonly remainingFrames: number;
handlePosition: number;
}
export interface MixEffect {
readonly index: number;
programInput: number;
previewInput: number;
transitionPreview: boolean;
fadeToBlack?: FadeToBlackProperties;
transitionPosition: TransitionPosition;
transitionProperties: TransitionProperties;
transitionSettings: TransitionSettings;
readonly upstreamKeyers: Array<USK.UpstreamKeyer | undefined>;
}
export interface FadeToBlackProperties {
readonly isFullyBlack: boolean;
readonly inTransition: boolean;
readonly remainingFrames: number;
rate: number;
}
export interface AtemVideoState {
readonly mixEffects: Array<MixEffect | undefined>;
readonly downstreamKeyers: Array<DSK.DownstreamKeyer | undefined>;
readonly auxilliaries: Array<number | undefined>;
readonly superSources: Array<SuperSource.SuperSource | undefined>;
}
//# sourceMappingURL=index.d.ts.map