PDA

View Full Version : Conversione da buffer a image in JAVA


Holliwood[ita]
30-03-2005, 16:05
ho un problema nel convertire un tipo buffer in un immagine con le Java Media Frameworks.
Utilizzo il seguente codice:
frame è il buffer che contiene un frame preso da 1 video.
Ho usato parte del codice fornito da SUN per usare codec su JMF che ho trovato qui:
http://java.sun.com/products/java-media/jmf/2.1.1/solutions/FrameAccess.java



BufferToImage bti = new BufferToImage((VideoFormat)
frame.getFormat());

Image img = bti.createImage(frame);

File fileFrame = new File("c:\\prova\\"+frame.getSequenceNumber()+".png");
BufferedImage bi=null;
ImageObserver io=new ImageObserver() {
public boolean imageUpdate(Image img, int info,int
x, int y, int w, int h) {
return false;
}
};
try{

bi = new
BufferedImage(img.getWidth(io),img.getHeight(io),
BufferedImage.TYPE_INT_RGB);
bi.getGraphics().drawImage(img,0,0,io);

ImageIO.write(bi, "PNG", fileFrame);


} catch (IOException ex) {

System.out.println("ERRORE");
}




in pratica ho notato che viene sollevata una eccezione quando faccio riferimento a image come se non riuscisse la conversione.
Che ne pensate?
Qualcuno sa dirmi come procedere?

Holliwood[ita]
31-03-2005, 14:38
problema risolto.
per chi interessasse:

Ho abbandonato questa implementazione e risolto il problema utilizzando solo le JMF, lanciando un player e grabbando frame per frame con il metodo grabFrame() di FrameGrabbingControl