This commit is contained in:
mc_fdc
2023-04-08 18:49:54 +00:00
parent 126f4b7d7b
commit d7e51ed671
5 changed files with 9 additions and 14 deletions

View File

@ -1,15 +1,13 @@
use reqwest::{header::HeaderMap, Result};
use std::{fs::File, io::Write};
use voicevox_client::Client; use voicevox_client::Client;
use reqwest::{Result, header::HeaderMap};
use std::{io::Write, fs::File};
#[tokio::main] #[tokio::main]
async fn main() -> Result<()> { async fn main() -> Result<()> {
let client = Client::new("http://localhost:50021".to_string(), None); let client = Client::new("http://localhost:50021".to_string(), None);
let audio_query = client let audio_query = client.create_audio_query("こんにちは", 1, None).await?;
.create_audio_query("こんにちは", 1, None)
.await?;
let audio = audio_query.synthesis(1).await?; let audio = audio_query.synthesis(1).await?;
let mut file = File::create("examples/hello.wav").unwrap(); let mut file = File::create("examples/hello.wav").unwrap();
file.write_all(&audio).unwrap(); file.write_all(&audio).unwrap();
Ok(()) Ok(())
} }

View File

@ -1,5 +1,5 @@
use crate::{audio_query::AudioQuery, restapi::RestAPI, types::audio_query::AudioQueryType}; use crate::{audio_query::AudioQuery, restapi::RestAPI, types::audio_query::AudioQueryType};
use reqwest::{Result, header::HeaderMap}; use reqwest::{header::HeaderMap, Result};
pub struct Client { pub struct Client {
restapi: RestAPI, restapi: RestAPI,

View File

@ -3,4 +3,4 @@ mod client;
mod restapi; mod restapi;
mod types; mod types;
pub use client::Client; pub use client::Client;

View File

@ -1,6 +1,6 @@
use crate::types::audio_query::AudioQueryType; use crate::types::audio_query::AudioQueryType;
use bytes::Bytes; use bytes::Bytes;
use reqwest::{Client, RequestBuilder, Result, header::HeaderMap}; use reqwest::{header::HeaderMap, Client, RequestBuilder, Result};
#[derive(Clone)] #[derive(Clone)]
pub struct RestAPI { pub struct RestAPI {
@ -15,10 +15,7 @@ impl RestAPI {
client_builder = client_builder.default_headers(headers); client_builder = client_builder.default_headers(headers);
} }
let client = client_builder.build().unwrap(); let client = client_builder.build().unwrap();
Self { Self { base_path, client }
base_path,
client,
}
} }
pub fn request(&self, method: &str, path: &str) -> RequestBuilder { pub fn request(&self, method: &str, path: &str) -> RequestBuilder {

View File

@ -42,4 +42,4 @@ pub struct AudioQueryType {
#[serde(rename = "outputStereo")] #[serde(rename = "outputStereo")]
output_stereo: bool, output_stereo: bool,
kana: String, kana: String,
} }