Hello.
I am using NetBeans 6.7 Beta + S40_5th_Edition_SDK_Feature_Pack_1 and i am trying to play audio files.
I am getting IllegalAccessException.
Tried with mp3 and wav files.
The code:
I have look the ForumNokia, Sun ME Forum, browsed web, read documentation, examined examples and still cant play.Code:import java.io.*; import java.util.*; import javax.microedition.media.*; import javax.microedition.lcdui.*; import javax.microedition.lcdui.Display; import javax.microedition.midlet.*; import javax.microedition.media.control.MIDIControl; import java.io.IOException; import javax.microedition.io.Connector; import javax.microedition.io.file.FileConnection; import javax.microedition.media.control.VolumeControl; import javax.microedition.media.Manager; import javax.microedition.media.control.ToneControl; /** The corresponding valid file URI in Windows is: file:///C:/Documents%20and%20Settings/davris/FileSchemeURIs.doc */ public class MusicPlayer extends MIDlet implements CommandListener, PlayerListener { private MIDIControl mControl = null; private Display display; MusicPlayer() { //display = Display.getDisplay(this); //display.setCurrent(new Form("Music Player")); //playToneSequence(); } public void startApp() { //initialize(); //playToneSequence(); startMIDlet(); } private void initialize() { try { //Player p = Manager.createPlayer("file:///D:/My Documents/NetBeansProjects/MusicPlayer/src/ramm.mp3"); //Player p = Manager.createRealizedPlayer(new File("test.mp3").toURI().toURL()); //locator: file:///c:/predefgallery/predefmusic/test.mp3 //Player p = Manager.createPlayer(getClass().getResourceAsStream(ramm.mp3), "audio/mpeg"); //Player p = Manager.createPlayer(getClass().getResourceAsStream("ramm.mp3"), "audio/mpeg"); //printSupportedContentTypes("null"); //printSupportedProtocols("aufio/mpeg"); InputStream is = getClass().getResourceAsStream("/ramm.mp3"); //InputStream is = getClass().getResourceAsStream("file:///D:/My Documents/NetBeansProjects/MusicPlayer/src/ramm.mp3"); Player p = Manager.createPlayer(is, "audio/mpeg"); p.addPlayerListener(this); p.realize(); VolumeControl vc = (VolumeControl) p.getControl("VolumeControl"); if(vc != null) { vc.setLevel(100); } p.prefetch(); //mControl = (MIDIControl)p.getControl("javax.microedition.media.control.MIDIControl"); p.start(); //System.out.println("Player state: " + p.getState()); } catch (MediaException pe) { pe.printStackTrace(); } catch (IOException ioe) { ioe.printStackTrace(); } } public void startMIDlet() { initialize(); } private void playToneSequence() { try { Player player = Manager.createPlayer(Manager.TONE_DEVICE_LOCATOR); player.realize(); ToneControl tc = (ToneControl)(player.getControl("ToneControl")); tc.setSequence(new byte[] { ToneControl.VERSION, 1, ToneControl.C4, 8, ToneControl.C4 + 2, 8 }); // D4 player.start(); } catch (MediaException pe) { pe.printStackTrace(); } catch (IOException ioe) { ioe.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command c, Displayable s) { } public static void printSupportedContentTypes(String protocol) { System.out.println("printSupportedContentTypes METHOD."); String[] protocols = javax.microedition.media.Manager.getSupportedContentTypes(protocol); System.out.println("**********SupportedContentTypes**********"); for(int i=0; i<protocols.length; i++) System.out.println("Supported: " + protocols[i]); System.out.println("*****************************************"); } public static void printSupportedProtocols(String protocol) { System.out.println("printSupportedProtocols METHOD."); String[] protocols = Manager.getSupportedProtocols(protocol); System.out.println("**********SupportedProtocols*************"); for(int i=0; i<protocols.length; i++) System.out.println("Supported: " + protocols[i]); System.out.println("*****************************************"); } public void playerUpdate(javax.microedition.media.Player player, String str, Object obj) { if(str == PlayerListener.END_OF_MEDIA){ //player.close(); } } }
So i am obviously doing something wrong.
I need help on this one, do you know where mistake is?
Martin Berger

Reply With Quote



