Publicado em 25/08/2026 por Equipe JPC
Chrome e Safari não ligam para a sua trilha épica. Ligam para autoplay policy. A gente já shipou jogo que “não tinha som” — tinha, só que o unlock nunca rolava porque o primeiro toque ia para o botão errado.
Unlock no gesto certo
O áudio precisa nascer no mesmo gesto em que o jogador demonstra intenção: “Jogar agora”, “tap to start”, primeiro swipe. Destruir um AudioContext em DOMContentLoaded é pedir silêncio.
Fluxo que usamos:
- Usuário toca em jogar.
- Criamos/resumimos o context.
- Aí sim load de SFX ou play do bed baixo.
Se o gesto foi na UI do site e o game roda em iframe, o unlock às vezes não propaga. Já perdemos uma tarde com isso. Mitigação: ou o game self-contained pede um tap interno, ou o parent não promete som que não controla.
Mute default não é pecado
Começar mudo com ícone claro ofende menos que estourar fone no escritório. Loop musical a 100% no load é o jeito mais rápido de ganhar ódio.
SFX de menos de um segundo, poucos canais. Bed curto em loop com fade. MP3/OGG em bitrate modesto — ninguém no ônibus distingue 320kbps de um bip limpo.
O que cortamos
Música de menu de 2 minutos para jogo de 40 segundos de run. Parecia “produção”. Era peso e demora.
Se sobrar um único som no jogo, que seja o de hit/sucesso. Feedback auditivo curto vende o acerto; soundtrack longa vende fantasia de studio AAA que a gente não é nesse formato.