Class VoiceResult#
Defined in File voice_result.hpp
Class Documentation#
-
class VoiceResult#
Parses a “<name>.voice.json” written by analysis/run_voice.py — the spectrogram, pitch track and intensity contour drawn beneath the waveform on the Speaker Diarization page.
QtCore-only on purpose. The PNG is located but never loaded here, so this stays free of QtGui and can be compiled into mosaic_tests, which links only Qt6::Core and Qt6::Network. Everything that decides how the image is interpreted therefore has test coverage; only the drawing does not.
Public Functions
-
VoiceResult() = default#
-
inline bool is_valid() const#
-
inline const QString &source_audio() const#
-
inline double duration_ms() const#
-
inline const VoiceSpectrogramMeta &spectrogram() const#
-
inline const VoiceTrack &pitch() const#
Hz per frame; 0 means unvoiced, which is a value and not an absence — the widget must break its line there rather than interpolate across it.
-
inline double pitch_floor_hz() const#
-
inline double pitch_ceiling_hz() const#
-
inline const VoiceTrack &intensity() const#
Public Static Functions
-
static VoiceResult load(const QString &jsonPath)#
Returns a default-constructed (is_valid() == false) result if the file is missing, malformed, or declares a schema this build cannot read.
-
VoiceResult() = default#