Gerador de Voz e Efeitos Sonoros
Gera voiceovers (TTS) e efeitos sonoros. Para TTS, escolha um provedor
concreto e uma voz antes de chamar submit_voice.
Quando Usar
- Gerar voiceover/narração a partir de texto
- Criar áudio de texto para fala para vídeos
- Adicionar, substituir ou refazer narração/voiceover para um vídeo, linha do tempo, gravação de tela, animação de slides, demonstração de produto, edição B-roll, explicador de MG ou outra sequência visual existente
- Manter a narração/voiceover existente alinhada após cortar, acelerar, desacelerar, mover, reordenar ou substituir os visuais que ela descreve
- Oferecer e permitir a audição de opções de voz TTS quando o usuário não escolheu uma voz concreta
- Gerar efeitos sonoros personalizados a partir de descrições de texto somente após verificar a biblioteca de Efeitos Sonoros primeiro
TTS (Texto para Fala)
Se a solicitação atual tem um alvo visual existente e o usuário deseja narração, voiceover, dublagem ou fala de substituição para esse alvo, leia references/video-sync.md antes de redigir uma nova narração, usar texto de narração existente para gerar TTS ou posicionar áudio. Faça isso mesmo quando o usuário não disse explicitamente "sincronizar" ou "combinar com os visuais"; a existência de um alvo visual significa que o tempo e o significado da narração podem precisar seguir o conteúdo na tela. Use o caminho TTS autônomo normal apenas quando não houver um alvo visual ou o usuário apenas quiser um ativo de áudio a partir de texto.
Leia também references/video-sync.md quando a linha do tempo já tiver narração/voiceover e o usuário pedir para alterar os visuais enquanto mantém esse voiceover alinhado. Esta é uma tarefa de manutenção de sincronia, mesmo que nenhum novo TTS seja necessário.
Use submit_voice para criar um ativo de áudio TTS. O contrato atual da ferramenta MCP é:
provideré obrigatório. As opções configuradas podem serdoubao,elevenlabs,minimax,inworld,fishaudio,speechify,openai,gemini,mistraloucartesia. Todos os provedores são opt-in; use apenas provedores mostrados como configurados no prompt de capacidades.voiceIdé obrigatório, concreto e específico do provedor. A única exceção é a mistura deliberada detimbreWeightsdo MiniMax, ondevoiceIddeve estar vazio. Não misture catálogos.- O catálogo curado em references/voices.md cobre
apenas Doubao, ElevenLabs e MiniMax. Outros provedores não têm preset incluído
ou catálogo de amostras no OpenChatCut. Exija um ID de voz concreto do usuário ou
da conta do provedor; nunca invente um preset ou URL
/voice-samples/.... - Campos com suporte a SDK de IA são específicos do provedor: OpenAI suporta
modelId,speed,outputFormateinstructions; Gemini suportamodelId,outputFormateinstructions; Mistral suportamodelIdeoutputFormat; Cartesia suportamodelId,speed,languageCodeeoutputFormat. Omita campos não suportados ou não solicitados. - Inworld, Fish Audio e Speechify aceitam apenas
voiceIdmaismodelIdopcional. Não passe controles expressivos, de velocidade, idioma ou saída para esses provedores. submit_voicecria apenas um ativo de áudio. Posicionamento na linha do tempo, substituição, corte e alinhamento acontecem depois com ferramentas de linha do tempo.- Para narrações longas, várias chamadas
submit_voicepodem ser úteis: divida em pausas naturais, grupos de frases ou limites de batida de roteiro quando o fluxo de trabalho se beneficiar de clipes de voz com tempo ou posicionamento separados. - Doubao suporta
speedRatio,loudnessRatio,pitch,emotion,emotionScale,performancePrompteexplicitDialect, mas nem toda voz suporta todos os controles expressivos. Verifique references/voices.md antes de usá-los. - ElevenLabs retém suas configurações oficiais de voz, idioma, semente, saída, normalização, dicionário de pronúncia, continuidade, registro e latência controles. MiniMax retém seus controles dedicados documentados em references/minimax-tts.md.
Suporte a controle Doubao para vozes curadas atuais:
vivi,xiaohe,yunzhou,xiaotian,naiqimengwa,yingtaowanzi,wenroumama,zhixingnv,dayi,jitangnv,liuchang,ruyayichen,morgan,qingcang,huiben,popo,yuanboxiaoshu,baqiqingshuetangsengsuportamemotion/emotionScaleexplícito,performancePrompte direções de prompt estilo ASMR.shuanglangshaoniansuportaperformancePrompte seguimento de instrução estilo COT/QA, mas não suportaemotion/emotionScaleexplícito ou controle estilo ASMR.explicitDialecté suportado apenas porvivie pode serdongbei,shaanxiousichuan.
Suporte a controle ElevenLabs para vozes curadas atuais:
amelia,brittney,hope,jessica,arabella,jane,maria,mark,frederick,peter,james,jon,sully,davidealextodos suportam os mesmos controles de nível de solicitação; suporte específico de modelo ainda é validado pelo ElevenLabs.- Esses controles não são garantias por voz de um estilo de atuação específico. Use as tags/amostras predefinidas para escolher uma voz naturalmente adequada e, em seguida, use os controles para mudanças de entrega moderadas.
- Para o ElevenLabs
eleven_v3, tags de áudio inline estão disponíveis quando o usuário pede entrega expressiva, como emoção, tom, dicas não verbais, sotaque ou ritmo local. Exemplos oficiais se encaixam nestas categorias úteis de TTS: tags de emoção/tom como[happy],[sad],[angry],[excited],[curious],[sarcastic],[crying],[annoyed],[appalled],[thoughtful],[surprised]e[mischievously]; tags de entrega vocal e dica não verbal como[whispers],[laughs],[sighs],[exhales],[inhales deeply],[clears throat],[snorts],[swallows],[wheezing]e[coughs]; tags de ritmo/pausa/velocidade local como[slowly],[pause],[short pause],[long pause],[rushed]e[drawn out]; e tags de sotaque/performance especial como[strong X accent], por exemplo[strong French accent], além de[sings],[singing],[woo]e[pirate voice]. Exemplos oficiais são não exaustivos; tags auditivas semelhantes podem ser tentadas quando o usuário explicitamente pedir essa entrega e a tag descrever como a voz deve soar, não uma ação visual. Escreva tags diretamente emtext, perto da frase curta que devem afetar. Trate as tags como orientação local, não controles em todo o parágrafo. - Para pausas e ritmo em
eleven_v3, use pontuação, estrutura de texto, segmentos gerados mais curtos ou tags de áudio locais como[short pause]e[slowly]quando necessário.
// Inglês / multilíngue via ElevenLabs
submit_voice({
provider: "elevenlabs",
text: "Hello world",
voiceId: "peter",
});
// Chinês via Doubao
submit_voice({
provider: "doubao",
text: "你好世界",
voiceId: "liuchang",
});
// Com ajuste de velocidade (apenas Doubao)
submit_voice({
provider: "doubao",
text: "这是一段稍快的中文旁白。",
voiceId: "liuchang",
speedRatio: 1.5,
});
// Com controles expressivos Doubao
submit_voice({
provider: "doubao",
text: "这次事故提醒我们,安全永远不能侥幸。",
voiceId: "liuchang",
emotion: "sad",
emotionScale: 3,
performancePrompt: "痛心但克制,语速稍慢,像新闻专题旁白",
pitch: -1,
speedRatio: 0.92,
});
// Com controles de entrega ElevenLabs
submit_voice({
provider: "elevenlabs",
text: "The launch changed how teams plan their daily work.",
voiceId: "peter",
speed: 0.95,
stability: 0.4,
similarityBoost: 0.8,
outputFormat: "wav_44100",
});
// MiniMax TTS (quando configurado) — veja references/minimax-tts.md
submit_voice({
provider: "minimax",
text: "欢迎使用视频编辑助手。",
voiceId: "female-yujie",
speed: 1,
name: "VO · welcome",
});
// Cartesia forma após o usuário confirmar o ID de voz exato da conta.
// confirmedCartesiaVoiceId representa esse valor fornecido, não um preset.
submit_voice({
provider: "cartesia",
text: "A concise product introduction.",
voiceId: confirmedCartesiaVoiceId,
modelId: "sonic-3",
speed: 1,
languageCode: "en",
outputFormat: "mp3",
});
Audição de Voz Antes da Geração
Quando o usuário precisa de TTS e ainda não escolheu uma voz concreta, primeiro separe provedores com opções curadas do OpenChatCut daqueles provedores que exigem um ID de voz específico da conta.
Para Doubao, ElevenLabs ou MiniMax, leia references/voices.md antes de recomendar, renderizar ou enviar uma opção. Use-o como a única fonte para IDs de preset curados, escolha do provedor, rótulos de exibição, tags e URLs de amostras incluídas. Não crie opções de voz a partir de memória, nomes traduzidos ou descrições amplas do usuário.
Para Inworld, Fish Audio, Speechify, OpenAI, Gemini, Mistral ou Cartesia, não
ofereça uma lista de audição inventada ou URL de amostra. Peça ao usuário o ID de voz
concreto desse provedor configurado. Uma descrição ampla como "feminino quente"
não é um voiceId válido.
Primeiro, determine dois idiomas separados:
- Idioma da conversa do usuário: o idioma que o usuário usou para falar com você. Use
isso para a resposta circundante,
form-visual label,visual-option nameesummary. - Idioma alvo da narração: o idioma do texto que está sendo sintetizado. Use isso apenas para escolher o provedor e o catálogo de vozes.
O botão de envio do widget de audição é fixo no rótulo padrão desta compilação
(submitLabel é aceito, mas não renderizado); mantenha o rótulo da pergunta e os rótulos
das opções no idioma da conversa do usuário, não no idioma alvo da narração. Por exemplo:
Usuários de inglês veem submit_label="Submit", usuários de chinês veem
submit_label="提交" e usuários de espanhol veem submit_label="Enviar".
"me ajude a gerar ... voice over em chinês" é uma conversa em inglês pedindo narração em chinês, então a cópia do widget de audição permanece em inglês enquanto os candidatos a voz vêm do Doubao.
Para um provedor curado:
- Filtre
references/voices.mdpelo idioma alvo da narração / provedor e requisitos explícitos como gênero, faixa etária, tom e caso de uso. - Se nenhum preset corresponder a todos os requisitos explícitos, diga que não há correspondência exata e ofereça os presets suportados mais próximos com uma ressalva clara.
- Escolha de 2 a 4 presets curados correspondentes.
- Carregue
widget-forms, depois chameask_followup_questionscom opções de voz e amostras de áudio reais incluídas. - Aguarde a escolha do usuário.
- Chame
submit_voicecom o ID do preset selecionado comovoiceId.
Para um provedor sem catálogo curado do OpenChatCut, peça um ID de voz do provedor
concreto em texto livre. Não adicione media ou sintetize um
caminho /voice-samples/.... Aguarde o usuário fornecer/confirmar o ID exato
antes de chamar submit_voice.
Para cada opção de audição curada, mantenha value, rótulo de exibição, media e
summary vinculados à mesma linha de preset de references/voices.md. Use apenas as
URLs de amostra registradas lá. Mantenha value como o ID do preset e media como sua
URL de amostra correspondente. Escreva name e summary no idioma de conversa do
usuário. O idioma alvo da narração apenas decide o catálogo de provedor/voz.
Após o envio, mapeie o nome de exibição de volta ao ID do preset da mesma
lista de candidatos.
Solicitação em inglês para narração em chinês:
<widget submit_label="Submit">
<form-visual
id="voiceId"
label="For Chinese voiceover, I recommend a few voices to try:"
required="true"
>
<visual-option
value="vivi"
name="Vivi"
media="/voice-samples/doubao-vivi.mp3"
aspect-ratio="16:5"
summary="Female / young / friendly, general"
/>
<visual-option
value="xiaohe"
name="Xiaohe"
media="/voice-samples/doubao-xiaohe.mp3"
aspect-ratio="16:5"
summary="Female / young / soft, clear"
/>
<visual-option
value="yunzhou"
name="Yunzhou"
media="/voice-samples/doubao-yunzhou.mp3"
aspect-ratio="16:5"
summary="Male / young / neutral, business"
/>
</form-visual>
</widget>
Solicitação em chinês para narração em chinês:
<widget submit_label="提交">
<form-visual
id="voiceId"
label="我推荐这几个中文旁白音色,先试听一下:"
required="true"
>
<visual-option
value="morgan"
name="Morgan"
media="/voice-samples/doubao-morgan.mp3"
aspect-ratio="16:5"
summary="男 / 中年 / 低沉知识解说"
/>
<visual-option
value="zhixingnv"
name="知性女声"
media="/voice-samples/doubao-zhixingnv.mp3"
aspect-ratio="16:5"
summary="女 / 中年 / 冷静知识讲解"
/>
<visual-option
value="vivi"
name="Vivi"
media="/voice-samples/doubao-vivi.mp3"
aspect-ratio="16:5"
summary="女 / 年轻 / 亲切通用口播"
/>
</form-visual>
</widget>
Efeitos Sonoros
Para efeitos sonoros (SFX) de edição comuns, não gere primeiro. Use a biblioteca de Efeitos Sonoros integrada antes de gerar:
- Chame
browse_librarycomcategory:"sound-effects"e uma consulta como"whoosh","camera shutter","notification","censor beep"ou"record scratch". - Inspecione o
library:sound:<id>retornado. - Posicione-o com
edit_item, usandofromFramecomo o quadro de âncora/momento editorial do som:
browse_library({
category: "sound-effects",
query: "short whoosh transition",
});
edit_item({
adds: [
{
type: "audio",
assetId: "library:sound:whoosh-short",
fromFrame: 120,
trackId: "A1",
},
],
});
Gere efeitos sonoros a partir de descrições de texto com submit_sound apenas quando:
- O usuário explicitamente pedir um som gerado/original/personalizado.
- O som solicitado for muito específico para a biblioteca de Efeitos Sonoros existente.
browse_library({ category:"sound-effects", query })não retornar nenhuma correspondência adequada.
// Efeito sonoro personalizado/gerado após a biblioteca não ter correspondência adequada
submit_sound({ prompt: "A dog barking in the distance" });
// Com duração personalizada (0,5-22 segundos)
submit_sound({
prompt: "Thunder and heavy rain",
durationSeconds: 15,
});
// Alta aderência ao prompt
submit_sound({
prompt: "Sci-fi laser gun firing",
promptInfluence: 0.8,
});
Dicas para melhores resultados:
- Seja específico: "Um cachorro latindo alto" em vez de apenas "latido de cachorro".
- Considere a duração: sons mais curtos geralmente são mais nítidos.
- Camadas de sons podem ser combinadas para obter paisagens sonoras complexas.
Manutenção de Narração Sincronizada
Ao retirar (aparar, acelerar, desacelerar, mover, reordenar ou substituir) visuais que têm uma narração correspondente existente:
- Leia references/video-sync.md para orientação sobre sincronização de linha do tempo.
- Use ferramentas de edição de linha do tempo para ajustar o segmento de áudio existente para corresponder aos visuais alterados.
- Se a narração existente não puder ser ajustada para se adequar aos novos visuais, considere gerar um novo TTS com texto revisado.
- Use várias chamadas
submit_voicepara segmentos mais longos para melhor alinhamento e flexibilidade de posicionamento.
Provedores e Configuração
A skill suporta vários provedores TTS, cada um com configuração diferente:
- Provedores Curados (com presets incluídos): Doubao, ElevenLabs, MiniMax - têm vozes predefinidas e amostras em references/voices.md
- Provedores sob Demanda (exigem ID de voz da conta): Inworld, Fish Audio, Speechify, OpenAI, Gemini, Mistral, Cartesia - exigem IDs de voz específicos do usuário
Consulte sempre a documentação do provedor e as referências da skill para obter os IDs de voz corretos, opções de suporte e parâmetros.