TALKBATCH / SYNTHETIC WALKTHROUGH

One recording.
Three numbered outputs.

Give each output a title, collect its ranges, arrange the queue, then run one export command. Your recording stays local.

AI-authored preview. Python and FFmpeg required. Re-encoded WebM, not lossless cutting or a LosslessCut plugin.

Open the planner · Free files and synthetic example

TALKBATCH / ILLUSTRATED PLAN

12 seconds of synthetic source -> 3 files

Each row selects ranges from the same source timeline. This is a diagram, not a waveform or customer recording.

Three groups of ranges in a twelve-second source Row one selects seconds one to two. Row two joins three to four with six to seven. Row three joins zero to half a second, four point seven to five point seven, and nine to ten. Each row becomes one output file. 0s 3s 6s 9s 12s 1 2 3

1. One range -> one file

1-2s = 1s planned
001-single-range.webm

2. Two ranges -> one file

3-4s + 6-7s = 2s planned
002-two-ranges.webm

3. Three ranges -> one file

0-0.5s + 4.7-5.7s + 9-10s = 2.5s planned
003-three-ranges-off-keyframe.webm

AI-authored preview. Local Python + FFmpeg. Re-encoded WebM; no speed, lossless-quality or real-customer claim. Container duration can differ slightly from planned duration.

Reproduce the example

  1. Download the free talkbatch-0.1.0-convenience.zip from the release link above and extract it. The ZIP already includes demo/. No payment, account or private footage is needed.
  2. Open the planner or the extracted index.html. Choose demo/synthetic-source.webm, then load demo/demo-plan.json. Review the three output cards. Reordering cards changes their filename numbers.
  3. For the unchanged example, open a terminal in the extracted talkbatch-0.1.0 folder and run:
python3 talkbatch.py --check
python3 talkbatch.py --source demo/synthetic-source.webm --plan demo/demo-plan.json --output example-outputs

Use python instead of python3 if that is your Windows Python command. Requires Python 3.10+, FFmpeg 6+ with libvpx-vp9/libopus, and ffprobe on PATH. These tools are not bundled.

The output directory must be new. If example-outputs already exists, choose another name; do not overwrite previous results. Open all three videos and inspect report.json. The queue runs sequentially, not in parallel.

If you change the plan, download the new JSON from the planner and pass its path with --plan. Browser editing alone does not change the original example file, and the browser does not export videos.

Using source rather than the ZIP? Generate the missing example once with python3 make_demo.py demo. Skip that command when the supplied demo/ already exists. The PyPI wheel contains the exporter only, not these example/planner files.

What this does and does not show

The fixture uses frame-coded black/white stripes and a synthetic tone: 160 by 96 pixels, 10 frames per second. Its expected frame sequences are 10-19; 30-39 then 60-69; and 0-4 then 47-56 then 90-99.

This small example demonstrates range grouping and output ordering. It does not establish production suitability for long recordings, variable frame rates or every codec, nor perfect speech synchronization. Re-encoding changes quality; review a small real sample first.

Only the first video and audio streams are used. Subtitles, extra audio tracks, chapters and source metadata are not preserved. Files are WebM (VP9/Opus), not MP4.

No upload is needed. Do not post private recordings, personal paths or payment details in public issues.

Full limits and failure behavior · Report a reproducible issue without private files