diff options
author | Alexey Yakovenko <wakeroid@gmail.com> | 2010-06-08 22:00:06 +0200 |
---|---|---|
committer | Alexey Yakovenko <wakeroid@gmail.com> | 2010-06-08 22:00:06 +0200 |
commit | d11a3e9505338513f1aed652a1d5fb3aed7dd119 (patch) | |
tree | 75fe0bfe4ac6a13563b1f03b274717d77c7487fb /plugins/dca/README | |
parent | 32144fc445c968da9524352dec35740eefa89820 (diff) |
dts decoder using libdca
Diffstat (limited to 'plugins/dca/README')
-rw-r--r-- | plugins/dca/README | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/plugins/dca/README b/plugins/dca/README new file mode 100644 index 00000000..ac84e8ac --- /dev/null +++ b/plugins/dca/README @@ -0,0 +1,170 @@ +About libdca +------------ + +libdca is a free library for decoding DTS Coherent Acoustics streams. It is +released under the terms of the GPL license. The DTS Coherent Acoustics +standard is used in a variety of applications, including DVD, DTS audio CD and +radio broadcasting. + +The main goals in libdts development are: + + * Portability - currently all of the code is written in C, and + when we write platform-specific optimizations we will always + keep a generic C routine to fall back on. + + * Reuseability - we do not want libdts to include any + project-specific code, but it should still include enough + features to be used by very diverse projects. + + * Precision - we do not yet fully support all the core specification of + the DTS Coherent Acoustics standard (see TODO) so do not expect too + much of this library for now. + + * Speed - current code is not optimised at all. + +The project homepage is at http://www.videolan.org/developers/libdca.html + + +dcadec +------ + +dcadec is a test program for libdca. It decodes DTS Coherent Acoustics streams, +and also includes a demultiplexer for mpeg-1 and mpeg-2 program streams. + +The libdca source code is always distributed in the dcadec package, to +make sure it easier for people to test it. + +The basic usage is to just type "dcadec file" where file is a DTS Coherent +Acoustics file. + +The "-s" option must be used for multiplexed (audio and video) mpeg-2 +files. These files are usualy found on the internet or on unencrypted +DVDs. + +The "-o" option is used to select a given output layer. By default +dcadec does a stereo downmix and outputs to your speakers, but you can +try other choices using this option. This is also used for performance +testing and conformance testing. + +The "-r" option is used to disable the dynamic range compression. + + +Other projects using libdts +--------------------------- + +right now libdts is only being used by VLC media player +(http://www.videolan.org/) a cross-platform video player and streaming +solution. + +If you use libdts in another project, let us know ! + + +Tasks +----- + +There are several places where we could easily use some help: + + * Testing: If you find any stream that does not decode right + with libdts, let us know ! The best thing would be to mail to + the libdts-devel mailing list. Also if you have access to + encoders, we'd love to get test streams that would be free of + rights - so that we can put them on this server. + + * Coding: you can have a look in the TODO file first ! The most + important items are probably to finish implementing the full + specification and to make sure of the accuracy of the audio output. + + * Porting: If you're porting to a new architecture, you might + want to experiment with the compile flags defined in + configure.in . When you figure out whats fastest on your + platform, send us a patch ! + + +References +---------- + +The DTS Coherent Acoustics standard (ETSI 102 114 v1.2.1), as published by the +ETSI, is available at http://pda.etsi.org/pda/queryform.asp (look for DTS +Coherent Acoustics) + + +SVN repository +-------------- + +The latest libdca and dcadec source code can always be found by anonymous +SVN repository: + +# svn co svn://svn.videolan.org/libdca/trunk libdca-trunk + +If you build libdts from SVN you'll have to run ./bootstrap first. + + +Support / mailing-lists +----------------------- + +See the support information at http://www.videolan.org/support/ + +libdts-devel + +This is the main mailing list for technical discussion about +libdts. Anyone wanting to work on libdts, or maybe just stay informed +about the development process, should probably subscribe to this list. + + +Unix build instructions +----------------------- + +./configure +make +make install + + +Building for win32 +------------------ + +There are at least three ways to do it: + +- natively on Windows using Microsoft VC++ and the vc++ project + included in this distribution. + +- natively on Windows using MSYS + MINGW (www.mingw.org) (MSYS is a + minimal build environnement to compile unixish projects under + windows. It provides all the common unix tools like sh, gmake...) + +- or on Linux, using the mingw32 cross-compiler + + +Building using MSYS + MINGW on windows +-------------------------------------- + +First you will need to download and install the latest MSYS (version +1.0.7 as of now) and MINGW. The installation is really easy. Begin +with the MSYS auto-installer and once this is done, extract MINGW into +c:\msys\1.0\mingw. You also have to remember to remove the make +utility included with MINGW as it conflicts with the one from MSYS +(just rename or remove c:\msys\1.0\mingw\bin\make.exe). + +http://prdownloads.sourceforge.net/mingw/MSYS-1.0.7-i686-2002.04.24-1.exe +http://prdownloads.sourceforge.net/mingw/MinGW-1.1.tar.gz + +Then you can build the package using: +# ./configure +# make + + +Building using the mingw32 cross-compiler +----------------------------------------- + +You need to install mingw32 first. For Debian GNU/Linux users, there +is a mingw32 package. Otherwise you might get it from the mingw site +at http://www.mingw.org/download.shtml. + +The videolan project also keeps precompiled mingw32 binaries at +http://www.videolan.org/vlc/windows.html . If you install these, +you'll have to set your PATH accordingly to include +/usr/local/cross-tools/bin too. + +The build should then proceed using something like: +# CC=i586-mingw32msvc-gcc ./configure --host=i586-mingw32msvc +# make + |