J'ai essayé les deux options suivantes:Comment utiliser ImageIO pour enregistrer plusieurs BufferedImages dans un fichier
1.
BufferedImage Buffered_Image;
MemoryCacheImageOutputStream MemoryCache_OutputStream =
new MemoryCacheImageOutputStream(new FileOutputStream("C:/Test.mov",false));
while (notFinished) // Main recording loop.
{
Buffered_Image=robot.createScreenCapture(); // Capture Screen image.
try { ImageIO.write(Buffered_Image,"png",MemoryCache_OutputStream); }
catch (Exception e) { e.printStackTrace(); }
}
2.
BufferedImage Buffered_Image;
ImageWriter writer;
try
{
ImageOutputStream ios=ImageIO.createImageOutputStream(new File("C:/Test.mov"));
Iterator writers=ImageIO.getImageWritersByFormatName("png");
while (writers.hasNext())
{
writer=(ImageWriter)writers.next();
writer.setOutput(ios);
Out(writer.toString()+" canInsertImage : "+writer.canInsertImage(0));
// Got this: [email protected]
// canInsertImage : false
}
}
catch (Exception e) { }
cntPics=0;
while (notFinished) // Main recording loop.
{
Buffered_Image=robot.createScreenCapture(); // Capture Screen image.
writer.write(null,new IIOImage(Buffered_Image,null,null),null);
if (writer.canInsertImage(-1)) {
// Append image at highest index
writer.writeInsert(-1,new IIOImage(Buffered_Image,null,null),null);
} else Out("Writer can’t append image Id : "+cntPics);
cntPics++;
}
Aucun d'entre eux a travaillé, ce qui est la bonne façon d'enregistrer plusieurs images PNG dans un fichier?
Edit:
Vous avez raison, je trouve un programme java appelé Krut qui peut enregistrer des sessions d'écran, mais il utilise JPEGImageEncoder, la qualité d'image est pas aussi bon que je veux, donc Je me demande si je peux utiliser ImageIO pour encoder la séquence.
Si ImageIO ne peut pas le faire, ma question suivante serait de savoir s'il existe un PNGImageEncoder open source autonome que je peux utiliser pour le coder? Je sais qu'il y a des PNGImageEncoders open source, mais ils ont tendance à être embrouillés dans des projets et difficiles à obtenir tous les fichiers de support, des idées? Merci!
Oh, je n'en ai jamais entendu parler, peut-il enregistrer des sessions d'écran et du son depuis un PC? Si vous regardez une vidéo avec son sur PC, est-ce qu'il peut enregistrer cela dans un film? Ou si vous voulez faire une vidéo d'instruction sur la façon d'utiliser un programme PC avec des clics de souris et votre voix à partir d'un microphone peut-il l'enregistrer? – Frank
Avez-vous vraiment besoin de coder cela (par exemple pour intégrer dans certains logiciels)? Sinon, vous avez déjà beaucoup d'outils. Par exemple http://stackoverflow.com/questions/280362 ou http://stackoverflow.com/questions/24555 – PhiLho