21 lines
660 B
TypeScript
21 lines
660 B
TypeScript
/**
|
|
* Modular FFmpeg filter fragments for the Songs2VID brand watermark overlay.
|
|
* Always bottom-right with padding; scales to a fraction of frame width.
|
|
*/
|
|
export function buildBrandWatermarkOverlayFilters(options: {
|
|
baseLabel: string;
|
|
watermarkInputIndex: number;
|
|
watermarkWidthPx: number;
|
|
offsetX?: number;
|
|
offsetY?: number;
|
|
outLabel?: string;
|
|
}): string[] {
|
|
const ox = options.offsetX ?? 20;
|
|
const oy = options.offsetY ?? 20;
|
|
const out = options.outLabel ?? "vout";
|
|
return [
|
|
`[${options.watermarkInputIndex}:v]scale=${options.watermarkWidthPx}:-1[wm]`,
|
|
`[${options.baseLabel}][wm]overlay=W-w-${ox}:H-h-${oy}[${out}]`,
|
|
];
|
|
}
|