diff src/mpg123/README @ 12:3da1b8942b8b trunk

[svn] - remove src/Input src/Output src/Effect src/General src/Visualization src/Container
author nenolod
date Mon, 18 Sep 2006 03:14:20 -0700
parents src/Input/mpg123/README@13389e613d67
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mpg123/README	Mon Sep 18 03:14:20 2006 -0700
@@ -0,0 +1,67 @@
+libmpgdec - version 1.1
+=======================
+
+Copyright (c) 2005 - 2006 William Pitcock <nenolod@nenolod.net>
+Portions copyright (c) 2001 Rafal Bosak <gyver@fanthom.irc.pl>
+Portions copyright (c) 1999 Michael Hipp
+
+What is libmpgdec?
+==================
+
+libmpgdec is a fully compliant ISO MPEG 1/2 Layer 1/2/3 decoder,
+which shares no code with the `dist10' package. Instead, libmpgdec
+is an extensively refactored version of the mpg123 sources included
+with XMMS, which were released under the GPL.
+
+Due to the fact that the mpg123 source in XMMS were incomplete, several
+components have been recreated and enhanced, including the synthesis
+algorithms.
+
+Unlike it's predecessor, libmpgdec performs band-limited synthesis in order
+to try to correct many of the shortcomings of the MPEG format. Also unlike
+it's predecessor, useless assembly-based routines have been removed.
+
+Additionally, libmpgdec 1.1 includes new psychoaccoustic modeling routines
+to try to enhance listening experience.
+
+libmpgdec 1.1 is the first "public" release, i.e. a release seperate from
+Audacious with extra portability components added to improve adaptability
+in other players and encoders/decoders. Versions of Audacious after 1.1
+will use this library package instead of using a statically linked decoder.
+
+How do I compile libmpgdec?
+===========================
+
+./configure
+make
+make install
+
+libmpgdec makes use of Autotools, and requires Glib 2.x.
+
+Why does an MP3 decoder library require Glib?
+=============================================
+
+Simple. Glib lets us conveniently do things we would be able to not as cleanly
+do otherwise.
+
+How do I program with libmpgdec?
+================================
+
+libmpgdec typically uses it's own thread for decoding. This is usually not a
+major issue; however if it is, a lowlevel API (mainly undocumented) is provided
+to allow for the implementation of custom event loops.
+
+libmpgdec and patents
+=====================
+
+While I believe libmpgdec is not patent encumbered by the Huffman patents
+(Thomson), and that it is not encumbered by any of the Fraunhofer or
+Coding Technologies patents, I do not happen to be a patent lawyer, so
+I cannot tell you for sure. I do however, know that the patents (in theory)
+only cover linear synthesis-based decoding, and that libmpgdec uses
+adaptive decoding. You can draw your own conclusions, there.
+
+That said, if you are using libmpgdec in a commercial application, it may
+be wise for you to go ahead and get patent licences from Fraunhofer.
+
+  -- William Pitcock <nenolod@nenolod.net>, May 30 2006