(frames_bury_buffer): Don't add a buffer to the frame's
[bpt/emacs.git] / src / sound.c
index 6f0e6fb..52fe1c1 100644 (file)
@@ -347,7 +347,8 @@ sound_cleanup (arg)
 {
   if (current_sound_device)
     {
-      current_sound_device->close (current_sound_device);
+      if (current_sound_device->close)
+       current_sound_device->close (current_sound_device);
       if (current_sound->fd > 0)
        emacs_close (current_sound->fd);
     }
@@ -355,7 +356,23 @@ sound_cleanup (arg)
 
 
 DEFUN ("play-sound", Fplay_sound, Splay_sound, 1, 1, 0,
-  "Play sound SOUND.")
+  "Play sound SOUND.\n\
+SOUND is a list of the form `(sound KEYWORD VALUE...)'.\n\
+The following keywords are recognized:\n\
+\n\
+  :file FILE.- read sound data from FILE.  If FILE Isn't an\n\
+absolute file name, it is searched in `data-directory'.\n\
+\n\
+  :data DATA - read sound data from string DATA.\n\
+\n\
+Exactly one of :file or :data must be present.\n\
+\n\
+  :volume VOL - set volume to VOL.  VOL must an integer in the\n\
+range 0..100 or a float in the range 0..1.0.  If not specified,\n\
+don't change the volume setting of the sound device.\n\
+\n\
+  :device DEVICE - play sound on DEVICE.  If not specified,\n\
+a system-dependent default device name is used.")
   (sound)
      Lisp_Object sound;
 {