Skip to main content

Crate auracle_features

Crate auracle_features 

Source
Expand description

§auracle-features

The feature pipeline: renders every candidate patch under an identical stimulus and extracts the feature vector φ(x) = [φ_audio ; φ_struct] that the taste model scores.

§Pipeline invariants (the reference: Audition, Features)

  • Standard phrase (phrase::PhraseSpec): a fixed short mono phrase; features are only comparable across patches under an identical stimulus.

  • Determinism (render): quiver’s RNG is re-seeded per render, so (term, spec) → bit-identical samples.

  • Vetting gate ([vet]): raw renders are inspected for non-finite, silent, runaway, or DC-dominated output before anything else; failures are quarantined and never auditioned.

  • LUFS normalization (loudness): K-weighted gated loudness matched to a fixed target before audition and feature extraction — otherwise “louder” poisons the preference data.

  • Memoization (cache): because (term, spec) → φ is pure, a featurization the engine has already performed is replayed rather than re-rendered. A hit is indistinguishable from a miss by construction — the same pipeline::Features object comes back either way.

pipeline::featurize composes it all; the pipeline::VettedCandidate it returns carries the exact buffer audition will play. render::Audition is that buffer in the f32 form every consumer actually wants, and render::render_playback reproduces it bit-identically from a term plus its recorded gain_db, which is what makes deferring the buffer safe.

Re-exports§

pub use audio::audio_features;
pub use audio::AudioFeatures;
pub use cache::cache_namespace;
pub use cache::canonical_tree_json;
pub use cache::featurize_memo;
pub use cache::render_key;
pub use cache::CachedFeatures;
pub use cache::MemoStats;
pub use cache::RenderMemo;
pub use cache::DEFAULT_AUDIO_CAP;
pub use cache::DEFAULT_FEATURE_CAP;
pub use cache::RENDER_EPOCH;
pub use loudness::integrated_lufs;
pub use loudness::normalize_to;
pub use loudness::MAX_GAIN_DB;
pub use loudness::PEAK_CEILING;
pub use phrase::PhraseSpec;
pub use pipeline::featurize;
pub use pipeline::Features;
pub use pipeline::FeaturizeError;
pub use pipeline::VettedCandidate;
pub use pipeline::TARGET_LUFS;
pub use render::render_phrase;
pub use render::render_playback;
pub use render::Audition;
pub use render::RenderedPhrase;
pub use structural::struct_features;
pub use structural::StructFeatures;
pub use vet::vet;
pub use vet::VetConfig;
pub use vet::VetFailure;
pub use vet::VetReport;

Modules§

audio
φ_audio: perceptual descriptors of the normalized standard-phrase render.
cache
Content-addressed memoization of crate::featurize (design L0).
loudness
ITU-R BS.1770-style loudness measurement and normalization (mono).
phrase
The standard audition phrase.
pipeline
The full featurization pipeline: compile → render → vet → normalize → extract. One render serves the vet report, the features, and (upstream in the session layer) the audition buffer — the vetting gate’s “no candidate is ever played live unvetted” is enforced here by construction.
render
Headless rendering of a compiled voice under the standard phrase.
structural
φ_struct: render-free descriptors of the term itself.
vet
The vetting gate: safety layer 1.