Olá, estava desenvolvendo um pequeno jogo mas me deparei com o problema de executar 2 arquivos de audio simultaneamente.
1 arquivo wav é a musica de fundo, mas tem os sons dos efeitos do jogo, explosões etc. são vários arquivos .wav.
Mesmo executando em threads separadas recebo um javax.sound.sampled.LineUnavailableException.
Alguem tem algum código para execução de 2 ou mais audio sem paralelo?
Ficou legal este mario. Eu testei seu jogo. Não observei som em paralelo. por exemplo quando eu morri ao esbarrar no inimigo, deu aquela musica de quando morre, mas enquanto ela toca eu posso movimentar o personagem na nova tentativa, pulando e pegando moedas. Esses sons (de pulo e quando pega moedas) não tocam enquanto a musica está tocando. só depois que ela acaba.
Assim seu jogo está igual ao meu, apenas um som toca de cada vez.
O desafio é deixar uma musica tocando no fundo em loop infinito, e tocar também os sons do jogo a emdida que os eventos ocorrem, explosões etc.
Parece que só conseguimos executar um arquivo de audio por vez.
Na página dos meus jogos, no Ponto V, tem um framework de som, baseado no proposto pelo Brackeen, mas adaptado para o Java 5, já implementado. Basta baixar o Vikanoid ou o Caça à Bandeira.
[quote=Gustavo Marques]Achei o problema.
É um bug do java sdk1.6 para linux. Veja: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4347309
Esse bug impede que sons simultaneos sejam tocados.
Atualizei para o java 1.7 e funcionou legal.
Que bom que temos profissionais migrando para Desenvolvimento de jogos no cenário nacional. Sempre fomos tão pobrezinhos quanto a jogos!!!
Mas isso é passado!
Parabéns pelos jogos e parabéns pela solução, eu já vi um amigo se deparar com o mesmo problema que o seu, mas ele não foi feliz na solução…
O problema dele foi resolvido sozinho (sem que ele saiba o que ocorreu), mas aí está a resposta que não encontramos naquela época!