Quicktime for Linux

Author: Heroine Virtual broadcast@earthling.net
Homepage: heroinewarrior.com/quicktime.php3
Requires: libpthread libpng

Quicktime movies are first and foremost a very sophisticated wrapper for 3rd party compression schemes. While not belonging to the umbrella of official Microsoft software, it is well documented and it supports files longer than 4 GB.

Quicktime for Linux hides the structure of a Quicktime movie and gives the programmer a set of audio and video streams with some compression ability. The audio tracks are sequential streams of PCM audio data and video tracks are a sequential streams of frames.

Before you drop your classes and write up your dream program on this be aware of some limitations. This library doesn't give you the official Quicktime API. It uses an ANSI C API. This library doesn't include any commercial codecs or compressed header support. This library only reads uncompressed headers.

What you can do is create and read any Quicktime movie using certain compression formats. You can still access raw data if you want to write your own compression routines.

Quicktime for Linux doesn't officially use plugins to achieve functionality although there is some unfinished code for handling plugins. The philosophy behind this is that users can easily access the complete library and source code over the internet and the library is always updated more frequently than the codecs. Plugins are more convenient when the library is only available on hard media or requires upgrade licenses for every download, which it doesn't.

Contents

License

Step 1: Building the library

Opening a file

Reading a file

Decoding Video
Reading raw video
Reading keyframes
Reading raw audio

Positioning in a file

Writing a file

Encoding Video
Encoding Audio
Writing raw video
Writing keyframes
Writing raw audio
Information about specific codecs

Integrated firewire and DV support

Using the utilities