JMF - subtitles

Hi there,
does anyone no something about showing subtitles in a simple jmf-based video player?
I need to show/hide subtitles of a quicktime cinepack video (*.mov), and I don?t have an idea how to do this. I think it might be possible to demultiplex the original stream and then add the subtitles-track to the player, but I don?t have any idea how to realize this.
If anyone has an example I would be very pleased to have a look at it.
thanks for the help.
Alex

nfs_xxx wrote:
Hi there,
does anyone no something about showing subtitles in a
simple jmf-based video player?
I need to show/hide subtitles of a quicktime cinepack
video (*.mov)You can get it done at:
http://www.thesoftwareobjects.com
Hi.. I'm trying to learn how subtitles works... I need to change the font size and color according to user settings.
The site http://www.thesoftwareobjects.com is out.
Does anybody has experience with it, or can told me where I can find some doc, article, link that explains how to do it?
Marcos - Brazil

Similar Messages

  • How to display subtitles over videoComponent from getVisualComponent - JMF

    I'm writting video player and I have encountered a problem. Is there a possibility to add Component (or something else what could display text in) to Component that I got from JMF method getVisualComponent(). As this method returns Component I can't add subcomponent to it. I tired to add recived Component to LayeredPane and JPanel with subtitles to higher layer of LayeredPane, and it works if I force lightweight renderer. But I'd like to use OpenGL renderer (com.omnividea.media.renderer.video.OpenGLRenderer), and in this case I've got black background in topmost layer with subtitles (even with setOpaque(false) ). Is there possibility to display one Component over another Component (top most component should be with transparent background)?
    ps. If video is rendered by open gl renderer it is possible to draw with open gl in Canvas (instead of GLCanvas)? Precisly I've got HeavyComponent from getVisualComponent() that is subclass of Canvas.
    ps2. Or how to tie my component1 to component2 in a way that component1 gets paint event when component2 gets paint event or when component2 is repainted?
    ps3. Ok I figured out that problem with black background is thanks to havyweight component. If I add some component (lightweight component) on GlassPane it is above all lightweight components and below all heavyweight components. So is there a way to add lightweight component above heavy weight component in a way that lightweight component have transparent background?
    Edited by: cartoon_20 on May 31, 2010 12:16 AM
    Edited by: cartoon_20 on May 31, 2010 12:22 AM

    Gosh, talk about a confusing mess of questions...
    Heavyweight components will not go behind lightweight ones, which is why it's bad to mix heavy & lightweight components.
    And yes, you can draw on the video inside whatever is rendering the video. You'd just, essentially, draw the image and then draw whatever you want on top of the image.
    I'd point you to the following thread to read:
    [http://forums.sun.com/thread.jspa?forumID=28&threadID=5368127]

  • JMF - video + subtitles ?

    hello everyone,
    I know the JMF supports only video and audio formats. How can a .srt file (subtitles) or something similar be viewed together with video ? I know SLIM can do the job (viewing both) but I don't think it's capable for media player development. So, any suggestions?
    thank you.

    nfs_xxx wrote:
    Hi there,
    does anyone no something about showing subtitles in a
    simple jmf-based video player?
    I need to show/hide subtitles of a quicktime cinepack
    video (*.mov)You can get it done at:
    http://www.thesoftwareobjects.com
    Hi.. I'm trying to learn how subtitles works... I need to change the font size and color according to user settings.
    The site http://www.thesoftwareobjects.com is out.
    Does anybody has experience with it, or can told me where I can find some doc, article, link that explains how to do it?
    Marcos - Brazil

  • Play movie with subtitle..

    i am using JMF player to play movies
    i have downloaded some codecs (jffmpeg)
    but one thing is missing
    displaying subtitles
    i been searching google but find nothing
    There is something written all ready
    or
    should i start thinking how to do it my self.
    i am thinking about using a glass pane to draw the subtitles
    but i need and a subtitle parser (SRT,SUB files)
    there is something written in java ?
    or i need to do it by my self.
    if all made by me?
    i have question about subtitle timing
    can i use JMF to throw some event when a
    certain time in the movie is arrived
    i don't want to check every second?
    allot of questions
    any help will be appreciated
    thanks allot
    shay

    It's so xxxx complicated to play a movie with subtitels
    since JMF was last updated at 2004.
    i am giving a try to MPlayer.
    may be when there is a new version of JMF
    with no need of hacking things like:
    searching for codecs all over the web
    find one site that hack JMF to display text over JMF Player .(and i searched google)
    find a responsible why to handle player timing (subtitle timing)
    and more simple why to play a movie without catching alot of exceptions
    till you lost your mind.
    sorry .i rely give it a try.
    thanks allot every one.

  • JMF HELLLP !!!

    Dear all ;
    I'm trying to write a code that plays a video file, sound file and text file(as subtitles)
    all synchronized. Video and audio synchronization problem is solved,
    the text problem did not.
    I used JMF , what I wish to hava is:if the video is backwarded the appropriate text
    line to be displayed as a subtitle>
    please help !!

    Hi,
    The JavaTV platforms MHP/OCAP/OnRamp don't support downloading and playing video from files. The problem is that video files tend to be very large and most STB's don't have enough memory. All you can do is look at the 'live' video as it's streamed to your STB.
    Also : I'm not exactly sure what you mean by backward video!
    Roger

  • Install JMF on Windows 7 64bit

    Dear all,
    After a lot of struggling (and a really mean a lot), I finally got jmf to work on Windows 7 64bit. I figured that I can better not let this information go to waste, so that's why I'm posting it here. I didn't really test the full capabilities of jmf on my platform yet, in fact I only tested those features that I needed for my application. As such I am able to successfully capture and record video clips from my build in webcam of my laptop.
    First let me describe my platform:
    Laptop: Samsung R590 (JS01)
    Processor: I5 450M (64bit)
    OS: Windows 7 64bit
    Webcam: build in
    Secondly I want to apologize in advance if the method below doesn't work for you. The reason for that can be that I had to try so many different things before I finally got it to work, so I'm not really sure which steps are necessary and which ones are not. So I tried to make a guide that only includes the necessary steps, but in reality I tried so much more, so if this tutorial doesn't work for you, please give me feedback, and we'll try to figure it out. :)
    Step one: installation of java JRE/JDK
    JMF will never work on a 64bit JRE/JDK, plain and simple because JMF is too old and doesn't support a 64bit JRE/JDK. Thus your first step has to be to install a 32 bit JRE/JDK on your system. (I uninstalled my 64 bit JRE/JDK first, but I don't now whether or not this is necessary)
    Step two: download JMF with windows performance pack
    Go to the jmf site and download the most recent jmf version, with windows performance pack. (This is - and will probably be forever - version 2.1.1e)
    The link to the website is currently: [https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=7372-jmf-2.1.1e-oth-JPR@CDS-CDS_Developer]
    Step three: install JMF
    Install the file you just downloaded in the normal way you would install any other program. But chose as installation path: "C:\JMF2.1.1e"
    I think this is necessary because of the strict security policy in Windows 7, if you don't do this, I guess jmf won't be able to store capture device settings to your local hard drive. (But again, I'm not completely sure here, please verify this if possible)
    After the installation, you don't have to do anything special to get jmf to work, so you don't manually have to set the JMFDIR, PATH and CLASSPATH (as is explained at the sun website), just skip those steps.
    After the installation, reboot your pc.
    Remark: I recommend you to install jmf as an administrator (but I don't now whether or not this is necessary). To do this, right click the installation file and select: "run as administrator'.
    *Step four: register your capture devices*
    First make sure that all your devices are working properly, I recommend you to use a program like Skype or something just to check whether your microphone is working or not.
    Secondly, open jmfstudio, select 'file > preferences > capture devices', and press the button 'detect capture devices'. Normally you will have to wait for a couple of minutes now (because the determination of all the available video formats takes quite a while). Afterwards jmf should have found all of your devices, that usually looks something like this:
    DirectSoundCapture
    JavaSound audio capture
    vfw:Microsoft WDM Image Capture (Win32):0
    But this can vary according to your configuration off course. :)
    *Step four: test your capture devices*
    In jmfstudio, select 'file > capture' and select the video and audio combo and see if your webcam settings work. You should now be able to view and hear yourself.
    *Step five: that's it, enjoy your jmf*
    *Remarks:*
    My development platform is currently netbeans 6.9.1 and I am able to write code, build it and run it with netbeans. I can also just run normal *.jar files
    *Troubleshoot:*
    If you get a dialog screen when starting your video capture device that looks like this: [http://www.alexandria.nu/ai/machine_vision/dual_cameras/SelectDevice.gif]
    (With off course another name for the capture device), then that means that your capturing device is currently occupied by another program and you can't currently use it.
    To solve this, make sure that no other application is using the webcam. For me even this was insufficient, but I managed to solve this by installing the latest drivers for my webcam from the manufacturing site of my laptop.
    I sincerely hope this tutorial can be of any use for someone, feel free to give me comments/suggestions. And please post here if this works for you or not.
    Greetings, Molly

    Hi
    sure I follow each of your steps, I uninstall all java verisones and installed a new java version 32-bit, I installed JMF in "C: \ JMF2.1.1e".
    when all installing finished, works fine JMF only once, I do the tests, recognizes the device; shows the video, but when I close and open again JStudio don't works throws error, and therefore my apliación not working, always returns null the device

  • Unable to capture video from webcam in JMF in xlet

    hi
    I am unable to capture video from webcam in an Xlet. I am using Xletview to run Xlet. The method CaptureDeviceManager.getDeviceList(vidformat) returns empty array. Which videoformat should I use and why do I get empty array?
    Thanks
    Rajesh

    MHP and OCAP only use JMF 1.0, which does not include support for capturing video. You will not be able to do this in any current MHP/OCAP imlementation that I know of.
    Steve.

  • Unable to capture video from webcam in JMF

    hi
    I am unable to capture video from webcam in an Xlet. I am using Xletview to run Xlet. The method CaptureDeviceManager.getDeviceList(vidformat) returns empty array. Which videoformat should I use and why do I get empty array?

    MHP and OCAP only use JMF 1.0, which does not include support for capturing video. You will not be able to do this in any current MHP/OCAP imlementation that I know of.
    Steve.

  • Detecting Video Capture Devices without Installing JMF

    Hi All,
    I want to detect the video capture devices, without installing the JMF.
    I had included the jmf (windows version) in lib path in netbeans ide. I am able to detect the audio capture device. But unable to detect the video capture devices. But if I install the JMF, I am able to detect the Video Capture devices in My system. Can anyone help me?
    Thanks,
    Vinoth Kumar.

    YES! Please take a look at SIP Communicator project. They have all what u want.
    The main idea is copy all .dll files to System or System32 (Please check files which JMF will copy to ur computer and where).
    U need to have jmf.jar and sound.jar too ( maybe more) in your computer.
    Your program should have DirectSoundAuto.java, JavaSoundAuto.java, JavaSoundDetector.java, JMFInit.java. Those files are in JMStudio source code. They are used to detect all capture devices and register it to JMF, but wait !!! where they will be saved? In order to save information about capture devices which are detected, you should create "jmf.properties" file in the same location with jmf.jar.Therefore, u should modify the JMFInit.java so it can check if the "jmf.properties" exists. If it's not, you have to create it.
    Check SIP Communicator at Folder "media" then "device". They have modified those files I mentioned above and created some new files to SC can detect more devices.
    Edited by: tamngminh on Sep 16, 2008 9:50 AM

  • Problems in sound capture and JMF deployment

    Hello:
    I am new to JMF.
    I made an applet using JDK 1.3 on JBuilder 5. This applet captures and plays audio. When I run it through JBuilder's IDE, it runs fine. But when I run it independently, the applet's GUI appears but sound recording doesnn't work. Remember that I have JRE1.4.2 and JMF2.1.1e installed on my machine.
    When I installed JMF, I enabled the recording, and file writing options for an applet.
    To further check the problem, I ran it through JMF debugger. There I found that it says that ,
    <permission javax.sound.sampled.AudioPermission "record";> is not enabled.
    To enable it I added this entry in java.policy. This allowed the audio capture to work.
    But my question is,
    1. Why isn't this entry present by default in java.policy?
    2. Even one of my user entered this entry in java.policy, but was unable to capture audio.
    3. I want my applet to be running with different users having different versions of JRE,JMF and browser settings. How can I do this, without asking my user to do anything? I simply want that when my user downloads this applet, I should provide him with some installation file that installs JMF as well as configures everything on the system in a way that he can use this applet easily.
    Haven't you guys faced such problems in deploying JMF stuff?
    I'll be grateful for any help.
    Thanks
    Jami

    Hi.
    I am facing very similar problems: it looks like deploying JMF with Java Applets is really a challange!
    On my own test installation, if I enable audio capture and file writing for applets through the JMFRegistry, then I am able to record audio from my test applet, even when executed in the target web browser.
    Nevertheless, how to deploy the applet in such a way clients won't be required to manually install JMF and enable audio capture and file writing through the JMFRegistry?
    It looks like the JMF Customizer is able to produce a custom JAR also embedding user preferences for audio capture from applets and file writing , is this correct?
    Any help would be greatly appreciated.
    Regards,
    Marco.

  • Subtitles are not getting displayed while playing movies

    Hi,
    Recently I have upgraded with Max OS X 10.6 Snow Leopard. After this upgrade whenever I play movies in my VLC player, I am getting a message as "freetype: failed to load font file /System/Library/Fonts/LucidaGrande.dfont" and then the subtitles are not displayed.
    Can someone advise how to resolve it? I tried to download LucidaGrande.dfont from internet. But I couldnt find one. Please help.
    Thanks.
    Ravi

    Hello, Ravi & welcome to the forums.
    Lucida Grande is included with Mac OS X.
    Check and validate all of your fonts with Apple's Font Book (look in the Applications folder). Search for Lucida Grande to be sure it was properly installed. Find and remove duplicates as well.
    Also, don't hesisate to perform wholesale deletion of old and/or little used fonts - be skeptical of anything that has come from Office 2008, including those related to an Equation Editor installation.
    Finally, be sure all the apps you are using are compatible with SnowLeopard. Check with their authors for updates.

  • JMF code working under linux but not windows XP

    Hello everyone,
    I'm currently working on a nice cross-platform project involving sound producing. I decided to take a look at JMF and test it a bit to know if its features can suit me. I tried to make it works under windows, using a very simple sample of code. The system seems to play the sound as some console output detects the start and the end, but all i hear is a very short noise ( 1/2second ) like a "CLIK" and nothing else. I tested the code under linux, using the same computer and it works just fine, playing the same wave nicely and entirely.
    some info:
    -i used the cross platform JMF, no performance pack ( i tried it , but still no result )
    -the code just opens a file dialog and plays the selected file
    -the selected file was always a very simple .wav
    -i did not use system classpath variables because i don't like it, i rather use local classpath ( which works fine too, no doubt about it )
    -i tested this little soft on 2 other computer using windows XP, and still got the same result.
    Please, have you got an idea about what's going on ?
    Thanks a lot for any answer!
    Maxime - Paris . France
    Code Sample:
    import java.io.File;
    import java.io.IOException;
    import java.net.MalformedURLException;
    import javax.media.*;
    import javax.swing.JDialog;
    import javax.swing.JFileChooser;
    import javax.swing.JOptionPane;
    public class JMFSound extends Object implements ControllerListener {
         File soundFile;
         JDialog playingDialog;
         public static void main (String[] args) {
              JFileChooser chooser = new JFileChooser();
              chooser.showOpenDialog(null);
              File f = chooser.getSelectedFile();
              try {
                   JMFSound s = new JMFSound (f);
              } catch (Exception e) {
                   e.printStackTrace();
         public JMFSound (File f) throws NoPlayerException, CannotRealizeException,     MalformedURLException, IOException {
              soundFile = f;
              // prepare a dialog to display while playing
              JOptionPane pane = new JOptionPane ("Playing " + f.getName(), JOptionPane.PLAIN_MESSAGE);
              playingDialog = pane.createDialog (null, "JMF Sound");
    playingDialog.pack();
              // get a player
              MediaLocator mediaLocator = new MediaLocator(soundFile.toURL());
              Player player =     Manager.createRealizedPlayer (mediaLocator);
    player.addControllerListener (this);
    player.prefetch();
    player.start();
    playingDialog.setVisible(true);
         // ControllerListener implementation
         public void controllerUpdate (ControllerEvent e) {
    System.out.println (e.getClass().getName());
         if (e instanceof EndOfMediaEvent) {
                   playingDialog.setVisible(false);
                   System.exit (0);
    Message was edited by:
    Monsieur_Max

    Hello everyone,
    I'm currently working on a nice cross-platform project involving sound producing. I decided to take a look at JMF and test it a bit to know if its features can suit me. I tried to make it works under windows, using a very simple sample of code. The system seems to play the sound as some console output detects the start and the end, but all i hear is a very short noise ( 1/2second ) like a "CLIK" and nothing else. I tested the code under linux, using the same computer and it works just fine, playing the same wave nicely and entirely.
    some info:
    -i used the cross platform JMF, no performance pack ( i tried it , but still no result )
    -the code just opens a file dialog and plays the selected file
    -the selected file was always a very simple .wav
    -i did not use system classpath variables because i don't like it, i rather use local classpath ( which works fine too, no doubt about it )
    -i tested this little soft on 2 other computer using windows XP, and still got the same result.
    Please, have you got an idea about what's going on ?
    Thanks a lot for any answer!
    Maxime - Paris . France
    Code Sample:
    import java.io.File;
    import java.io.IOException;
    import java.net.MalformedURLException;
    import javax.media.*;
    import javax.swing.JDialog;
    import javax.swing.JFileChooser;
    import javax.swing.JOptionPane;
    public class JMFSound extends Object implements ControllerListener {
         File soundFile;
         JDialog playingDialog;
         public static void main (String[] args) {
              JFileChooser chooser = new JFileChooser();
              chooser.showOpenDialog(null);
              File f = chooser.getSelectedFile();
              try {
                   JMFSound s = new JMFSound (f);
              } catch (Exception e) {
                   e.printStackTrace();
         public JMFSound (File f) throws NoPlayerException, CannotRealizeException,     MalformedURLException, IOException {
              soundFile = f;
              // prepare a dialog to display while playing
              JOptionPane pane = new JOptionPane ("Playing " + f.getName(), JOptionPane.PLAIN_MESSAGE);
              playingDialog = pane.createDialog (null, "JMF Sound");
    playingDialog.pack();
              // get a player
              MediaLocator mediaLocator = new MediaLocator(soundFile.toURL());
              Player player =     Manager.createRealizedPlayer (mediaLocator);
    player.addControllerListener (this);
    player.prefetch();
    player.start();
    playingDialog.setVisible(true);
         // ControllerListener implementation
         public void controllerUpdate (ControllerEvent e) {
    System.out.println (e.getClass().getName());
         if (e instanceof EndOfMediaEvent) {
                   playingDialog.setVisible(false);
                   System.exit (0);
    Message was edited by:
    Monsieur_Max

  • Swing and jmf

    can u please have a look to the attached file
    i know that this involves the jmf API but I have the feeling that has to do more with swing, thats whay I post my question here
    this simple application is based on the MDI.java example of the jmf web
    pages
    I also added a slider and want to set the playback rate for the player from
    there if possible
    that is I want everytime that I move the slider and the value is biggerthan
    50 the rate to be reduced according to a simple calculation that converts
    the slider value to a value between 0 an1 for the rate...
    so all i want to do is pass the slider value to the player everytime that
    the slider changes value and this is bigger than 50
    the attached file can do that only when the player starts playing the
    file,,,,
    after the player has started and the rate is set I cant change it even if
    the slider moves
    when I tried to do that from within the stateChanged method of the slider I
    was getting a Nullpointer exception because of the EventDispatching thread,
    so I thought to take this piece of code out of there (create the setnewrate
    method in the jmframe instead),,,,but then of course doesnt work like I
    would want,,,,,
    do I have to register the class that implements the frame for the player as
    a ChangeListener on the slider to achieve that, is something like that
    possible....
    I know that swing is not supposed to be thread safe, so maybe this is what
    the problem is after all...any suggestions to that direction?
    Can u please have a look??
    I am a beginner so any help would really be very much appreciated
    thanx :)
    maria
    .....and the attached file
    I think the problem is with the stateChanged method for the Jslider...
    I am getting a null pointerexception because of the eventdispatching thread
    pls ignore any silly mistakes I am a completely newbie in java
    myAppfr2.java
    import javax.media.*;
    import com.sun.media.ui.*;
    import javax.media.protocol.*;
    import javax.media.protocol.DataSource;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.net.*;
    import java.io.*;
    import java.util.Vector;
    import javax.swing.border.Border.*;
    import java.util.Hashtable;
    public class myAppfr2 extends Frame {
    * VARIABLES
    JMFrame jmframe = null;
    JDesktopPane desktop;
    FileDialog fd = null;
    CheckboxMenuItem cbAutoLoop = null;
    Player player ;
    //Player newPlayer = null;
    String filename;
    boolean stopped;
    public my_slider test_slider;//put it here so I can use it by name by all code
    float rate;
    * MAIN PROGRAM / STATIC METHODS
    public static void main(String args[]) {
    //if (args.length > 0)
         //rate=Float.parseFloat(args[0]);
    myAppfr2 mdi = new myAppfr2();
    static void Fatal(String s) {
    MessageBox mb = new MessageBox("JMF Error", s);
    * METHODS
    public myAppfr2() {
    super("VHE Demo");
    // Add the desktop pane
    setLayout( new BorderLayout() );
    desktop = new JDesktopPane();
    desktop.setDoubleBuffered(true);
         desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);//makes dragging faster
    add("Center", desktop);
    setMenuBar(createMenuBar());
    setSize(640, 480);
    setVisible(true);
         test_slider = new my_slider("networkutil");
         createnetworkutil();
         try {
         UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel") ;
    } catch (Exception e) {
    System.err.println("Could not initialize personal look and feel");
    addWindowListener( new WindowAdapter() {
    public void windowClosing(WindowEvent we) {
    System.exit(0);
    Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, new Boolean(true));
    private MenuBar createMenuBar() {
    ActionListener al = new ActionListener() {
    public void actionPerformed(ActionEvent ae) {
    String command = ae.getActionCommand();
    if (command.equals("Open")) {
    if (fd == null) {
    fd = new FileDialog(myAppfr2.this, "Open File",
    FileDialog.LOAD);
    fd.setDirectory("~/movies");
    fd.show();
    if (fd.getFile() != null) {
    String filename = fd.getDirectory() + fd.getFile();
    openFile("file:" + filename);
    } else if (command.equals("Exit")) {
    dispose();
    System.exit(0);
    MenuItem item;
    MenuBar mb = new MenuBar();
    // File Menu
    Menu mnFile = new Menu("File");
    mnFile.add(item = new MenuItem("Open"));
    item.addActionListener(al);
    mnFile.add(item = new MenuItem("Exit"));
    item.addActionListener(al);
    // Options Menu
    Menu mnOptions = new Menu("Options");
    cbAutoLoop = new CheckboxMenuItem("Auto replay");
    cbAutoLoop.setState(true);
    mnOptions.add(cbAutoLoop);
    mb.add(mnFile);
    mb.add(mnOptions);
    return mb;
    //create slider and add it to desktop
    public void createnetworkutil(){
    test_slider.pack();
    desktop.add(test_slider);
    test_slider.setVisible(true);
    * Open a media file.
    private void openFile(String filename) {
    String mediaFile = filename;
    Player player = null;
    // URL for our media file
    URL url = null;
    try {
    // Create an url from the file name and the url to the
    // document containing this applet.
    if ((url = new URL(mediaFile)) == null) {
    Fatal("Can't build URL for " + mediaFile);
    return;
    // Create an instance of a player for this media
    try {
    player = Manager.createPlayer(url);
    } catch (NoPlayerException e) {
    Fatal("Error: " + e);
    } catch (MalformedURLException e) {
    Fatal("Error:" + e);
    } catch (IOException e) {
    Fatal("Error:" + e);
    if (player != null) {
    this.filename = filename;
    JMFrame jmframe = new JMFrame(player, filename);
    desktop.add(jmframe);
    class JMFrame extends JInternalFrame implements ControllerListener {
    public Player mplayer;
    Component visual = null;
    Component control = null;
    int videoWidth = 0;
    int videoHeight = 0;
    int controlHeight = 30;
    int insetWidth = 10;
    int insetHeight = 30;
    // boolean firstTime = true;
    public JMFrame(Player player, String title) {
    super(title, true, true, true, true);
    getContentPane().setLayout( new BorderLayout() );
    //setSize(320, 10);
    setLocation(200, 25);
    setVisible(true);
    mplayer = player;
    mplayer.addControllerListener((ControllerListener) this);
    mplayer.realize();
    addInternalFrameListener( new InternalFrameAdapter() {
    public void internalFrameClosing(InternalFrameEvent ife) {
    mplayer.close();
    public void controllerUpdate(ControllerEvent ce) {
    // System.out.println("controllerUpdate");
    //SwingUtilities.isEventDispatchThread();
    if (ce instanceof RealizeCompleteEvent) {
    mplayer.prefetch();
    } else if (ce instanceof PrefetchCompleteEvent) {
    if (visual != null)
    return;
         //setnewrate();
         //rate=mplayer.getRate();
         System.out.println( mplayer.getRate());
    if ((visual = mplayer.getVisualComponent()) != null) {
    Dimension size = visual.getPreferredSize();
    videoWidth = size.width;
    videoHeight = size.height;
    getContentPane().add("Center", visual);
    } else
    videoWidth = 320;
    /*if ((control = mplayer.getControlPanelComponent()) != null) {
    controlHeight = control.getPreferredSize().height;
    getContentPane().add("South", control);
    setSize(videoWidth + insetWidth,
    videoHeight + controlHeight + insetHeight);
    validate();
    mplayer.start();
    } else if (ce instanceof StartEvent){
         if (test_slider.netutil==0) {
         mplayer.stop();
         } else if (ce instanceof EndOfMediaEvent && cbAutoLoop.getState()) {
    mplayer.setMediaTime(new Time(0));
              boolean stopped=true;
              mplayer.prefetch();
              mplayer.start();
              stopped=false;
    class my_slider extends JInternalFrame implements ChangeListener{
    //Set up parameters.
    int netini=50;
    public int netutil=netini;
    public my_slider(String windowTitle) {
    super(windowTitle, false, false, false, false);
    getContentPane().setLayout(new BorderLayout());
    setLocation(25,25);// for the internal frame that contains the slider
    setVisible(true); //..same
    //Create the slider(the component included in "my_slider" internal frame
         JSlider mslider = new JSlider(JSlider.VERTICAL,
    0, 100, netini);
    mslider.addChangeListener((ChangeListener) this);
    mslider.setMajorTickSpacing(10);
    mslider.setPaintTicks(true);
    //Create the label table.
    Hashtable labelTable = new Hashtable();
    labelTable.put(new Integer( 0 ),
    new JLabel("0%") );
    labelTable.put(new Integer( 25 ),
    new JLabel("25%") );
    labelTable.put(new Integer( 50 ),
    new JLabel("50%") );
    labelTable.put(new Integer(75),
    new JLabel("75%") );
         labelTable.put(new Integer( 100),
    new JLabel("100%") );     
    mslider.setLabelTable(labelTable);
    mslider.setPaintLabels(true);
    mslider.setBorder(
    BorderFactory.createEmptyBorder(0,0,0,10));
         //Put everything in the content pane.
    getContentPane().add(mslider, BorderLayout.CENTER);
    public void stateChanged(ChangeEvent e) { //System.out.println("stateChanged");
    // SwingUtilities.isEventDispatchThread();
    if (e instanceof ChangeEvent){
    JSlider source = (JSlider)e.getSource();
    if (!source.getValueIsAdjusting()) {
    netutil= (int)source.getValue();
         System.out.println(netutil);
              if (jmframe.mplayer!=null) {
         jmframe.mplayer.setRate((float)(netutil/(netutil+(0.3*netutil))));
              if (jmframe.mplayer.getTargetState() <Player.Started)
         jmframe.mplayer.prefetch();
    i am stuck so any help would be really very much appreciated

    did you ever resolve this.
    I may be having similar problems
    I have an JMF application running under webstart. It runs ok in Java 1.3
    Now I am trying to get ti to run under Java 1.4. The attached error is rather useless,
    but by guess at what is happening is that the JMF control has some .awt. stuff included
    but that Java 1.4 emulates .awt. in swing. But something was not set and the default does not
    work.
    This error messages does not appear in the 1.3 run
    Any suggestions would be greatly appriatated.
    1.4 result:
    mg version 2.1.1a
    player created com.sun.media.content.unknown.Handler@3a1834
    ctr com.sun.media.PlaybackEngine$BitRateA@4a9a7d
    ctr com.sun.media.BasicJMD[panel0,0,0,512x200,invalid,layout=java.awt.BorderLayout]
    duration? javax.media.Time@6b5666 sec = 9.223372036854776E9
    time unknown javax.media.Time@754699
    will realize the player
    realize
    javax.media.TransitionEvent[source=com.sun.media.content.unknown.
    Handler@3a1834,previous=Unrealized,current=Realizing,
    target=Realized]
    start smxBADS
    bass start
    Exception occurred during event dispatching:
    java.lang.NullPointerException
    at javax.swing.plaf.metal.MetalLookAndFeel.getControlInfo(Unknown Source)
    at javax.swing.plaf.metal.MetalScrollButton.paint(Unknown Source)
    at javax.swing.JComponent.paintChildren(Unknown Source)
    at javax.swing.JComponent.paint(Unknown Source)
    at javax.swing.JComponent.paintWithBuffer(Unknown Source)
    at javax.swing.JComponent._paintImmediately(Unknown Source)
    at javax.swing.JComponent.paintImmediately(Unknown Source)
    at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
    at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    Exception occurred during event dispatching:
    java.lang.NullPointerException
    at javax.swing.plaf.metal.MetalLookAndFeel.getControlInfo(Unknown Source)
    at javax.swing.plaf.metal.MetalScrollButton.paint(Unknown Source)
    at javax.swing.JComponent.paintChildren(Unknown Source)
    at javax.swing.JComponent.paint(Unknown Source)
    at javax.swing.JComponent.paintWithBuffer(Unknown Source)
    at javax.swing.JComponent._paintImmediately(Unknown Source)
    at javax.swing.JComponent.paintImmediately(Unknown Source)
    at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
    at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    realize done
    panel found java.awt.Panel[panel1,0,0,0x0,invalid] java.awt.Panel[panel2,4,216,292x30,layout=java.awt.FlowLayout]
    press a button
    Exception occurred during event dispatching:
    java.lang.NullPointerException
    at javax.swing.plaf.metal.MetalLookAndFeel.getControlInfo(Unknown Source)
    at javax.swing.plaf.metal.MetalScrollButton.paint(Unknown Source)
    at javax.swing.JComponent.paintChildren(Unknown Source)
    at javax.swing.JComponent.paint(Unknown Source)
    at javax.swing.JComponent.paintWithBuffer(Unknown Source)
    at javax.swing.JComponent._paintImmediately(Unknown Source)
    at javax.swing.JComponent.paintImmediately(Unknown Source)
    at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
    at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    Exception occurred during event dispatching:
    java.lang.NullPointerException
    1.3 result
    mg version 2.1.1a
    player created com.sun.media.content.unknown.Handler@354749
    ctr com.sun.media.PlaybackEngine$BitRateA@5b484d
    ctr com.sun.media.BasicJMD[panel3,0,0,512x200,invalid,layout=java.awt.BorderLayout]
    duration? javax.media.Time@46d228 sec = 9.223372036854776E9
    time unknown javax.media.Time@f7386
    will realize the player
    realize
    javax.media.TransitionEvent[source=com.sun.media.content.unknown.
    Handler@354749,previous=Unrealized,current=Realizing,
    target=Realized]
    start smxBADS
    bass start
    javax.media.DurationUpdateEvent[source=com.sun.media.content.unknown.Handler@354749,duration=javax.media.Time@55c0f9
    javax.media.Time@55c0f9
    javax.media.RealizeCompleteEvent[source=com.sun.media.content.unknown.Handler@354749,previous=Realizing,current=Realized,target=Realized]
    realized complete
    prefetch
    realize done
    controlComp com.sun.media.ui.DefaultControlPanel[,0,0,74x21,invalid,layout=java.awt.BorderLayout]
    add controlComp 21 java.awt.Panel[panel4,10,-12,258x47,invalid]
    javax.media.TransitionEvent[source=com.sun.media.content.unknown.Handler@354749,previous=Realized,current=Prefetching,target=Prefetched]
    start smxBADS
    bass start
    running ok from here on

  • For the 10^6 time -- JMF on Fedora does not work!

    I've tried everything under the Sun (no pun intended), and I've seen many other people with this same problem, but no solution...
    (1) I installed the performance pack version of JMF 2.1.1 for Linux.
    (2) I modified my .bash_profile to read as follows...
    PATH=/usr/java/j2re1.4.2_06/bin:$PATH
    export PATH
    JAVA_HOME=/usr/java/j2re1.4.2_06
    export JAVA_HOME
    JMFHOME=/usr/java/JMF-2.1.1e
    CLASSPATH=$JMFHOME/lib/jmf.jar:.:${CLASSPATH}
    export JMFHOME CLASSPATH
    LD_LIBRARY_PATH=$JMFHOME/lib:${LD_LIBRARY_PATH}
    (3) Just to beat a dead horse, I even copied-pasted the following:
    /JMF-2.1.1e/lib/*.jar --> /usr/java/j2re1.4.2_06/lib/ext/
    /JMF-2.1.1e/lib/*.so --> /usr/java/j2re1.4.2_06/lib/i386/
    both *.jar and *.so --> /usr/mozilla/plugins/
    (4) But when I try running the online diagnostic applet
    http://java.sun.com/products/java-media/jmf/2.1.1/jmfdiagnostics.html
    I get the following:
    Java 1.1 compliant browser.....Maybe
    JMF classes.....Not Found
    and none of the sample JMF apps on the Sun website work.
    Any clues at all??? Does JMF not work on Fedora???
    I guess I'll just keep asking this question every few days until someone from Sun answers?
    Thanks anyways...

    Yes, I didn't make that clear (first thing in the morning). Even though the JMF Diagnostic applet doesn't work for me on RedHat 9.0 using the Java Plugin with JDK 1.4.2, JMF DOES work for me from the command line. It seems that the Java 1.4.2 Plugin isn't finding JMF on the path. For me, the Java 1.5 Plugin resolves this issue.
    Scott

  • I am trying to import subtitles to Adobe Encore but am getting error messages...

    I am trying to import subtitles from a software called Aegisub to Adobe Encore, but i am receiving this error message:
    The software that is used to decode the media is not available on this system. Installing the correct decoders for the files you are working with may help to correct the problem.
    I have exported the subtitles as an Encore text file but it still won't allow me attach these to my video. I have exported the video from Premiere as an H.264 and that slots into Encore just fine, i just need to use Encore to attach the subtitles.
    Can anyone tell me what i might be doing wrong?
    Thank you.

    Thanks Stan. I think this is probably the answer but seeing as i am doing this at work, it is telling me the action was stopped because it needs to be checked by an administrator.
    If i manage to succeed, i shall let you know. I was trying to import as an asset, wrongly, so this is probably going to be the solution.
    Thank you

Maybe you are looking for