# 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

Using the utilities