Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
2 | pj | 1 | ********************************************************************** |
2 | * MPEG 1.0/2.0 _AUDIO_ PLAYER, V0.59k * |
||
3 | * * |
||
4 | * (full?) MPEG 1.0/2.0, Layer 1,2 and 3 support * |
||
5 | * Layer-3 realtime only with a 'fast' machine * |
||
6 | * Since April 97, 128kbit j-stereo should work on a 486DX4-100. * |
||
7 | * With 2:1 down-sampling or using the downmix-mode even a 486DX2-66 * |
||
8 | * should play such a stream in realtime! * |
||
9 | * * |
||
10 | * I still claim to have the fastest MPEG Audio Player for UNIX ;) * |
||
11 | ********************************************************************** |
||
12 | |||
13 | Please read first the important information in the COPYING file. |
||
14 | |||
15 | written/modfied by: |
||
16 | Michael Hipp (email: Michael.Hipp@student.uni-tuebingen.de) |
||
17 | Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de> |
||
18 | (several enhancements, man pages, Makefile, FreeBSD port, License, etc.) |
||
19 | |||
20 | Uses code (or at least ideas) from: |
||
21 | MPEG Software Simulation Group (Base package) |
||
22 | Tobias Bading (subband synthesis) |
||
23 | Jeff Tsay and Mikko Tommila (DCT36) |
||
24 | Philipp Knirsch (DCT36/manual unroll) |
||
25 | Thomas Woerner (SGI Audio) |
||
26 | Damien Clermonte (HP-UX audio fixes) |
||
27 | Niclas Lindstrom (OS2 port) |
||
28 | and more .... |
||
29 | |||
30 | current original distribution site is: |
||
31 | http://www.sfs.nphil.uni-tuebingen.de/~hipp/mpg123.html |
||
32 | |||
33 | here's Oliver Fromme's mpg123 page: |
||
34 | http://www.heim3.tu-clausthal.de/~olli/mpg123/ |
||
35 | (includes information about the mpg123 mailing list) |
||
36 | |||
37 | and you can get the latest release from here: |
||
38 | ftp.tu-clausthal.de:/pub/unix/audio/mpg123 |
||
39 | http://ftp.tu-clausthal.de/pub/unix/audio/mpg123 |
||
40 | |||
41 | ------------------------------------------------------------------------ |
||
42 | |||
43 | V0.59k plays a layer3,112Kbit/s,J-Stereo stream on my AMD 5x86/133Mhz |
||
44 | with about 66% CPU load. (on the console, NO X11) |
||
45 | If your machine isn't fast enough you may try the downsampling |
||
46 | feature (--2to1 and --4to1 options) |
||
47 | Playing in '--singlemix' (stero reduced to mono) also saves some |
||
48 | CPU cycles, though the whole code is optimized for 'full' stereo playing. |
||
49 | |||
50 | 'Benchmarks': (+/- 2%) |
||
51 | ---------------------- |
||
52 | (AMD 486/133MHZ,ASUS SP3G,256KB cache,DIRTY-TAG installed,(BusLogic SCSI)) |
||
53 | (Layer3, 112Kbit/s, Joint-Stereo stream (partially MS stereo, no I-stereo)) |
||
54 | (Compiled with: -DI386_ASSEM -DREAL_IS_FLOAT -DLINUX -Wall -O2 -m486 |
||
55 | -fomit-frame-pointer -funroll-all-loops -finline-functions -ffast-math) |
||
56 | |||
57 | full quality: (stero) 66% (-> should work on 486DX4-100) |
||
58 | (singlemix) 38% (-> should work on 486DX2-66) |
||
59 | 2:1 downsampling: (stereo) 48% |
||
60 | (singlemix) 30% (-> should work on 486DX-50) |
||
61 | |||
62 | --------------------------------------------------------------------- |
||
63 | Description: |
||
64 | |||
65 | This isn't a new player. It's a near fully rewritten version based on the |
||
66 | mpegaudio (FHG-version) package. The DCT algorithm in the |
||
67 | synthesis filter is a rewritten version of the DCT first seen in the maplay |
||
68 | package, which was written by Tobias Bading (bading@cs.tu-berlin.de). The |
||
69 | rewrite was neccassary, because the GPL may not allow this copyright mix. |
||
70 | The mpegaudio package was written by various people from the MPEG/audio |
||
71 | software simulation group. The maplay is under GPL .. You can find the |
||
72 | original source code and the mpegaudio package on: ftp.tnt.uni-hannover.de. |
||
73 | |||
74 | You will find code from the mpegaudio package in: |
||
75 | layer3.c |
||
76 | common.c |
||
77 | mpg123.h |
||
78 | I also often used the same variable names in the rewritten parts. |
||
79 | |||
80 | In the current layer3.c I'm using a DCT36 from Jeff Tsay's |
||
81 | (ctsay@pasteur.eecs.berkeley.edu) maplay 1.2+ package. His code is |
||
82 | under GPL .. I also tried the enhancement from Mikko Tommila. His |
||
83 | code is also in layer3.c (but it's disabled at the moment, because |
||
84 | it was slightly slower than the unrolled 9 point DCT (at least on |
||
85 | _my_ system)). Theoretically it should be faster. You may try it on |
||
86 | your system. |
||
87 | |||
88 | The output is always 'two channel interleaved'. If the input is a |
||
89 | a mono-stream or single-channel is enabled, the player duplicates |
||
90 | the channel. Currently, only (very simple) audiosupport for |
||
91 | Linux,HP7xx,SGI,SunOS/Solaris and FreeBSD systems. |
||
92 | I have tested the program with a lot of teststreams, but it's very |
||
93 | likely, that there are still a few bugs. |
||
94 | |||
95 | have fun, |
||
96 | Mike |
||
97 | |||
98 | ---------------------------------------------------------------------------- |
||
99 | |||
100 | Just for info: |
||
101 | I'm also working (but not at the moment) on a DSP port for this package. |
||
102 | A first testversion of the layer-2 part is finished and seems |
||
103 | to work in realtime with my 20MHZ ADSP-2115 |
||
104 | |||
105 | ---------------------------------------------------------------------------- |
||
106 | |||
107 | Copyrights (c) 1995,1996,1997 of all changes/modifications and |
||
108 | of the new code by Michael Hipp. All rights reserved. |
||
109 | Copyrights (c) 1997 of several enhancements by Oliver Fromme. |
||
110 | See the packages 'maplay 1.2(+)' and 'mpegaudio' for their copy-policies. |
||
111 | Copyrights (c) 1997 of the OS2 specific parts by Niclas Lindstrom |
||
112 | |||
113 | known bugs: |
||
114 | layer 3 i-stereo not heavily tested |
||
115 | btw: I'm looking for i-stereo teststreams .. maybe you could send me a few |
||
116 | Layer 1 not heavily tested |
||
117 | no CRC checking .. |
||
118 | no 'free format streams' |
||
119 | no clean audio interface |
||
120 | MPEG 2.0, Layer1 and Layer2 not tested (and probably will not work) |
||
121 | MPEG 2.0, Layer3 not heavily tested .. may has bugs. |
||
122 | |||
123 | |||
124 | ****************************************************************************** |
||
125 | * |
||
126 | * This is software with ABSOLUTELY NO WARRANTY. |
||
127 | * Use it at your OWN RISK. It's possible to damage e.g. hardware or your hearing |
||
128 | * due to a bug or for other reasons. |
||
129 | * |
||
130 | * I do not warrant that the program is free of infringement of any third-party |
||
131 | * patents. |
||
132 | * |
||
133 | ****************************************************************************** |
||
134 |