Friday, July 22, 2005

FRET version 0.0.4 released!

After spending too much time re-writing the "Grinding" funcionality - what detects data structures that are common to multiple files or buffers - I´ve released a tarball of version 0.0.4 of the code.

This version of FRET is much improved, I think its the first version that a developer may actually find useful. All junk output has been eliminated and the scanGrind function is now quite smart - it will only detect common structures that are not part of a larger "common structure" (or Gram) and also it will not detect common structures that consist of fill bytes.

The rewrite of the scanGrind function gave me a lot more problems than I thought it would. Eliminating superflous data i.e. sub-Grams of larger Grams and Grams that contain fill bytes was hard to do cleanly. Even now I´m not happy that the implementation is efficient but thats not a concern - fast is not a goal - correct and exhaustive is the goal. The next round of development will probably focus on adding either x86 instruction detection or improved text detection.

Tuesday, July 12, 2005

Olympus C-770 with GNU/Linux

Currently working on a HOWTO for using the latest MPEG-4 recording digital cameras with GNU/Linux systems. I have a pretty good perl script that I use to go along with the article but it´ll be a week or two before thats finished. If you use an Olympus C-770 with a GNU/Linux system and would like a script to batch convert your mp4 movies to more usable MPEG-2, AVI or DVD-VOB formats, let me know.

Friday, July 8, 2005

FRET version 0.0.3 Released!

I have finally published version 0.0.3 on Sourceforge.net. This is definitely the most significant release to date as it now actually provides some useful functionality. Ok, its still pretty limited but its coming along. So if your a looking for a *NIX commandline tool to help you understand the inner workings of an undocumented file format, you now have to look no further.

In this release I have added the hashing of raw data to create a fingerprint of each proposed data structure. This allows for the efficient comparison of structures (Grams). For the hash algorithm I used Landon Curt Noll's FNV algorithm, which he has kindly released in the Public Domain, see Landon's website. This release has also removed the annoying over-zealous detection of offsets within the data. However, there is still lots of work to be done.......