Thanks for reply. System Information is: OS: Ubuntu 8.10 Kernel: 2.6.27-7-generic #1 SMP libasound2: 1.0.17a (1.0.17a-0ubuntu4) libasound2-plugins: 1.0.17 (1.0.17-0ubuntu4) pulseaudio: 0.9.10 (0.9.10-2ubuntu8) installed pulseaudio packages: > $ dpkg --get-selections | grep pulseaudio > gstreamer0.10-pulseaudio install > pulseaudio install > pulseaudio-esound-compat install > pulseaudio-module-gconf install > pulseaudio-module-hal install > pulseaudio-module-x11 install > pulseaudio-module-zeroconf install > pulseaudio-utils install pulseaudio setting from PerfectSetup > $ cat .pulse/default.pa > load-module module-esound-protocol-tcp auth-ip-acl=127.0.0.1; 192.168.0.0/16 > load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1; 192.168.0.0/16 > load-module module-zeroconf-publish > > load-module module-alsa-sink device=hw:0 > load-module module-alsa-source device=hw:0 alsa setting from PerfectSetup > $ cat ~/.asoundrc > pcm.pulse { > type pulse > } > > ctl.pulse { > type pulse > } > > pcm.!default { > type pulse > } > > ctl.!default { > type pulse > } Error Msg of arecord program: > $ arecord -d 10 -f cd -t wav foobar.wav > Recording WAVE 'foobar.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo > arecord: pcm_read:1473: read error: Input/output error > $ arecord(aplay.c) program dies at pcm_read() which is in aplay.c: > pcm_read() > -> readi_func() > -> snd_pcm_readi() and snd_pcm_readi() function returns -EIO(-5) In aplay.c: > /* > * read function > */ > > static ssize_t pcm_read(u_char *data, size_t rcount) > { > ... > while (count > 0) { > r = readi_func(handle, data, count); > fprintf(stderr, "pcm->setup: %d\n", handle->setup); > if (r == -EAGAIN || (r >= 0 && (size_t)r < count)) { > snd_pcm_wait(handle, 1000); > } else if (r == -EPIPE) { > xrun(); > } else if (r == -ESTRPIPE) { > suspend(); > } else if (r < 0) { > error(_("read error: %s"), snd_strerror(r)); > exit(EXIT_FAILURE); > } > if (r > 0) { > ... In snd_pcm_readi() function (src/pcm/pcm.c of alsa-lib), it seems CHECK_SANITY(! pcm->setup) condition makes IO error In src/pcm/pcm.c: > snd_pcm_sframes_t snd_pcm_readi(snd_pcm_t *pcm, void *buffer, snd_pcm_uframes_t size) > { > assert(pcm); > assert(size == 0 || buffer); > if (CHECK_SANITY(! pcm->setup)) { > SNDMSG("PCM not set up"); > return -EIO; > } > if (pcm->access != SND_PCM_ACCESS_RW_INTERLEAVED) { > SNDMSG("invalid access type %s", snd_pcm_access_name(pcm->access)); > return -EINVAL; > } > return _snd_pcm_readi(pcm, buffer, size); > } And there was only one place where sets pcm->setup is _snd_pcm_hw_params() in src/pcm/pcm_params.c. Thanks for any advice, -- Best Regards, Keedi Kim 2008/10/17 Luke Yelavich <themuso at ubuntu.com> > On Fri, Oct 17, 2008 at 02:10:22PM EST, Keedi Kim wrote: > > Hi. > > > > I followed PerfectSetup of pulseaudio wiki, > > then aplay works well, but arecord doesn't. > > ALSA's arecord terminates with > > "pcm_read:1473: read error: Input/output error" message. > > > > Does anybody has idea? > > Could you please tell us what version of alsa-lib/libasound2, > alsa-plugins/libasound2-plugins and pulseaudio you are running? Having a > better idea what software versions you have will better help us work out the > problem. > > Luke > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > > iEYEARECAAYFAkj4BVEACgkQjVefwtBjIM4g1QCg3UjPGhHeYbjvMWXF0OR9rgXS > rvQAoO30vGWi9gsrR83YJ11R71IPVl+t > =ucms > -----END PGP SIGNATURE----- > > _______________________________________________ > pulseaudio-discuss mailing list > pulseaudio-discuss at mail.0pointer.de > https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20081017/c262478a/attachment.htm>