X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavdevice%2Falsa.c;h=117b2ea144eac4e52d07985cc0074ec4f9f36307;hb=d7a0071a44ad31511bb0c59fb09b2f3358c03bfd;hp=1b21beb6d51e7416dc7c8bca2d0abfbc82acadf3;hpb=398000abcf980d239a789da6f69811913d2fc635;p=ffmpeg diff --git a/libavdevice/alsa.c b/libavdevice/alsa.c index 1b21beb6d51..117b2ea144e 100644 --- a/libavdevice/alsa.c +++ b/libavdevice/alsa.c @@ -300,8 +300,10 @@ av_cold int ff_alsa_close(AVFormatContext *s1) { AlsaData *s = s1->priv_data; - snd_pcm_nonblock(s->h, 0); - snd_pcm_drain(s->h); + if (snd_pcm_stream(s->h) == SND_PCM_STREAM_PLAYBACK) { + snd_pcm_nonblock(s->h, 0); + snd_pcm_drain(s->h); + } av_freep(&s->reorder_buf); if (CONFIG_ALSA_INDEV) ff_timefilter_destroy(s->timefilter);