JMF &gt Buffer de FrameGrabberControl nulo

0 respostas
S

Olá, eu estou usando o Ubuntu 7.04 com JDK1.6.02 e JMF 2.1.1e.

public void start() {
        if (player == null) {
            try {
                player = Manager.createRealizedPlayer(deviceInfo.getLocator());
 
                if (player != null) {
                    player.start();
                    control = (FrameGrabbingControl) player.getControl("javax.media.control.FrameGrabbingControl");
                    
                    Thread workerThread = new Thread(new CameraWorker());
                    
                    workerThread.setName("CameraWorker");
                    workerThread.start();
                }
            }
            catch (IOException ex) {
                Logger.getLogger().saveLog(ex.getMessage());
            } catch (NoPlayerException ex) {
                Logger.getLogger().saveLog(ex.getMessage());
            } catch (CannotRealizeException ex) {
                Logger.getLogger().saveLog(ex.getMessage());
            }
        }
    }
 
    public void stop() {
    }
 
    public void close() {
        if (player != null) {
            player.stop();
            player.deallocate();
        }
    }
    
    private class CameraWorker implements Runnable {
 
        public void run() {
            Buffer buffer = control.grabFrame();
            Format format = buffer.getFormat();
            Logger.getLogger().saveLog("Is format null? " + (format == null)); //NULL aqui, diacho!
        }
        
    }

{Postei só a parte relevante da classe}

Quando eu chamo o control.grabFrame() eu recebo um buffer com formato nulo, então não posso continuar com o processamento do buffer.
Idéias?

Criado 3 de agosto de 2007
Respostas 0
Participantes 1