broll-core

Installation
SKILL.md

broll-core (shared library)

Single source of truth for the broll-* family so the base-layer skills produce interchangeable output and the avatar-PiP compositor lives in exactly one place (DRY). It is a library, not a user-facing skill — you never invoke it directly.

What's here (scripts/)

Module What
_common.py Canonical ASPECTS (9:16 = 1080×1920) + DEFAULT_FPS=30, run/ffprobe_* wrappers, next_index + append_manifest (numbered clips + manifest.json), find_font. Set C.PREFIX per skill for nicer logs.
pip_overlay.py overlay_pip(base, avatar, ..., length=) — composites the talking avatar in a PiP circle (default) or split layout over any base clip. length="avatar" (default): avatar audio drives length, base loops. length="base": the base drives length (e.g. a recorded demo), avatar freezes at its narration end. Used by every base-layer skill's --avatar shortcut, by broll-browser-recorder (base-driven) and by broll-demo-avatar.

Who uses it

Installs
4
GitHub Stars
6
First Seen
Jul 10, 2026