[Bug 690197] alsasrc: gets stuck in infinite loop if usb audio device is disconnected while being used
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Dec 17 12:55:14 PST 2012
https://bugzilla.gnome.org/show_bug.cgi?id=690197
GStreamer | gst-plugins-base | git
Tim-Philipp Müller <t.i.m> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Target Milestone|HEAD |1.1.1
Summary|pipeline alsasrc device=<> |alsasrc: gets stuck in
|! alsasink leads to |infinite loop if usb audio
|infinite loop |device is disconnected
| |while being used
--- Comment #7 from Tim-Philipp Müller <t.i.m at zen.co.uk> 2012-12-17 20:55:07 UTC ---
commit df6031f7c656489f665d01fb629315cf50f09536
Author: Tim-Philipp Müller <tim at centricular.net>
Date: Mon Dec 17 20:32:52 2012 +0000
alsasrc: return negative value on read error
Otherwise baseaudiosrc won't go into the error code path.
https://bugzilla.gnome.org/show_bug.cgi?id=690197
commit 68f366a8d37e5fb71106869b41911a749382143c
Author: Tim-Philipp Müller <tim at centricular.net>
Date: Mon Dec 17 20:28:12 2012 +0000
audiobasesrc: bail out if subclass posts an error
Use new ringbuffer ERROR state to make all the various
threads bail out correctly when the subclass posts an
error. It's a bit iffy to communicate this properly
between the different bits of code.
https://bugzilla.gnome.org/show_bug.cgi?id=690197
commit 4f49c7a33ba32cf1b30c4023570b241c24babd1a
Author: Tim-Philipp Müller <tim at centricular.net>
Date: Mon Dec 17 20:26:33 2012 +0000
audioringbuffer: add GST_AUDIO_RING_BUFFER_STATE_ERROR state
API: GST_AUDIO_RING_BUFFER_STATE_ERROR
https://bugzilla.gnome.org/show_bug.cgi?id=690197
Not trivial to backport to 0.10 I'm afraid, since there's no
GstElementClass::post_message function there. You'd have to take the code from
the == MESSAGE ERROR block in post_message, and put it before/after the
GST_ELEMENT_ERROR call in device_disconnected: in alsasrc or so. Good luck!
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list