reproductor - Reproducción de MP3 en fragmentos con Java?
reproducir video mp4 en java (1)
Cree una clase que implemente InputStream y trabaje para recibir los fragmentos a medida que llegan, pero sirve los bytes para el reproductor. Solo asegúrate de hacer un seguimiento de dónde estás en cada fragmento, ya que solicita bytes y luego descarta el fragmento cuando lo hayas grabado y comience a servir datos del siguiente.
Como el jugador espera tratar con un InputStream, no será más inteligente. Probablemente no necesite envolverlo en un BufferedInputStream ya que lo manejará en su clase.
Lamentablemente, falta compatibilidad con MP3 dentro de Java. Estoy desarrollando una aplicación que necesita recibir fragmentos de MP3 y reproducirlos. Estaba usando la biblioteca Jlayer MP3 de esta manera:
import javazoom.jl.player.Player;
public class MP3 {
private String filename;
private Player player;
// constructor that takes the name of an MP3 file
public MP3(String filename) {
this.filename = filename;
}
public void close() { if (player != null) player.close(); }
// play the MP3 file to the sound card
public void play() {
try {
FileInputStream fis = new FileInputStream(filename);
BufferedInputStream bis = new BufferedInputStream(fis);
player = new Player(bis);
}
catch (Exception e) {
System.out.println("Problem playing file " + filename);
System.out.println(e);
}
player.play();
}
Pero mi problema es que solo tengo fragmentos del archivo MP3 completo, y tengo que reproducirlos cuando lleguen. ¿Hay alguna mejor alternativa?
Editar
Encontré una pregunta similar interesante: MP3 no se transmitirá con JMF También: Descodificación de archivos MP3 con JLayer