haypo / hachoir
Hachoir 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.
Welcome!
Hachoir 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.
Hachoir projects
Programs:
- hachoir-metadata: extract metadata from video, music and other files
- hachoir-urwid: text user interface
- hachoir-wx: graphical user interface (wxWidgets)
- hachoir-subfile: find and extract all subfiles from any binary stream
- hachoir-http: HTML + Ajax user interface
Modules:
- hachoir-core: see features and documentation
- hachoir-parser: list of supported file formats
- hachoir-regex: regular expression (regex) manipulation library
Experimental programs:
- hachoir-gtk: graphical (Gtk+) user interface
- hachoir-editor: library working with hachoir-core to edit a binary file
- hachoir-strip: strip binary file (remove metadata, padding fields, etc.)
- hachoir-grep: find substring in a binary file
Install and download or see status of the project.
Hachoir pages
- Ideas of projects based on Hachoir
- Developer section
- Contact
- Links: Links to similar projects and news on other websites about Hachoir
- Legal issues
- Forensics
- File format resources
- Microsoft Office file formats
News
- 2010-07-26: Release of hachoir-parser 1.3.4 (changes) and hachoir-metadata 1.3.3 (changes)
- 2010-02-26: Release of hachoir-core 1.3.3 (changes)
- 2010-02-04: Release of hachoir-metdata 1.3.2 (changes)
- 2010-01-20: Release of hachoir-core 1.3 (changes), hachoir-parser 1.3 (changes) and hachoir-metdata 1.3 (changes)
- 2010-01-13: Release of hachoir-regex 1.0.4 (changes)
- 2009-08-05: The website moved to a new server (bitbucket), the source code is now stored in a Mercurial repository instead of a Subversion repository
- October 2008: Release of hachoir-core 1.2.1 (ChangeLog), hachoir-parser 1.2.1 (ChangeLog), hachoir-metadata 1.2.1 (ChangeLog)
- September 2008: Release of hachoir-core 1.2, hachoir-parser 1.2, hachoir-metadata 1.2, hachoir-wx 0.3, hachoir-urwid 1.1
- May 2008: Creation of project FileSull, fuzzer based on Sulley and Hachoir
- 1st April 2008
- Release of hachoir-core 1.1, hachoir-parser 1.1, hachoir-metadata 1.1, hachoir-subfile 0.5.3, hachoir-wx 0.2, hachoir-regex 1.0.3
- Changes:
- Create hachoir-metadata-gtk (basic Gtk+ GUI for hachoir-metadata)
- Create "EFI Platform Initialization Firmware Volume" (PIFV) and "Microsoft Windows Help" (HLP) parsers
- Metadata extractors are more stable and fault tolerant
- String value is always Unicode (guess charset if needed); many bugfixes and minor improvments
- 24 August 2007
- Server migration: Julien's server (81.56.123.123) to haypo's server (88.160.66.91). So ask haypo if you would like an account.
- 25 July 2007
- Most hachoir components are now available in version 1.0 for Debian, Mandriva, Gentoo, Arch and FreeBSD!
This revision is from 2010-07-26 03:16
