aboutsummaryrefslogtreecommitdiff
path: root/subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java')
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java75
1 files changed, 75 insertions, 0 deletions
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java
new file mode 100644
index 00000000..30ed2847
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/service/jukebox/PlayerTest.java
@@ -0,0 +1,75 @@
+package net.sourceforge.subsonic.service.jukebox;
+
+import java.awt.FlowLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.FileInputStream;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JSlider;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+
+/**
+ * @author Sindre Mehus
+ * @version $Id$
+ */
+public class PlayerTest implements AudioPlayer.Listener {
+
+ private AudioPlayer player;
+
+ public PlayerTest() throws Exception {
+ player = new AudioPlayer(new FileInputStream("i:\\tmp\\foo.au"), this);
+ createGUI();
+ }
+
+ private void createGUI() {
+ JFrame frame = new JFrame();
+
+ JButton startButton = new JButton("Start");
+ JButton stopButton = new JButton("Stop");
+ JButton resetButton = new JButton("Reset");
+ final JSlider gainSlider = new JSlider(0, 1000);
+
+ startButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ player.play();
+ }
+ });
+ stopButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ player.pause();
+ }
+ });
+ resetButton.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ player.close();
+ }
+ });
+ gainSlider.addChangeListener(new ChangeListener() {
+ public void stateChanged(ChangeEvent e) {
+ float gain = (float) gainSlider.getValue() / 1000.0F;
+ player.setGain(gain);
+ }
+ });
+
+ frame.setLayout(new FlowLayout());
+ frame.add(startButton);
+ frame.add(stopButton);
+ frame.add(resetButton);
+ frame.add(gainSlider);
+
+ frame.pack();
+ frame.setVisible(true);
+ }
+
+ public static void main(String[] args) throws Exception {
+ new PlayerTest();
+ }
+
+ public void stateChanged(AudioPlayer player, AudioPlayer.State state) {
+ System.out.println(state);
+ }
+}
+