mirror of https://git.ffmpeg.org/ffmpeg.git
avdevice/alsa: fix indefinite stop on closing PCM capture
Fixes: https://bugs.archlinux.org/task/58619 Found-by: Elias (Bleuzen) https://bugs.archlinux.org/user/26956 Signed-off-by: Nicolas George <george@nsup.org>
This commit is contained in:
parent
22c820f509
commit
f9a061a31c
|
@ -300,8 +300,10 @@ av_cold int ff_alsa_close(AVFormatContext *s1)
|
||||||
{
|
{
|
||||||
AlsaData *s = s1->priv_data;
|
AlsaData *s = s1->priv_data;
|
||||||
|
|
||||||
snd_pcm_nonblock(s->h, 0);
|
if (snd_pcm_stream(s->h) == SND_PCM_STREAM_PLAYBACK) {
|
||||||
snd_pcm_drain(s->h);
|
snd_pcm_nonblock(s->h, 0);
|
||||||
|
snd_pcm_drain(s->h);
|
||||||
|
}
|
||||||
av_freep(&s->reorder_buf);
|
av_freep(&s->reorder_buf);
|
||||||
if (CONFIG_ALSA_INDEV)
|
if (CONFIG_ALSA_INDEV)
|
||||||
ff_timefilter_destroy(s->timefilter);
|
ff_timefilter_destroy(s->timefilter);
|
||||||
|
|
Loading…
Reference in New Issue