JavaFX vs JMF/JAI?

Hi!
I am working on a LEGO Mindstorm NXT autonomous robot that should use a webcam on a tripod as a means of navigation through an obstacle course (video capture with webcam wired to a laptop -> analysis of picture/video on laptop -> algorithmic determination of movement/direction on laptop, sent to robot via Bluetooth). For this I was looking for tutorials regarding Java Media Framework (JMF) and Java Advanced Imaging, but then stumbled across a JavaFX.
As I also discovered that JMF apparently was abandoned in 2001(?), I would prefer to learn and work with a more current API which JavaFX, on paper, sounds like is just that.
Before I delve more into JavaFX, can someone please give a quick recommendation on whether or not JavaFX would be the right API for me to work with, given the above criteria specs? Also, if this is the case, what are some good resources to start with, taking into account what I intend to use it for?
Thanks! :)

I worked on a project like that once, it worked by not looking at the video feed but in stead it used a snapshot function on the webcam to create pictures which could be analyzed. This was made to work through Java somehow, but in the end some native code was used to do the actual image loading and analysis because the performance wasn't good enough using ImageIO.
On to your question: no you should not use JMF as it is indeed dead as a doornail. A simple google for "java webcam" gives alternatives however, such as this:
http://lti-civil.org/
Forum post with example code:
How to control a webcam in JFX app?

Similar Messages

  • Javafx use jmf and capture audio device

    Hello, I noticed a problem with the use JavaFX and Java Media Framework (JMF), in a project javafx call Java classes using JMF, but are not recognized PC audio devices, in fact when I executed 's the code CaptureDeviceManager.getDeviceList (null), displays the error: "could not commit protocolPRefixList", without recognizing any audio device. Instead I call if my application using JMF, outside of a JavaFX project, the devices are found and everything works properly, perhaps this problem depends on the security settings of JavaFX, or inability to use JavaFX is that jmf interfaces with audio and video devices?
    thanks for the help

    I'd use jmf and javafx but it was not for capture devices.
    If you use jmf there are native libraries.
    The thing i found was about the java.library.path wich is overriden when you start javafx that jmf can't load approriate libs.
    Try to compare the System.getProperties for java and javafx then you should find where is the problem.

  • JavaFX vs JMF

    I want to write a web-based application that will capture audio and stream it to other web-based clients. I had originally intended to do it via JMF/JavaSound (despite the fact it's a CF, it seems to be the easiest method).
    I know that JavaFX is billed as the competition for Flash, which does have microphone / streaming support, and Silverlight (does not have microphone support).
    Is there any way, currently, to build a JavaFX application to capture / stream audio without using Flash in some hybrid solution? Hybrid solutions would be fine as long as they are pure Java (if I have to learn Flash to do it, I might as well do it all in flash...) + JavaFX solutions.
    Any ideas of how to "get 'er done" would be appriciated. I have no implementation knowledge of JavaFX, and I don't want to learn it just to find out it won't do what I need.
    I somehow feel like the answer is "Wait until JavaFX 2.0", which is the same as "Wait for Silverlight 2.1 or 3.0"...

    Okay. Random question then, again, on the outside looking in as far as knowing the capabilities of any of the things I'm asking about (I am a Java programmer, but applications only )
    Would it be possible to capture live sound data with a standard java applet and then play it in real time on a JavaFX client running elsewhere on the internet? Capture using the ugly stuff (for now) and play it with the pretty stuff?

  • Recording audio with JavaFX

    Hi All,
    I was looking for advice on how best to record audio with JavaFX, as JMF is seriously out of date.
    Can anybody tell me how to get started here?
    Cheers,
    Chester

    I think you'll have to do it via Java Sound API, because JavaFX itself doesn't have capability of recording audio. Maybe in version 1.3, but I have no access to it.

  • Call java/jmf from javafx

    I have a jmf application written in java that captures video from a mini-camcorder through a firewire cable and saves it to disk. I currently use a swing gui. I wanted to creat a gui in javafx and call the java program from within javafx. Even with jmf.jar in my path the CaptureDeviceInfo object returns null. Does anyone have an idea how I can get javafx to work my java/jmf program? Thanks.
    Edited by: bemma on Dec 22, 2008 1:24 PM

    The code below works with jmf library:
    import javafx.stage.*;
    import javafx.scene.*;
    import javafx.scene.text.*;
    import javafx.scene.transform.*;
    import javafx.ext.swing.*;
    import javax.media.Manager;
    public class JavaComponent extends SwingComponent{
        var comp: java.awt.Component;
        public override function createJComponent():javax.swing.JComponent{
            var panel = new javax.swing.JPanel();
            panel.add(comp);
            return panel;
    public class MyMedia extends CustomNode {
        var xpos: Number;
        var ypos: Number;
        var dx: Number;
        var url: java.net.URL;
        var autoPlay: Boolean;
        public override function create(): Node{
            Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, true);
            var player = Manager.createRealizedPlayer(url);
            if (autoPlay) {
                player.start();
            return Group{
                content: [
                    JavaComponent {
                        comp: player.getVisualComponent()
                    JavaComponent {
                        comp: player.getControlPanelComponent()
                transforms: Transform.translate(xpos, ypos)
    public function run(args: String[]){
        Stage {
            title: "Media Example"
            width: 250
            height: 250
            onClose: function(){ java.lang.System.exit(0);}
            scene: Scene {
                content: MyMedia{
                    url: (
                        new java.io.File('video/test.mov')).toURI().toURL()
                    autoPlay: true
    }

  • How to display YUV stream from a video card into javafx and without JMF?

    Hello,
    I try to display in a player a yuv stream gotten from a video capture card.... Is there a means to perform this in javafx?
    regards

    Thanks for the pointer ; unfortunately I haven't find yet the alexfromsorkoland post about the topic you mentionned.
    I'll try tomorrow another way of doing...
    Basically I get yuv frames from video capture card... I've to translate these into RBG frame and then convert them into images I can display at a specific rate.
    We can do this by using the hidden classes of JMF like com.sun.media.codec.video.colorspace.YUV2RBG and the javax.media.util.BufferToImage.BufferToImage. I've just now to find how to build the buffer needed for the YUV2RBG :-(
    regards

  • Javax.media.jai not in jmf.jar

    I’ve download JMF 2.1.1e from
    http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.html
    and installed it. However it does not seem to contain the javax.media.jai or com.sun.media.jai packages as per the documentation :-
    http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/index.html
    I checked the contains of the jmf.tar and and the other jars that came with the download
    eg the following can not be found
    import javax.media.jai.widget.ScrollingImagePanel;
    import javax.media.jai.NullOpImage;
    import javax.media.jai.OpImage;
    import com.sun.media.jai.codec.SeekableStream;
    import com.sun.media.jai.codec.FileSeekableStream;
    import com.sun.media.jai.codec.TIFFDecodeParam;
    import com.sun.media.jai.codec.ImageDecoder;
    import com.sun.media.jai.codec.ImageCodec;
    So have I done something wrong, is this code no long in the jmf.jar, or is the documentation wrong ?

    Thanks, that got me the jai_imageio.jar , however this jar does not contain the any of the following packages
    import javax.media.jai.widget.ScrollingImagePanel;
    import javax.media.jai.NullOpImage;
    import javax.media.jai.OpImage;
    import com.sun.media.jai.codec.SeekableStream;
    import com.sun.media.jai.codec.FileSeekableStream;
    import com.sun.media.jai.codec.TIFFDecodeParam;
    import com.sun.media.jai.codec.ImageDecoder;
    import com.sun.media.jai.codec.ImageCodec;
    are they in another jar that I have not included, or do I need to get them from somewhere else?

  • How jmf  video dispaly  using javafx

    i want to place a video in applet by javafx,the idea can work?
    var myMedia: Media = Media {
    source: "http://sun.edgeboss.net/download/sun/media/1460825906/1460825906_2957290001_DayEarth-Bluray.flv"
    the media only from a file ,is it a stream , Capture from Device?
    please give me some suggestion,thanks
    Edited by: alading on Jul 9, 2009 12:38 AM

    captfoss wrote:
    alading wrote:
    i tested
    var dlist:Vector=CaptureDeviceManager.getDeviceList(new VideoFormat(
    VideoFormat.YUV));
    System.out.println(dlist.size());//0
    result =0, that say can't CaptureDeviceActually, no, it says that you havn't previously run JMRegistry to detect capture devices, there are no capture devices present, none of the capture devices present support YUV formatting, JMF isn't installed correctly, etc...first i am very happy friends forcus the topic,Actually,I had Installed jmf, Captured the video successfully using applet
    Name = vfw:Microsoft WDM Image Capture (Win32):0
    Locator = vfw://0
    Output Formats---->
    0. javax.media.format.YUVFormat
    YUV Video Format: Size = java.awt.Dimension[width=640,height=480] MaxDataLength = 614400 DataType = class [B yuvType = 32 StrideY = 1280 StrideUV = 1280 OffsetY = 0 OffsetU = 1 OffsetV = 3
    1. javax.media.format.YUVFormat
      YUV Video Format: Size = java.awt.Dimension[width=160,height=120] MaxDataLength = 38400 DataType = class [B yuvType = 32 StrideY = 320 StrideUV = 320 OffsetY = 0 OffsetU = 1 OffsetV = 3
    2. javax.media.format.YUVFormat
      YUV Video Format: Size = java.awt.Dimension[width=176,height=144] MaxDataLength = 50688 DataType = class [B yuvType = 32 StrideY = 352 StrideUV = 352 OffsetY = 0 OffsetU = 1 OffsetV = 3
    3. javax.media.format.YUVFormat
      YUV Video Format: Size = java.awt.Dimension[width=320,height=240] MaxDataLength = 153600 DataType = class [B yuvType = 32 StrideY = 640 StrideUV = 640 OffsetY = 0 OffsetU = 1 OffsetV = 3
    4. javax.media.format.YUVFormat
      YUV Video Format: Size = java.awt.Dimension[width=352,height=288] MaxDataLength = 202752 DataType = class [B yuvType = 32 StrideY = 704 StrideUV = 704 OffsetY = 0 OffsetU = 1 OffsetV = 3
    Edited by: alading on Jul 10, 2009 8:06 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • JMF + JavaFx layout problem

    I can creat a GUI in javafx and call the JMF component within JavaFx, just like this
    public class JMFComponent extends SwingComponent{
    var panel: JPanel;
    public var center: java.awt.Component on replace{
    println("[center] set component: {center}");
    panel.add(center, BorderLayout.CENTER);
    public override function createJComponent():javax.swing.JComponent{
    panel= new JPanel(new BorderLayout());
    var size:Dimension = new Dimension(width, height);
    panel.setPreferredSize(size);
    panel.setMinimumSize(size);
    panel.setMaximumSize(size);
    panel.setSize(size);
    return panel;
    public class MyMedia extends CustomNode {
    var xpos: Number;
    var ypos: Number;
    var dx: Number;
    public var url: java.net.URL;
    public var autoPlay: Boolean;
    public override function create(): Node{
    var comp:java.awt.Component;
    var control:java.awt.Component;
    var w:Number;
    var h:Number;
    var cw:Number;
    var ch:Number;
    var jmfCom:JMFComponent;
    var player = Manager.createRealizedPlayer(url);
    comp=player.getVisualComponent();
    control=player.getControlPanelComponent();
    if (autoPlay) {
    player.start();
    w=comp.getPreferredSize().getWidth();
    h=comp.getPreferredSize().getHeight();
    cw=control.getPreferredSize().getWidth();
    ch=control.getPreferredSize().getHeight();
    jmfCom=JMFComponent {
    width:w
    height:h+ch
    center: comp
    blocksMouse: true
    bottom: control
    return Group{
    content: [
    jmfCom
    Stage {
    title: "Media Example"
    width: 500
    height: 500
    onClose: function(){ java.lang.System.exit(0);}
    scene: Scene {
    content: MyMedia{
    url: (
    new java.io.File("C://My//Videos//DELTA.MPG")).toURI().toURL()
    autoPlay: true
    The video can be played within JavaFx gui, but when i move my mouse cursor into the control bar of the JMF player, the video window will move at the same time.
    Does anyone have an idea how I can get JMF working normally within JavaFx?

    Reposting the [exact same message|http://forums.sun.com/thread.jspa?threadID=5361672] (and still not using the CODE button...) won't help you more...
    Explaining what is the JMF component (and where to find it, etc.) might help a bit more those willing to help.

  • 3D on JavaFX

    Hi All,
    Sun talks about having a 3D API in JavaFX and some of the video presentations I've seen have 3D in them. I was wondering if anyone knows when 3D will be available roughly? Seems like the options now are JMF underneath JavaFX, or something like JOGL, but that's not likely to be cross platform/device. Are they going to build something new, or just wrap JMF? Anyone know?
    thanks,
    B

    AFAIK, no, although somebody made sketches using Java 3D within JavaFX (using binding).
    The scene graph, which might be inspired from Java 3D, but also other projects, comes from the [scenegraph project|https://scenegraph.dev.java.net/] (although it probably have evolved from that since then).

  • Other alternatives to JMF to open AVI files

    The codecs I use for compressing AVI files are not supported by JMF. There me another simpler option like using an external player as all I need to be able to do is to open the avi file in the player and then makes calls to tell it to go to certain frames.
    This is to enable me to sync up elevation data stored as distance/time with the associated avi file.
    Anyone have any ideas as I have run out of them ?

    juckky wrote:
    The codecs I use for compressing AVI files are not supported by JMF. There me another simpler option like using an external player.. Yep. Desktop.open(File)
    ..as all I need to be able to do is to open the avi file in the player and then makes calls to tell it to go to certain frames.Nope. The Desktop method does not support that.
    1) Write a codec for the AVI compression (and use it in JMF).
    2) JavaFX maybe? Look into it and report back.

  • JMF Registry crashes Win-XP trying to recognise non-standard USB camera

    I am trying to use JMF to interface a USB-2 frame grabber and PAL video camera to NIH's ImageJ Java image treatment application. My trial installation instructions are on: http://www.neutronoptics.com/imagej.html
    I got this working fine with a simple Philips 640x480 color SPC900NC webcam, but naturally I want to use a more serious camera :-) BTW, JMF only recognised one of the 3 cameras I had plugged in, even though the others were all recognised by Windows.
    My first problem is that my serious PAL camera is of course 720x576 encoded by a USB-2 frame grabber to 8-bit graylevels, i.e. not the JMF max of 640x480 :-) Is this max 640x480 likely to change ? If JMF is limited to simple webcams, I cant use it.
    If I ran JMF Registry with my PAL camera and framegrabber plugged in but not active, it crashed my Win-XP machine when I tried to "Detect Capture Devices" (Nasty!) However if I activated my camera by running another video capture application it did then detect a "vfw:Microsoft WDM Image Capture" device as it did with the webcam. And my Java capture plugin for ImageJ even opened a window for the PAL camera, although it was displayed as blank (pink).
    Is what I am trying to do completely impossible ? NIH ImageJ is the top public domain scientific imaging application, all in Java, and it seems a pity that I can't input an ordinary PAL camera to it. (There is a non-Java front-end called microManager that inputs many cameras to ImageJ, but not mine :-(
    I am not a real programmer, just a technical user, and I hope some-one can tell me if I am wasting my time or not with this.

    hibou wrote:
    I am trying to use JMF to interface a USB-2 frame grabber and PAL video camera to NIH's ImageJ Java image treatment application. My trial installation instructions are on: http://www.neutronoptics.com/imagej.html
    I got this working fine with a simple Philips 640x480 color SPC900NC webcam, but naturally I want to use a more serious camera :-) BTW, JMF only recognised one of the 3 cameras I had plugged in, even though the others were all recognised by Windows.Just because Windows recognizes your camera doesn't mean JMF will...
    My first problem is that my serious PAL camera is of course 720x576 encoded by a USB-2 frame grabber to 8-bit graylevels, i.e. not the JMF max of 640x480 :-) Is this max 640x480 likely to change ? If JMF is limited to simple webcams, I cant use it.JMF is never, ever going to change. It hasn't been updated, bug-fixed, or otherwise supported since before Windows XP came out...
    Moral of the story is, new stuff mostly doesn't work with it...unless the new stuff is backwards compatible.
    I am not a real programmer, just a technical user, and I hope some-one can tell me if I am wasting my time or not with this.You're wasting your time with this. JMF is mostly dead and just waiting for JavaFX to get it's act together and go ahead and kill it off.

  • JAI image resize...

    Hi there...
    I'm working with JMF to capture images from an IP Camera. And this is kinda done.
    My problem now, it that, before I should work with the frames I get, I need to resize the images to certain dimensions, and this is indeed a big problem. I need a very fast way to resize large images to much smaller ones. I need to rescale up to 100 images per second.
    Can u give me some advice? Can it be done better with JAI better than the traditional ways I found till now: AffineTranform & BufferedImage.getGraphics().drawImage() ?
    I'm not that interested in image quallity because after resing, I also pass it though a series of filters to remove the noise. (No don't think that I can remove big noise... so some quallity is required also :( unfortunately)
    I get the images as BufferedImage. Please help!

    Hi Valhalla,
    Why don't you post your code on this page ?
    (I'm interested too ;)
    Regards,
    Hugo.

  • Applet without JMF installation at client side

    hello,
    I am trying developing an applet SIP phone based on Jain Sip Applet Phone( which originally can only deal with audio signal). But I found a big problem that I have to make every client install the JMF, however the clients hope there is no software to be installed locally.
    In application, I can run it without JMF installation by copying all the dlls to system32 directory and add some related JMF source code into my own project. Or just simply put the jmf.property to the "lib" directory, which also works.
    However, as for the applet, it dosen't that simple for the security thing. Here is the output in cosole:
    @mediaManager.detectSupportedCodes- number of capture devices: 2
    - name of the capture device: JavaSound audio capture
    - format accepted by this AUDIO device: LINEAR, 44100.0 Hz, 16-bit, Stereo, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 44100.0 Hz, 16-bit, Mono, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 22050.0 Hz, 16-bit, Stereo, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 22050.0 Hz, 16-bit, Mono, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 11025.0 Hz, 16-bit, Stereo, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 11025.0 Hz, 16-bit, Mono, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 8000.0 Hz, 16-bit, Stereo, LittleEndian, Signed
    - format accepted by this AUDIO device: LINEAR, 8000.0 Hz, 16-bit, Mono, LittleEndian, Signed
    - name of the capture device: vfw:Microsoft WDM Image Capture (Win32):0
    - format accepted by this VIDEO device: YUV Video Format: Size = java.awt.Dimension[width=352,height=288] MaxDataLength = 202752 DataType = class [B yuvType = 32 StrideY = 704 StrideUV = 704 OffsetY = 0 OffsetU = 1 OffsetV = 3
             - format accepted by this VIDEO device: YUV Video Format: Size = java.awt.Dimension[width=160,height=120] MaxDataLength = 38400 DataType = class [B yuvType = 32 StrideY = 320 StrideUV = 320 OffsetY = 0 OffsetU = 1 OffsetV = 3
             - format accepted by this VIDEO device: YUV Video Format: Size = java.awt.Dimension[width=176,height=144] MaxDataLength = 50688 DataType = class [B yuvType = 32 StrideY = 352 StrideUV = 352 OffsetY = 0 OffsetU = 1 OffsetV = 3
             - format accepted by this VIDEO device: YUV Video Format: Size = java.awt.Dimension[width=320,height=240] MaxDataLength = 153600 DataType = class [B yuvType = 32 StrideY = 640 StrideUV = 640 OffsetY = 0 OffsetU = 1 OffsetV = 3
             - format accepted by this VIDEO device: YUV Video Format: Size = java.awt.Dimension[width=640,height=480] MaxDataLength = 614400 DataType = class [B yuvType = 32 StrideY = 1280 StrideUV = 1280 OffsetY = 0 OffsetU = 1 OffsetV = 3
    java.lang.RuntimeException: No permission to capture from applets
    -> Couldn't connect to audio capture device
    java.lang.RuntimeException: No permission to capture from applets
    -> Couldn't connect to video capture device
          I found that my applet can detect two device which is correct but has "no permission to capture from applets".
          In the progress of installation the JMF, and option is "permit recording from an applet". I read the source code, and found it dose the following works:
          if I choose "permit recording from an applet",  then "allowCapture=1", and in "settingPanel.java" it dose:
         "boolean allowCapture = checkAllowCapture.getState();
          Registry.set("secure.allowCaptureFromApplets", new Boolean(allowCapture));"
          I want to do what the installation progress did to give permition to applet, however, when I do the following:
           private static final String PROP_ALLOW_CAPTURE_FROM_APPLETS
            = "secure.allowCaptureFromApplets";
           Registry.set(PROP_ALLOW_CAPTURE_FROM_APPLETS, new Boolean(true));
           Registry.commit();
          in my project , it throws exception like this: "Failed to initially commit JMFRegistry. Ignoring err.java.lang.SecurityException: commit: Permission denied"
          The code which i thought could give applet the rights is denied.
          Till now, I have also read some similar questions in different forums, but there is no good answer.
          Can you help me? Is there any possibility to run the applet without installation on the client side ? Is my method right? If not, how should I do?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    xljiayuan wrote:
    ..I am trying developing an applet SIP phone based on Jain Sip Applet Phone( which originally can only deal with audio signal). If this is pure audio, can it be done using JavaSound?
    ..But I found a big problem that I have to make every client install the JMF, however the clients hope there is no software to be installed locally.To run an applet, the applet needs to be 'installed' on the user machine. Same with anything else.
    BTW - have you investigated JavaFX? It is effectively the replacement for JMF, and possibly has a better end-user experience than trying to install JMF.
    However, as for the applet, it dosen't that simple for the security thing. Here is the output in cosole:
    in my project , it throws exception like this: "Failed to initially commit JMFRegistry. Ignoring err.java.lang.SecurityException: commit: Permission denied"Is your applet digitally signed? If not, it has no hope of intercepting sound on the client. It is that simple.
    Imagine if you visited a web page with a 1px x 1px applet (effectively invisible) that could hear everything you say, and transmit it back to the server. Sun is not about to allow that, unless the end-user has granted the applet extended permissions.

  • Playing videos with JavaFX

    Hello,
    I'm trying to add a new functionality to an existent Java application which allows playing local videos.
    First I tried with JMF but I have read in the next web that it's better to do this with JavaFX.
    [http://javatrack.blogspot.com/2009/08/video-in-java-no-more-jmf-please-use.html|http://javatrack.blogspot.com/2009/08/video-in-java-no-more-jmf-please-use.html]
    I want to do this if it's easier than JMF but I was not able to call a JavaFX script from mi Java code.
    Anybody knows if this is posible and relatively easy?
    Thank you very much!

    Have you tried getting info on an affected file (click on a movie file and click Command-I on the keyboard) and then changing the application to open that file type in the Info window? (In the "Open with" section, select Quicktime - navigate to the Quicktime application on your hard drive if necessary.)
    That's the standard Mac method to set what app opens any particular file type (e.g. HTML, PDF, MP3, etc.)
    If the file is on your hard drive rather than a CD, the procedure is to do the above, then click on "Change All" if you want all files of that type to be opened with that application from then on. If it's on a CD, it doesn't allow that, which is fine in this case - it asks if you want to open all files of that type with Quicktime. In that case, click on Continue and you should be all set.
    Do this for each file type (.avi, .mov, and so on) that you want to open with Quicktime. It should stick for all files of that type after you've done this with one file of that type.
    15" MacBook Pro 2.0GHz/100GB (7200rpm)/2GB RAM; Windows XP Pro on Parallels   Mac OS X (10.4.7)   400MHz G4 (Sawtooth); Airport network; 60GB iPod photo; Dell-in-the-Closet

Maybe you are looking for