petite variation autour de l'objet pvoc d'hardoff poru faire rapidement du test de sonbref cela ralentit un son 100 fois ( pris dans le répertoire sons ) et on l'envoie dans des effets avec un bouton random. quand on est content on appuie sur preset, les parametres sont écrits dans un fichier text.[vimeo]http://www.vimeo.com/27431640[/vimeo]la librairie ptl à ajouterqui fait du random sur tous les effets de la mtlhttps://github.com/j-k-p/ptlet le zip finalhttp://jkp.antisocial.be/musique/JKP-Césuperlong.zip
[PD] JKP - Boite A MusiqueChoissisez un fichier MidiAgitez la sourisLes fichiers MIDI viennent du site de Thierry Kleinhttp://thierry-klein.nerim.netMerci à luiIl faut ajouter mrpeach dans le startup path.je voulais ajouter de la super 3d avec gem, des bulles à chaque note, une manivelle, etc.. et bon voila je l'ai pas faitJ'ai choisi l'objet pluck de la mtl mais bon le beep, le blip, etc marche aussihttp://jkp.antisocial.be/musique/JKP-Boite-A-Musique.zipmerci à emoc, oyster_twiter et cette petite boutique d'objet en bois pour l'inspiration
[python] JKP - Bgucore && Qualité jpglofi jpeghttp://jkp.antisocial.be/images/JKP-Bgucore002-1.jpghttp://jkp.antisocial.be/images/JKP-Bgucore002-2.jpghttp://jkp.antisocial.be/images/JKP-Bgucore002-3.jpghttp://jkp.antisocial.be/images/JKP-Bgucore002-4.jpgLe script produit une centaine d'images en faisant varier le taux de qualité de compression de jpeg.python JKP-Bgucore002.py nomdufichierhttp://jkp.antisocial.be/scripts/JKP-Bgucore002.zip
Bgucore#001copy partiel http://jkp.antisocial.be/images/JKP-Bgucore001.jpgFonctionnementLe script crée 100 images mais en ne recopiant pas tous les octets de l'image originel.python JKP-Bgucore001.py nomdufichierhttp://jkp.antisocial.be/scripts/JKP-Bgucore001.txtfait sans dd de linux
du bruit du bruit pure data + mtl librairy[vimeo]http://vimeo.com/31547373[/vimeo]Download
le format XPMhttp://fr.wikipedia.org/wiki/X_PixMapBgucore#005cryptage canal+http://jkp.antisocial.be/images/JKP-Bgucore005.jpgFonctionnementLe script applique un effet visuel semblable à l'ancien cryptage de Canal+.python JKP-Bgucore005.py nomdufichier ( Xpm )http://jkp.antisocial.be/scripts/JKP-Bgucore005.txtBgucore#006cut/paste randomhttp://jkp.antisocial.be/images/JKP-Bgucore006.jpgFonctionnementcut/paste en mode randompython JKP-Bgucore006.py nomdufichier ( Xpm )http://jkp.antisocial.be/scripts/JKP-Bgucore006.txtBgucore#007random sur la table des couleurshttp://jkp.antisocial.be/images/JKP-Bgucore007.jpgFonctionnementinitialisation de la table des couleurs en mode randompython JKP-Bgucore007.py nomdufichier ( Xpm ) [1-252] ( nombre de couleur à randomiser )http://jkp.antisocial.be/scripts/JKP-Bgucore007.txtA noterGimp parfois n'aime pas les images que je crée alors que eog les convertit en jpg..
Premier patch pour androidparty, l'objectif était de créer un accessoire pour un costume de policier avec un fausse radio.pas de fond parce que je n'arrive toujours pas à en ajouter un .http://jkp.antisocial.be/musique/JKP-Woop_woop_that's_the_sound_of_da_police.zip
variation autour du patch smp-slice d'Hardoff.premier temps, on découpe le fichier wav en plusieurs slices suivant deux méthodesdécoupage égale en 16 partiesou utilisation d'un détecteur de beat.ensuiteles slices sont joués selon une séquence préécrite que vous choississez en déplacant la souris sur les carrés de couleurs.il y a quelques bugs mais bon.[vimeo]http://vimeo.com/32729545[/vimeo]http://jkp.antisocial.be/musique/JKP-Pure-Decoupage.zip
Mix de boucles timestretché en déplacant la souris sur les carrés de couleur.La sélection des boucles se fait par interaction sur le clavier.[vimeo]http://vimeo.com/32729858[/vimeo]http://jkp.antisocial.be/musique/JKP-Pure-Mix.zip
le temps passe trop vitej'ai trouvé une solutionhttp://tempus-fugit.antisocial.be/
[flv]http://jkp.antisocial.be/videos/flux-bgucore.flv[/flv]Flx Bgucore fait à partir de d'images extraites des flux rss du monde, liberation, nouvel obs....récupérées avec simple pie plus jsonenchaînées et positionnées avec jquery plus jcycle.plus bguocisés avec le script GlitchMonkey ( http://d.hatena.ne.jp/youpy/ ) issu de GreaseMonkey ( firefox ).le tout en temps réel.le zip icihttp://jkp.antisocial.be/scripts/JKP-Flux-Bgucore.zip
2 plugins crées à partir de la fonction de James Padolsey pour faire du net minimal http://james.padolsey.com/javascript/find-and-replace-text-with-javascript/inspirés par http://blogspot.jodi.org/et par un projet que j'avais déjà visité mais oublié http://www.gleuch.com/projects/ctrl-f-dversion avec barrehttp://jkp.antisocial.be/scripts/Minimal.xpirésultathttp://jkp.antisocial.be/images/image-Minimal-lefigaro.pnghttp://jkp.antisocial.be/images/image-Minimal-lepost.pnghttp://jkp.antisocial.be/images/image-Minimal-liberation.pnghttp://jkp.antisocial.be/images/image-Minimal-rue89.pnghttp://jkp.antisocial.be/images/image-Minimal-II-lemonde.pngversion ultra minimalhttp://jkp.antisocial.be/scripts/Minimal-II.xpirésultathttp://jkp.antisocial.be/images/image-Minimal-II-codelab.pnghttp://jkp.antisocial.be/images/image-Minimal-II-musiques-incongrues.pnghttp://jkp.antisocial.be/images/image-Minimal-II-Radiofrance.pngA noter cette autre plugin ---> autre idée :-)https://addons.mozilla.org/fr/firefox/addon/sarkofree/merci à r33p pour les retours
Utilisation de la librairie HachoirHachoir is a Python library that allows to view and edit a binary stream field by field. In other words, Hachoir allows you to "browse" any binary stream just like you browse directories and files. A file is split in a tree of fields, where the smallest field is just one bit. There are other fields types: integers, strings, bits, padding types, floats, etc. Hachoir is the French word for a meat grinder (meat mincer), which is used by butchers to divide meat into long tubes; Hachoir is used by computer butchers to divide binary files into fields.Hachoir is composed of the parser core (hachoir-core), various file format parsers (hachoir-parser), and other peripheral programs. For example, you can use hachoir-metadata to extract information from your favourite photos or videos. Hachoir also allows you to edit files (of supported formats) without the original (often proprietary) program that was used to create them. Installation dela librairie Hachoir---]]] http://hachoir.org/index.htmlIl est nécessaire d'installer hachoir-core,hachoir-metadata, hachoir-urwid et hachoir-editor pour que les scriptsd'exemple fonctionnent.Se placer en ligne de commande dans chaque répertoire et lancer pythonsetup.py install en tant que root.( Le fichier manquant nécessaire à l'installation de hachoir-editor à renommer en py)Première utilisation possibleDans le répertoie hachoir-tools se trouve un fuzzer.L'idée est de détourner l'usage purement sécurité vers un usage ludique encréant des images aléatoires, buggées.Il est possible de placer les images sources sous plusieursformats ( tous lesformats possibles ) afin d'obtenir des résultats différents.J'ai modifié le script pour pouvoir créer les images buggées ( remplacer le fichier file_fuzzer.py par celui ci )./stress.py directorysourcehttp://jkp.antisocial.be/images/image-hachoir-bmp.jpg Format Bmphttp://jkp.antisocial.be/images/image-hachoir-gif.jpg Format Gifhttp://jkp.antisocial.be/images/image-hachoir-pcx.jpgFormat Pcxhttp://jkp.antisocial.be/images/image-hachoir-tga.jpgFormat TgaDeuxième utilisation possibleIl est possible de modifier à la main les paramètres de nombreuxfichiers et par exemple les paramètres d'un fichier Jpeg.Tous ces champssont lisibles grâce à l'utilitaire hachoir-urwid.http://jkp.antisocial.be/images/image-hachoir-urwid.pngCode Python:from hachoir_parser importcreateParserfrom hachoir_editor importcreateEditorfrom hachoir_core.field importwriteIntoFileparser=createParser(u"lena.jpg")editor=createEditor(parser)editor["huffman[0]/content/huffman_table[0]/count[9]].value=15writeIntoFile(editor, u"resultat.jpg")http://jkp.antisocial.be/images/image-hachoir-quantization0-qt1-coeff01-49.jpgTroisième utilisation possibleCréation de plusieurs images en mettant tous les paramètres à 0Code Python:#!/usr/bin/pythonfrom hachoir_core.cmd_line import (getHachoirOptions, configureHachoir, unicodeFilename)from hachoir_core.stream import InputStreamError, FileInputStreamfrom hachoir_core.i18n import _from hachoir_parser import guessParser, HachoirParserList,createParserfrom hachoir_editor import createEditorfrom hachoir_core.field import writeIntoFilefrom hachoir_urwid import exploreFieldSetfrom hachoir_urwid.version import VERSION, WEBSITEfrom optparse import OptionGroup, OptionParser#import hachoir_coreimport sysfrom random import choiceimport reli=[]def displayTree(tree): for field in tree: if "image_data" in field.path: break li.append(field.path) if field.is_field_set: displayTree( field ) def main(): i=0 k=0 stream=FileInputStream(unicodeFilename(sys.argv[1])) parser=guessParser(stream) displayTree(parser) while k<=4: for item in li: pattern=r'(start_image$|app0$|content$|jfif$|photoshop|signature$|adobe|quantization\[0\]$|qt\[0\]|qt\[1\]|start_frame$|component\[0\]$|component\[1\]$|component\[2\]$|huffman\[0\]$|restart_interval$|huffman_table\[0\]$|huffman_table\[1\]$|huffman_table\[2\]$|huffman_table\[3\]$|start_scan\[0\]$)' if re.search(pattern, item): print '' else: parser2=createParser(unicodeFilename(sys.argv[1])) editor=createEditor(parser2) editor[item].value=0 fichier=res-"+str(k)+"-"+str(i) + ".jpg" unicodefichier=unicode(fichier, 'utf-8') #print unicodefichier writeIntoFile(editor, unicodefichier) i=i+1 k=k+1if __name__ == "__main__": main()Création de plusieurs images en mettant des valeurs en RandomCode Python:#!/usr/bin/pythonfrom hachoir_core.cmd_line import (getHachoirOptions, configureHachoir, unicodeFilename)from hachoir_core.stream import InputStreamError, FileInputStreamfrom hachoir_core.i18n import _from hachoir_parser import guessParser, HachoirParserList,createParserfrom hachoir_editor import createEditorfrom hachoir_core.field import writeIntoFilefrom hachoir_urwid import exploreFieldSetfrom hachoir_urwid.version import VERSION, WEBSITEfrom optparse import OptionGroup, OptionParser#import hachoir_coreimport sysfrom random import choicefrom random import randintimport reli=[]def displayTree(tree): for field in tree: if "image_data" in field.path: break li.append(field.path) if field.is_field_set: displayTree( field ) def main(): j=0 while j<=1000: i=randint(0,255) k=randint(0,65555) stream=FileInputStream(unicodeFilename(sys.argv[1])) parser=guessParser(stream) displayTree(parser) item=choice(li) parser2=createParser(unicodeFilename(sys.argv[1])) editor=createEditor(parser2) editor[item].value=i fichier=res-"+str(k)+".jpg" unicodefichier=unicode(fichier, 'utf-8') #print unicodefichier writeIntoFile(editor, unicodefichier) j=j+1if __name__ == "__main__": main()http://jkp.antisocial.be/images/image-hachoir-random.jpghttp://jkp.antisocial.be/images/image-hachoir-random-2.jpg