# JMF Player



## Guest (20. Jun 2007)

Da es hier leider keine spezielle Kategorie fürs JMF gibt...trage ich das mal hier in der Sparte Netze ein...


```
public class Test
{  
	@SuppressWarnings("static-access")
	public static void main(String[]args) throws IOException, NoPlayerException
	{
		Manager manager=null;
		Player player = null;
		
		URL u=new URL("http://10.1.9.113:554/mpeg4/media.amp");
		DataSource ds=new URLDataSource(u);
		ds.connect();
		
		try
		{
			player=manager.createPlayer(ds);
		}
		catch(NoPlayerException e)
		{
			System.out.println("Fehler!");
		}
		
		player.realize();
		player.getVisualComponent();
		player.start();
	}
 }
```

Exception in thread "main" 
java.lang.NullPointerException at Test.main(Test.java:43) also bei player.realize...

Weiß jemand warum er meinen Player nicht realisieren geschweige denn starten kann?
*für Hilfe dankbar wäre*


----------



## Bluevelvet64 (21. Jun 2007)

Hallo leider schreibst Du nicht welches OS Du nimmst und damit auch welche Version von JMF

Ich würde zunächst einmal einen lokalen Zugriff versuchen um su sehen ob der Plaxer generell arbeitet und verwende doch mal folgendes:


```
try
      { // Beginn try

 	...
	
                videoPlayer = Manager.createRealizedPlayer(new URL("file:test.mpeg"));				
                panel.add(videoPlayer.getVisualComponent());
               videoPlayer.start();

      }// Ende try
		
      catch (NoPlayerException e){System.out.println("MusikThread : No Player " + e);}	
      catch (IOException e){System.out.println("MusikThread : IO " + e);}
      catch (CannotRealizeException e){System.out.println("IO 2 " + e);}
```

wobei Panel ein JPanel ist demich das Video zuweise. So starte ich Videos aus meinem Programm. 

Ich verwende hier also nicht createPlayer sondern createRealizedPlayer und ein MPEG File

wenn das funktionert würde ich als nächstes den Zugriff auf die Remote-Resource verwenden.


MfG


----------



## Guest (21. Jun 2007)

Vielen Dank für den Ratschlag...wäre wohl wirklich erstmal besser zu gucken ob der Player überhaupt einen lokalen File abspielen kann...


```
public class Test
{  
	public static void main(String[]args) throws IOException, NoPlayerException, IncompatibleSourceException, NoDataSourceException, CannotRealizeException
	{	
		try
		{
			@SuppressWarnings("unused")
			Image image;
			URLDataSource uds=new URLDataSource(new URL("file:TestVideo.avi.MPG"));
			uds.connect();
			
			Toolkit toolkit=Toolkit.getDefaultToolkit(); 
			image=toolkit.getImage(new URL("file:TestVideo.MPG"));
			
			Player videoPlayer=Manager.createRealizedPlayer(new URL("file:TestVideo.avi.MPG"));             
            JPanel panel=new JPanel();
			panel.add(videoPlayer.getVisualComponent()); 
            videoPlayer.start(); 	
		}
		catch(NoPlayerException e)
		{
			System.out.println("Fehler!");
		}
	}
 }
```

Jetzt kriege ich folgende Fehlermeldung;:
Error: Unable to realize com.sun.media.amovie.AMController@1050169
Exception in thread "main" javax.media.CannotRealizeException
	at javax.media.Manager.blockingCall(Manager.java:2005)
	at javax.media.Manager.createRealizedPlayer(Manager.java:528)
	at Test.main(Test.java:29)
Error value: 8004025e

Zu dem ErrorValue, den ich noch nie gefunden habe steht im Internet folgendes:
CrmExpressionBodyParsingError 8004025e Crm expression body parsing error occurred. 

Body parsing....klingt nach HTML irgendwie....hhhmmm....allerdings steht da nicht mehr zu...

Any recommendings?


----------

