pip install audio-helper
Three questions decide whether a library fits your constraint, and the answers are measured against the code rather than claimed. They are stated here once so you do not have to read seventeen READMEs to find them.
Sixteen of the seventeen never contact a paid service. They run on your machine with open-source tooling: no account, no API key, no per-character or per-token billing. Where a model is involved the weights download once, then the work is offline.
Two of them do reach a remote server, and the distinction matters: bucket-helper and sftp-helper talk to storage and servers that are yours β an S3 bucket, a host you have an account on. That is your infrastructure, not a third-party tariff; their whole job is moving data to a place you chose.
best-engine-ai-helper is the only one that can call a paid cloud,
and only when you ask it to. Its default path is the local model. A cloud
provider is reached only if you name an engine that declares an
api_key_env field and set that environment variable; the
key is read from the environment at call time and never written to disk. So the
paid path exists, it is opt-in, and it is one explicit gesture away β never a
default that bills you by surprise.
Batch and streaming are different objectives, not settings on a dial. Offline work has no deadline, so quality is the only thing to maximise. Real-time work has a hard feasibility boundary: the engine must produce faster than playback consumes, which is a real-time factor below 1 β and below about 0.8 once you leave margin for the first chunk and for jitter.
The libraries that genuinely stream, verified by the shape of their public API
rather than by their prose:
capture-helper (iter_camera_frames,
iter_mic_audio), podcast-helper
(extract_audio_stream), video-helper
(extract_frames, iter_frame_optical_flow),
speaker-helper (Speaker.stream) and
vocal-helper (Pipeline.run, live, beside an
OfflinePipeline that is explicitly the batch twin).
discussion-helper is real-time by construction β it is a
conversation loop β and it drives those two rather than streaming itself.
speaker-helper is where the two objectives visibly diverge, and
its router picks by condition instead of pretending one engine wins both. For
streaming it chooses kokoro, the only engine whose real-time factor
is measured under the ceiling: the router refuses to claim an engine keeps up if
it was never timed. The two halves of that choice come from different places,
and the router records which: speed is timed on your machine, while quality is
ranked by a public_elo β a human-preference arena score measured
elsewhere, by other people, because preference is not something a laptop can
measure. For offline, where speed is disregarded entirely, it chooses
chatterbox in every language; in French that is the owner's
ruling over a higher prior for kyutai, and the router says so. Everything else in the suite
is batch, which is not a limitation but the honest shape of converting a file.
Most of the suite is language-agnostic: resampling a WAV, compressing a video or hashing a folder does not care what language is in the file. Language becomes a real parameter only where meaning is involved, and there the libraries say which ones they cover rather than implying all of them.
vocal-helper identifies the language it hears and transcribes it; speaker-helper ships female default voices per language and routes per language, with French and English as the measured pair and a multilingual engine behind the others; discussion-helper inherits both. md2star localises the documents it produces β the bibliography heading follows the document's own language. standpoint writes its analysis in French or English. Everything user-facing across the suite exists in both languages, which is why every page here has a French twin.
Cross-platform file, system, hash, config and timing/profiling utilities β the base every other helper builds on.
π Docs Β· π¦ PyPI Β· π GitHub
Load, convert, split and concatenate audio; optional source separation.
π Docs Β· π¦ PyPI Β· π GitHub
Live PCM β Voice Activity Detection β online speaker diarization β Speech to Text β optional LLM summary.
π Docs Β· π¦ PyPI Β· π GitHub
Speech synthesis in your own process: say a sentence, stream a reply, or narrate a document with the timed track that lets a page follow along. The local engines need no API key and work offline once the weights land; the one paid cloud engine, ElevenLabs, runs only when named. The router picks by condition: streaming favours speed (kokoro, RTF under 0.8), offline favours quality (chatterbox, in every language). A pronunciation lexicon states once how a word is said. The inverse of vocal-helper: text in, speech out.
π Docs Β· π¦ PyPI Β· π GitHub
Hold a spoken conversation at the microphone: listen, answer, speak β and stop the moment the user cuts in. The loop that knows whose turn it is.
π Docs Β· π¦ PyPI Β· π GitHub
Video conversion, handling and frame extraction.
π Docs Β· π¦ PyPI Β· π GitHub
Camera and microphone capture with a uniform streaming interface.
π Docs Β· π¦ PyPI Β· π GitHub
yt-dlp-based media acquisition β download and stream from YouTube and hundreds of other sites.
π Docs Β· π¦ PyPI Β· π GitHub
Universal audio-stream consumer.
π Docs Β· π¦ PyPI Β· π GitHub
S3-compatible object storage: upload, download, mirror and stage-and-share patterns.
π Docs Β· π¦ PyPI Β· π GitHub
SFTP: upload, download, mirror.
π Docs Β· π¦ PyPI Β· π GitHub
Markdown β DOCX/PPTX/PDF bridge on Pandoc, with curated styling, Mermaid rendering and bibliography support.
π Docs Β· π¦ PyPI Β· π GitHub
Never run the same heavy call twice: persistent, content-addressed memoization + single-flight. A toolbox, close in spirit to os-helper.
π Docs Β· π¦ PyPI Β· π GitHub
Turn a comparison table into a labelled 2D positioning map, a written analysis and a YAML of coordinates β PCA perceptual maps, one command.
π Docs Β· π¦ PyPI Β· π GitHub
Pick and pull the best local LLM / VLM for the current machine's hardware β memory-aware model selection over Ollama.
π Docs Β· π¦ PyPI Β· π GitHub
Route to the right approximate-nearest-neighbour backend (exact/turbovec/HNSW/FAISS/Annoy/Qdrant/pgvector) from measured problem criteria, with a justified, discussable rationale.
π Docs Β· π¦ PyPI Β· π GitHub
Noise-robust knee/elbow detection: reports a knee with uncertainty, or explicitly abstains rather than guessing.
π Docs Β· π¦ PyPI Β· π GitHub
Generated with Sphinx (autodoc + napoleon, Read the Docs theme) from each package's NumPy-style docstrings.