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.
1. One range -> one file
1-2s = 1s planned001-single-range.webm
2. Two ranges -> one file
3-4s + 6-7s = 2s planned002-two-ranges.webm
3. Three ranges -> one file
0-0.5s + 4.7-5.7s + 9-10s = 2.5s planned003-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
- Download the free
talkbatch-0.1.0-convenience.zipfrom the release link above and extract it. The ZIP already includesdemo/. No payment, account or private footage is needed. - Open the planner or the extracted
index.html. Choosedemo/synthetic-source.webm, then loaddemo/demo-plan.json. Review the three output cards. Reordering cards changes their filename numbers. - For the unchanged example, open a terminal in the extracted
talkbatch-0.1.0folder 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