Hi,
Ich wollte mal ein Video Player in mein Programm einfügen erstmal wolte ich testen wie das überhaupt geht. Habe mir von Oracle die Libaries heruntergeladen und Eclipse hinzugefügt.
Der Player funktioniert und er gibt auch Ton ab, aber Leider kann ich keine AVI Datei abspielen es bleibt bei einen Grauen Bildschirm. Habs auch mit andren Formaten versucht geht auch leider nicht.
In der Console steht dann dies:
Unable to handle format: TSCC, 640x480, FrameRate=15.0, Length=1843200 0 extra bytes
Unable to handle format: LINEAR, 22050.0 Hz, 16-bit, Mono, LittleEndian, Signed, 44100.0 frame rate, FrameSize=16 bits
lg
Ager
Ich wollte mal ein Video Player in mein Programm einfügen erstmal wolte ich testen wie das überhaupt geht. Habe mir von Oracle die Libaries heruntergeladen und Eclipse hinzugefügt.
Java:
// Fig 21.6: MediaPanel.java
// A JPanel the plays media from a URL
import java.awt.BorderLayout;
import java.awt.Component;
import java.io.IOException;
import java.net.URL;
import javax.media.CannotRealizeException;
import javax.media.Manager;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.swing.JPanel;
public class MediaPanel extends JPanel
{
public MediaPanel( URL mediaURL )
{
setLayout( new BorderLayout() ); // use a BorderLayout
// Use lightweight components for Swing compatibility
Manager.setHint( Manager.LIGHTWEIGHT_RENDERER, true );
try
{
// create a player to play the media specified in the URL
Player mediaPlayer = Manager.createRealizedPlayer( mediaURL );
// get the components for the video and the playback controls
Component video = mediaPlayer.getVisualComponent();
Component controls = mediaPlayer.getControlPanelComponent();
if ( video != null )
add( video, BorderLayout.CENTER ); // add video component
if ( controls != null )
add( controls, BorderLayout.SOUTH ); // add controls
mediaPlayer.start(); // start playing the media clip
} // end try
catch ( NoPlayerException noPlayerException )
{
System.err.println( "No media player found" );
} // end catch
catch ( CannotRealizeException cannotRealizeException )
{
System.err.println( "Could not realize media player" );
} // end catch
catch ( IOException iOException )
{
System.err.println( "Error reading from the source" );
} // end catch
} // end MediaPanel constructor
} // end class MediaPanel
Java:
// Fig. 21.7: MediaTest.java
// A simple media player
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
public class MediaTest
{
// launch the application
public static void main( String args[] )
{
// create a file chooser
JFileChooser fileChooser = new JFileChooser();
// show open file dialog
int result = fileChooser.showOpenDialog( null );
if ( result == JFileChooser.APPROVE_OPTION ) // user chose a file
{
URL mediaURL = null;
try
{
// get the file as URL
mediaURL = fileChooser.getSelectedFile().toURL();
} // end try
catch ( MalformedURLException malformedURLException )
{
System.err.println( "Could not create URL for the file" );
} // end catch
if ( mediaURL != null ) // only display if there is a valid URL
{
JFrame mediaTest = new JFrame( "Media Tester" );
mediaTest.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
MediaPanel mediaPanel = new MediaPanel( mediaURL );
mediaTest.add( mediaPanel );
mediaTest.setSize( 300, 300 );
mediaTest.setVisible( true );
} // end inner if
} // end outer if
} // end main
} // end class MediaTest
Der Player funktioniert und er gibt auch Ton ab, aber Leider kann ich keine AVI Datei abspielen es bleibt bei einen Grauen Bildschirm. Habs auch mit andren Formaten versucht geht auch leider nicht.
In der Console steht dann dies:
Unable to handle format: TSCC, 640x480, FrameRate=15.0, Length=1843200 0 extra bytes
Unable to handle format: LINEAR, 22050.0 Hz, 16-bit, Mono, LittleEndian, Signed, 44100.0 frame rate, FrameSize=16 bits
lg
Ager