Fish Audio: S1: audio model
S1 is Fish Audio's multilingual text-to-speech model with broad emotional range, guided by parenthetical controls in the text. Reachable from inside Iran through Hormouz.
- Pricing:
- $15/M UTF-8 bytes
- Type:
- audio
- Audio
S1 is a multilingual text-to-speech model from Fish Audio, suited to voice applications that need broad emotional expression.
It has no fixed voice list: speaking style and emotion are set with controls written into the text. S1 uses parenthetical controls, such as an emotion in brackets before a sentence. Hormouz serves Fish Audio S1 on two endpoints: the OpenAI-compatible /v1/audio/speech, which returns the audio in the same response, and /v1/predictions for background jobs. Set response_format to mp3 or pcm.
Billing is per UTF-8 byte of input text (a Persian character counts as two bytes); the current rate is in the price table on this page. Hormouz provides stable access to it from inside Iran, with no foreign credit card or circumvention tooling required.
S1 is a multilingual text-to-speech model from Fish Audio. It is suited for voice applications that need broad emotional expression, using parenthetical controls to guide speaking style across its supported...
Quickstart
curl https://api.hormouz.net/v1/audio/speech \
-H "Authorization: Bearer ng-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"fish-audio/s1","voice":"eve","input":"Hello from Hormouz.","response_format":"mp3"}' \
--output speech.mp3Specs
| Vendor | Fish Audio |
|---|---|
| Type | Audio |
| Context window | — |
| Pricing | $15/M UTF-8 bytes |
| API | speech |
Code example
curl https://api.hormouz.net/v1/audio/speech \
-H "Authorization: Bearer ng-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"fish-audio/s1","voice":"eve","input":"Hello from Hormouz.","response_format":"mp3"}' \
--output speech.mp3from openai import OpenAI
client = OpenAI(api_key="ng-YOUR_API_KEY", base_url="https://api.hormouz.net/v1")
with client.audio.speech.with_streaming_response.create(
model="fish-audio/s1",
voice="eve",
input="Hello from Hormouz.",
response_format="mp3",
) as resp:
resp.stream_to_file("speech.mp3")import OpenAI from "openai";
import { writeFile } from "node:fs/promises";
const client = new OpenAI({ apiKey: "ng-YOUR_API_KEY", baseURL: "https://api.hormouz.net/v1" });
const speech = await client.audio.speech.create({
model: "fish-audio/s1",
voice: "eve",
input: "Hello from Hormouz.",
response_format: "mp3",
});
await writeFile("speech.mp3", Buffer.from(await speech.arrayBuffer()));Buy the Fish Audio: S1 API, paid in rial
- Buy credit with an Iranian bank card; no foreign card or account needed.
- One Hormouz key reaches Fish Audio: S1 and 600+ other models, and you pay only for what you use.
- No VPN and no risk of a banned account; just change the base URL to api.hormouz.net/v1.
Use via Hormouz
Connect to this model and 600+ others with one API key, then see usage down to each request.
Request company accessFAQ
- How much does Fish Audio S1 cost?
- Billing is per UTF-8 byte of input text (a Persian character counts as two bytes); the current rate is in the price table on this page.
- How do I use Fish Audio S1 from inside Iran?
- Create a Hormouz account and generate an API key. Hormouz gives you a stable route to the model from inside Iran, with no foreign credit card or circumvention tooling needed.
- How do I call Fish Audio S1?
- Hormouz serves Fish Audio S1 on two endpoints: the OpenAI-compatible /v1/audio/speech, which returns the audio in the same response, and /v1/predictions for background jobs. Set response_format to mp3 or pcm.
- How do I control the emotion in Fish Audio S1?
- Write the control in parentheses in the text, before the part it should affect. S1 follows these parenthetical cues across its supported languages.
Updated 2026-10-13