Programar un mp3 en jcreator

Hola.
He tenido unos problemas para implementar un reproductor de mp3 en el jcreator ya que no mke reconoce el constructor y este es el codigo:
import java.awt.*;
import javax.sound.sampled.*;
import java.io.*;
import javax.swing.JApplet;
import java.awt.event.*;
import javax.swing.*;
import java.lang.*;
import java.lang.String;
import java.lang.Object;
public class mp3m extends java.applet.Applet
{
/** Inicializacion del metodo para mandar a llamar al applet
*
*/
public void init()
{
//
}
public void paint(Graphics g)
{
//invoca a los metodos que desees
testPlay("ARCHIVO");
}
public void testPlay(String filename)
{
try {
File file = new File(filename);
AudioInputStream in= AudioSystem.getAudioInputStream(file);
AudioInputStream din = null;
AudioFormat baseFormat = in.getFormat();
AudioFormat decodedFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, baseFormat.getSampleRate(),16,baseFormat.getChannels(), baseFormat.getSampleRate(), false);
din = AudioSystem.getAudioInputStream(decodedFormat, in);
// Play no.
rawplay(decodedFormat, din);
in.close();
} catch (Exception e)
{
//Handle exception.
}
}
private void rawplay(AudioFormat targetFormat, AudioInputStream din) throws IOException,LineUnavailableException
{
byte[] data = new byte[4096];
SourceDataLine line = getLine(targetFormat);
if (line != null)
{
// Start
line.start();
int nBytesRead = 0, nBytesWritten = 0;
while (nBytesRead != -1)
{
nBytesRead = din.read(data, 0, data.length);
if (nBytesRead != -1) nBytesWritten = line.write(data, 0, nBytesRead);
}
// Alto
line.drain();
line.stop();
line.close();
din.close();
}
}
private SourceDataLine getLine(AudioFormat audioFormat) throws LineUnavailableException
{
SourceDataLine res = null;
DataLine.Info info = new DataLine.Info(SourceDataLine.class, audioFormat);
res = (SourceDataLine) AudioSystem.getLine(info);
res.open(audioFormat);
return res;
}
}
1

1 respuesta

Respuesta
1
Perdona la tardanza, he estado muy ocupado.
El constructor de audioformat le falta un argumento (el frameSize). Revisa tu codigo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas