A thin CLI wrapper around avencera/speakrs 0.3.1, plus a vendored copy of the library patched with an ort::MIGraphX execution-provider mode for AMD GPUs.
- Root crate:
speakrs-cli— produces thespeakrs-clibinary used by Witness. Wraps the library's diarization pipeline, handles CLI I/O, writes RTTM or JSON. vendor/speakrs/: speakrs 0.3.1 (Apache-2.0, Praveen Perera), vendored viacargo vendorand patched to add themigraphxCargo feature gating anExecutionMode::MiGraphXpath. Seesrc/inference/embedding/session.rsforwith_migraphx_mode().src/bin/ort-migraphx-repro.rs: minimal reproducer for the_dl_finiheap-corruption race described in the blog post. Not built by default.
cargo build --release --bin speakrs-cliRequires ORT 2.0.0-rc.12 with MIGraphX support — for RDNA 4, that means maherr/onnxruntime-migraphx-rdna4's patched build. The install script in that repo runs this cargo build automatically.
I vendored speakrs with cargo vendor rather than forking the repo, because I only needed one feature (migraphx) gated on conditionally-compiled code paths — not an invasive rewrite. Upstream git history is lost, but vendor/speakrs/Cargo.toml.orig and vendor/speakrs/LICENSE preserve attribution and license. If a cleaner upstream PR lands, I'd switch to that.
speakrs-cli wrapper: MIT. Vendored speakrs: Apache-2.0 (see vendor/speakrs/LICENSE).