                           mpg123 0.58/dos beta 3 readme

This is a dos-port made by Tuomas Leikola, tobo@sci.fi.
Beta testing phase, so don't panic if it won't work. It propably will.
Some day.
please, if you make any modifications of bugfixes, share it with me :)

New versions available every now and then at http://www.sci.fi/~tobo/mpg123
...
currently supporting only sb16 compatibles. GUS will come.

ok the port code is messy, and many of the unix-related features
I removed could be done. You're welcome to do so. I am not paid
for doing this. I don't even care about the fame. I just needed something
to play my MP3gs in dos. That is what is happening now.

SB support is a lame hack. I know that.

GUS support has a funny problem. the DMA never starts. anyone care to tell
what could be the problem? (FYI: PIO is shit slow)

Buffering for the SB will come out some day. Or maybe not.

Hey i want something like this unix "diff" program.

Begin & end not handled properly.

Actually, a lot of things not handled properly.

No exit. (Ctrl-break)

About anything else, read on:
Original mpg123 "readme":
------------8<-------------------8<---------------------8<------------------

**********************************************************************
* MPEG 1.0 _AUDIO_ PLAYER, V0.58                                     * 
* (full?) MPEG 1.0, Layer 1,2 and 3 support                          *
* Layer-3 realtime only with a 'fast' machine (e.g Sparc10)          *
* Since 29.3.96 128kbit j-stereo on an amd 5x86-P75 (133Mhz), too ;) *
* Layer 1,2 stereo or Layer 3 with one channel seems to be           *
* possible in realtime on a i486dx4-100                              *
**********************************************************************

Please read first the important information in the COPYING file.

written/modfied by:
   Michael Hipp (email: Michael.Hipp@student.uni-tuebingen.de)
   Philipp Knirsch (email: phil@mpik-tueb.mpg.de)
     -> still using an idea (the 'manual unroll') from Phil, though
        his original code was replaced by a slightly faster code.

Uses code (or at least ideas) from:
  MPEG Software Simulation Group (Base package)
  Tobias Bading (subband synthesis)
  Jeff Tsay (DCT36)
  Philipp Knirsch (DCT36/manual unroll)
  Thomas Woerner (SGI Audio)
  Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de> 
    (several enhancements, man pages, Makefile, FreeBSD port,License )

current original distribution site is:
  http://www.sfs.nphil.uni-tuebingen.de/~hipp/mpg123.html

here's Oliver Fromme's mpg123 page:
  http://www.heim3.tu-clausthal.de/~olli/mpg123/
  (includes information about the mpg123 mailing list)

V0.58 plays a layer3,112Kbit/s,J-Stereo stream on my AMD 5x86/133Mhz
with about 73% CPU load.
If your machine isn't fast enough you may try the downsampling
feature (-2to1 and -4to1 options)
Playing in 'singlemix' (stero reduced to mono) also saves some
CPU cycles, though the whole code is optimized for 'full' stereo playing. 

'Benchmarks': (+/- 2%)
----------------------
(AMD 5x86/133MHZ,ASUS SP3G,256KB cache,DIRTY-TAG installed,(BusLogic SCSI))
(Layer3, 112Kbit/s, J-Stereo stream)
(Compiled with: -DI386_ASSEM -DREAL_IS_FLOAT -DLINUX -Wall -O2 -m486
   -fomit-frame-pointer -funroll-all-loops -finline-functions -ffast-math)

  full quality:     (stero)     72%
                    (singlemix) 42% (-> should work on 486DX66)
  2:1 downsampling: (stereo)    59%
                    (singlemix) 35% (-> should work on 486DX50)

---------------------------------------------------------------------
Description:

This isn't a new player. It's a near fully rewritten version based on the
mpegaudio (FHG-version) package. The DCT algorithm in the
synthesis filter is a rewritten version of the DCT first seen in the maplay
package, which was written by Tobias Bading (bading@cs.tu-berlin.de). The 
rewrite was neccassary, because the GPL may not allow this copyright mix.
The mpegaudio package was written by various people from the MPEG/audio
software simulation group. The maplay is under GPL .. You can find the
original sourcecode and the mpegaudio package on: ftp.tnt.uni-hannover.de.

You will find code from the mpegaudio package in:
   layer3.c
   common.c
   mpg123.h
   mpg123.c
I also often used the same variable names in the rewritten parts.

In the current layer3.c I'm using a DCT36 from Jeff Tsay's 
(ctsay@pasteur.eecs.berkeley.edu) maplay 1.2+ package. His code is
under GPL .. 

The output is always 'two channel interleaved'. If the input is a
a mono-stream or single-channel is enabled, the player duplicates
the channel. Currently, only (very simple) audiosupport for
Linux,HP7xx,SGI and SunOS/Solaris,FreeBSD systems.
I have tested the program with a lot of teststreams, but it's very 
likely, that there are still a few bugs.

have fun,
           Mike

----------------------------------------------------------------------------

Just for info:
    I'm also working on a DSP port for this package.
    A first testversion of the layer-2 part is finished and seems
    to work in realtime with my 20MHZ ADSP-2115 

----------------------------------------------------------------------------

Copyrights (c) 1995,1996,1997 of all changes/modifications and
of the new code by Michael Hipp. All rights reserved.
See the packages 'maplay 1.2(+)' and 'mpegaudio' for their copy-policies.

known bugs:
  layer 3 i-stereo not heavily tested
   btw: I'm looking for i-stereo teststreams .. maybe you could send me a few
  Layer 1 not heavily tested
  no CRC checking ..
  no 'free format streams'
  no clean audio interface
  no MPEG 2.0 support


******************************************************************************
*
* This is software with ABSOLUTELY NO WARRANTY.
* Use it at your OWN RISK. It's possible to damage e.g. hardware or your hearing
* due to a bug or for other reasons. 
*
* I do not warrant that the program is free of infringement of any third-party
* patents.
*
******************************************************************************

----------8<----------------------8<-------------------8<----------------------


