wjs-syncing-multicam

Solid

Use when the user has 2+ video / audio recordings of the same event captured by different devices (cameras, phones, separate audio recorders) and wants them aligned to a single common timeline. Outputs only a lightweight `.sync.json` sidecar per input — original files are never re-encoded. Triggers — "多机位同步", "对齐这几个机位", "match camera timelines", "sync these angles", "audio drift between cameras", "separate audio recorder", "Riverside / Zoom recording that needs to line up".

AI & Automation 108 stars 15 forks Updated 4 days ago MIT

Install

View on GitHub

Quality Score: 86/100

Stars 20%
68
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# wjs-syncing-multicam Compute a single time offset for each multi-source recording of the same event using audio cross-correlation, and emit a `.sync.json` sidecar next to each original. **Originals are never modified, copied, or re-encoded.** Downstream tools use `-itsoffset` to apply the offset at consume time. ## Setup & commands The implementation lives in the open-source **`polysync`** pip package (<https://pypi.org/project/polysync/> · <https://github.com/jianshuo/polysync>) — this skill no longer ships its own scripts. Ensure it's installed, then drive it via its CLI: ```bash python3 -m pip install -U polysync # needs ffmpeg/ffprobe on PATH polysync sync REFERENCE SOURCE # align SOURCE to REFERENCE, write sidecars polysync sync REFERENCE SOURCE --partial # source covers only part of the session polysync verify REFERENCE SOURCE SOURCE.sync.json # independent residual check ``` Run one `polysync sync` per non-reference angle (reference first, same reference each time). The sections below document the algorithm, the sidecar schema, and the gotchas baked into the package — read them to interpret output and choose flags. ## Design principle — sidecar over re-encode Earlier versions of this skill produced `*_synced.MOV` files by trimming + re-encoding to bake the offset into the file. We removed that: - **Disk** — a 75-min 4K shoot from 3 cameras is 60+ GB. Re-encoded synced copies double that for no information gain. - **Quality** — every re-en...

Details

Author
jianshuo
Repository
jianshuo/claude-skills
Created
2 months ago
Last Updated
4 days ago
Language
Python
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

wjs-editing-multicam

Use when the user has 2+ recordings of the same event (each with a `.sync.json` sidecar from wjs-syncing-multicam) and wants them combined into a single MP4 — auto-switching between cams second-by-second on audio energy, with optional picture-in-picture inset. Triggers — "auto-edit multicam", "做个剪辑", "切几个机位", "把这几个视频合成一个", "combine these angles", "PiP overlay".

108 Updated 4 days ago
jianshuo
AI & Automation Listed

sync-configs

Audit and sync Claude Code and Codex CLI configurations so both tools share the same instructions, skills, subagents, MCP servers, hooks, and permission intent. Accepts an optional argument naming one skill, agent, or config file to sync just that item without a full audit. Use this whenever the user mentions config drift, syncing/aligning Claude and Codex, AGENTS.md vs CLAUDE.md differences, keeping skills or agents consistent across AI CLIs, or after editing one tool's config and wanting the other to match — e.g. "sync this skill to codex", "I changed my-agent.md, mirror it". Also use when the user asks "are my Claude and Codex setups aligned?" or wants to migrate config from one tool to the other.

1 Updated 4 days ago
supermodo
Data & Documents Listed

vo-sync

Sync an animation, captions, or cues to a voiceover so visuals land on the spoken words, and pace the timeline tightly to the narration (no dead air). Use when you have (or will generate) a voiceover and want cards/elements/captions to appear exactly when they're mentioned, when card raises feel out of sync with the narration, or when there are long voice-less gaps to tighten. Generates VO with word-level timestamps (ElevenLabs) and computes per-scene durations + cue times from them. Triggers: "sync the voiceover with the animation", "make the cards appear when the voice says it", "the VO is out of sync", "tighten the pacing / remove silent gaps", "land captions on the spoken word", "word-timestamp sync".

1 Updated 2 days ago
JagZ999