Tocando Áudio
Incrível como as coisas são simples no JavaFX: tocar áudio exige 2 linhas de código, em outras palavras, simplesmente o áudio deve ser carregado e então tocado. O áudio não dispõe de uma classe para visualização, já que essa não é necessária e temos somente uma classe necessária para a carga e execução do áudio, a classe javafx.scene.media.AudioClip. Claro que você pode criar um player se achar necessário. Vejam abaixo o código de uma pequena aplicação de exemplo e em seguida a explicação (se você criar uma classe TocandoAudio no projeto que criamos, você pode testar esse código):
package javafxpratico;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.media.AudioClip;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class TocandoAudio extends Application {
// Áudio pego do seguinte site: http://sampleswap.org/mp3/song.php?id=105
private String AUDIO_URL =
"http://sampleswap.org/mp3/artist/5101/" +
"Peppy--The-Firing-Squad_YMXB-160.mp3";
public static void main(String[] args) {
launch();
}
@Override
public void start(Stage palco) throws Exception {
AudioClip clip = new AudioClip(AUDIO_URL);// 1
clip.play(); // 2
StackPane raiz = new StackPane();
raiz.getChildren().add(new Text("Tocando Música ")); // 3
Scene cena = new Scene(raiz, 600, 100);
palco.setTitle("Tocando Audio em JavaFX");
palco.setScene(cena);
palco.show();
}
}
- Aqui carregamos o clipe de áudio e informamos a URL do audio a ser tocado;
- O áudio irá começar a tocar nessa linha. Semelhante ao vídeo, temos vários outros métodos que poderíamos utilizar;
- Não é relacionado ao áudio, mas essa linha adiciona um simples texto informativo, pois não temos nada visual quanto tocamos áudio.
A aplicação pode demorar um pouquinho para rodar, pois o áudio está na internet. Você pode incrementar essa aplicação quando aprender sobre botões e outros controles de interface que falaremos em breve.