Update of /cvsroot/alsa/alsa-utils/aplay In directory sc8-pr-cvs1:/tmp/cvs-serv27224
Modified Files: aplay.c Log Message: Added handling of DRAINING state and extended verbose parts Index: aplay.c =================================================================== RCS file: /cvsroot/alsa/alsa-utils/aplay/aplay.c,v retrieving revision 1.167 retrieving revision 1.168 diff -u -r1.167 -r1.168 --- aplay.c 29 Jul 2003 14:33:47 -0000 1.167 +++ aplay.c 30 Jul 2003 17:54:42 -0000 1.168 @@ -937,7 +937,9 @@ gettimeofday(&now, 0); snd_pcm_status_get_trigger_tstamp(status, &tstamp); timersub(&now, &tstamp, &diff); - fprintf(stderr, "xrun!!! (at least %.3f ms long)\n", diff.tv_sec * 1000 + diff.tv_usec / 1000.0); + fprintf(stderr, "%s!!! (at least %.3f ms long)\n", + stream == SND_PCM_STREAM_PLAYBACK ? "underrun" : "overrun", + diff.tv_sec * 1000 + diff.tv_usec / 1000.0); if (verbose) { fprintf(stderr, "Status:\n"); snd_pcm_status_dump(status, log); @@ -947,6 +949,23 @@ exit(EXIT_FAILURE); } return; /* ok, data should be accepted again */ + } if (snd_pcm_status_get_state(status) == SND_PCM_STATE_DRAINING) { + if (verbose) { + fprintf(stderr, "Status(DRAINING):\n"); + snd_pcm_status_dump(status, log); + } + if (stream == SND_PCM_STREAM_CAPTURE) { + fprintf(stderr, "capture stream format change? attempting recover...\n"); + if ((res = snd_pcm_prepare(handle))<0) { + error("xrun(DRAINING): prepare error: %s", snd_strerror(res)); + exit(EXIT_FAILURE); + } + return; + } + } + if (verbose) { + fprintf(stderr, "Status(R/W):\n"); + snd_pcm_status_dump(status, log); } error("read/write error, state = %s", snd_pcm_state_name(snd_pcm_status_get_state(status))); exit(EXIT_FAILURE); ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Alsa-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-cvslog