Criar aplicações com áudio no Lazarus é tarefa para poucos, mesmo a operação mais banal como tocar um arquivo .wav tem vários métodos diferentes, o mais comum e simples que envolve a unit ‘MMSystem’ só funciona para Windows. Contudo parece que temos um pacote vencedor que é multiplataforma, o ACS.
A única dificuldade com o ACS é que dependendo do que irá fazer pode ser necessário carregar uma DLL junto com o .exe. Assim para tocar .wav em meus programas tenho que usar a uma forma mista, se compilo para Windows então uso o ‘MMSystem’ e se compilado para Linux então uso o ACS. Na prática meu código é assim, no uses:
E para tocar um .wav tenho de fazer desse jeito:
E daí consigo tocar arquivos nos dois ambientes com um footprint menor quando o ambiente é Windows. Claro que a primeira vista parece ser complicado tocar .wav no Linux, a razão disso é que o ACS é um tiro de canhão para matar um mosquito, ele foi feito para coisas mais avançadas do que tocar um .wav.
ALERTA: O ACS é instalável apenas em versões estáveis do Lazarus.