kcode-audio-transcribe 0.1.0

In-memory asynchronous audio transcription with Gemini and Codex reconciliation
Documentation

kcode-audio-transcribe

kcode-audio-transcribe turns owned WAV bytes into a reconciled Markdown transcript. It accepts already-configured Gemini and Codex clients, starts the complete pipeline with one call, and exposes a cheap pollable status snapshot.

use kcode_audio_transcribe::{AudioTranscriber, JobState};
use kcode_codex_runtime::Codex;
use kcode_gemini_api::Gemini;

# fn example(gemini: Gemini, codex: Codex, wav_bytes: Vec<u8>) {
let transcriber = AudioTranscriber::new(gemini, codex);
let job = transcriber.transcribe(wav_bytes);
let snapshot = job.status();
if snapshot.state == JobState::Completed {
    println!("{}", snapshot.transcript.as_deref().unwrap_or_default());
}
# }

The library never accepts API keys, paths, readers, storage callbacks, or database handles. Audio, chunks, encoded Opus, progress, and results are held only in memory. Jobs do not survive process shutdown.

See Documentation.md for the API and Specification.md for behavioral guarantees.