summaryrefslogtreecommitdiff
path: root/lib/rbcodec/codecs/liba52/README
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rbcodec/codecs/liba52/README')
-rw-r--r--lib/rbcodec/codecs/liba52/README180
1 files changed, 180 insertions, 0 deletions
diff --git a/lib/rbcodec/codecs/liba52/README b/lib/rbcodec/codecs/liba52/README
new file mode 100644
index 0000000000..eb6c64df84
--- /dev/null
+++ b/lib/rbcodec/codecs/liba52/README
@@ -0,0 +1,180 @@
1
2
3ABOUT LIBA52
4
5liba52 is a free library for decoding ATSC A/52 streams. It is
6released under the terms of the GPL license. The A/52 standard is used
7in a variety of applications, including digital television and DVD. It
8is also known as AC-3.
9
10The 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
31The project homepage is at http://liba52.sourceforge.net/
32
33
34A52DEC
35
36a52dec is a test program for liba52. It decodes ATSC A/52 streams, and
37also includes a demultiplexer for mpeg-1 and mpeg-2 program streams.
38
39The liba52 source code is always distributed in the a52dec package, to
40make sure it easier for people to test it.
41
42The basic usage is to just type "a52dec file" where file is an ATSC
43A/52 file.
44
45The "-s" option must be used for multiplexed (audio and video) mpeg-2
46files. These files are usualy found on the internet or on unencrypted
47DVDs.
48
49The "-o" option is used to select a given output layer. By default
50a52dec does a stereo downmix and outputs to your speakers, but you can
51try other choices using this option. This is also used for performance
52testing and conformance testing.
53
54The "-c" option is used to disable all optimizations (currently only djbfft).
55
56The "-r" option is used to disable the dynamic range compression.
57
58
59OTHER PROJECTS USING LIBA52
60
61liba52 (and its ancestor libac3) is being used by various other
62projects, 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 * VideoLAN (http://www.videolan.org/) - video streaming over an
69 ethernet network, can also be used as a standalone player.
70
71 * MPlayer (http://www.MPlayerHQ.hu) - another good player, it is
72 also very robust against damaged streams.
73
74 * movietime (http://movietime.sourceforge.net/) - still quite
75 young, but it looks very promising !
76
77 * ffmpeg (http://ffmpeg.sourceforge.net/) - a nice audio/video
78 encoder and transcoder, uses liba52 for decoding A/52 streams.
79
80 * Ogle (http://www.dtek.chalmers.se/groups/dvd/) - a good DVD
81 player with menu support
82
83 * a52decX (http://homepage1.nifty.com/~toku/software_en.html) -
84 a graphical interface for a52dec in macintosh osX.
85
86 * TCVP (http://tcvp.sf.net) - video and music player for unix.
87
88 * bd4go (http://denisx.dyndns.org/bd4go/) - another graphical
89 interface for macintosh osX.
90
91 * drip (http://drip.sourceforge.net/) - a DVD to DIVX transcoder.
92
93 * OMS (http://www.linuxvideo.org/oms/)
94
95 * XMPS (http://xmps.sourceforge.net/)
96
97 * GStreamer (http://www.gstreamer.net/) - a framework for
98 streaming media; it has an A/52 decoding plugin based on liba52.
99
100 * mpeglib (http://mpeglib.sourceforge.net/) - a video decoding
101 library that usess liba52 when decoding A/52 streams.
102
103If you use liba52 in another project, let us know !
104
105
106TASKS
107
108There are several places where we could easily use some help:
109
110 * Web design: This site sucks ! at the very least, we'd like to
111 come up with a nicer background picture and a logo.
112
113 * Testing: If you find any stream that does not decode right
114 with liba52, let us know ! The best thing would be to mail to
115 the liba52-devel mailing list. Also if you have access to
116 encoders, we'd love to get test streams that would be free of
117 rights - so that we can put them on this server.
118
119 * Coding: you can have a look in the TODO file first ! The most
120 important item is probably to make the code fully reentrant.
121
122 * Porting: If you're porting to a new architecture, you might
123 want to experiment with the compile flags defined in
124 configure.in . When you figure out whats fastest on your
125 platform, send us a patch !
126
127
128REFERENCES
129
130The A/52 standard, as published by the ATSC, is available at
131http://www.atsc.org/standards/a_52a.pdf
132
133
134CVS SNAPSHOTS
135
136A daily snapshot is created using "make distcheck" every night and
137uploaded to http://liba52.sourceforge.net/files/a52dec-snapshot.tar.gz .
138It is easier to use than the CVS repository, because you do not need
139to have the right versions of automake, autoconf and libtool
140installed. It might be convenient when working on a liba52 port for
141example.
142
143
144CVS REPOSITORY
145
146The latest liba52 and a52dec source code can always be found by
147anonymous CVS:
148
149# export CVSROOT=:pserver:anonymous@cvs.liba52.sourceforge.net:/cvsroot/liba52
150# cvs login (Just press Return when prompted for a password)
151# cvs checkout a52dec
152
153You can also browse the latest changes online at
154http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/liba52/a52dec/
155
156The other CVS modules are ac3dec-livid for the CVS history of the
157project while it was still hosted on the linuxvideo.org servers, and
158ac3dec for the CVS history of the project while the linuxvideo.org
159servers were down and before the library switched its name to liba52.
160
161
162MAILING LISTS
163
164See the subscription information at http://liba52.sourceforge.net/lists.html
165
166liba52-devel
167
168This is the main mailing list for technical discussion about
169liba52. Anyone wanting to work on liba52, or maybe just stay informed
170about the development process, should probably subscribe to this list.
171
172liba52-checkins
173
174All liba52 checkins are announced there. This is a good way to keep
175track of what goes into CVS.
176
177liba52-announce
178
179This is a very low traffic mailing list, only for announcements of new
180versions of liba52. Only project administrators can post there.