sami7777
|
fa0628f0e2
|
Add slices + speech_regions modules
- slices.py: extract overlapping audio chunks for manual review (filename
embeds start/end timestamps for easy reference)
- speech_regions.py: find/extract only the speech regions (silence stripping),
useful as a faster-whisper pre-processing step
- waveform.py: fix silencedetect verbosity (info, not error) + regex parser
to handle '[silencedetect @ 0x...] silence_start: 0' prefix
- cli.py: new 'slices' subcommand
- tests: 12 new tests (slices, speech_regions, regex); 61 total all passing
- README: updated with subcommand table + step-by-step workflow
|
2026-07-27 04:00:45 -07:00 |
|
sami7777
|
7db2832034
|
Add scan + auto subcommands
- waveform.py: fast ASCII waveform via ffmpeg PCM extract + numpy RMS
(avoids the slow per-frame astats approach)
- transcribe.py: faster-whisper integration with substring bad-word matching
- cli.py: new 'scan' (ASCII waveform + silence marks, no whisper)
and 'auto' (transcribe + bad-word flagging) subcommands
- numpy added to required dependencies
- 17 new tests (waveform + transcribe), 42 total all passing
|
2026-07-27 03:50:55 -07:00 |
|
sami7777
|
cea6005bf4
|
Initial commit: sermon-clean v0.1.0
Find, cut, paste replacements in sermon audio.
- engine.py: SermonClean core (BadSegment, trim, concat, splice verify)
- cli.py: find/cut/paste/pipe subcommands
- elevenlabs.py: optional ElevenLabs rendering hook
- 25 tests passing (timestamp parsing, BadSegment validation, end-to-end trim on real audio)
- pyproject.toml: pip-installable; dep only on ffmpeg/ffprobe system-wide
- README + LICENSE (MIT) + examples/segs.json
Validated against the krystie audio cache (OGG/Opus 48kHz mono).
|
2026-07-27 02:40:18 -07:00 |
|