跳到正文
cccskills
免费在 GitHub 公开中文介绍

fish-audio-tts

使用fish.audio生成多语言旁白,复用已创建的声音,并调整情感、语速和音量。可先生成简短试听,确认声音与节奏后再制作完整音频文件。

原文查看原文说明

Generate expressive, multilingual narration with fish.audio (S1 / S2-generation models) and reuse cloned voices via reference_id. Use when the user prefers fish.audio/Fish Audio TTS, wants a specific playground voice model, or needs high-emotion voice-clone narration.

实测评分 未实测

查看安装方法

适用场景

  • 为视频制作多语言旁白
  • 复用在playground创建的声音
  • 生成带笑声或耳语的朗读
  • 用简短样本确认声音和节奏

中文介绍

功能

使用fish.audio将文字生成多语言旁白,并保存为音频文件。在playground创建的声音可以通过reference_id指定并复用。S2系列模型支持在文本中加入标签,插入笑声或耳语,还可调整语速、音量,以及音质与生成速度之间的平衡。

适用场景

适合为视频准备多种语言的旁白,或让同一个声音朗读多份稿件。先生成10至15秒的样本,确认声音的自然程度、情感和节奏后,再生成全文。

使用示例

  • “请用已保存的声音,将这份稿件生成为简短的试听音频。”
  • “请使用S2系列模型制作旁白,在中间加入一段耳语。”

注意事项

需要在.env中设置FISH_AUDIO_API_KEY,且必须明确指定模型。克隆声音需提前在playground创建,不支持每次请求上传参考音频。按输入文本的UTF-8字节数计费。资料中的免费额度仅限截至2026年8月31日的活动期间,商业使用也有限制。s1不解析情感标签。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

文档检查

AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。

安全性发送数据、删除文件、执行命令等是否有说明
A良好明确说明外部API请求和计费,要求全文生成前获批,并禁止记录API密钥。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足说明了API密钥和声音创建位置,但未提供OpenMontage安装步骤。

不计入评分。 由 AI(OpenAI Codex)于 2026年10月23日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(1)

  • SKILL.md5.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

fish.audio TTS

Requires FISH_AUDIO_API_KEY in .env (create one at https://fish.audio/go-api/api-keys/). Create voice models in the fish.audio playground and pass their id as reference_id to reuse a cloned voice.

Current API

Single synchronous call returning raw audio bytes:

POST https://api.fish.audio/v1/tts
Authorization: Bearer ${FISH_AUDIO_API_KEY}
Content-Type: application/json
model: <backend model>     # HTTP header selects the backend, e.g. s1

The backend model is chosen with the model HTTP header, not a body field. In OpenMontage this maps to the tool's model input.

Backend models

model is required — there is no default. Pass one of:

  • s2.1-pro — latest generation. Best quality: inline emotion tags, 80+ languages, multi-speaker. Hero narration.
  • s2.1-pro-free — promotional free access to s2.1-pro. Drafts, samples, and validation runs at $0 during the promo window only. Per the fish.audio announcement: free through August 31, 2026, subject to Fair Use, no SLA/latency guarantee, requests may be retained, and commercial use is restricted. Never route production or client narration through it.
  • s2-pro — first S2 generation. Stable high quality with emotion-tag support.
  • s1 — previous flagship. Kept for compatibility with existing integrations.

Billing is per UTF-8 byte of input text (not per character). CJK text and emoji cost 3-4x an ASCII character of the same visible length. Current list pricing: s1 / s2-pro / s2.1-pro = $15 per 1M bytes, s2.1-pro-free = $0 during the promo window only (the tool's estimate_cost() switches to the paid s2.1-pro rate after August 31, 2026). Verify current pricing at https://docs.fish.audio/developer-guide/models-pricing/pricing-and-rate-limits before large batches.

Inline emotion tags (S2 models only)

s2-pro / s2.1-pro / s2.1-pro-free interpret inline emotion tags embedded in the text:

  • Tags like [laugh], [whispers] change the delivery mid-sentence.
  • Example: "That's hilarious [laugh] but let me explain seriously."
  • s1 does not interpret emotion tags — they may be read out as plain text, so strip them when targeting s1.

Voice selection (reference_id)

  • Build or pick a voice in the fish.audio playground, then copy its model id.
  • Pass it as reference_id. The selector's generic voice_id is accepted as an alias when reference_id is absent.
  • Without a reference_id, fish.audio uses its default voice for the chosen model.

Inline on-the-fly cloning (uploading reference audio + text per request) is not supported by this tool — create a voice model in the playground first.

OpenMontage Usage

Generate with the TTS selector:

from tools.audio.tts_selector import TTSSelector

result = TTSSelector().execute({
    "preferred_provider": "fish_audio",
    "text": "Here's why compound interest quietly beats every get-rich-quick scheme.",
    "model": "s1",
    "reference_id": "<playground voice model id>",
    "output_path": "projects/my-video/assets/audio/narration.mp3",
})

Or call the provider directly:

from tools.audio.fish_audio_tts import FishAudioTTS

result = FishAudioTTS().execute({
    "text": "Short sample line for approval.",
    "model": "s1",
    "reference_id": "<playground voice model id>",
    "output_path": "projects/my-video/assets/audio/fish_sample.mp3",
})

The provider writes the audio to output_path and returns data.output plus the resolved model and reference_id.

Quality & latency tuning

  • latency: normal (default, best quality), balanced (a little faster), or low (fastest, slight quality cost).
  • normalize: default true; keep it on so numbers, dates, and currency read naturally.
  • prosody: optional { "speed": 1.0, "volume": 0 } to nudge pace/loudness.
  • mp3_bitrate: 128 is a good default; raise to 192 for music-bed-heavy mixes.
  • temperature: default 0.7. Raise toward 0.9 for more expressive reads (recommended when leaning on emotion tags); lower for a steadier, more predictable delivery.
  • top_p / repetition_penalty: usually leave at the defaults (0.7 / 1.2).

Recommended Workflow

  1. Generate a 10-15 second sample with the chosen model + reference_id before a full paid narration.
  2. Ask the user to approve voice naturalness, emotion, and pace.
  3. Generate the full narration only after approval.
  4. For batch/localization variants where cost matters, prototype on s2.1-pro-free (promo-window $0; non-commercial drafts only) and upgrade the final to s2.1-pro.

Troubleshooting

  • 401 Unauthorized: wrong or missing FISH_AUDIO_API_KEY.
  • 402 / payment errors: account credit exhausted.
  • 404 / bad voice: the reference_id is wrong or not owned by this account.
  • Empty/short audio: check that text is non-empty and normalize is not stripping the whole input.

Safety

Never print or write the API key to logs, metadata, patches, or project artifacts. .env.example should contain only empty variable names.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

3d-asset-generation

免费有简介

从文字或图像生成3D模型,并与目录素材搭配使用。在Blender中检查形状、材质、大小和接地情况,记录生成条件、来源及费用,再将素材加入场景。

  • 根据文字生成独特的3D道具
  • 将概念图中的物体转为3D模型
  • 用目录中的植被和岩石填充背景
calesthio/OpenMontage7.2万2026年10月24日 更新

acestep

免费有简介

使用ACE-Step 1.5生成视频背景音乐和带歌词的歌曲,可指定曲风、时长、速度与调性,也支持改编参考音频,以及从混合音频中分离人声或乐器。

  • 制作适合视频场景的背景音乐
  • 制作带歌词的短广告曲
  • 将参考音频改编为爵士风格
calesthio/OpenMontage7.2万2026年10月24日 更新

agents

免费有简介

使用ElevenLabs创建语音对话助手或角色,配置声音、应答规则、语言模型及外部工具,支持嵌入网站,并通过Twilio集成设置电话外呼。

  • 创建回答咨询的语音机器人
  • 在网站中嵌入语音引导
  • 制作可对话的语音角色原型
calesthio/OpenMontage7.2万2026年10月24日 更新

ai-video-gen

免费有简介

根据文字或参考图像生成AI视频,并按用途、可用服务和预算选择模型。可制作社交平台竖屏短片、让商品照片动起来,也可通过对话编辑已有片段。

  • 制作社交平台竖屏短片
  • 为商品照片添加动态效果
  • 按预算和风格选择生成服务
calesthio/OpenMontage7.2万2026年10月24日 更新

ai-video-gen

免费有简介

根据文字描述或参考图片生成AI视频,并按用途和费用选择生成服务。支持设置画面比例、查看生成进度,以及通过Gemini Omni对话修改现有视频。

  • 将文字描述的场景制作成视频
  • 为商品照片添加动态效果
  • 制作社交媒体竖屏视频
calesthio/OpenMontage7.2万2026年10月24日 更新

atlas-cloud

免费有简介

通过Atlas Cloud使用多种模型生成和编辑图像与视频,只需一个API密钥,即可保存生成素材,以及所用模型、提交设置和预估费用等记录。

  • 通过同一服务生成图像和视频
  • 利用参考素材编辑商品图
  • 参考图像、视频和音频生成视频
calesthio/OpenMontage7.2万2026年10月24日 更新

查看 calesthio 的全部技能

报告此技能的问题