Vozes Xiaoman e Cola - Áudio em Chinês

Gera e entrega narração longa em chinês através do ListenHub usando as vozes femininas Xiaoman e Cola. Útil quando o usuário pedir para ler um texto completo, dividir um roteiro longo em partes de áudio, fornecer arquivos MP3 segmentados e mesclados, comparar ou preservar as vozes Xiaoman/晓曼 e Cola, ou solicitar o mesmo áudio em ambas as vozes.

O que é Vozes Xiaoman e Cola - Áudio em Chinês?

Esta skill é especializada na geração de narração longa em chinês (mandarim) utilizando as vozes femininas Xiaoman (晓曼) e Cola, por meio da plataforma de TTS ListenHub. O principal objetivo é evitar falhas comuns ao lidar com textos extensos — como estouro de limite de entrada ou sobrescrita acidental de arquivos entre variantes de voz. A skill aceita tanto texto puro quanto arquivos de texto anexados como entrada. Caso o conteúdo seja um podcast ou arquivo de áudio, a skill pode transcrevê-lo primeiro (com ASR) e depois usar a transcrição como fonte. O fluxo de trabalho é um pipeline de duas passagens com preservação de seções: o texto fonte é normalizado e quebrado em dinamicamente em segmentos (capítulos ou parágrafos), cada segmento é enviado ao ListenHub para geração de áudio, os episódios são monitorados até conclusão, os arquivos MP3 são baixados separadamente para cada voz e, por fim, todos os segmentos são mesclados em um único arquivo MP3 por voz. A skill entrega todos os segmentos (arquivos chunk) e os dois arquivos mesclados (um para cada voz), com nomes distintos e explícitos, como “全文朗读-晓曼-ListenHub合并版.mp3” e “全文朗读-Cola-ListenHub合并版.mp3”. A skill é específica para a plataforma Cola/ListenHub, dependendo da capacidade de TTS do ListenHub, download local e concatenação de áudio (via FFmpeg). Se o usuário solicitar explicitamente apenas uma voz, a skill gera apenas esse conjunto; caso contrário, gera ambos. A verificação final inclui confirmação de que todos os arquivos esperados existem e são válidos, com entrega de cada arquivo via uma linha MEDIA: no formato absoluto do caminho.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Brclio/Skills/tree/HEAD/skills/cola-voice-delivery

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Entrega com Vozes Xiaoman e Cola (Cola Voice Delivery)

Gere scripts longos em chinês em duas vozes nomeadas do ListenHub e entregue cada segmento mais um MP3 mesclado completo. O fluxo de trabalho existe para evitar falhas de entrada longa e sobrescritas acidentais entre variantes de voz.

Invocação Simples

Trate a chamada da skill mais um arquivo de texto anexado como a entrada completa do usuário. Não peça ao usuário para dividir, colar, enviar, renomear, baixar ou mesclar nada. A saída padrão são ambas as vozes:

  • 晓曼: todos os chunks MP3 ordenados mais um MP3 mesclado
  • Cola: todos os chunks MP3 ordenados mais um MP3 mesclado

O número de chunks é dinâmico: escolha-o com base no comprimento da fonte e no tamanho confiável de entrada de TTS, não em uma contagem fixa. Um texto curto pode produzir um chunk; um roteiro de podcast longo pode produzir muitos. Uma execução bem-sucedida não está completa até que todos os arquivos estejam localmente presentes e cada arquivo seja entregue com uma linha MEDIA:. Se o usuário solicitar explicitamente apenas uma voz, entregue o conjunto completo dessa voz; caso contrário, gere ambas.

Registro de Vozes

Use estes IDs exatos de locutor do ListenHub:

  • Xiaoman / 晓曼: chat-girl-105-cn
  • Cola: chatb812x-500306f5

Não substitua uma voz pela outra. Na resposta final, indique a voz exata usada para cada grupo de arquivos.

Entrada Aceita

Aceite texto puro ou um arquivo de texto/documento anexado. Se a entrada for um arquivo de áudio de podcast ou URL de podcast, transcreva-o primeiro com uma capacidade de ASR/transcrição e use a transcrição resultante como fonte de narração. Mantenha a ordem da transcrição e separe locutores ou seções quando eles forem significativos.

Estratégia de Geração

Use um pipeline de duas passagens com preservação de seções, em vez de enviar um anexo longo ou uma URL de arquivo privada para o ListenHub:

  1. Normalize a fonte em texto falável, mantendo a ordem narrativa original e títulos de seção significativos.
  2. Divida nos limites de capítulo ou seção para que cada requisição TTS permaneça dentro de um tamanho de entrada confiável e uma requisição com falha possa ser repetida sem regenerar o livro inteiro.
  3. Gere o mesmo conjunto ordenado de chunks uma vez com Xiaoman e uma vez com Cola. Mantenha as execuções de voz independentes, para que uma falha ou repetição em uma voz não possa substituir a outra.
  4. Monitore cada episódio do ListenHub até o sucesso e baixe o audioUrl retornado. Use a URL de áudio gerada, não o resumo ou sumário do serviço.
  5. Armazene chunks em diretórios específicos de voz e mescle somente depois que cada chunk esperado estiver presente. Verifique duração e tamanho para ambas as saídas mescladas.
  6. Entregue cada chunk e ambos os arquivos mesclados. Isso torna possível a substituição individual de capítulo e mantém o audiolivro completo conveniente para reprodução.

Passar o texto bruto dos chunks diretamente é intencional: o ListenHub pode rejeitar caminhos locais e URLs de texto enviado privadamente como fontes inválidas. Se o endpoint do ListenHub exigir especificamente uma URL ou fonte HTML, crie um documento HTML temporário contendo o texto fonte escapado dentro de um elemento article, envie-o somente com a autorização do usuário e passe a URL buscável resultante. Trate o HTML como um transporte de fallback, não como um substituto para a geração direta de chunks; se a URL HTML for rejeitada, retorne ao texto direto do chunk. Nomes e diretórios separados são igualmente intencionais: um nome de saída compartilhado pode sobrescrever uma versão de voz previamente válida.

Fluxo de Trabalho

  1. Leia ou transcreva a entrada completa antes de gerar áudio. Preserve a ordem e a redação da fonte. Remova apenas marcações que não devem ser faladas, como a sintaxe de cabeçalho Markdown, a menos que o usuário peça leitura literal do documento. Mantenha títulos de seção significativos e pistas de narração quando eles fizerem parte do roteiro.
  2. Estime o tamanho de entrada confiável e divida dinamicamente. Prefira limites de seção (##, títulos de capítulo ou quebras naturais de parágrafo) e depois divida seções muito grandes nos limites de parágrafo. Use quantos chunks forem necessários; nunca force um número fixo, como 11. Nomeie os chunks com índices preenchidos com zero: 00, 01, 02 e assim por diante.
  3. Para cada voz solicitada, chame create_tts do ListenHub com:
    • language: zh
    • tts_type: text
    • tts_mode: direct
    • o ID do locutor selecionado
    • o texto bruto de exatamente um chunk
  4. Monitore cada episódio retornado com check_status até que processStatus seja success. Registre o audioUrl retornado na ordem dos chunks. Não use o resumo do episódio como fonte de áudio; ele pode ser um sumário em vez do roteiro fornecido.
  5. Baixe todas as URLs de áudio bem-sucedidas localmente. Use diretórios separados para cada voz, por exemplo:
    • xiaoman-listenhub-parts/00.mp3
    • cola-listenhub-parts/00.mp3
  6. Mescle os chunks de cada voz com o script scripts/merge_mp3.sh ou um fluxo de concatenação equivalente do FFmpeg. Use nomes de saída separados e explícitos:
    • 全文朗读-晓曼-ListenHub合并版.mp3
    • 全文朗读-Cola-ListenHub合并版.mp3 Nunca escreva ambas as variantes em um nome de arquivo compartilhado.
  7. Verifique cada arquivo mesclado com uma sonda de áudio. Relate duração e tamanho do arquivo e certifique-se de que todos os arquivos chunk esperados existam antes da entrega.
  8. Entregue uma linha MEDIA: /caminho/absoluto para cada arquivo: ambos os arquivos mesclados e todos os arquivos segmentados de ambas as vozes. Não entregue apenas um diretório ou apenas as versões mescladas.

Tratamento de Entrada e Falhas

  • Se um anexo local não puder ser passado diretamente para o ListenHub, leia-o localmente e passe o texto do chunk diretamente para create_tts. Não passe um caminho local como conteúdo de narração: o ListenHub lerá o caminho literalmente ou o rejeitará.
  • Se uma URL de texto enviada privadamente for rejeitada como Invalid input at source, pare de tentar essa URL e use o texto direto do chunk.
  • Se uma geração for bem-sucedida, mas o download do seu audioUrl expirar, tente novamente contra o host de assets do ListenHub retornado e preserve o mapeamento do ID do episódio e da URL.
  • Se uma geração de voz falhar, não substitua silenciosamente pela outra voz. Relate a voz com falha e mantenha quaisquer arquivos de voz gerados com sucesso.
  • Preserve arquivos existentes escolhendo um novo nome de arquivo específico da voz. Sobrescrever o arquivo mesclado de uma voz anterior perde uma entrega válida.
  • Para um roteiro longo, a geração pode ser paga e pode levar vários minutos. Acompanhe o trabalho como uma tarefa de várias etapas e marque-a como concluída somente depois que ambos os grupos de voz solicitados, seus chunks e seus arquivos mesclados tenham sido verificados.

Verificação Final de Aceitação

Antes de responder, verifique toda a cadeia, não apenas que uma requisição TTS foi bem-sucedida:

  1. O texto bruto ou a transcrição do podcast foi lido(a) completamente e sua ordem de seção foi preservada.
  2. Uma contagem dinâmica de chunks foi escolhida a partir do comprimento da entrada; nenhuma contagem fixa de segmentos foi assumida.
  3. Os mesmos índices de chunks escolhidos dinamicamente existem para ambas as vozes solicitadas.
  4. Cada chunk tem um arquivo MP3 baixado e não vazio.
  5. Cada voz tem um MP3 mesclado separado, sem nome de arquivo compartilhado ou sobrescrita.
  6. FFprobe ou uma sonda de áudio equivalente relata duração e tamanho para ambos os arquivos mesclados.
  7. A resposta final identifica os dois IDs exatos de locutor e contém uma linha MEDIA: para cada chunk e cada arquivo mesclado.

Se alguma verificação falhar, continue trabalhando ou relate o chunk/voz específico(a) com falha; não reivindique entrega completa.

Lista de Verificação de Entrega

  • ID de locutor correto usado para toda geração
  • Todas as seções da fonte cobertas em ordem
  • Cada chunk baixado para cada voz solicitada
  • Arquivos mesclados têm nomes distintos e específicos de voz
  • Duração e tamanho do arquivo verificados
  • Todos os arquivos chunk e ambos os arquivos mesclados entregues com linhas MEDIA:

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Brclio/Skills

>- Create a reusable content-illustration character and simple IP Standard Pack for a person, creator account, or brand. Use for personal IP, account mascots, brand characters, blind-box or designer-toy characters, “把我变成一个角色”, “做一个账号形象”, or when someone needs consistent character images, values, turnaround views, and reusable prompts.

Brclio/Skills

生成 Bornforthis 个人 IP 风格的中文正文配图。用于用户要求为中文文章、帖子、博客、Notion 文档、知识讲解、工作流、方法论、流程、结构、状态、隐喻或观点制作“Bornforthis”“个人 IP”“蜡笔手绘”“正文配图”“文章插图”“配图建议”“shot list”“去标题”或“改图”时;默认使用 Bornforthis 青年男性角色、纯白背景、蜡笔或马克笔斜线纹理、深蓝粗描边、少量蓝红中文批注和温暖而略荒诞的绘本风格。

Brclio/Skills

Turn one or more user-provided reference photos into a complete publishable WeChat sticker album: plan and generate exactly 20 separate identity-consistent Q-version stickers with varied Chinese reactions, preserve untouched originals and high-resolution generation sources, create current-spec WeChat banner/cover/chat-icon assets and submission metadata, validate every deliverable, and build upload-only plus full-archive packages. Use when the user wants to create, rebuild, package, or prepare a WeChat sticker pack from reference images.

Brclio/Skills

Design a gender-adaptive personal-IP cartoon system from one portrait for users with no art background. Provides classic, random, guaranteed light-palette, industry full-body, and official brand or university VI theme modules plus action designs, front full-body characters, eight-angle turnarounds, 24-emotion packs, collages, and an offline HTML selection gallery. When the user gives no explicit feature-control instruction, every applicable feature defaults on. Use for personal IP, professional or industry avatars, campus-color characters, character sheets, expression packs, avatar blind boxes, interactive image shortlisting, or expansion of an approved set.

Habilidades Relacionadas