J'avais installé Hachoir 0.5 pour modifier une valeur dans un fichier jpeg. Bon finalement je l'avais pas fait car je crois que c'était pas possible avec cette version.
Non, j'ai tardé très longtemps pour développer la partie édition. En fait, nous avons d'abord terminé la partie "lecture". Ensuite, j'ai réfléchi très fort pour trouver un algo potable qui fonctionnerait avec Hachoir. Les contraintes sont assez lourdes : il faut pouvoir éditer un fichier qui est chargé partiellement en mémoire... J'avais tenté une première implémentation il y a quelques mois, mais elle était loin d'être concluante.
Pour l'édition d'un fichier dans Hachoir 0.6, seules les modifications sont stockées : nouvelles valeurs, champs ajoutés et champs supprimés. La lecture d'un fichier est donc plus "lente" (bon, ça reste du O(1), sauf pour la lecture de l'adresse qui est en O(n) <= à vérifier tout ça), mais par contre c'est plus flexible et plus rapide finalement à mon avis. L'empreinte mémoire est assez faible... ce qui déjà rend l'édition de gros fichier (1 Go ou plus) possible... et permettra à court terme d'implémenter un historique pour permettre d'annuler des modifications (comme l'historique Gimp).
Autre idée que j'ai eu récement : implémenter un hachoir-diff qui va comparer deux fichiers et noter les champs ajoutés / supprimés / édités. Il faudrait que je trouve un algo de comparaison de fichiers binaires.
Je n'ai jamais rencontré de tels formats. En même temps, j'achète des cds audios, je n'ai jamais acheté de musique en ligne à part sur allofmp3.com (qui vend de la musique sans DRM). Il faudrait écrire un parseur pour ces formats là.
Mais d'une manière générale, Hachoir expose simplement les informations contenues dans un fichier, et il les expose toutes (enfin, il faut un bon parseur pour ça, et écrire un bon parseur nécessite de la bonne documentation). Donc, je pense que très certainement si DRM il y a, Hachoir le verra :-)
Oui, c'est vrai que pour l'instant le seul moyen d'édition un fichier est d'attaquer l'API en Python. Il y a quelques exemples sur la page : http://hachoir.org/wiki/HachoirEditor
Est ce que ça peut, par exemple modifier les chaînes de caractères dans un binaire ?
Il faut avoir un parseur pour le format que tu veux éditer. Mais une fois que le parseur est écrit, on manipule des objets Python qui vont s'occuper de convertir les données dasn le bon format. Pour une chaîne de caractère, Hachoir s'occupe d'ajouter le préfixe ou le suffixe (pour une chaîne C : ajoute "\0" à la fin, pour une chaîne Pascal : ajoute la longueur en préfixe) et je crois qu'il s'occupe aussi des charsets (ou si ce n'est pas le cas, il le fera très vite :-)). Pour les nombres, il va sérialiser les nombres selon la taille du champ et l'endian. Une liste incomplète et pas à jour des types peut se trouver là : http://hachoir.org/wiki/WriteYourParser
Mais depuis la version 0.4, il y a beaucoup de boulot sur les avatars. En particulier, avec la version 0.8 ils sont très complexe à créer mais ils sont beaucoup plus animés maintenant (on en recevait souvent la critique).
Pour les plus motivés, voici les anciens avatars qu'il faudrait adapter pour Wormux 0.8 : http://www.wormux.org/wiki/en/old_skins.php
(j'adorerai une équipe South Park ou Mario Bros, mais je sais plus si on peut encore avoir plusieurs avatars pour une seule équipe)
Bref, c'est pas nouveau cette histoire de libération. Un petit tour sur Wikipédia m'indique que le langage date de 1990, il a donc 16 ans à peu près.
Perso, comme Frédérick, je me demande ce que ça va changer. Déjà, ce n'est pas tout Java qui va être libéreré. Ensuite, ça sera libéré sous une licence "regardez mais touchez pas" (enfin, un truc open source mais pas libre, CDDL est pas compatible GPL par exemple : on peut pas mélanger du code CDDL et du code GPL).
Enfin, moi j'attend de voir. En attendant, trollez bien :-)
t'avais pas une ancienne version de wormux installée ?
J'avais déjà patché le fichier config.xml pour les incompatibilité entre les versions, il va falloir faire pareil pour les terrains et les skins. Càd ajouter un champ version.
Parce que... euh... ah oui, le jeu n'est pas encore assez mature et qu'il n'y a aucun paquet (Debian, Gentoo ou autre). Pour te le prouver, je propose mon texte en dépêche. Na !
Ah non merde, pourtant ça aurait pu être marrant. Genre après avoir balancé le container dans l'eau : "Chef ! Chef ! On a oublié de brancher la fibre optique ! Hé merde, c'est la 2e fois cette semaine".
Linux n'est plus monolithique comme à son début : grâce aux modules. On peut donc recharger une partie du noyau à chaud. Linux est très stable. Il y a 3/4 ans, ça m'arrivait de voir des "Kernel oops", mais maintenant plus jamais. Je parle d'un vrai plantage du noyau (quand il écrit tous les registres du CPU). Linux supporte tout et n'importe quoi niveau matériel (c'est plutôt le contraire pour Hurd). Linux est rapide et très largement testé sur des architectures minimalistes (sans MMU avec très peu de RAM) ou gigantesques (gros cluster / super-méga-gros calculateur). Beaucoup d'algorithmes du noyau sont vraiment très optimisés pour corriger un cas précis (monté en charge), mais finalement mis bout à bout, on sent la différence du côté utilisateur. La dernière grosse inovation que je lui connaissance est la possibilité de s'interrompre lui-même :-) (truc "préemptif" pour le multimédia).
Si Hurd ne décolle pas, c'est sûrement qu'il n'y a pas assez de développeurs et qu'ils passent plus de temps dans des discussions interminables qu'à coder. Je sais pas, mais j'ai l'impression que tous les ans ils remettent tout à plat... Après avoir *enfin* réussi à se décider de quitter le micro-noyau Gnu Mach (qui était vraiment vieux, genre années 70 je crois) pour L4... ben ils parlent de quitter L4. Merdeu, il faudrait savoir ce que vous voulez :-)
On parle souvent de Linux, mais l'autre noyau qui a l'air vraiment très intéressant, c'est celui de FreeBSD ! http://linuxfr.org/~grom/22938.html
Mouais, comparer Flash et SVG vidéo... bah on peut pas. SVG dit simplement au navigateur : je _veux_ une vidéo ici. Le navigateur doit se démerder pour trouver le bon codec, dessiner la vidéo au bon endroit, lire le son tout ça. Flash (Flashplayer) intègre des outils pour lire des vidéos, c'est pô pareil. Dans HTML, il existe aussi des balises pour insérer de la vidéo. "embedded" je crois.
Non. C'est de la vidéo encodée avec une variante du codec H.263. La version 8 permet l'utilisation du codec VP6. Pour le son : codecs MPEG1 layer3, PCM (non compressé) ou encore ADPCM (quoi ça ?). Du "classique" donc. Les gros avantages sont qu'ils faut "juste" un lecteur Flash et que la lecture se fait en streaming. Ca s'intègre très bien dans une page web. Plus de détails par ici : http://en.wikipedia.org/wiki/FLV
Haypo (qui avoue avoir fortement sourit en lisant "vidéo vectorielle")
Connaissant la politique Sony vis-à-vis du piratage, ça m'étonnerait beaucoup qu'on puisse lire des films stockés sur un disque BlueRay sans, au moins, un gros BLOB ou au pire toute une chaîne de DRM-truc-mouche.
En lisant vite fait l'article Wikipédia, on voit que l'algorithme résiste à toutes les cryptanalyses connus... ce qui est plutôt pas mal pour un algorithme qui a 6 ans (enfin, un peu plus vu qu'il hérite d'E2). D'autres avantages ?
Question bête peut-être, mais pourquoi cet obscurcissement ?
Le message de commit est « source obfuscation as forced by NVIDIA ». Si j'ai bien compris, le pilote nv a été à partir du pilote nvidia qui est loin d'être libre. Donc bon, Nvidia était pas content que son code pas libre passe sous licence libre sans leur accord. J'ai bon ?
« Deux semaines après, un décret (...) impose l'utilisation de programmes à code ouverts (...) »
Sasser il a touché combien de personnes ? Hum ? Et tiens... aucune réaction des administrations. Je cite Sasser, mais c'est de loin pas le seul. Internet Explorer, IIS, Windows & co ont tous eu leur lot de grosses vilaines failles dont certaines ne sont pas corrigées et pourtant ils sont encore utilisés.
Tiens, une URL au pif : http://zescoop.com/news.php?id=1005
(Selon les experts en sécurité informatiques, se sont des millions d'ordinateurs qui ont été infectés par...)
En bref :
- Protection anti-hameçonage (anti-"phising")
- Complétion dans la barre de recherche (bof, Konqueror le propose et je trouve ça pas ça pratique)
- Historique des onglets fermés (enfin ! plus besoin de plugin)
- Lors du démarrage de Firefox, possibilité de récupérer la session précédente (restores windows, tabs, text typed in forms, and in-progress downloads), pas mal <= le genre de truc auquel on prend très vite goût je pense :-)
- RSS encore plus pratique
- Correction orthographique dans les formulaires
- Et plein d'autres choses
Firefox2 est au top de sa forme niveau standards : CSS3, Javascript 1.7, SVG, etc. Firefox2 supporte le SVG text : une texte peut suivre une courbe.
En bref :
- Très gros boulot niveau HTML et CSS pour se rapprocher des standards (c'était pas trop ça avec les bétas, mais il parait que c'est mieux dans les dernières versions)
- Onglets (pfff, enfin !)
- Optimisation du rendu pour l'impression (à ce que j'ai compris : se démerde pour que ça tienne sur la feuille A4)
- Flux RSS
- Barre de recherche ("à la Firefox")
- Protection anti-hameçonage
Rien qu'avec le "changelog", je trouve Firefox2 beaucoup plus intéressant. Par contre, j'attend toujours de lire un test CSS123, SVG et Javascript pour IE7 !
* New look : rien compris, c'est quoi qui change ?
* Onglets : existe dans Opera (depuis pas moins de 10 ans), Firefox, Konqueror et (en gros) tous les navigateurs sauf IE
* Printing : là je peux pas dire, j'imprime jamais (j'ai même pas d'imprimante)
* RSS : bof, c'est du réchauffé ça, Firefox a un outil pour RSS depuis ... je sais pas, au moins la 1.5
* Barre de recherche : Firefox 1.0 et Konqueror 3.5
* Security : ça ressemble à de l'anti-fishing. Firefox et Konqueror ont déjà des outils pour ça je crois bien. En tout cas, Firefox2 apporte pas mal de ce côté là.
[^] # Re: Pour développer Hurd bien sûr !!!!
Posté par Victor STINNER (site web personnel) . En réponse au journal La virtualisation pourquoi faire ?. Évalué à 4.
http://bochs.sourceforge.net/
http://fabrice.bellard.free.fr/qemu/
Haypo
[^] # Re: Intéréssant
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Hachoir version 0.6. Évalué à 3.
Non, j'ai tardé très longtemps pour développer la partie édition. En fait, nous avons d'abord terminé la partie "lecture". Ensuite, j'ai réfléchi très fort pour trouver un algo potable qui fonctionnerait avec Hachoir. Les contraintes sont assez lourdes : il faut pouvoir éditer un fichier qui est chargé partiellement en mémoire... J'avais tenté une première implémentation il y a quelques mois, mais elle était loin d'être concluante.
Pour l'édition d'un fichier dans Hachoir 0.6, seules les modifications sont stockées : nouvelles valeurs, champs ajoutés et champs supprimés. La lecture d'un fichier est donc plus "lente" (bon, ça reste du O(1), sauf pour la lecture de l'adresse qui est en O(n) <= à vérifier tout ça), mais par contre c'est plus flexible et plus rapide finalement à mon avis. L'empreinte mémoire est assez faible... ce qui déjà rend l'édition de gros fichier (1 Go ou plus) possible... et permettra à court terme d'implémenter un historique pour permettre d'annuler des modifications (comme l'historique Gimp).
Autre idée que j'ai eu récement : implémenter un hachoir-diff qui va comparer deux fichiers et noter les champs ajoutés / supprimés / édités. Il faudrait que je trouve un algo de comparaison de fichiers binaires.
Haypo
[^] # Re: Détection de fichiers DRMisés
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Hachoir version 0.6. Évalué à 2.
Mais d'une manière générale, Hachoir expose simplement les informations contenues dans un fichier, et il les expose toutes (enfin, il faut un bon parseur pour ça, et écrire un bon parseur nécessite de la bonne documentation). Donc, je pense que très certainement si DRM il y a, Hachoir le verra :-)
Haypo
[^] # Re: Intéréssant
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Hachoir version 0.6. Évalué à 3.
http://hachoir.org/wiki/HachoirEditor
Est ce que ça peut, par exemple modifier les chaînes de caractères dans un binaire ?
Il faut avoir un parseur pour le format que tu veux éditer. Mais une fois que le parseur est écrit, on manipule des objets Python qui vont s'occuper de convertir les données dasn le bon format. Pour une chaîne de caractère, Hachoir s'occupe d'ajouter le préfixe ou le suffixe (pour une chaîne C : ajoute "\0" à la fin, pour une chaîne Pascal : ajoute la longueur en préfixe) et je crois qu'il s'occupe aussi des charsets (ou si ce n'est pas le cas, il le fera très vite :-)). Pour les nombres, il va sérialiser les nombres selon la taille du champ et l'endian. Une liste incomplète et pas à jour des types peut se trouver là :
http://hachoir.org/wiki/WriteYourParser
Haypo
[^] # Re: Personnages supplémentaires...
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Rejouez chez vous les plus grandes batailles de la guerre du libre. Évalué à 2.
Mais depuis la version 0.4, il y a beaucoup de boulot sur les avatars. En particulier, avec la version 0.8 ils sont très complexe à créer mais ils sont beaucoup plus animés maintenant (on en recevait souvent la critique).
Pour les plus motivés, voici les anciens avatars qu'il faudrait adapter pour Wormux 0.8 :
http://www.wormux.org/wiki/en/old_skins.php
(j'adorerai une équipe South Park ou Mario Bros, mais je sais plus si on peut encore avoir plusieurs avatars pour une seule équipe)
Haypo
# Bientôt
Posté par Victor STINNER (site web personnel) . En réponse au journal Java libre. Évalué à 6.
http://linuxfr.org/2004/03/05/15621.html - Sun refuse
http://linuxfr.org/2005/12/13/20055.html - SUN libère ses processeurs SPARC
http://linuxfr.org/2006/05/17/20827.html - Une licence plus permissive pour Java
http://linuxfr.org/2006/08/18/21210.html - Sun annonce la sortie prochaine de Java sous licence open source
Bref, c'est pas nouveau cette histoire de libération. Un petit tour sur Wikipédia m'indique que le langage date de 1990, il a donc 16 ans à peu près.
Perso, comme Frédérick, je me demande ce que ça va changer. Déjà, ce n'est pas tout Java qui va être libéreré. Ensuite, ça sera libéré sous une licence "regardez mais touchez pas" (enfin, un truc open source mais pas libre, CDDL est pas compatible GPL par exemple : on peut pas mélanger du code CDDL et du code GPL).
Enfin, moi j'attend de voir. En attendant, trollez bien :-)
Haypo
[^] # Re: ebuilds gentoo
Posté par Victor STINNER (site web personnel) . En réponse au journal Rejouez chez vous les plus grandes batailles de la guerre du libre. Évalué à 2.
J'avais déjà patché le fichier config.xml pour les incompatibilité entre les versions, il va falloir faire pareil pour les terrains et les skins. Càd ajouter un champ version.
Haypo
[^] # Re: Moyen big up à yekcim et ptifeth
Posté par Victor STINNER (site web personnel) . En réponse au journal Rejouez chez vous les plus grandes batailles de la guerre du libre. Évalué à 2.
Haypo
[^] # Re: aller je la fais
Posté par Victor STINNER (site web personnel) . En réponse au journal Rejouez chez vous les plus grandes batailles de la guerre du libre. Évalué à 5.
http://yeknan.free.fr/blog/index.php?2006/10/17/144-les-trol(...)
(euh oui en pratique il n'y a pas d'avatar)
# Moyen big up à yekcim et ptifeth
Posté par Victor STINNER (site web personnel) . En réponse au journal Rejouez chez vous les plus grandes batailles de la guerre du libre. Évalué à 10.
On me signale dans l'oreillette une fournée de capture d'écran me vois-tu me voilà :
http://www.wormux.org/wiki/fr/screenshot.php#Version_0.8
Haypo
# Sous l'eau ?
Posté par Victor STINNER (site web personnel) . En réponse au journal Le 1er avril est précoce cette année.... Évalué à 10.
Haypo
# En même temps Linux...
Posté par Victor STINNER (site web personnel) . En réponse au journal Hurd, une si belle idée et pourtant.. Évalué à 10.
Si Hurd ne décolle pas, c'est sûrement qu'il n'y a pas assez de développeurs et qu'ils passent plus de temps dans des discussions interminables qu'à coder. Je sais pas, mais j'ai l'impression que tous les ans ils remettent tout à plat... Après avoir *enfin* réussi à se décider de quitter le micro-noyau Gnu Mach (qui était vraiment vieux, genre années 70 je crois) pour L4... ben ils parlent de quitter L4. Merdeu, il faudrait savoir ce que vous voulez :-)
On parle souvent de Linux, mais l'autre noyau qui a l'air vraiment très intéressant, c'est celui de FreeBSD !
http://linuxfr.org/~grom/22938.html
Haypo
# Vidéo dans du SVG
Posté par Victor STINNER (site web personnel) . En réponse au journal Du flash, plus de flash, encore du flash!. Évalué à 8.
Haypo
# Je crois que flash c'est de la vidéo vectorisé non?
Posté par Victor STINNER (site web personnel) . En réponse au journal Du flash, plus de flash, encore du flash!. Évalué à 9.
http://en.wikipedia.org/wiki/FLV
Haypo (qui avoue avoir fortement sourit en lisant "vidéo vectorielle")
# Lire du BlueRay ???
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Il y aura un Linux pour la Playstation 3. Évalué à 9.
Haypo
# Avantages par rapports aux autres algorithmes de chiffrement symétrique?
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche NTT s'implique dans la cryptographie libre. Évalué à 5.
Haypo
# Dans le même genre, mais en BD
Posté par Victor STINNER (site web personnel) . En réponse au journal [mavie] les ordinateurs dans le train.... Évalué à 2.
Haypo
[^] # Re: nouveau driver nouveau ?
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Faille de sécurité dans le pilote propriétaire Nvidia. Évalué à 4.
Le message de commit est « source obfuscation as forced by NVIDIA ». Si j'ai bien compris, le pilote nv a été à partir du pilote nvidia qui est loin d'être libre. Donc bon, Nvidia était pas content que son code pas libre passe sous licence libre sans leur accord. J'ai bon ?
Haypo
[^] # Re: Lien vers journal
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Faille de sécurité dans le pilote propriétaire Nvidia. Évalué à 3.
Haypo
# Mouhahahaha
Posté par Victor STINNER (site web personnel) . En réponse au journal «As-if» informatique. Évalué à 6.
« Deux semaines après, un décret (...) impose l'utilisation de programmes à code ouverts (...) »
Sasser il a touché combien de personnes ? Hum ? Et tiens... aucune réaction des administrations. Je cite Sasser, mais c'est de loin pas le seul. Internet Explorer, IIS, Windows & co ont tous eu leur lot de grosses vilaines failles dont certaines ne sont pas corrigées et pourtant ils sont encore utilisés.
Tiens, une URL au pif :
http://zescoop.com/news.php?id=1005
(Selon les experts en sécurité informatiques, se sont des millions d'ordinateurs qui ont été infectés par...)
Haypo
# Nouveautés Firefox2 et IE7
Posté par Victor STINNER (site web personnel) . En réponse à la dépêche Firefox 2 arrive (IE7 aussi). Évalué à 10.
http://en-us.www.mozilla.com/en-US/firefox/2.0/releasenotes/(...)
En bref :
- Protection anti-hameçonage (anti-"phising")
- Complétion dans la barre de recherche (bof, Konqueror le propose et je trouve ça pas ça pratique)
- Historique des onglets fermés (enfin ! plus besoin de plugin)
- Lors du démarrage de Firefox, possibilité de récupérer la session précédente (restores windows, tabs, text typed in forms, and in-progress downloads), pas mal <= le genre de truc auquel on prend très vite goût je pense :-)
- RSS encore plus pratique
- Correction orthographique dans les formulaires
- Et plein d'autres choses
Firefox2 est au top de sa forme niveau standards : CSS3, Javascript 1.7, SVG, etc. Firefox2 supporte le SVG text : une texte peut suivre une courbe.
IE7
http://www.microsoft.com/windows/ie/default.mspx
En bref :
- Très gros boulot niveau HTML et CSS pour se rapprocher des standards (c'était pas trop ça avec les bétas, mais il parait que c'est mieux dans les dernières versions)
- Onglets (pfff, enfin !)
- Optimisation du rendu pour l'impression (à ce que j'ai compris : se démerde pour que ça tienne sur la feuille A4)
- Flux RSS
- Barre de recherche ("à la Firefox")
- Protection anti-hameçonage
Ce blog doit aussi être une bonne source d'informations : http://blogs.msdn.com/ie/
Rien qu'avec le "changelog", je trouve Firefox2 beaucoup plus intéressant. Par contre, j'attend toujours de lire un test CSS123, SVG et Javascript pour IE7 !
Haypo
[^] # Re: J'ai essayé
Posté par Victor STINNER (site web personnel) . En réponse au journal Sortie imminente de IE7. Évalué à 5.
Pour info, ça marche sous Konqueror (double-clique à droite du dernier onglet ouvre un nouvel onglet)
mais c'est certainnement pas ça qui va me convaincre de l'utiliser sous Windows
Ça serait un comble quand même « Comment j'ai quitté Linux pour pouvoir surfer avec IE7 » :-D
Haypo
# IE7 sort bientôt
Posté par Victor STINNER (site web personnel) . En réponse au journal Sortie imminente de IE7. Évalué à 4.
http://www.haypocalc.com/blog/index.php/2006/10/09/19-ie7-so(...)
Petit rappel : Internet Explorer 7 doit « bientôt sortir » depuis début 2005.
Bon, un vrai test « CSS123 - PNG 24 bits alpha béta gamma - Javascript WEB 2.0 Ajax sans frotter - SVG » m'intéresse quand même.
Haypo
[^] # Re: Fausse joie...
Posté par Victor STINNER (site web personnel) . En réponse au journal Sortie imminente de IE7. Évalué à 4.
Haypo
[^] # Re: IE7...
Posté par Victor STINNER (site web personnel) . En réponse au journal Ce crash de IE6 est-il connu ?. Évalué à 2.
http://www.microsoft.com/windows/ie/default.mspx
* New look : rien compris, c'est quoi qui change ?
* Onglets : existe dans Opera (depuis pas moins de 10 ans), Firefox, Konqueror et (en gros) tous les navigateurs sauf IE
* Printing : là je peux pas dire, j'imprime jamais (j'ai même pas d'imprimante)
* RSS : bof, c'est du réchauffé ça, Firefox a un outil pour RSS depuis ... je sais pas, au moins la 1.5
* Barre de recherche : Firefox 1.0 et Konqueror 3.5
* Security : ça ressemble à de l'anti-fishing. Firefox et Konqueror ont déjà des outils pour ça je crois bien. En tout cas, Firefox2 apporte pas mal de ce côté là.
Mon impression sur IE7 mais surtout sur ses concurrents et Microsoft ("en perte de vitesse") :
http://www.haypocalc.com/blog/index.php/2006/10/09/19-ie7-so(...)
Haypo