home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 September / PCWELT_9_2006.ISO / pcwsoft / Freeciv-2.0.8-win32-gtk2-setup.exe / doc / README.sound < prev    next >
Encoding:
Text File  |  2005-10-13  |  4.3 KB  |  110 lines

  1.  
  2. ===========================================================================
  3.  Sound Support
  4. ===========================================================================
  5.  
  6. The server sends the client a list of primary and secondary sound tags
  7. for certain events. The 'primary' tags are those preferred by the
  8. current modpack. The client does not need to have these sounds. The
  9. 'secondary' tags should refer to standard sounds that all
  10. installations of Freeciv should have.
  11.  
  12. Tags are used to give an easy way to change sounds. A specfile is used
  13. to indicate which tags refer to which sound files. A change of spec
  14. file, given as an option at startup, will change sounds. For example,
  15.  
  16.     civclient --Sound mysounds.spec
  17.  
  18. will read sound files from "mysounds.spec". You will need to download
  19. or copy or link those sounds into whichever directory is mentioned in this 
  20. file first, or edit it to refer to the right files. All references are by 
  21. default relative to the data/ directory. Soundpacks can be downloaded from
  22. the Freeciv website in the tar format. You will either need to unpack them
  23. with eg "tar -xzvf stdsoundsX.tar.gz" or use WinZip (for Windows), and
  24. put the files in the data directory mentioned above.
  25.  
  26. Note that the CVS version neither includes any sound files nor any
  27. sound spec file. You can get soundsets (sound files and a spec file)
  28. from <ftp://ftp.freeciv.org/freeciv/contrib/sounds/>. At this address
  29. you find also extra sound files to change an existing soundset or
  30. create a new one.
  31.  
  32. ================================
  33.  Plugins
  34. ================================
  35.  
  36. The output of the sounds at the client side are done by plugins. The
  37. set of available plugins depend on the librarys found on the host
  38. system. You can choose the plugin the client should use via the
  39. command line:
  40.  
  41.     civclient --Plugin sdl
  42.  
  43. You can choose "none" to mute the client. Freeciv currently supports
  44. the following plugins:
  45.   - dummy (none)
  46.   - Esound (esd)
  47.   - SDL with SDL_mixer library (sdl)
  48.  
  49. To add support for a new plugin, change these files (where "whatever"
  50. is the name of the new plugin):
  51.     configure.in            /* add new test */
  52.     acconfig.h            /* add new config metavariable */
  53.     client/audio.c            /* link in new plugin */
  54.     client/Makefile.am        /* add the files below */
  55.     client/audio_whatever.c        /* audio plugin */
  56.     client/audio_whatever.h        /* audio plugin's header */
  57.  
  58. ================================
  59.  Tags
  60. ================================
  61.  
  62. There are two kinds of sound tags:
  63.  - defined in the rulesets
  64.  - defined in the program code
  65.  
  66. While the former can be chosen freely the latter can't be changed.
  67.  
  68. The sound tags associated with improvements (wonders and normal
  69. buildings), unit movements and unit fights have to be set in the
  70. rulesets. Freeciv just hand these sound tags over to the client where
  71. they are translated into the filenames of the sound files via the
  72. soundspec file. Every soundspec should have generic sound tags for
  73. wonders ("w_generic"), normal buildings ("b_generic"), unit movements
  74. ("m_generic") and unit fights ("f_generic").
  75.  
  76. Sound tags associated with certain events are generated in the Freeciv
  77. code and can't be configured from outside. The soundspec file also has
  78. to have mapping for these tags. The complete list of such tags can be
  79. found in data/stdsounds.spec. The name of the tag is enum name (see
  80. common/events.h) in lowercase. So E_POLLUTION becomes the tag
  81. "e_pollution". There is no generic event tag and no alternate tags are
  82. used.
  83.  
  84. There is currently only one music: the intro music. This music will be
  85. played until the game starts. The tag for this music is "music_start".
  86.  
  87. ================================
  88.  TODO
  89. ================================
  90.  
  91. There are a few things that can be done to get better sound support in
  92. Freeciv still:
  93.   * add more plugins (gstreamer, arts, windows, etc)
  94.   * add a sound tag for each technology, as for buildings/units
  95.   * add support for playing .ogg files
  96.   * always add more event tags
  97.   * find or create better sound samples and make better spec-file
  98.  
  99. ================================
  100.  Misc
  101. ================================
  102.  
  103. Sound creators: Please name sound files intelligibly. Include a README
  104. where you present the licensing terms used (if public domain, say so)
  105. for the sound files.
  106.  
  107. Modpack makers: Please give secondary tags that refer to standard tags 
  108. so that those who have not downloaded the latest & greatest sound pack 
  109. can still enjoy the game.
  110.