pub struct TaskResult {
pub speech_segments: Vec<SpeechSegment>,
pub speaker_turns: Vec<SpeakerTurn>,
pub text_output: Option<TextOutput>,
pub audio_output: Option<AudioBufferInfo>,
pub named_audio_outputs: Vec<NamedAudioOutput>,
pub word_timestamps: Vec<WordTimestamp>,
pub custom_schema_output: Option<CustomSchemaOutput>,
pub artifact_output: Option<VoiceArtifact>,
pub output_artifacts: Vec<VoiceArtifact>,
}Expand description
一次任务执行的完整结果(audiocpp_session_run_offline / finish)。
Fields§
§speech_segments: Vec<SpeechSegment>检测到的语音片段。
speaker_turns: Vec<SpeakerTurn>说话人分离的发言分段(存在时)。
text_output: Option<TextOutput>文本输出(存在时)。
audio_output: Option<AudioBufferInfo>音频输出(存在时)。
named_audio_outputs: Vec<NamedAudioOutput>命名音频输出列表。
word_timestamps: Vec<WordTimestamp>词级时间戳(存在时)。
是否输出按模型族而定,空数组只表示“本次无词戳“,先查选项再报缺口:
- Qwen3 ASR:默认不输出;需请求选项
return_timestamps=true(见crate::options::request::RETURN_TIMESTAMPS),且建会话时经会话选项 配好对齐模型(见crate::options::session::QWEN3_ASR_FORCED_ALIGNER_MODEL_PATH), 上游用对齐器内部回填。流式模式不支持词戳(直接抛错)。 - 强制对齐族(
qwen3_forced_aligner/mms_forced_aligner,taskalign)直接输出;ASR 主文本 + 对齐回填是无词戳族的常规降级链。
custom_schema_output: Option<CustomSchemaOutput>自定义结构化输出(存在时,如 Smart Turn 的 smart_turn.v1 轮次判定)。
artifact_output: Option<VoiceArtifact>单个产物输出(存在时,如 voice-clone 的 cached_voice_id)。
output_artifacts: Vec<VoiceArtifact>多个产物输出(存在时)。
Trait Implementations§
Source§impl Clone for TaskResult
impl Clone for TaskResult
Source§impl Debug for TaskResult
impl Debug for TaskResult
Source§impl<'de> Deserialize<'de> for TaskResult
impl<'de> Deserialize<'de> for TaskResult
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for TaskResult
impl PartialEq for TaskResult
Source§impl Serialize for TaskResult
impl Serialize for TaskResult
impl StructuralPartialEq for TaskResult
Auto Trait Implementations§
impl Freeze for TaskResult
impl RefUnwindSafe for TaskResult
impl Send for TaskResult
impl Sync for TaskResult
impl Unpin for TaskResult
impl UnsafeUnpin for TaskResult
impl UnwindSafe for TaskResult
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more