Como tocar som no Java ME
Dados do artigo
Artigo
Tradução:
Originado de How to play sound in Java ME
Por maiconherverton
Última alteração feita por hamishwillee
em 09 Aug 2012
A MMAPI (JSR 135) permite que os aplicativos Java ME possam acessar facilmente funcionalidades multimídia como tocar e gravar vídeo e dados de áudio. Este artigo mostra os passos necessários para reproduzir som, tanto locais como proveniente da rede.
Tocando Som
Você precisará importar os seguintes pacotes:
import java.io.*;
import javax.microedition.media.*;
O código a seguir ajuda a reproduzir o som que está embutido no arquivo jar:
InputStream is = getClass().getResourceAsStream("Sound.wav");
Player p = Manager.createPlayer (is, "audio/X-wav");
p.start ();
Já o seguinte código irá reproduzir o som que é armazenado em um servidor web:
Player p = Manager.createPlayer ("http://server/sound.wav");
p.start ();
É possível também experimentar outros formatos de som, ou seja, alterando o tipo do arquivo a ser reproduzido.
Além disso, tenha em mente que, ao prover a url no segundo caso, o uso de caracteres especiais como "&", não são suportados. Nesse caso, você deve usar o seguinte método:
HttpConnection hc = (HttpConnection) Connector.open (url);
InputStream in = hc.openInputStream ();
Player p = Manager.createPlayer (is, "audio/X-wav");
p.start ();
Notas
- Ao reproduzir um arquivo multimídia, sempre verifique se o formato utilizado é suportado pelo dispositivo alvo. Para fazer isso, use o [1] getSupportedContentTypes()
- Além disso, sempre verifique quais protocolos são suportadas, usando o método getSupportedProtocols()
Links relacionados
- Java Me Developer's Library
- MMAPI Wiki article


CrisSS - Limitação do MIDP2.0
Se você só estiver usando o MIDP 2.0 para tocar uma música, dificilmente vai conseguir criar mais do que um Player. E não conseguirá tocar dois "sons" ao mesmo tempo, pois o hardware de cada aparelho varia muito e é muito limitado. Mas isso pode variar de aparelho para aparelho e também com o uso da MMAPI.
E não se esqueça que o MIDP 2.0 só garante 32KB de RAM, no aparelho pode ter mais memória, mas não é garantido.CrisSS 18:09, 8 July 2012 (EEST)
Hamishwillee - Looks like useful information ....
... why not add a section in the article covering this?hamishwillee 04:53, 6 August 2012 (EEST)