# Deixe o player iniciar o som intencionalmente

> Projete um fluxo de início de áudio que lide com bloqueio de reprodução automática, reprodução atrasada, opções de mudo e testes de som em navegadores.

- URL: https://oneshotgems.ai/pt-BR/topics/browser-audio-startup
- Categoria: Para desenvolvedores de jogos
- Tipo: Guia
- Atualizado: 5 de outubro de 2026

Um jogo que pressupõe que o som foi iniciado pode mostrar um ícone de mudo enquanto permanece em silêncio. Os navegadores geralmente restringem o áudio iniciado por script até que um gesto do usuário, e uma solicitação de reprodução de mídia possa ser rejeitada ou resolvida após um atraso. Projete a primeira interação para estabelecer a escolha de áudio do player e, em seguida, atualize a interface a partir do resultado real da reprodução. Isso melhora a previsibilidade e evita surpreender alguém com um som que não esperava.

## Faça do som parte de uma primeira ação clara

Um jogo que presume que o som começou pode exibir um ícone de som silenciado e continuar sem emitir áudio. Os navegadores geralmente restringem o áudio iniciado por script até que a pessoa faça uma ação, e uma solicitação de reprodução pode ser rejeitada ou resolvida com atraso. Projete a primeira interação para registrar a preferência de áudio do jogador e atualize a interface com base no resultado real da reprodução. Isso torna o comportamento previsível e evita surpreender alguém com um som inesperado.

Ofereça um botão visível para iniciar o jogo ou controlar o som. Em resposta à ação, inicie ou retome o contexto de áudio e mostre imediatamente o estado escolhido, tratando também qualquer rejeição da promessa de reprodução. Se o som for opcional, permita que o jogo continue em silêncio e ofereça um controle explícito para ativá-lo depois.

## Mantenha o feedback e o estado do áudio alinhados

Não compare uma chamada bem-sucedida para play() com saída audível instantânea. A promessa pode ser liquidada de forma assíncrona e um navegador pode pedir permissão. Lide com a rejeição, exponha uma ação de nova tentativa quando for útil e não relate um erro que implique que todo o jogo falhou quando apenas o som estiver indisponível.

Separe a preferência do usuário da permissão de tempo de execução: uma escolha de mudo salva é a intenção do player, enquanto a permissão da reprodução no momento é uma condição do navegador. Teste as transições de silenciar, ativar o som, pausar, retomar e de cena de forma independente para que os efeitos não sejam reiniciados acidentalmente no volume máximo após uma mudança de estado.

## Perguntas

**Posso reproduzir automaticamente a música do jogo após o carregamento da página?** Não presuma que vai funcionar. As regras de reprodução automática podem bloquear mídias audíveis e o Web Audio iniciado sem uma interação do usuário. Ofereça uma ação intencional e trate as falhas de reprodução.

**O que o botão de som deve mostrar se a reprodução estiver bloqueada?** Mostre um estado honesto, como “som desligado” ou uma ação para ativar o som, de acordo com o resultado observado. O MDN recomenda responder à promessa de play() em vez de presumir que a reprodução começou.

## Siga sua curiosidade

- [Pausar um jogo quando sua guia estiver oculta](https://oneshotgems.ai/pt-BR/topics/pausing-background-games): Use as alterações de visibilidade da página para escolher o que é pausado, o que é salvo e como um jogo de navegador é retomado sem salto no tempo.
- [Projete feedback útil sobre carregamento de jogos](https://oneshotgems.ai/pt-BR/topics/game-loading-feedback): Substitua estados de espera vagos por fases claras, progresso significativo, opções de repetição e uma transição verdadeira para um estado de jogo jogável.

## Leitura complementar

- [MDN: Guia de reprodução automática para mídias e Web Audio](https://developer.mozilla.org/en-US/docs/Web/Media/Guides/Autoplay)
- [MDN: HTMLMediaElement.play()](https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/play)

---
Página canônica: https://oneshotgems.ai/pt-BR/topics/browser-audio-startup
