async_llm/types/
input_audio.rs

1use derive_builder::Builder;
2use serde::{Deserialize, Serialize};
3
4use crate::error::Error;
5
6#[derive(Debug, Clone, Default, Serialize, Deserialize, PartialEq)]
7#[serde(rename_all = "snake_case")]
8pub enum InputAudioFormat {
9    Wav,
10    #[default]
11    Mp3,
12}
13
14#[derive(Debug, Clone, Builder, Default, Serialize, Deserialize, PartialEq)]
15#[builder(setter(into, strip_option), default)]
16#[builder(derive(Debug))]
17#[builder(build_fn(error = Error))]
18pub struct InputAudio {
19    /// Base64 encoded audio data.
20    pub data: String,
21    /// The format of the encoded audio data. Currently supports "wav" and "mp3".
22    pub format: InputAudioFormat,
23}