  The Linux Sound Playing HOWTO
  Yoo C. Chung, wacko@laplace.snu.ac.kr,  Alex Ott
  ott@phtd.tpu.edu.ru
  v1.6, 11  1998

        Linux,  
    .
  ______________________________________________________________________

  Table of Contents


  1. 

     1.1     
     1.2    
     1.3    
     1.4  
     1.5 

  2.    

     2.1 (IDX
        2.1.1 (CDX
        2.1.2 (IDX
        2.1.3 (CDX
     2.2 (IDX
        2.2.1 (CDX
        2.2.2 gmod
        2.2.3 (IDX
        2.2.4 (CDX
        2.2.5 (CDX
        2.2.6 (CDX
        2.2.7 (CDX
        2.2.8 (CDX
     2.3 (IDX
        2.3.1 (CDX
        2.3.2 (CDX
        2.3.3 (CDX
        2.3.4 (CDX
        2.3.5 (CDX
        2.3.6 Sajber Jukebox
        2.3.7 (CDX
        2.3.8 (CDX
        2.3.9 (IDX
        2.3.10 (IDX
     2.4 (IDX
        2.4.1 (CDX
     2.5  
        2.5.1 (CDX
        2.5.2 (CDX
        2.5.3 (CDX
        2.5.4 (IDX
        2.5.5 cat

  3.   

     3.1 (CDX
     3.2 (IDX
     3.3 (IDX

  4. 




  ______________________________________________________________________

   ::      , 
  .



  11..  

     Sound Playing HOWTO.   
      ,   
    .       
   .     
  ,   ,     
  .    __     
   Linux.  Linux Sound HOWTO  Jeff Tranter 
        Linux  
   .


         
  .   ,     ,  
       ,   
     ,   ,   
  Sound HOWTO.


  11..11..      

         (
           ),
        .    
          
          .  
       .


  11..22..     

       ,   
    GNU General Public License (  
  GNU).


  11..33..     

          
   Linux Documentation Project <http://sunsite.unc.edu/LDP/>. 
          
  <http://laplace.snu.ac.kr/~wacko/howto/>.

      ( )  
  <http://laplace.snu.ac.kr/~wacko/howto/Sound-Playing-HOWTO.ks>.

        <http://jf.gee.kyoto-
  u.ac.jp/JF/JF-ftp/euc/Sound-Playing-HOWTO.euc>


  11..44..   

    ,       
  (      ),     
  .    ,  
    .  ,    -
  ,     .  
        .
  11..55..  

     . , Hannu Savolainen 
      Linus Torvalds  
      .

     Raymond Nijssen (raymond@es.ele.tue.nl), Jeroen
  Rutten (jeroen@es.ele.tue.nl), Antonio Perez (aperez@arrakis.es), Ian
  Jackson (ijackson@gnu.org),  Peter Amstutz (amstpi@freenet.tlh.fl.us)
      .


  22..     

      (WAV, MIDI, MPEG  ..).  
      ,   
  .


  22..11..  MMIIDDII

  MIDI      (Musical
  Instrument Device Interface). MIDI-    .mid.
     ,  ,    
  ,  ,  ,  ..   
    (     
    ),      
      (downright crappy).


  22..11..11..  aaddaaggiioo

     mp ( MIDI-  ) 
  xmp (  XView  MIDI-,   
   ,   xmp).  
   SlingShot   xmp.    
      Adagio.

       GUS, mp    MOD-
  (  ``''    ).

      (  0.5  
  )  ,     .  , 
    ,   MIDI-,  
         
  .        mp, 
     -     `'
  .     .

        (    
  ),    ,      
  . (      ,
       ,   - ,  
     ).

       CMU MIDI Toolkit  Linux (
      ,   
  ),   Greg Lee (lee@uhunix.uhcc.hawaii.edu).

      
  <ftp://tsx-11.mit.edu/pub/linux/packages/sound/adagio05.tar.gz>.
       a.out (  
  )    xmp  segfault   X11R6
  (XFree86 3.1.1, libc 4.7.2).   mp  
    a.out.

        .   
  .     --   -lfl   
  SHROBJ  XMPOBJ  Makefile.      flex,
      .    
  .     XView   SlingShot, 
     xmp.


  22..11..22..  TTiiMMiiddiittyy

      _________________ , -
       ( ,    
  mp  Sound Blaster 16,       
       (wavetable)   GUS).
  ,      .  
  MIDI-   MIDI  WAV    WAV (
     MIDI-  WAV-   
   ).     .

         ncurses, SLang,
  Tcl/Tk  Motif.

       (patche files) Gravis Ultrasound
    .   FAQ,   TiMidity
    .

   Tuukka Toivonen (tt@cgs.fi).

    TiMidity      
  TiMidity <http://www.cgs.fi/~tt/timidity/>.   
         GUS.


  22..11..33..  ppllaayymmiiddii

    MIDI,    FM, GUS,  
  MIDI-. ,       
    MIDI.     
  Creative Music,  Microsoft RIFF,    MIDI  ,
    Ultima 7.

    X  SVGA .     
           
    ,    (
    xplaymidi  splaymidi).

      



       $ splaymidi foo.mid; stty sane





     SVGA ,     tty
   . SVGA       .

     Nathan Laredo (laredo@gnu.org or
  laredo@ix.netcom.com).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/playmidi-2.3.tar.gz>.


  22..22..  

   (  ) --   ,
        ,
        () 
      ,    ,
    vibrato.

       MIDI  ,   
      (  ).   , 
        , -  
    .   ,     
       MIDI.    ,  
     (`'  -- ProTracker, 
       ).   
  Amiga.

       .mod.   
  ,       .


  22..22..11..  ttrraacckkeerr

      (    
  )    Soundtracker  Protracker.
    16-  ,   ,   
  .        ,
    -mono.

     giftware ( ).   Marc
  Espie (Marc.Espie@ens.fr).

    Makefile    Linux    
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/tracker-4.3-linux.tar.gz>.


  22..22..22..  ggmmoodd

        Gravis Ultrasound .
   : 4/6/8  MOD, 8  669, MultiTracker
  (MTM), UltraTracker (ULT), FastTracker (XM),  ScreamTracker III
  (S3M).

       3.0  .   GUS.
      ,   
      .

    X .   QT toolkit (
   0.99  ).    QT toolkit
  <http://www.troll.no/>    QT.

     .    Hannu
  Savolainen,    Andrew J. Robinson
  (robinson@cnj.digex.net).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/gmod-3.1.tar.gz>.


  22..22..33..  MMiikkMMoodd

        XM, ULT,
  STM, S3M, MTM, MOD  UNI. ( UNI   
  MikMod.)     .  
  16-   .   -m (  ),
         .
  Unix-    ncurses  Tcl/Tk  
  .      ,   
    .

     by Jean-Paul Mikkers (mikmak@via.nl).  
    Jake Stine (dracoirs@epix.net).  
  shareware,      ,  
      .    
      (  
      ).

         MikMod
  <http://www.freenet.tlh.fl.us/~amstpi/mikmod.html>.


  22..22..44..  xxmmpp

     (   Adagio xmp),  
    MOD, S3M, MTM, PTM, PTR, STM, 669,  XM (
    ,       
   )       (wavetable) 
  (GUS  SoundBlaster 32AWE),     
        .

  X   xmp  .

     Claudio Matsuoka (claudio@lobo.inf.ufpr.br) 
  Hipolito Carraro Jr.

         xmp
  <http://xmp.home.ml.org/>.


  22..22..55..  ss33mmoodd

     4/6/8  MOD    Scream
  Tracker 3.     8-   
    22000 Hz.     -s 
    , -b  16- ,  -f  
   .        tracker
  ( ),      tracker 
  s3mod    MOD- (    ).
         
  tracker.

     Daniel Marks  David Jeske
  (jeske@uiuc.edu),          (
  ,     ,   ).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/s3mod-
  v1.09.tar.gz>.


  22..22..66..  mmoodd

   ____   MOD- (15/31-,  32
  ), MTM, ULT  S3M   Gravis Ultrasound.   
    ,     gzip, lharc,
  unzip,  unarj.      Powerpacked  
  ,    Amiga ( "PACK").

        3.0  .  
  __ _____    2.90-2    
  .    ncurses.   X
  ,   Tcl/Tk.
     Mikael Nordqvist (mech@df.lth.se or
  d91mn@efd.lth.se).

        FTP  sunsite.unc.edu 
  /pub/Linux/apps/sound/players/mod-v0.81.tgz.


  22..22..77..  nnssppmmoodd

    ,  _a_l_p_h_a ,   
  MTM, S3M  MOD.       
   DSP (   ,  Creative Labs  DSP).  
       tracker.

    ,    ,  
   .       -l.
     8-   (  0.1).

    Toru Egashira (toru@jms.jeton.or.jp).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/nspmod-0.1.tar.gz>.


  22..22..88..  yyaammppmmoodd

   ,  _a_l_p_h_a ,    
  4-  ,    .  __
  ____     . 
      22 kHz  . ,   
    ,  - .

     David Groves (djg@djghome.demon.co.uk).

     
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/yampmod-0.1.tar.gz>.


  22..33..    MMPPEEGG

  MPEG  ,    
        . MPEG 
    ,     
   .    MPEG  
  ,  I, II,  III. ,  
     ,    
    (   III  
    II).   MPEG  I   
  .mpg (      ,   
   MPEG -,     
  ),  II    .mp2,   III 
    .mp3.    . 2- 
    MPEG  II     25  
    PCM      .


  22..33..11..  mmppgg112233

   _b_e_t_a-     MPEG,
      I, II  III.     
   .       ,
    HTTP (..      MPEG
    World Wide Web).

    Michael Hipp (Michael.Hipp@student.uni-tuebingen.de).
         
      .   
     (  CD-ROM  FTP
  )  .

        Oliver Fromme's mpg123 page
  <http://mpg.123.org/>.


  22..33..22..  mmaappllaayy 11..22

      MPEG    
   I   II,       III.
    16-    Linux.

      ,   55%
     60MHz Pentium.    
  66MHz 486 -     .   
  ,      
   (  -l  -r),    .

            ,
    .  ,    
        configuration.sh.



       #! /bin/sh





    Tobias Bading (bading@cs.tu-berlin.de).  maplay 1.2
       <ftp://ftp.cs.tu-
  berlin.de/pub/misc/maplay1.2/maplay1_2.tar>.


  22..33..33..  mmaappllaayy 11..33bb

     (..   ) 
  maplay 1.2,         .
       u-law , 
       SPARC.  ,  
   u-law  ,     .

    Orlando Andico (orly@gibson.eee.upd.edu.ph).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/maplay-1.3b-
  Linux.tar.gz>.


  22..33..44..  mmaappllaayy33

      maplay 1.2.    
    MPEG  3.      
     (     ). 
     ,    .

     Timo Jantunen (timo.jantunen@hut.fi 
  jeti@cc.hut.fi).  ,     
  ,       .    
        ,  
    maplay    GNU General
  Public License,      
    .
      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/maplay3.tar.gz>.


  22..33..55..  ssppllaayy

   ,   _b_e_t_a,    maplay
  1.2 ( ,    maplay 1.2+, 
    maplay 1.2   MS Windows).  
      MPEG  3.  
    WAV-.      ,
    an HTTP-.

    splay  ,     
   (  LGPL),      
   .      
     (   pthread
     )    
   .

  splay  -     X 
  (  QT).

        (  
  segmentation faults),     
  .

   Jung Woo-jae (jwj95@eve.kaist.ac.kr).

         splay
  <http://adam.kaist.ac.kr/~jwj95/>.


  22..33..66..  SSaajjbbeerr JJuukkeebbooxx

        MPEG 
    .    splay,  
      MPEG   III.   
        MPEG,  
  HTTP.     .

   e QT toolkit (    
  1.2).     LinuxThreads (
         0.5).

   Joel Lindholm (wizball@kewl.campus.luth.se).

       
  <ftp://kewl.campus.luth.se/pub/jukebox>.


  22..33..77..  aammpp

     MPEG,   _b_e_t_a,   
     MPEG  3.     
          (raw) PCM 
  WAV-.       
  ( 60%  133MHz Pentium).

     Tomislav Uzelac (tuzelac@rasip.fer.hr). 
      ,    
     (    CD-ROM, 
       ).

      
  <ftp://ftp.rasip.fer.hr/pub/mpeg/amp-0.7.3.tgz>.
  22..33..88..  XXAAuuddiioo

   ,   _a_l_p_h_a,     
     MPEG   
      .  
   MPEG  I, II  III.    
     .     -
  .   Linux      Motif
  (Lesstif).

    Gilles Boccon-Gibod, Alain Jobart  .  
       .   
    (      
  ).

           XAudio
  <http://www.xaudio.com/>.


  22..33..99..  SShhaarreewwaarree // MMPPEEGG  33

     ,    
  MPEG  3  WAV, AIFF, SND, AIFC,    (raw)
  PCM  . Linux-      
   .      -
   .

  ,      
   sox,      , - 
    PCM-  (     Intel).
     sox  -x    . 
    ,   ,  
   ,        .

        (   100Mhz
  Pentium),       MPEG  3
  ,       , 
    (   ,   
  sox      44.1 kHz).



       $ l3dec foo.mp3 -sto | play -t raw -x -u -w -c 2 -r 44100 -





     -r    
  ,    -c        
   ( ).     ,   
   -    .

     shareware,   
  Fraunhofer-IIS. -  Linux   x86  
     <ftp://ftp.fhg.de/pub/layer3>. - 
      III.


  22..33..1100..  XX1111AAmmpp

       _b_e_t_a  
    MPEG   ,    
     Windows winamp.


        ( ,  
        ).  
  Mikael Alm (psy@x11amp.bz.nu), Thomas Nilsson (fatal@x11amp.bz.nu), 
  Olle Hallnas (crocodile@x11amp.bz.nu).

         X11Amp
  <http://www.x11amp.bz.nu/>.      
  Intel Linux  FreeBSD.


  22..44..  WWAAVV

      (man page) sox:


            IFF-,    .
             Windows 3.1.
        Windows 3.1     
        ,     
          .


      .wav.

     ``sox''  ``bplay''   
  WAV,   .


  22..44..11..  wwaavvppllaayy

          WAV.  
   ,       
      .     
       .

       ,    
   Motif,     Lesstif.

      Andre Fuechsel (af1@irz.inf.tu-
  dresden.de),    ,    
  Warren W. Gay (bx249@freenet.toronto.on.ca  wwg@ica.net).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/wavplay-1.0.tar.gz>.


  22..55..   

     ,    ,
       (.. ,  
     ),  ,  
    .


  22..55..11..  ssooxx

        ,   
       . ,   sox,
     play,   ( play  Sound
  HOWTO    ).     
  raw ( )   ,   IRCAM, Sound
  Blaster .voc, SPARC .au ( ), Mac HCOM, PC/DOS .sou,
  Sndtool  Sounder, NeXT .snd, Windows 3.1 RIFF/WAV, Turtle  Beach
  .smp, CD-R,  Apple/SGI AIFF  8SVX.


     1.3.6x,     
     ,     
     .  ,    
   179   sbdsp.c 



       if (abuf_size < 4096 || abuf_size > 65536) {




  



       if (abuf_size < 1 || abuf_size > 65536) {




          .    
   .

          ,  
     .

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/convert/Lsox-
  linux.tar.gz>.

     Chris Bagwell (cbagwell@sprynet.com) (
    gamma-   sox,  
   )    
  <http://home.sprynet.com/sprynet/cbagwell/projects.html>.  
         MS ADPCM 
  IMA ADPCM WAV.


  22..55..22..  bbppllaayy

    (  _b_e_t_a)   (raw) ,
   WAV  VOC.      .   
      ,     
      .     ,
       setuid.
        
   Debian- Ian Jackson (ijackson@gnu.org), 
   ,      setuid.

    David Monro (davidm@gh.cs.usyd.edu.au).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/bplay-0.96.tar.gz>.


  22..55..33..  SSIIDDPPLLAAYY

      Sound Interface Device (MOS 6581,
    SID)  Micro Processor Unit (MOS 6510) 
  Commodore 64.         
   C64,     .    
      ,      
        C64.


    -   .
          Tk  QT.

    Michael Schwendt (sidplay@geocities.com).

         SIDPLAY
  <http://www.geocities.com/SiliconValley/Lakes/5147/>.


  22..55..44..   RReeaallAAuuddiioo

      ,    
  ,     Internet    
  .    ,   
      web browser ( 
  Mosaic  Netscape).      X (  
      Lynx   ).

    ,   
   RealAudio   .    
    X virtual frame buffer (Xvfb).   
   
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/traplayer-0.5.tar.gz>.

    Progressive Networks, Inc.   
  ,   ..    
          .     
       RealAudio
  <http://www.realaudio.com/>.


  22..55..55..  ccaatt

  -  ,  cat --   
  ,     .   
    .



       $ cat sample.voc > /dev/dsp
       $ cat sample.wav > /dev/dsp
       $ cat sample.au > /dev/audio




   cat .au    /dev/audio  
  ,      ,    
     (  )  ..,  cat
  o ,   PCM  ( .wav 
  .voc)   /dev/dsp    .

   cat    .   
   ,     ,   
      ,       PCM
  ,        
   ,       (  ).


  33..    

           
  .       , 
      .


  33..11..  vvoolluummee

      -   
   (    ?).    
    Tcl/Tk      
       .au.   
    CD-  Tcl/Tk CD.

    Freeware    Sam Lantinga
  (slouken@cs.ucdavis.edu).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/soundcard/volume-2.1.tar.gz>.


  33..22..  SSoouunndd SSttuuddiioo

     Tcl/Tk,   ,  
      sox.   sox 
  ,    .

     Paul Sharpe  N. J. Bailey (N.J.Bailey@leeds.ac.uk).
       ,  
    .

         Studio
  <http://www.elec-
  eng.leeds.ac.uk/staff/een6njb/Software/Studio/screens.html>.


  33..33..  TTiicckkllee MMuussiicc

   _b_e_t_a-  Tcl/Tk    ,
        
      .   gmod
     MOD- mp  
  MIDI- (      
   ).

     Shannon Hendrix (shendrix@pcs.cnu.edu 
  shendrix@escape.widomaker.com).

      
  <ftp://sunsite.unc.edu/pub/Linux/apps/sound/players/tmusic-1.0.tar.gz>.


  44..  


  1.    ,   
     .

  2. The Linux Sound HOWTO.      Linux Documentation
     Project <http://sunsite.unc.edu/LDP/>.

  3.    MIDI  Linux
     <http://www.bright.net/~dlphilp/linux_soundapps.html>

  4. Programmer's Guide to OSS (  OSS)
     <http://www.4front-tech.com/pguide/>

  5.   SoX <http://www.spies.com/Sox/>




