Skip to content

Latest commit

 

History

History
31 lines (22 loc) · 2.89 KB

README.rdoc

File metadata and controls

31 lines (22 loc) · 2.89 KB

AVI chunks for Okteta

An extension for Okteta hex editor that provides definitions of basic data chunks that an AVI file is composed of.

Installation

Put avi.desktop and main.js into:

$(kde4-config --localprefix)share/apps/okteta/structures/avi-chunks/

On my system it’s +~/.kde4/share/apps/okteta/structures/avi-chunks/+. You’ll have to create at least the avi-chunks/ part.

Status

As it’s not really possible to make this extension easy to use at this point, certain level of knowledge of both AVI file structure and Okteta structure syntax is assumed. The extension is also quite incomplete. I have included only as much of the specification as I really needed for my own files. Even if your file is very typical you may need to modify the code to suit your needs.

Missing features will be added only when needed so don’t hesitate to file an issue in the bug tracker if you need something specific.

Usage

Make sure that the Structures tool is enabled in the Tools menu. Inside the tool use the Settings button and in the dialog go to Structures management and check AVI chunks structure.

Now you should see the avi-chunks tree inside the tool. The structure of an AVI file is not entirely static - some chunks are optional and some can have a variable number of children of non-uniform structure - and therefore the tree does not represent a single file layout. Instead it’s an union of two subtrees which in turn are unions of supported layouts. The first subtree (Basic structures) represents the basic building blocks that you can find manually (it’s usually easy - just search for the fourCC) and then inspect by selecting the starting byte in the editor. The second subtree (Example file layouts) is exactly what the name says - a collection of several file structures built from the basic elements. The selection is not yet very comprehensive.

If you want to create a new layout see +genericAVI()+ function and BIT_TYPES local variable in main.js.

Limitations and known problems

  • Okteta limits array size to 10000 elements and therefore the idx1 chunk gets placed incorrectly in all but the tiniest of AVI files.

More information

License

Copyright © Kamil Śliwak, released under the LGPL license.