KDE + ALSA revisited...
Daniel Gimpelevich
daniel at gimpelevich.san-francisco.ca.us
Fri Dec 31 11:21:33 MST 2004
It would appear that the Broken pipe got fixed by the following command:
sudo chmod 666 /dev/dsp* /dev/sndstat /dev/snd/*
On Tue, 28 Dec 2004 14:39:30 -0500, Joseph E. Sacco, Ph.D. wrote:
> I still cannot get the KDE sound stuff to work with ALSA or with the
> ALSA emulations of OSS. The sound test run from the KDE control panel
> generates recognizable sound embedded in a sea of white noise.
> Applications like XMMS and Xine, which appear to bypass the KDE sound
> system, work just fine with ALSA.
>
> I see this behavior with the YDL kernels as well as with other kernels I
> have built so I don't believe that it is a kernel configuration issue
> [maybe...].
>
> I have looked into the log files and have not seen anything revealing. I
> was wondering if I was missing any interesting messages that were being
> dumped to the console while KDE started up so I ran
>
> % startx > /tmp/startx.out 2>&1
>
> to collect whatever messages were being dumped to the console.
>
> I found the following:
>
> ...
>
> startkde: Starting up...
> mkdir: Owner of /tmp/.ICE-unix should be set to root
> kbuildsycoca running...
> SetClientVersion: 0 8
> ALSA lib pcm_hw.c:549:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed:
> Broken pipe
> ALSA lib pcm_hw.c:549:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed:
> Broken pipe
> ALSA lib pcm_hw.c:549:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed:
> Broken pipe
> _IceTransmkdir: Owner of /tmp/.ICE-unix should be set to root
> X Error: BadValue (integer parameter out of range for operation) 2
> Major opcode: 102
> Minor opcode: 0
> Resource id: 0x0
> Klipper is already running!
>
> ...
>
>
> Does this mean anything to anyone? For what it's worth, pcm_hw.c is a
> file in the ALSA library. In particular, the error message is raised by
> an ioctl failure:
>
>
> static int snd_pcm_hw_start(snd_pcm_t *pcm)
> {
> snd_pcm_hw_t *hw = pcm->private_data;
> int err;
> #if 0
> assert(pcm->stream != SND_PCM_STREAM_PLAYBACK ||
> snd_pcm_mmap_playback_hw_avail(pcm) > 0);
> #endif
> if (ioctl(hw->fd, SNDRV_PCM_IOCTL_START) < 0) {
> err = -errno;
> SYSERR("SNDRV_PCM_IOCTL_START failed");
> #if 0
> if (err == -EBADFD)
> SNDERR("PCM state = %s",
> snd_pcm_state_name(snd_pcm_hw_state(pcm)));
> #endif
> return err;
> }
> return 0;
> }
>
>
>
> -Joseph
More information about the yellowdog-general
mailing list