Problem with video rendering


I use this JMFGrabber-Code in my application and it works very good. Currently the video runs and is rendered simultaneously with the start of my program. Now I’ve changed the code, that the video rendering starts after I pressed the play button on my virtual mediaplayer. The problem is now that the video runs in the background (I can hear the sound) but it is not rendered to the screen of my virtual tv anymore. I can also stop the JMFGrabber with the stop button.

I don’t know what I have done wrong, because after hours of staring at the code I think it should render the grabbed images on the screen instead of leaving the screen blank.

Maybe someone of you can help me to solve my problem and explain me the function simpleRender() ??

Another problem is that I can only start and stop the video one time and not more…

Thanks in advance.

Here is my code:


public class LaborXML extends SimpleGame{
      private Node scene;
      private Node lab;
      private Node media;
      private Node tvscreen;
      private Node labwindow;
      private Node m_character;
      private Node StickMan;
      private Node Lamp;
      private Node tempNode;
      private Node Fan;
      private Node Play;
      private Node Stop;
      private ChaseCamera chaser;
      private Text text, crossHair;
      private Quaternion rotQuat = new Quaternion();
       private float angle = 0;
       private Vector3f axis = new Vector3f(45.8166122f, -6.3757133f, -39.9054337f).normalizeLocal();
       private Cylinder t;

      private static final String DEFAULT_TRANSMITTER = "com.jpeterson.x10.module.CM11A";
      Vector3f prevLoc = new Vector3f();
      float oldX, oldY, oldZ;

The problem that I can start and stop the video only one time, I've solved…I forgot to set "PlayStatus = false;" :roll:

But the problem, that the video is not rendered is still there. Can anybody help me to get the video displayed? I guess the problem is the simpleRender method…maybe…

After testing and testing I cannot get a solution. It is almost impossible for me to understand why this happens.

  1. when I run the JMFGrabber parallel to my programm…that means I call the setupScreen() method in the simpleInitGame()…the grabbed frames are displayed as the texture frame by frame…the texture update works fine, but…

  2. when I put the setupScreen() method in my device control method, where I control the start of the JMFGrabber, the video runs in the background, because I can hear the sound, and is not displayed. That seems weird to me because it should be running in both ways of calling the methods.

    llama…the code snippets are from your post…perhaps you can give me answer, why these two ways of calling the methods are handled so different??

After solving some other problems I returned to this problem