[Gstreamer-bugs] [Bug 142501] New: - Esd lock with threaded gstreamer.
bugzilla-daemon at bugzilla.gnome.org
bugzilla-daemon at bugzilla.gnome.org
Thu May 13 14:17:27 PDT 2004
http://bugzilla.gnome.org/show_bug.cgi?id=142501
GStreamer | gstreamer (core) | Ver: HEAD CVS
Summary: Esd lock with threaded gstreamer.
Product: GStreamer
Version: HEAD CVS
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gstreamer (core)
AssignedTo: gstreamer-maint at bugzilla.gnome.org
ReportedBy: nshmyrev at yandex.ru
QAContact: gstreamer-maint at bugzilla.gnome.org
How to reproduce:
1. Start any esd based application (xmms or xine)
2. Start the test
./test somefile.wav
3. After end of somefile playing, the other esd applications will lock until the
test exit or interrupt.
Why I think, that something strange with gstreamer - because I can't reproduce
problem with non-threaded gst play, for example, gst-launch.
test.c:
#include <stdlib.h>
#include <gst/gst.h>
int
main (int argc, char *argv[])
{
GstElement *filesrc, *sink, *spider;
GstElement *thread;
gst_init (&argc, &argv);
if (argc != 2) {
g_print ("usage: %s <filename>\n", argv[0]);
exit (-1);
}
/* create a new thread to hold the elements */
thread = gst_thread_new ("thread");
g_assert (thread != NULL);
/* create a disk reader */
filesrc = gst_element_factory_make ("filesrc", "disk_source");
g_assert (filesrc != NULL);
g_object_set (G_OBJECT (filesrc), "location", argv[1], NULL);
sink = gst_element_factory_make ("esdsink", "play_audio");
g_assert (sink != NULL);
spider = gst_element_factory_make ("spider", "spider");
g_assert (spider != NULL);
gst_bin_add_many(GST_BIN(thread),filesrc, spider, sink, NULL);
gst_element_link_many(filesrc, spider, sink, NULL);
/* make it ready */
gst_element_set_state (GST_ELEMENT (thread), GST_STATE_READY);
/* start playing */
gst_element_set_state (GST_ELEMENT (thread), GST_STATE_PLAYING);
gst_main ();
gst_object_unref (GST_OBJECT (thread));
exit (0);
}
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the QA contact for the bug, or are watching the QA contact.
More information about the Gstreamer-bugs
mailing list