
   
   
   PM123 User's Manual
     _________________________________________________________________
   
     Contents--> 
       
     Welcome to PM123! 
     
      PM123 User Interface
       
         Main menu

         Playlist menu

         Properties

         ID3 tag editor

         Sound visualization plugin

         Graphical sound equalizer

         Playlist Manager

         Commandline parameters
   
   Skin Utility and WinAmp skins 
   
   Troubleshooting 
   
   How to create your own MP3s (MP3 encoders) 
   
   Remote control 
   
   Registration and support 
   
   Copyright, credits and greetings 
   
   Welcome to PM123!
     _________________________________________________________________
   
   Hello and welcome to the wonderful world of digital music on OS/2.
   First we must congratulate you for choosing the best MPEG-audio player
   available for OS/2! PM123 has been in development since beginning of
   1997 and has become the most advanced player on OS/2. Some of you may
   have used the earlier betas of PM123 and for your convienence, here
   are the new features in this release:
     * New skin options, allowing PM123 to be modified to just about
       anything. Also support for WinAmp skins are included.
     * Graphical equalizer, including pre-amplification and band mute.
     * Support for plugins, a spectrum analyzer and oscilloscope plugin
       is provided.
     * Playlist Manager for users, allowing easier managing of playlists.
     * Better HTTP streaming support: support for URLs in playlist, and
       M3Us for playlists.
     * Recursive directory adding.
     * Commandline and remote control of PM123.
     * General improvements in all parts of the player.
       
   
   
   PM123 main window
     _________________________________________________________________
   
   [INLINE]
   PM123's default main player window
   
   This is PM123's main window on startup. The window has several
   controls and lots of status information. The main playing controls are
   these:
   
   [IMAGE]
   
   From left to right: play, pause, rewind, fast forward, open/close
   palylist, repeat mode, randomize playlist, next song, previous song
   and power off. Volume can be controlled clicking and dragging the
   volume bar:
   
   [IMAGE]
   
   While playing there are some status indicators such as:
   
   
        [IMAGE]
   Stereo/mono indicator and bitrate    [INLINE]
   Playlist index/total
   
   You can right click the player to open up the main menu.
   
   Keyboard shortcuts: We have defined some keyboard shortcuts to be used
   from the main window:
     * Enter: Play/Stop
     * Number keypad 5: Pause
     * Left arrow key: Rewind
     * Right arrow key: Fast forward
     * Up arrow key: Previous song
     * Down arrow key: Next song
     * Plus/Minus: Increase/decrease volume
     * Space: Open main menu
     * Esc: Cancel slider drag
       
   
   
   PM123 main menu
     _________________________________________________________________
   
   The main menu can be invoked by clicking the right mousebutton or by
   pressing space over the main window. The following menu will then pop
   up:
   
   
        [IMAGE]         Open playlist: Opens the playlist window.
   Load file: Opens a single file.
   Open URL: Opens a file from the Internet for streaming.
   Recall: Displays shortcuts to 10 last used files.
   Edit ID3 tag: Edits the ID3 tag of the currently loaded file.
   
     _________________________________________________________________
   
   Properties: Displays PM123's configuration dialog.
   Load skin: Load a new skin into the player.
   
     _________________________________________________________________
   
   Equalizer: Displays the Graphical Equalizer.
   Playlist Manager: Displays the Playlist Manager.
   Font: A submenu which allows you to select from two fonts.
   Size: A submenu which allows you to select the size of the player from
   3 predefined sizes.
   Float on top: Toggles 'float on top' option, which allows PM123 to
   float above all windows.
   Hide window: Hides the player window. PM123 can be restored by
   selecting it from the window list.
   
   
   Keyboard shortcuts: You can use any of the commands in the main menu
   by giving focus to the PM123 window (by clicking it, for example) and
   pressing Alt and any character underlined in the main menu. For
   example, you can edit the ID3 tag by pressing Alt+3.
   
   PM123 playlist menu
     _________________________________________________________________
   
   
        [INLINE]        Use this playlist: Activates this playlist.
   
     _________________________________________________________________
   
   Add to list: Add file(s) to the playlist.
   Add URL: Add HTTP files or playlists (M3Us).
   Clear list: Clear the whole list.
   
     _________________________________________________________________
   
   Save list: Saves the list.
   Load list: Loads a saved list.
   Recall: This submenu has shortcuts to 10 last loaded playlists.
     _________________________________________________________________
   
   Sort: This submenu has options to sort the playlist by size, playing
   time, filename or songname.
   
   
   
        [IMAGE]         Load: Loads this file into the player.
   Remove from list: Removes this file from the playlist.
   Edit tag: Edits this file's ID3 tag.
   Delete tag: Removes the ID3 tag from this file.
   
   
   Keyboard shortcuts: You can use any of the commands in the playlist
   menu by giving focus to the playlist (by clicking it, for example) and
   pressing Alt and any character underlined in the playlist menu. For
   example, you can edit the ID3 tag by pressing Alt+E or load a new
   playlist by pressing Alt+L.
   
   PM123 properties
     _________________________________________________________________
   
   [INLINE]
   PM123's properties dialog, page 1
   
   The properties dialog can be accessed from the main menu. In the
   dialog you can configure PM123's audio engine and interface.
   
  Sound system
  
   DART: This is the default sound system. DART stands for Direct Audio
   Real Time. Some Warp 3 systems will need a file called DART.ZIP to
   use DART.
   MMOS/2: This sound system is not available in current release. DART is
   much faster and stabler than the old MMOS/2 playlist driven audio
   system.
   8-bit audio: 8-bit audio switch is provided for old soundcards that
   don't support 16-bit audio.
   
  Sound quality options
  
   Mix both channels (mono): This mixes the left and right channels into
   a mono stream. This reduces the stress on CPU. Useful on 486 systems.
   Downmix 2 to 1: Decodes only every second byte, therefore dropping the
   sample rate from 44100 to 22050 and from 22050 to 11025, etc. Useful
   on 486 systems.
   
   
  Sound device
  
   Select a sound device to use from the drop down list.
   Sound device is shared: Opens the sound device in shared mode,
   allowing other programs to use the device while a file is being
   played. Works only on drivers that support it (the Gravis Ultrasound
   drivers, for example).
   
  Decoder settings
  
   Number of buffers: This is the amount of audio to buffer in 16kB
   chunks. You may want to increase this on a heavily loaded system.
   Trash buffers on seek: This option provides a much faster response on
   seek operations (fast forward, rewind, jump to position), but consumes
   more CPU time during the seek.
   
  Behaviour
  
   Start playing on file load: Automatically starts playing when you load
   a file.
   Auto 'use playlist' on add: Automatically selects "Use this playlist"
   when adding files or directories to the playlist. Auto play on 'use
   playlist': Automatically starts playing on "Use this playlist".
   Scroll: Infinite: Keeps scrolling the display forth and back until you
   start feeling sick :-)
   Scroll: Once: Scrolls the display forth and back once.
   Scroll: Disable: Prevents the display from scrolling. Useful if you
   are scroll-sick.
   
   
   [IMAGE]
   PM123's properties dialog, page 2
   
  Plugins
  
   Disable/Enable: Disables/enables the selected plugin.
   Unload: Unloads the plugin completely.
   Configure: Available only if the plugin is configurable. Click this
   button to set plugin's settings.
   Add filter plugin: Add a pure filter plugin (visual plugins are skin
   specific, see PM123 sound visualization).
   
   
  Registration
  
   Name: Enter your name here.
   Code: Enter your BMT Micro provided registration code here.
   Register: Click this button to finish your registration!
   
   
   PM123 ID3 tag editor
     _________________________________________________________________
   
   
   
   "ID3 tag editor? What's that?", you might ask. ID3 tags are way of
   appending some information to each MP3 file. The information contains
   song title, artist's name, album's name, music's style, release year
   and a comment. ID3 tags don't belong to the MPEG standard, but it has
   already become a widely spread standard among MP3 listeners. It's a
   good idea to add this tag to your MP3 files (if your filenames get
   mangled, you'll always know the songname).
   
   [IMAGE]
   PM123's ID3 tag editor window
   
   PM123's tag editor is quite simpled. It can be invoked for the current
   file from the main menu or by pressing Alt+3 on the player window. You
   can also edit the tags of the files in the playlist by right clicking
   a file in the playlist and selecting Edit tag or by pressing Alt+E in
   the playlist. You can also remote a tag by selecting Delete tag.
   
   PM123 sound visualization plugin
     _________________________________________________________________
   
   PM123 comes with a sound visualization plugin, ANALYZER.DLL which is
   located in the visplug directory. The plugin is visible right next to
   the volume bar. By default it shows the spectrum analyzer. Click it
   once to bring up the oscilloscope, a second time to bring up the CPU
   monitor and third time to disable it.
   
   [IMAGE]
   The spectrum analyzer.
   
   Note that because the spectrum analyzer is visual plugin, it is skin
   specific and will not display on older PM123 skins. But you can add
   them easily to any skin by editing the skin's .SKN file and adding
   this to it:

1=visplug/analyzer.dll,x,y,size-x,size-y

   Replace x, y, size-x and size-y with suitable coordinates (a easy way
   to find out the coordinates for a certain area is to load up PMView,
   take a Window capture of the skin and use the 'Track info' feature).
   You can also use WinAmp-compatible viscolor.txt files like this:

1=visplug/analyzer.dll,x,y,size-x,size-y,viscolor.txt

   The plugin will then read viscolor.txt and adapt to colors specified
   in it!
   
   PM123 graphical sound equalizer
     _________________________________________________________________
   
   
   
   PM123 users can enjoy and play with the graphical sound equalizer
   provided.
   
   [IMAGE]
   PM123 Graphical Equalizer window
   
   To enable the equalizer, click on "Equalizer enabled". Now you can
   adjust the bands by dragging the sliders. Preamplifier slider does
   software amplification (useful if your soundcards amplifier is
   broken). You can also mute bands by clicking on the checkboxes below
   sliders. To restore everything back to normal, click "Default". You
   can also save and load equalizer profiles.
   
   If you don't think this equalizer suits your needs well enough, you
   can use Samuel's Real Equalizer plugin, which provides excellent sound
   quality and more bands to manipulate. The plugin is provided with
   PM123 and is located in file realeq.dll. Install it via PM123's
   Properties dialog (Add filter plugin -button). You can display the
   configuration window by pressing the Configure button in the same
   dialog.
   
   [IMAGE]
   
   Adjust FIR Order to suit your machine (at least P150 recommended for
   FIR order 64).
   
   PM123 playlist manager
     _________________________________________________________________
   
   Playlist Manager is provided for browsing and managing playlists. Note
   that Playlist Manager is not a replacement for the playlist. You can
   add and remove lists from Playlist Manager, load lists into the normal
   playlist, load single files and calculate statistics. Also note that
   some of Playlist Manager's options only work with playlists saved with
   PM123 1.0.
   
   [IMAGE]
   PM123 Playlist Manager window
   
   Playlist Manager will remember the playlist added to it next time you
   open it. Right click on an empty space (the title, for example) to get
   the main menu:
   
   [IMAGE] Add a playlist: Adds a new playlist to the Playlist Manager.
   Statistics: Shows statistics for all playlists and files in Playlist
   Manager.
   
   
   Right click on a playlist to get the list menu:
   
   [IMAGE] Load this playlist: Loads this playlist into PM123 playlist.
   Statistics: Shows statistics for this playlist only.
   
     _________________________________________________________________
   
   Remove from list: Removes this playlist from Playlist Manager.
   Delete: Removes this playlist from Playlist Manager and your hard
   disk.
   
   
   Right click on a file to get the file menu:
   
   [IMAGE] Load this file: Loads this playlist into PM123.
   
   
   PM123 playlist files
     _________________________________________________________________
   
   PM123 playlist files always have the extension .LST and they contain
   simply CR separated lines of the files in playlist (plus Playlist
   Manager special lines starting with >). PM123 also understands .MPL
   files used by WarpAMP and M3U playlists used over the Internet.
   
   PM123 commandline
     _________________________________________________________________
   
   
   
   PM123 accepts a couple commandline parameters:

    -cmd [host] command     If `host' is omitted, send commands to local PM123,
 otherwise
                            send commands to PM123 running on `host'. For a com
mand listing,
                            see PM123 Remote control.

    -proxy url              Sets a HTTP proxy.

    -auth authorization     Sets HTTP authorization.

    -48as44                 Plays 48kHz files as 44kHz.

   PM123 also accepts MP3 files, URLs and playlists as commandline
   parameters.
   
   PM123 Skin Utility and WinAmp skins
     _________________________________________________________________
   
   PM123 comes with a skin utility (SKINUTIL.EXE), which can converts
   WinAmp skins to PM123 skins. Here's an example how to convert a
   WinAmp skin (SKIN.ZIP):

        [c:\pm123] md skin
        [c:\pm123] cd skin
        [c:\pm123\skin] unzip -j c:\files\skin.zip
        Archive: c:/files/skin.zip
          inflating: Viscolor.txt
          inflating: Position.bmp
          inflating: Main.BMP
          inflating: Text.BMP
          inflating: option.bmp
          inflating: Cbuttons.bmp
          inflating: Titlebar.BMP
          inflating: Monoster.bmp
          inflating: Posbar.bmp
          inflating: Shufrep.bmp
          inflating: Volume.BMP
          inflating: Numbers.BMP
          inflating: Playpaus.bmp
        [c:\pm123\skin] cd ..
        [c:\pm123] skinutil convert skin
        PM123 Skin Utility (c) 1998 Taneli Lepp <rosmo@kalja.com>
        Processing skin/cbuttons.bmp.......
        Processing skin/titlebar.bmp..........
        Processing skin/text.bmp: abcdefghijklmnopqrstuvwxyz_-()&.:0123456789
 ,+%[]
        Processing skin/posbar.bmp..
        Processing skin/volume.bmp...
        Processing skin/shufrep.bmp:....
        Processing skin/monoster.bmp:..
        Processing skin/numbers.bmp:............
        Processing skin/main.bmp:.
        Creating skin.dat...
        Creating skin.pak
        Bundling...
        124 images, total 212444 bytes (207 kB).
        Creating skin.skn
        Cleaning up...

   
   
   There you go. You can now load skin.skn from PM123. The skin utility
   also created files skin.pak and skin.dat that are required if you use
   the skin. You can also bundle your old skins with lots of small files
   into two files. Run skinutil.exe without any parameters to see help.
   
   PM123 troubleshooting
     _________________________________________________________________
   
    1. The player skips and/or the audio doesn't sound right!
    
     There might be multiple reasons if you encounter this problem. Some
     of them are listed here. First of all, check your MP3 file. It may
     be broken. It might play succesfully on another player, but mpg123
     may not necessarily like it. If you think it's not related to the
     input stream, maybe the problem is one of these:
     * You have a polling device driver (for example, a very old 2x
       CD-ROM or PRINT01.SYS without /IRQ switch)
     * Bad CD-ROMs tend to seek the disk often. This usually takes 100%
       CPU and halts I/O operation until the drive completes the seek.
       You can try cleaning the CD.
     * You have a video card that supports "automatic PCI bus retry", but
       your motherboard stops processing during those retries. Disable
       the feature (video driver).
     * You have an ATI Mach64 and you are experiencing a bug in the video
       driver using software mouse pointers (ie. colored mouse pointers).
     * You have a process that hogs all the CPU. Get a CPU monitor (we
       recommend CPUMon) and a process killer from hobbes.nmsu.edu.
     * You have Full Window Drag enabled. It sucks 100% CPU power when
       you use it. On Warp 4, disable it from System / User Interface /
       Window Manipulation / Full Window Dragging.
     * Your CPU is too slow (or overheated). We recommend you have at
       least a Pentium machine.
     * You have outdated, old or buggy sound drivers. This is a common
       problem. Many sound drivers out there for OS/2 just plain suck. We
       have tried to test PM123 on as many drivers as we can, but some
       drivers are incomplete and/or buggy.
     * You have a very old or just generally bad motherboard, video card
       or IO controller card. This is a rare problem, though.
       
     Extra effort has been put in creating a priority system that stops
     skipping. Samuel, who did the priority system, convinces us by
     saying: "I have played 2 MP3s on my P150 and watched a "dir /s"
     smooothly and happily scrolling in the foreground without either MP3
     skipping... I think that's pretty convincing."
     
    2. The player crashes on startup.
    
     * You have an old MPG123.DLL (or some other DLL PM123 comes with) in
       your LIBPATH.
     * Your system doesn't support DIVE (Direct Video Extensions). Try
       renaming visplug\analyzer.dll to something else.
     * Something is very wrong, send us a bug report.
       
   
   
   
   
   How to create your own MP3s (MP3 encoders and utilities)
     _________________________________________________________________
   
   
   
   There hasn't been many CD-DA or MP3 encoders for OS/2, but recently
   this situation has improved mainly because of the Win32-OS/2 project.
   To help you to create your own MP3s, Samuel has assembled a small
   review on MP3 encoders/decoders, CD-DA utilities and other useful
   software.
   
   
     _________________________________________________________________
   
   MP3 Encoders
   
   I have tried five MP3 encoders by encoding CD quality WAVs (yes, even
   Classical Music) in MP3s at 128kb/s in stereo (not joint stereo, when
   possible) and tested them with some $40 headphones and pm123's
   spectrum analyzer. I have benchmarked the speed of the different
   encoders by comparing it with L3Enc 1.0 for OS/2's since probably all
   MP3 OS/2 users tried it at one time or an other. (You can also jump
   right to my conclusion)
   
   ToMPG 3.0 for Win32 (http://www.kiss.uni-lj.si/~k4fe0470/tompg.zip)
   
   This is a Win32 console EXE, but it converts NUMBER ONE with
   Win32-OS/2 Alpha 0.02!! (http://www.os2ss.com/win32-os2)
   
   ToMPG is fast. I mean astoundingly fast, light speed fast. WARNING!!
   it's going to blow your socks off!! It's seven (7) times faster (no
   joke) than L3Enc 1.0 for OS/2 here.
   
   Use the following options though. The default values aren't terrific.
   -B64 -M0
   
   This program presumably looks free. I see it on many unofficial sites,
   that means excluding Xing's, and it never comes with any license or
   shareware restrictions. It seems to be the predecessor of the
   commercial Win32 GUI Xing encoder (http://www.xingtech.com).
     _________________________________________________________________
   
   
   
   8hz's MP3 Encoder 0.2 (http://www.8hz.com)
   
   This is a free MP3 encoder based on the public ISO MPEG code (the
   famous dist10.tar.gz). Eventhough it is at least 3 times slower than
   L3Enc 1.0 for OS/2, the source codes are available for free!! It is
   beta at the moment, it might not always work properly.
   
   The hearing test was good. I didn't hear a difference between the
   original WAV and the MP3, although it practically cuts any frequency
   over 16kHz.
   
   8Hz-mp3 0.2 does not support MPEG 2 Layer III (lower sampling rate
   MP3s).
     _________________________________________________________________
   
   
   
   L3Enc 1.0 for OS/2
   (http://hobbes.nmsu.edu/pub/os2/apps/mmedia/sound/convert/l3en4os2.zi
   p)
   
   This is actually the well known L3Enc from Fraunhofer-IIS version 1.0.
   It looks like they used EMX to compile this version of L3Enc for DOS,
   and it had the side effect to make it also run in OS/2. Somebody,
   somewhere, had that old copy and made it reappear in public. The new
   versions of L3Enc now use DJGPP and that doesn't make any OS/2
   binaries. Send shit to Fraunhofer-IIS!!
   
   It's reasonably fast, but it hogs the CPU. You should get SPE
   (http://hobbes.nmsu.edu/pub/os2/util/system/spe.zip) to reduce its
   priority to idle 0 if you want to do something else when it's
   encoding.
   
   It encodes in Joint Stereo only and the hearing test was bad, even if
   it only cuts any frequencies over 16kHz. The sound seems centered,
   probably that the Joint Stereo is too wide.
   
   The -wav parameter doesn't work properly, so you need to feed it RAW
   files or you'll hear a pop at the beginning of your MP3s. L3Enc 1.0
   for OS/2 does not support MPEG 2 Layer III (lower sampling rate MP3s).
   
     _________________________________________________________________
   
   
   
   L3Enc 2.72 for DOS (ftp://www.iis.fhg.de/pub/layer3/l3v272d1.zip)
   
   This one is so forsaken demoralizingly slow, about 3 times slower than
   L3Enc for OS/2 without -hq. With it, you're better off running it over
   night, but I haven't figured out what -hq actually does (is it just
   eating CPU cycles for the fun of it or what?). But this is the last
   (and obsolete) official version.
   
   It encodes only in Joint Stereo, but the hearing test was good and the
   spectrym analyzer shows a cut off at 20kHz. So if you are sensitive to
   high frequencies, use this encoder.
   
   Note, since this is a DOS program, it only supports 8.3 style
   filenames. L3Enc 2.72 for DOS supports MPEG 2 Layer III (lower
   sampling rate MP3s).
   
   It requires a registration for encoding over 112kb/s.
     _________________________________________________________________
   
   
   
   MP3Enc 3.0 for Win32 (http://www.iis.fhg.de/amm/download/mp3enc/)
   
   This is a new face of L3Enc. A Win32 EXE is available, but no DOS EXE.
   It also converts fine with Win32-OS/2. Nonetheless, I was very
   disapointed by its performance.
   
   By default, it cuts off all frequencies over 11kHz. This makes the
   sound very muffled. So I tried to use -bw 22050 (to set the frequency
   bandwidth we want) and it still only goes up to 16kHz. The resulting
   MP3s also have small "drop outs" and chops in sound not found in the
   original WAV. Against all expectation, the highest quality (which is
   the default) seems to make them worse while making the encoding
   process very very very slow. In addition, we can only use Joint
   Stereo.
   
   At lowest quality, it's about the same speed as L3Enc 1.0 for OS/2.
   
   This encoder has some nice features like allowing pipes to be used
   instead of files (this can be useful for realtime encoding and
   transfer), and some other not so nice options like -l3wav which
   deliberately sticks a RIFF wav header at the beginning the MP3 file. I
   don't know what happened in Fraunhofer labs, maybe a visit from
   Microsoft? You should get SP to reduce its priority as it hogs the
   CPU. (http://hobbes.nmsu.edu/pub/os2/util/system/sp103.zip) MP3Enc 3.0
   for Win32 supports MPEG 2 Layer III (lower sampling rate MP3s). This
   requires a registration for more than 30 seconds of MP3 encoding.
     _________________________________________________________________
   
   
   
   os2enc01.zip
   
   I didn't get it to work at all. Gives garbage.
     _________________________________________________________________
   
   
   
   AMPEG 4.3
   (http://hobbes.nmsu.edu/pub/os2/apps/mmedia/sound/convert/ampeg43.zip)
   
   Good free package with source codes available to encode mp2 files, but
   they need to be a bit larger (192kb/s instead of 128kb/s) than mp3 to
   achieve the same quality. I can hear the difference with my
   headphones.
     _________________________________________________________________
   
   
   
   Conclusion
     * Speed and good quality -> ToMPG 3.0
     * Low sampling frequencies -> ToMPG 3.0
     * Absolute highest quality -> L3Enc 2.72 for DOS
     * Geek source code -> 8hz-MP3 and AMPEG 4.3
     * Low CPU decoding -> MP2 (Layer II) with ToMPG or AMPEG 4.3
       
   
     _________________________________________________________________
   
   
   
   Decoders
   
   mpg123 for OS/2 0.20
   (http://www.cam.org/~guardia/archives/mpg123_020.zip)
   
   This is my port of mpg123 (which I used to make mpg123.dll). I
   included a WAV routine to include a RIFF WAVE header output mode. So
   basically, anything that pm123 or mpg123 can play can be dumped to WAV
   files that can then be used for editing, CD burning or reencoding with
   ToMPG.
     _________________________________________________________________
   
   
   
   CD-DA utilities
   
   Leech 1.20
   (http://hobbes.nmsu.edu/pub/os2/apps/mmedia/sound/editors/leech120.zi
   p)
   
   This is a CD grabber with dijittering capabilities. There is a very
   good reason that you want to prevent any jittering. Not only does it
   insert clicks in your PCM sample, it can also switch the left and
   right channel!!
   
   Nonetheless, I get loads of "jitter correction failed" even though
   Alfons, for example, has no problem reading it. Must be my Goldstar
   CD-ROM drive that doesn't like to jump all over the place to correct
   jittering. I heard Panasonic CD-ROM drive do 0 jitter all the way, now
   that's neat. Anyway, if your CD-ROM drive hates CD-DA like mine, try
   to use -s10 and -j100. It might be slow, but at least you get
   everything.
   
   Make sure you use the options to dump the audio track into a RAW file
   if you intend to encode it with L3Enc. If you don't do so, L3Enc will
   encode the WAV header (it doesn't recognize it), and you will get a
   click at the beginning of your MP3 files.
     _________________________________________________________________
   
   
   
   Alfons 0.96 (ftp://ftp.leo.org/pub/comp/os/os2/sound/alf096b.zip)
   
   This is the best CD-DA utility after Leech. It's very easy to use, and
   because Leech can take quite a while reading a track on my CD-ROM
   drive, I use Alfons for "quick and dirty grabs".
     _________________________________________________________________
   
   
   
   Front Ends
   
   MP3 PM 0.54
   (http://hobbes.nmsu.edu/pub/os2/apps/mmedia/sound/convert/mp3pm053.zi
   p)
   
   Looks like a promising control interface for L3Enc, ToMPG, Leech, and
   Alfons, but it is pretty useless at the moment without CD-DA utility
   support.
     _________________________________________________________________
   
   
   
   CD2MP3 1.10 (http://www.cam.org/~guardia/archives/cd2mp3110.zip)
   
   This is a utility I also programmed that uses ToMPG (or MP3Enc) and
   Leech to easily grab portions of a CD to MP3s. It reportebly works
   very well, so try it out. :)
     _________________________________________________________________
   
   
   
   PM123 remote control
     _________________________________________________________________
   
   
   
   PM123 can be remotely controlled via a named pipe, \PIPE\PM123. Named
   pipes were chosen because of their excellent features. Quoting from
   the Control Program Programming Guide and Reference: "Named pipes
   enable related or unrelated processes on either the same computer
   system or different systems to communicate with each other. Any
   process that knows the name of a pipe can open and use a named pipe.
   In addition, named pipe data can be transparently redirected across a
   network, such as a local area network (LAN)".
   
   To remote control PM123 on the same computer, you can use either the
   built-in "echo" command, or the PM123 executable itself. PM123
   understands a set of commands that are written to the pipe. For
   example,

        [c:\usr\pm123] pm123 -cmd volume 80
        [c:\usr\pm123] echo *volume 80 > \pipe\pm123

   These commands will set the volume to 80%.

        [c:\usr\pm123] pm123 -cmd add d:\music\test.mp3
        [c:\usr\pm123] echo *add d:\music\test.mp3 > \pipe\pm123

   These commands will add the file d:\music\test.mp3 to the playlist.
   
   If you use echo, remember to prepend any commands sent to it with a *
   character. PM123 currently understands the following commands
   (optional parameters are enclosed in parenthesis):
   
   
        play {file}     Starts playing. If file was specified, it will be
   first loaded and playback will be started.
        stop    Stop playback.
        pause on|off    Pauses or unpauses the playback.
        next    Selects the next song in playlist.
        previous        Selects the previous song in playlist.
        rewind  Toggles rewind of the currently playing file.
        forward         Toggles fast forward of the currently playing
   file.
        jump n  Jump to n seconds in the currently playing file.
        volume n        Sets volume to n% (scale 0-100, of course).
        load file       Loads a file into. Plays it too, if 'auto play on
   load' is set.
        shuffle         Toggles shuffling.
        repeat  Toggles repeat.
        mono on|off     Toggles mono mode on.
        downmix on|off  Toggles downmixing 2 to 1.
        autouse on|off  Toggles 'auto use playlist on add'.
        playonload on|off       Toggles 'auto play on load'.
        playonuse on|off        Toggles 'auto play on playlist use'.
        float on|off    Toggles 'float on top'.
        font 1|2        Selects font 1 or font 2.
        size regular|small|tiny         Selects the player size.
        hide    Hides the player window.
        add file1;file2;file3   Adds file(s) to playlist. Multiple files
   must be separated with ';' characters.
        use     Use the playlist.
        clear   Clears the playlist.
        dir directory   Add directory to the playlist (non-recursive).
        rdir directory  Add directory to the playlist (recursive).
   
   Now for the cool part. You can control PM123 over your OS/2 Local Area
   Network. Just use \\SERVER\PIPE\PM123. \\SERVER is the name of the
   computer PM123 runs on. For example,

        [c:\usr\pm123] pm123 -cmd \\mycomputer volume 80
        [c:\usr\pm123] echo *volume 80 > \\mycomputer\pipe\pm123
        [c:\usr\pm123] pm123 -cmd \\mycomputer add d:\music\test.mp3
        [c:\usr\pm123] echo *add d:\music\test.mp3 > \\mycomputer\pipe\pm123

   Will do the same as examples above, but from a different computer.
   Easy, isn't it?
   
   PM123 registration
     _________________________________________________________________
   
   PM123 costs only $15 per copy, so it's a very good investment!
   
   Why to register?
   
   Yes, why to register shareware applications? There are numerous
   reasons. One of the most important reasons is that registering ensures
   that you'll get new versions, support, bugs fixed and most of all, a
   good feeling that you've supported OS/2 and software developers. We
   won't abandon OS/2 as long as you keep supporting us. We won't do the
   same as Colorworks authors did.
   
   Register! Where?
   
   To serve users the best way, we are handling registrations via BMT
   Micro (http://www.bmtmicro.com). The price is just $15, which will get
   you a key that will work in all future releases of PM123. You can also
   use the secure ordering server at BMT Micro for instant purchases!
   
   Other BMT Micro contact information:
   
   BMT Micro, Inc.
   PO Box 15016
   Wilmington, NC 28408
   USA
   800-414-4268 (Voice - USA/Canada)
   800-346-1672 (Fax - USA/Canada)
   910-791-7052 (Voice)
   910-350-2937 (Fax)
   bmt@bmtmicro.com (Inquires, general info)
   orders@bmtmicro.com (orders)
   bmtmicro (AOL, America Online)
   74031,307 (Compuserve)
   HNGP66D (Prodigy)
   
   
   Support
   
   Support is provided for registered users by following means (feel free
   to send bug reports, suggestions and other cool stuff):
   
   Email: pm123@bmtmicro.com
   Web: http://www.teamos2.sci.fi/pm123
   Voice: +358505485242 (Taneli's cellfone, remember Finnish timezone
   GMT-2!)
   
   
   Copyright, credits and greetings
     _________________________________________________________________
   
   
   
   MPG123.DLL was created with help and code from following people:

  Original mpg123 decoder written/modified by:
     Michael Hipp <Michael.Hipp@student.uni-tuebingen.de>
     Oliver Fromme <oliver.fromme@heim3.tu-clausthal.de>

  with help and code from:
     Samuel Audet <guardia@cam.org>: OS/2 port
     MPEG Software Simulation Group: reference decoder package
     Tobias Bading: idea for DCT64 in subband synthesis from maplay package
     Jeff Tsay and Mikko Tommila: MDCT36 from maplay package
     Philipp Knirsch <phil@mpik-tueb.mpg.de>: DCT36/manual unroll idea
     Thomas Woerner <..> (SGI Audio)
     Damien Clermonte <..> (HP-UX audio fixes)
     Stefan Bieschewski <stb@acm.org>: Pentium optimizations, decode_i586.s
     Martin Denn <mdenn@unix-ag.uni-kl.de>: NAS port
     Niklas Beisert <nbeisert@physik.tu-muenchen.de> MPEG 2.5 tables
     <mycroft@NetBSD.ORG> and <augustss@cs.chalmers.se>: NetBSD
     Kevin Brintnall <kbrint@visi.com> BSD patch
     Tony Million: win32 port
     Steven Tiger Lang: advanced shuffle
     Henrik P Johnson: HTTP auth patch
     and more ....

   
   
   MPG123.DLL special features were created by Samuel Audet and the
   graphical user interface was created by Taneli Lepp. Also code from
   following people was used:

    Generalized Bitmap Module by:
      Andy Key <nyangau@interalpha.co.uk>

    Ooura Fourier Transformation library:
     Takuya OOURA <ooura@kurims.kyoto-u.ac.jp> or <ooura@mmm.t.u-tokyo.ac.jp>
