riff: RIFF parser for Haskell

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


This library provides a RIFF parser for Haskell for easy manipulation of common file formats like WAVE and RIFF container AVI files.

[Skip to ReadMe]


Change logNone available
Dependenciesbase (>=4.5 && <5.0), binary (==0.7.*), bytestring (>=0.9 && <1.0), either (==4.1.*), filepath (==1.3.*), riff, transformers (==0.3.0.*) [details]
Copyright(c) 2014 Robert Massaioli
AuthorRobert Massaioli
Home pagehttps://bitbucket.org/robertmassaioli/riff/overview
Bug trackerhttp://bitbucket.org/robertmassaioli/riff/issues
Source repositoryhead: git clone git://bitbucket.org/robertmassaioli/riff.git
Executablesriff-convert, riff-identity, riff-structure
UploadedWed Apr 9 09:21:40 UTC 2014 by RobertMassaioli




Maintainers' corner

For package maintainers and hackage trustees

Readme for riff-

[back to package description]

RIFF for Haskell

RIFF has been around for a long time and I thought that now would be a good time to write a library for it in Haskell. This library supports reading most RIFF files. Example file formats (taken from Wikipedia and elsewhere) that use RIFF as the container layer include:

And there are many more. You can even come up with your own data that can be contained inside RIFF.

Getting the Code

You can just rely upon the library in your cabal files. The code is on Hackage.

Building the Code

To build the code:

$ cabal sandbox init
$ cabal install

And that is all that there is to it.

Bundled Executables

I have written a few simple programs just so that I could test out the code that I have written:

$ cabal run riff-structure # prints out the internal structure of a RIFF file
$ cabal run riff-convert # lets you convert files to and from RIFF and RIFX formats
$ cabal run riff-identity # the identity over RIFF files, useful for testing

Feel free to use any of these executables to have a play with the RIFF file format, or better yet, write some code using this library and let me know about it.

Example Data

You can find example data all over the internet. Any WAVE file is a RIFF file for example. Here is a list of example data that you may be able to download: