Produzir vinte e nove configurações regionais com voz, sem ligação
Pode um conjunto de voz multilingue completo para uma aplicação infantil ser produzido localmente numa só GPU, sem API de fala paga e sem faturação por carácter?
·
Uma aplicação para crianças com menos de seis anos é um produto em que a voz vem primeiro: o público não sabe ler, por isso cada instrução, número e recompensa tem de ser dita em voz alta. Localizá-la da maneira habitual implica um fornecedor de síntese de fala, uma fatura por carácter que cresce com cada alteração de conteúdo, e uma dependência que tem de continuar financiada ao longo de toda a vida da aplicação.
Em vez disso, produzimos todo o pacote sem ligação — duas vozes em vinte e nove configurações regionais, mais um conjunto separado e mais suave de gravações para crianças de dois e três anos nas linhas de contagem e de cores, quinze faixas de música e oito efeitos sonoros. Cada linha tem uma entrada de manifesto que regista o seu texto, o seu ficheiro, o modelo que a gerou e o seu resultado de controlo de qualidade, e cada ficheiro de música e de som traz um registo de licença por ficheiro.
O que a automatização não conseguia fazer era julgar se uma linha soa bem a uma criança numa língua que ninguém da equipa fala. Essa parte ficou humana, e o pacote é entregue com uma lista de audição que o diz explicitamente em vez de insinuar que o controlo de qualidade estava completo.
O que aprendemos
Conclusões até agora.
- 01
O formato é uma decisão de plataforma, não uma preferência. O briefing pedia Opus; o iOS encaminha o áudio do Flutter pelo AVPlayer, que não tem descodificador de Opus nem de OGG, por isso uma compilação só com Opus fica muda no iPhone. O pacote publica AAC-LC em .m4a por predefinição e mantém o Opus como alternativa apenas para Android com nomes de ficheiro idênticos.
- 02
Uma cadeia de recurso entre configurações regionais tem de ser desenhada, não improvisada. Configuração exata, depois língua base, depois inglês — escrito uma vez e respeitado pelo reprodutor.
- 03
A proveniência é barata no momento da produção e cara de reconstruir mais tarde. Registar o modelo, a licença e o resultado de controlo de qualidade por ficheiro durante a geração não custou nada; recuperar isso depois teria significado gerar tudo de novo.
Sobre Pivumo
Esta experiência surgiu ao construir Pivumo.