prevent popup deactivation while button_down
[goodguy/history.git] / cinelerra-5.0 / libzmpeg3 / a52dec-0.7.3 / README
1
2
3 ABOUT LIBA52
4
5 liba52 is a free library for decoding ATSC A/52 streams. It is
6 released under the terms of the GPL license. The A/52 standard is used
7 in a variety of applications, including digital television and DVD. It
8 is also known as AC-3.
9
10 The main goals in liba52 development are:
11
12       * Portability - Currently all of the code is written in C, and
13         when we write platform-specific optimizations we will always
14         keep a generic C routine to fall back on.
15
16       * Reuseability - we do not want liba52 to include any
17         project-specific code, but it should still include enough
18         features to be used by very diverse projects.
19
20       * Precision - We are trying to implement all of the A/52
21         standard, and to have a very precise output by doing all the
22         calculations in floating point. We have a test suite that
23         detects any deviation in the output when compared to previous
24         versions. We do not have access to official A/52 test vectors
25         though, so we have to use our judgement to ensure that such
26         deviations are only intruduced when we fix bugs !
27
28       * Speed - liba52 is really fast, on any modern PC it should take
29         only a few percent of CPU time.
30
31 The project homepage is at http://liba52.sourceforge.net/
32
33
34 A52DEC
35
36 a52dec is a test program for liba52. It decodes ATSC A/52 streams, and
37 also includes a demultiplexer for mpeg-1 and mpeg-2 program streams.
38
39 The liba52 source code is always distributed in the a52dec package, to
40 make sure it easier for people to test it.
41
42 The basic usage is to just type "a52dec file" where file is an ATSC
43 A/52 file.
44
45 The "-s" option must be used for multiplexed (audio and video) mpeg-2
46 files. These files are usualy found on the internet or on unencrypted
47 DVDs.
48
49 The "-o" option is used to select a given output layer. By default
50 a52dec does a stereo downmix and outputs to your speakers, but you can
51 try other choices using this option. This is also used for performance
52 testing and conformance testing.
53
54 The "-c" option is used to disable all optimizations (currently only djbfft).
55
56 The "-r" option is used to disable the dynamic range compression.
57
58
59 OTHER PROJECTS USING LIBA52
60
61 liba52 (and its ancestor libac3) is being used by various other
62 projects, including:
63
64       * xine (http://xine.sourceforge.net/) - started as a simple
65         mpeg-2 audio and video decoder, but it since became a
66         full-featured DVD and video media player.
67
68       * MPlayer (http://www.MPlayerHQ.hu) - another good player, it is
69         also very robust against damaged streams.
70
71       * movietime (http://movietime.sourceforge.net/) - still quite
72         young, but it looks very promising !
73
74       * ffmpeg (http://ffmpeg.sourceforge.net/) - a nice audio/video
75         encoder and transcoder, uses liba52 for decoding A/52 streams.
76
77       * Ogle (http://www.dtek.chalmers.se/groups/dvd/) - a good DVD
78         player with menu support
79
80       * OMS (http://www.linuxvideo.org/oms/)
81
82       * XMPS (http://xmps.sourceforge.net/)
83
84       * GStreamer (http://www.gstreamer.net/) - a framework for
85         streaming media; it has an A/52 decoding plugin based on liba52.
86
87       * mpeglib (http://mpeglib.sourceforge.net/) - a video decoding
88         library that usess liba52 when decoding A/52 streams.
89
90 If you use liba52 in another project, let us know !
91
92 VideoLAN (http://www.videolan.org/) does not use liba52, but this is
93 still a cool project :)
94
95
96 TASKS
97
98 There are several places where we could easily use some help:
99
100       * Web design: This site sucks ! at the very least, we'd like to
101         come up with a nicer background picture and a logo.
102
103       * Testing: If you find any stream that does not decode right
104         with liba52, let us know ! The best thing would be to mail to
105         the liba52-devel mailing list. Also if you have access to
106         encoders, we'd love to get test streams that would be free of
107         rights - so that we can put them on this server.
108
109       * Coding: you can have a look in the TODO file first ! The most
110         important item is probably to make the code fully reentrant.
111
112       * Porting: If you're porting to a new architecture, you might
113         want to experiment with the compile flags defined in
114         configure.in . When you figure out whats fastest on your
115         platform, send us a patch !
116
117
118 REFERENCES
119
120 The A/52 standard is publically available at these locations:
121
122       * http://www.atsc.org/standards/a_52a.pdf - The main part of the
123         standard, as published by the ATSC.
124
125       * http://www.dolby.com/tech/ATSC_err.pdf - A list of erratas in
126         the ATSC standard, published by Dolby. It applies to the
127         previous revision of the standard (A/52 not A/52a), but some
128         erratas have not been fixed in the updated standard yet !
129
130
131 CVS SNAPSHOTS
132
133 A daily snapshot is created using "make distcheck" every night and
134 uploaded to http://liba52.sourceforge.net/files/a52dec-snapshot.tar.gz .
135 It is easier to use than the CVS repository, because you do not need
136 to have the right versions of automake, autoconf and libtool
137 installed. It might be convenient when working on a liba52 port for
138 example.
139
140
141 CVS REPOSITORY
142
143 The latest liba52 and a52dec source code can always be found by
144 anonymous CVS:
145
146 # export CVSROOT=:pserver:anonymous@cvs.liba52.sourceforge.net:/cvsroot/liba52
147 # cvs login (Just press Return when prompted for a password)
148 # cvs checkout a52dec
149
150 You can also browse the latest changes online at
151 http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/liba52/a52dec/
152
153 The other CVS modules are ac3dec-livid for the CVS history of the
154 project while it was still hosted on the linuxvideo.org servers, and
155 ac3dec for the CVS history of the project while the linuxvideo.org
156 servers were down and before the library switched its name to liba52.
157
158
159 MAILING LISTS
160
161 See the subscription information at http://liba52.sourceforge.net/lists.html
162
163 liba52-devel
164
165 This is the main mailing list for technical discussion about
166 liba52. Anyone wanting to work on liba52, or maybe just stay informed
167 about the development process, should probably subscribe to this list.
168
169 liba52-checkins
170
171 All liba52 checkins are announced there. This is a good way to keep
172 track of what goes into CVS.
173
174 liba52-announce
175
176 This is a very low traffic mailing list, only for announcements of new
177 versions of liba52. Only project administrators can post there.