File: qt4l_codecs.html

package info (click to toggle)
libquicktime 2%3A1.2.4-17
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 6,832 kB
  • sloc: ansic: 55,312; sh: 10,976; makefile: 473; sed: 16
file content (117 lines) | stat: -rw-r--r-- 3,302 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
<TITLE>Quicktime for Linux</TITLE>

<H1>Codec information</H1>

The following concerns all the codecs built into the library.<P>


<H1>DIVX</H1>

This encodes video in MPEG-4 using the OpenDivx codec.  This is the
preferred compressed format although it probably won't be supported by
Microsoft or Apple any time soon.  It takes the following
parameters:<P>


<CODE>
divx_bitrate (int)<BR>
divx_rc_period (int)<BR>
divx_rc_reaction_ratio (int)<BR>
divx_rc_reaction_period (int)<BR>
divx_max_key_interval (int)<BR>
divx_max_quantizer (int)<BR>
divx_min_quantizer (int)<BR>
divx_quantizer (int)<BR>
divx_quality (int)<BR>
divx_fix_bitrate (int)<BR>
</CODE><P>


<H1>DV</H1>

DV is supported for full decoding but only for black and white encoding
on IA-32 platforms/architectures.  Secondly, only NTSC 25 Mbit/sec
4:1:1 DV data has ever been tested.  There are two derivatives of DV:
<B>DVC</B> and <B>DVCP</B>.  Only DVC is currently supported.<P>

<H1>IMA4</H1>

The IMA4 compressor reduces 16 bit audio data to 1/4 size, with very
good quality.  For many years IMA4 was the best compressed audio format
in Quicktime.  The first Starwars trailer in 1998 was encoded using
IMA4 audio.<P>

<H1>JPEG</H1>

JPEG is preferred for compressed video.  This format writes a seperate
JPEG photo for every frame in YUV 4:2:0.<P>

JPEG supports the following parameters, which can be set after
quicktime_set_video.<P>

<CODE>
jpeg_quality  (int)<BR>
jpeg_usefloat (int)<BR>
</CODE><P>

These takes a quality factor from 1 - 100 and a booleen flag to
determine whether floating point operations should be used to slow it
down.<P>

<H1>MJPA</H1>

MJPA stores each frame as two JPEGs interlaced and in YUV 4:2:2.  The
real advantage is that it can split compression and decompression
across 2 processors and it supports higher color sampling than JPEG
Photo.  To enable dualized MJPA processing call:<P>

<CODE>
quicktime_set_cpus(quicktime_t *file, int cpus);<P>
</CODE>

immediately after the <B>quicktime_init</B> call.  Cpus should contain
the number of CPUs to devote to compression.<P>

After specifying MJPA in quicktime_set_video you need to call
<B>quicktime_set_jpeg</B> as described previously.<P>

<H1>PNG</H1>

This consists of one PNG image for every frame.  Like <B>RAW</B> this
codec supports 32 bit depths.<P>

<H1>RAW</H1>

RAW identifies both a video and an audio codec.  When you specify RAW
for an <B>audio</B> track you invoke unsigned 8 bit encoding so you'll probably
never use it.<P>

When you specify RAW for a <B>video</B> track you get RGB packed
frames.  RAW video supports alpha channels.  To get RGBA packed frames
you can then issue <P>

<CODE>
int quicktime_set_depth(quicktime_t *file, int depth, int track);
</CODE><P>

specifying a depth of 32.<P>

<H1>TWOS</H1>

Twos is the preferred encoding for uncompressed audio.  It stores 8,
16, and 24 bit audio, interleaved for multiple channels.  The 8 bit
mode is signed.  The 16 and 24 bit modes are big endian signed.

<H1>Vorbis</H1>

This is the preferred encoding for compressed audio although it
probably won't be supported by Microsoft or Apple any time soon.  It
takes the following parameters:<P>

<CODE>
vorbis_bitrate (int)<BR>
vorbis_max_bitrate (int)<BR>
vorbis_min_bitrate (int)<BR>
</CODE><P>

Units are bits per second.