[REOUVERT] Problème avec le JPEGCodec

Problème avec le JPEGCodec [REOUVERT] - Java - Programmation

Marsh Posté le 17-09-2003 à 16:17:28    

salut !
 
ça faisait longtemps...
voilà j'ai un problème pour enregistrer une image au format JPEG avec Java.
en gros je génère une image à partir d'une BufferedImage...
 

Code :
  1. BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_BYTE_GRAY);
  2. try {
  3. FileOutputStream fos = new FileOutputStream(filename);
  4. JPEGImageEncoder jpeg = JPEGCodec.createJPEGEncoder(fos);
  5. JPEGEncodeParam param = JPEGCodec.getDefaultJPEGEncodeParam(image);
  6. param.setQuality(quality, true);
  7. jpeg.encode(image, param);
  8. fos.close();
  9. } catch (IOException e) {
  10. e.printStackTrace();
  11. System.exit(-1);
  12. } catch (ImageFormatException e) {
  13. e.printStackTrace();
  14. System.exit(-1);
  15. }


 
ça génère bien une image lisible sur PC, mais il semble que ce JPEG ne soit pas tout à fait standard, car il n'est pas lisible sur un périphérique qui lit les jpg...
 
alors je viens à ma question, connaissez vous une autre méthode pour enregistrer mon image en jpeg ? ou alors savez vous pourquoi c'est pas un jpeg "normal" et comment régler le problème ?
 
merci


Message édité par Predicator le 17-09-2003 à 22:40:28
Reply

Marsh Posté le 17-09-2003 à 16:17:28   

Reply

Marsh Posté le 17-09-2003 à 17:25:06    

ton JPEG est en dégradé de gris ? si oui, c'est un format de jpeg particulier qui n'est parfois pas compris.
 
J'ai eu le cas sur des téléphones sensé être capable d'afficher du JPEG mais qui ne savait qu'afficher les jpeg couleur


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 17-09-2003 à 17:42:42    

hum... tu voudrais dire que comme le bufferedimage est en gris, java encode l'image en jpeg-gris ?
je croyais que le jpeg était forcément en 24 bits... là tu m'apprends quelque chose, je teste de suite

Reply

Marsh Posté le 17-09-2003 à 17:51:51    

pas d'édit pour conclure...
 
c'est effectivement l'utilisation du type TYPE_BYTE_GRAY dans le BufferedImage qui foire tout... l'utilisation de TYPE_3BYTE_BGR à la place rend un jpeg correct...
 
merci benou :hello:
 
EDIT : je continue sur un autre problème :  
 
j'utilise JexePack pour faire de mon appli un binaire exe, mais à l'exécution, il me fait un ClassNotFoundException sur BufferedImage... vous savez comment faire un bel exe à partir d'un code java ?
 
merci :)


Message édité par Predicator le 17-09-2003 à 17:56:04
Reply

Marsh Posté le 17-09-2003 à 19:18:25    

Predicator a écrit :


je croyais que le jpeg était forcément en 24 bits... là tu m'apprends quelque chose, je teste de suite


moi aussi j'ai été surpris quand j'ai découvert ca, mais il y a bien 2 format de Jpeg.
 
enfat, quand tu penses que le Jpeg vient du mon de la photo, ca se comprend un peu ... :)


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 17-09-2003 à 19:19:57    

Predicator a écrit :


j'utilise JexePack pour faire de mon appli un binaire exe, mais à l'exécution, il me fait un ClassNotFoundException sur BufferedImage... vous savez comment faire un bel exe à partir d'un code java ?


ben ca c'est surement qu'il n'ait pas arrivé à trouver les Jar de JAI (c'est bien JAI que tu utilise ?). Je connais pas ton outils, mais y a surement un moyen d'ajouter des jars ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 17-09-2003 à 19:30:59    

JAI ? l'API de traitement d'image ?
non j'utilise le SDK classique... ce qui est étrange, c'est qu'il toruve tout (swing compris) sauf BufferedImage...
si tu connais un autre outil pour générer du binaire je suis preneur :)

Reply

Marsh Posté le 17-09-2003 à 19:49:12    

Predicator a écrit :

JAI ? l'API de traitement d'image ?
non j'utilise le SDK classique... ce qui est étrange, c'est qu'il toruve tout (swing compris) sauf BufferedImage...
si tu connais un autre outil pour générer du binaire je suis preneur :)


ok, c'est les noms de classe qui m'y faisaient penser. Non, je connais pas ces outils : je ne me suis jamais servi d'aucun.
 
Mais en cherchant rapidement sur google tu devrais en trouver quelques uns ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 17-09-2003 à 19:59:27    

c'est ce que j'ai fait, et ça m'a renvoyé sur JexePack...
très bien d'ailleurs, sauf que là il marche pas...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed