- 847
- 3
- CPU
- AMD Athlon II X4 630
- Scheda Madre
- Gigabyte GA-MA785GMT-UD2H Rev 1.1
- HDD
- 500 Gb Samsung
- RAM
- 2 x 2 Gb Mushkin DDR3 1333
- GPU
- Sapphire ATI 5770 Vapor-X 1GB
- Audio
- onBoard
- Monitor
- Asus VH222D
- PSU
- OCZ StealthXStream2 500
- Case
- Cooler Master Elite
- OS
- Windows 7 + Slackware 13.1
salve,
vabè provo a cambiare programma...magari qui sapete aiutarmi.
ho trovato un codice per la riproduzione di mp3.
quando metto in pausa la prima volta e poi faccio play, la canzone riprende da dove si è fermata. se poi metto ancora pausa e d nuovo play...torna indietro l'offset della riproduzione. xkè??
vabè provo a cambiare programma...magari qui sapete aiutarmi.
ho trovato un codice per la riproduzione di mp3.
quando metto in pausa la prima volta e poi faccio play, la canzone riprende da dove si è fermata. se poi metto ancora pausa e d nuovo play...torna indietro l'offset della riproduzione. xkè??
Codice:
package pack;
import javazoom.jl.player.Player;
import javazoom.jl.player.AudioDevice;
import javazoom.jl.player.FactoryRegistry;
import javazoom.jl.player.advanced.AdvancedPlayer;
import javazoom.jl.player.advanced.PlaybackListener;
import javazoom.jl.player.advanced.PlaybackEvent;
import javazoom.jl.decoder.JavaLayerException;
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Trysong extends JFrame implements Runnable
{
private AdvancedPlayer player;
private AudioDevice device;
private int position = 0;
private JPanel pnlButton = new JPanel(new FlowLayout());
private JButton btnPlay = new JButton("Play");
private JButton btnPause = new JButton("Pause");
private JButton btnStop = new JButton("Stop");
private Thread thread = null;
public Trysong()
{
super("Try Song");
setDefaultCloseOperation(EXIT_ON_CLOSE);
btnPlay.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnPlay_actionPerformed(e);
}
});
btnPause.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnPause_actionPerformed(e);
}
});
btnStop.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnStop_actionPerformed(e);
}
});
pnlButton.add(btnPlay);
pnlButton.add(btnPause);
pnlButton.add(btnStop);
this.add(pnlButton, "South");
this.setSize(400,400);
this.setVisible(true);
}
public static void main(String [] args)
{
new Trysong();
}
public void play()
{
try
{
InputStream is = new BufferedInputStream(new FileInputStream("C:\\Documents and Settings\\_isee_\\Documenti\\Musica\\10 - Cuba Libre.mp3"));
FactoryRegistry r = FactoryRegistry.systemRegistry();
device = r.createAudioDevice();
player = new AdvancedPlayer(is, device);
player.setPlayBackListener(new PlaybackListener()
{
public void playbackStarted(PlaybackEvent playbackEvent)
{
//vmech().onMessage("Playback started..");
System.out.println("Playback started..");
// thread.resume();
}
public void playbackFinished(PlaybackEvent playbackEvent)
{
//vmech().onMessage("Playback finished..");
System.out.println("Playback finished..");
}
});
thread = new Thread(this);
thread.start();
}
catch (JavaLayerException e)
{
e.printStackTrace();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
}
public void pause()
{
int positionInMillis = device.getPosition();
position = positionInMillis/26;
System.out.println("Pause : " + position);
//thread.suspend();
player.stop();
}
public void stop()
{
player.stop();
ResetPosition();
System.out.println(" "+device.getPosition());
}
public void ResetPosition()
{
position = 0;
}
public void run()
{
try
{
System.out.println("Play : " + position);
player.play(position, Integer.MAX_VALUE);
//System.out.println("Playback finished..");
}
catch(Exception exp)
{
exp.printStackTrace();
}
}
private void btnPlay_actionPerformed(ActionEvent e)
{
play();
}
private void btnPause_actionPerformed(ActionEvent e)
{
pause();
}
private void btnStop_actionPerformed(ActionEvent e)
{
stop();
}
}
Ultima modifica: