Mon, 31 Dec 2007 (14:08 -0500 UTC) robert delius royar wrote:
I do not know which CVS first exhibited this problem, but it first
showed up
when I recompiled XEmacs 21.5.28b after upgrading to Mac OS X 10.5.1. The
newest changelog in the tree is dated 2007-12-21, but version.sh is no
longer being updated in CVS.
I have included installation info at the end of this message.
I can no longer get XEmacs to play sounds through my (working) Enlighten
Sound Daemon (v 2.38). I have verified that ESD is working on the system
(launched at startup and plays through 127.0.0.1:16001). I verified this by
playing /usr/local/share/xemacs/xemacs-packages/etc/sounds/boing.wav with
esdplay; I also verified that sound-extension-list is ".wav" and that
load-default-sounds reports "Loading sounds..." and "Loading
sounds...done".
However, no sounds play in XEmacs other than the system beep. And
device-sound-enabled-p returns nil.
I found the line (110) in XEmacs src/esd.c that was the root of the problem:
sock = esd_play_stream(flags, speed, NULL, ESD_NAME);
The function in esdlib is prototyped as int esd_play_stream( esd_format_t
format, int rate, const char *host, const char *name );
Passing the value NULL for the host worked until I recompiled XEmacs for
Leopard. esd expects a host name or an octet string (with optional
port/socketname appended). But the code in esdlib is supposed to accept !host
as a signal to use localhost.
However, it doesnot to work because of the new scheme for setting DISPLAY in OS
X.
If I change the call from XEmacs so that the NULL is replaced by "localhost",
the sound plays. If I change the code in esdlib.c so that esd_play_stream
checks for host==NULL and calls esd_open_sound("localhost") instead of
esd_open_sound(NULL), then the sounds will also work. Either "fix" gets the
sounds back.
I have not tried the third alternative of setting the environment variable
ESPEAKER to "localhost". It might also work; however, on the previous OS
(10.4), setting ESPEAKER caused hangups in XEmacs. On 10.3, it was the only
way to get esd to play.
I just wanted to followup in case anyone else using OS X 10.5 found a similar
problem with sounds.
BTW: Is anyone working on a way to use CoreAudio from within XEmacs--similar to
the way Windows sound is treated?
--
Dr. Robert Delius Royar Associate Professor of English
Morehead State University Morehead, Kentucky
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta