Novemade
Todos os textos

Por que razão o Pivumo publica AAC e não Opus

O briefing pedia Opus. Publicá-lo teria deixado a aplicação muda em todos os iPhone.

Nota técnica · · 3 min de leitura

O Pivumo é uma aplicação de aprendizagem precoce para crianças que ainda não sabem ler, o que faz da voz a interface e não uma funcionalidade dela. Cada instrução, número, cor e recompensa é dita em voz alta, em vinte e nove línguas, por duas personagens. O áudio não é uma pasta de recursos — é a superfície do produto.

O briefing de produção especificava Opus. Parece uma escolha sensata: melhor qualidade por byte do que o AAC às taxas de bits da fala, e para uma aplicação que publica milhares de linhas de voz em vinte e nove configurações regionais, vinte a trinta por cento menos é um número real.

O problema

No iOS, o áudio do Flutter passa pelo AVPlayer. O AVPlayer não tem descodificador de Opus nem de OGG. Uma compilação só com Opus não está degradada no iPhone e no iPad — está muda. Para um produto em que a voz é a interface, muda não é um erro com um grau de gravidade. É a aplicação não existir.

É o tipo de coisa que é invisível até à integração e catastrófica exatamente no pior momento: depois de todo o pacote multilingue ter sido gerado, ouvido em controlo de qualidade e resolvido quanto a licenças.

O que foi publicado

AAC-LC em .m4a como conjunto predefinido, a 48 kHz — mono para a voz, porque a fala nada ganha com estéreo e duplica de tamanho, e estéreo para a música. Reproduz-se nativamente nas duas plataformas. O conjunto Opus continua a ser produzido e é publicado ao lado, como opção apenas para Android, com nomes de ficheiro, chaves e estrutura de diretórios idênticos, pelo que escolhê-lo é uma mudança de caminho e nada mais.

A versão geral

As decisões de formato pertencem à plataforma que tem de as descodificar, não à cadeia de produção que as produz. O momento mais barato para descobrir isso é antes de gerar vinte e nove configurações regionais, e a maneira de o tornar barato é reproduzir um ficheiro cedo no verdadeiro dispositivo de destino — não ler a especificação e presumir que o ambiente de execução a honra.

Manter as duas codificações por trás de uma estrutura idêntica custou quase nada e transformou uma decisão irreversível numa reversível. Essa troca compensa quase sempre.

O produto

Pivumo

1002 atividades de aprendizagem precoce para crianças dos dois aos seis anos, com voz em 29 idiomas.