Browse the extractor catalog on GitHub
Runnable reference for every built-in Mixpeek extractor — inputs, parameters, output fields, embedding models, and copy-paste examples. Auto-generated from the live registry, so it always matches production.
View extractor details at api.mixpeek.com/v1/collections/features/extractors/audio_sentiment_extractor_v1 or fetch programmatically with
GET /v1/collections/features/extractors/{feature_extractor_id}.Pipeline Steps
- Filter Dataset (if
collection_idprovided)- Filter to specified collection
- Apply Input Mappings
- Resolve audio/video field from source (e.g.,
payload.audio_url,payload.webcast_url)
- Resolve audio/video field from source (e.g.,
- Audio Extraction (conditional: if video input)
- FFmpeg strips audio track from MP4/MOV; supports AAC, MP3, FLAC output
- Voice Activity Detection + Segmentation
split_method: time— fixed-length windows (default 30s)split_method: silence— split at natural speech pauses (VAD threshold configurable)split_method: speaker— one segment per speaker turn (requiresrun_diarization=true)
- Speaker Diarization (conditional: if
run_diarization=true)- pyannote.audio 3.x pipeline separates speakers (CEO, CFO, Analyst_1, etc.)
- Assigns
speaker_idand optionally maps tospeaker_rolevia role manifest
- Transcription (conditional: if
run_transcription=true)- Whisper large-v3-turbo speech-to-text with financial vocabulary prompt
- Per-segment timestamps aligned to diarization boundaries
- FinBERT Text Sentiment (conditional: if
run_finbert=true)- ProsusAI/FinBERT financial-domain sentiment classifier
- Outputs
sentiment_label(positive/negative/neutral),sentiment_score(-1 to +1),confidence - Generates 768D FinBERT CLS embedding for semantic search
- Prosodic Feature Extraction (conditional: if
run_prosodics=true)- LibROSA + Parselmouth extract 5 features per segment:
- Pitch variability (F0 standard deviation, Hz) — hesitation and stress indicator
- Speech rate (words per minute) — confidence and urgency signal
- Vocal energy (RMS dB) — assertiveness and emotional weight
- Pause ratio (fraction of silence) — cognitive load and evasiveness marker
- Vocal tremor (jitter + shimmer) — anxiety and deception indicator
- Normalized into a 128D prosodic embedding for similarity search
- LibROSA + Parselmouth extract 5 features per segment:
- Audio-Text Alignment Score (conditional: if
run_alignment=true)- Cosine similarity between FinBERT sentiment direction and prosodic valence
- Low alignment = voice contradicts words (high-value deception/stress signal)
- LLM Structured Enrichment (conditional: if
run_llm_enrichment=trueorresponse_shapeset)- Gemini/GPT-4o processes transcription with custom prompt
- Extracts structured signals: guidance confidence, topic classification, hedging language
- Output
- Per-segment documents with both embedding types, raw prosodic features, sentiment scores, speaker metadata, and computed alpha signals
When to Use
When NOT to Use
Supported Input Types
Supported audio formats: MP3, WAV, FLAC, M4A, OGG, OPUS
Supported video formats (audio extracted): MP4, MOV, MKV, AVI, WebM
Input Schema
Provide one of the following inputs:Output Schema
Each audio segment produces one document:Parameters
Audio Segmentation
- time
- silence
- speaker
Fixed-interval splitting — equal-duration segments regardless of speech content.
Best for: Batch processing, predictable segment counts, initial exploration
Feature Extraction Parameters
Speaker Role Manifest
Map diarized speaker IDs to roles (CEO, CFO, Analyst, etc.) using a manifest:speaker_role_manifest is not provided, roles are labeled SPEAKER_00, SPEAKER_01, etc.
LLM Structured Extraction
Natural Language Mode:
Configuration Examples
Performance & Costs
Processing Speed
Cost Estimates (per hour of audio)
Batch processing: Processing 1,000 S&P 500 earnings calls (avg 60 min) at full configuration ≈ $250
Vector Indexes
Text Embedding (FinBERT)
Prosodic Embedding
Alpha Signal Guide
This section describes the five core prosodic features and their interpretation as quantitative signals.1. Pitch Variability (F0 Standard Deviation)
1. Pitch Variability (F0 Standard Deviation)
What it measures: Standard deviation of the fundamental frequency (F0) in Hz across the segment.Signal interpretation:
- High variability (> 50 Hz): Elevated emotional engagement; can indicate stress or enthusiasm
- Low variability (< 15 Hz): Monotone delivery; associated with rehearsed/scripted language or disengagement
- Baseline deviation: Compare against the speaker’s historical mean F0 std dev for true anomaly detection
2. Speech Rate (Words Per Minute)
2. Speech Rate (Words Per Minute)
What it measures: Words per minute derived from Whisper word-level timestamps.Signal interpretation:
- High rate (> 180 wpm): Urgency, anxiety, or over-rehearsed scripted answers
- Low rate (< 100 wpm): Deliberate, careful language; common when discussing negative surprises
- Rate deceleration mid-answer: Suggests real-time reasoning, less scripted — higher authenticity signal
3. Vocal Energy (RMS dB)
3. Vocal Energy (RMS dB)
What it measures: Root mean square energy of the audio signal in decibels.Signal interpretation:
- High energy: Assertiveness and confidence; common in positive guidance delivery
- Energy drop mid-sentence: Hedging or trailing off; linguistic uncertainty
- Segment-relative drop: Cross-call energy tracking shows conviction level
4. Pause Ratio (Silence Fraction)
4. Pause Ratio (Silence Fraction)
What it measures: Fraction of segment duration classified as silence (VAD threshold -40 dB).Signal interpretation:
- High pause ratio (> 0.35): Cognitive load; speaker is reasoning in real time rather than reciting
- Low pause ratio (< 0.10): Scripted, rehearsed delivery — less information content
- Q&A vs. prepared remarks delta: A large increase in pause ratio during Q&A is a well-documented stress marker
5. Audio-Text Alignment Score
5. Audio-Text Alignment Score
What it measures: Cosine similarity between the FinBERT sentiment direction (text) and prosodic valence (audio). Range: -1.0 to +1.0.Signal interpretation:
- High alignment (> 0.6): Voice and words agree — higher conviction, less masking
- Low alignment (0.1–0.4): Moderate divergence — common in hedged language
- Negative alignment (< 0): Voice contradicts words — strongest stress/deception marker; e.g., “We feel very good about guidance” delivered with high pitch variability, low energy, and high pauses
Composite Stress Index
Thestress_index field (0.0–1.0) is a normalized composite of all five prosodic features:
_z values are Z-scores computed against the speaker’s rolling 4-quarter baseline when speaker_id is consistent across calls.
Recommended Factor Construction
Limitations
- Speaker diarization accuracy: pyannote achieves ~90% DER on clean 2-speaker recordings; accuracy degrades with > 8 speakers or poor audio quality
- Non-English: Whisper transcription supports 99 languages; FinBERT is English-only — for non-English calls, disable
run_finbertand use multilingual sentiment models - Audio quality: Prosodic features require 16kHz+ audio; compressed phone audio (8kHz) reduces pitch extraction accuracy by ~30%
- Baseline dependency:
stress_indexZ-score normalization requires at least 4 prior segments from the samespeaker_idto be meaningful - Segment length: Prosodic features are unreliable for segments < 5 seconds; short interjections are best excluded
- LLM enrichment latency:
run_llm_enrichment=trueadds 1–2s per segment; disable for batch throughput

