Sunday, September 17, 2006

PVR101 Disk format found

A big thanks to Jason for this:

"I've done some tinkering with a disk in the Technosonic PVR-101 andI've discovered that it stores its data in a very common format forthese types of devices: StorageLabs TinyUDF.

The only slight thing was that all the data was 16-bit little endian, but once that's fixed I was able to read an image of the disk using StorageLabs utilitycalled BrowseUDF. This showed a "recordings_" directory and in therewere "recordings0_" and "recordings1_" files and a sub-directory namedafter the single recording I made (with "data_" and "index_" files inthat directory).

I've not yet managed to extract the data, but I think that'll bevery easy now the image file is in a readable format."

"The BrowseUDF tool is at StorageLabs site, and currently available from the following URL: http://downloads.storagelabs.com/demo/BrowseTinyUDF.zip

The endianess correction was done by reversing each pair of bytes, sinceI believe it's 16-bit little endian format. I did this the hard wayusing a scripting language called REBOL (on a small image file) butthere may well be better tools out there. Basically the image file contains bytes in this order: 01 02 03 04 05 06 This needs to be transformed into this order: 02 01 04 03 06 05by reversing each pair. When you open the (endian corrected) image file you also need to set the block size to 512."

So Jason has done a lot of the work. Hopefully soon I'll post up a small sample of a video file to see if anyone can extract the video...