Throubles with Autovideosink ([xcb] Most likely this is a multi-threaded client and XInitThreads has not been called)
philippe renon
philippe_renon at yahoo.fr
Fri Nov 27 01:54:41 PST 2015
Did you try to call XInitThreads as mentionned in the error message that you got?
Le Vendredi 27 novembre 2015 9h46, Giacomo D <omagico.olo at gmail.com> a écrit :
*Hi everyone,
I'm writing an application which receives .mp4 streams over RTSP. I receive
them and show them like below:*
p_description = "playbin uri=%s " %uri + "mute=true"
new_pipeline = Gst.parse_launch(p_description)
new_pipeline.name = "pipeline_" + str(self.n_branch)
videobin = Gst.Bin.new("videobin"+str(self.n_branch))
timeoverlay =
Gst.ElementFactory.make("timeoverlay","timeoverlay"+str(self.n_branch))
videobin.add(timeoverlay)
pad = timeoverlay.get_static_pad("video_sink")
ghostpad = Gst.GhostPad.new("sink", pad)
videobin.add_pad(ghostpad)
queuesink =
Gst.ElementFactory.make("queue","queuesink"+str(self.n_branch))
videobin.add(queuesink)
videosink =
Gst.ElementFactory.make("autovideosink","autovideosink"+str(self.n_branch))
videobin.add(videosink)
timeoverlay.link(queuesink):
queuesink.link(videosink):
new_pipeline.set_property("video-sink", videobin)
# Sets buses for events on the pipeline
# bus = new_pipeline.get_bus()
# bus.add_signal_watch()
# bus.enable_sync_message_emission()
# bus.connect("message", self.on_message)
# bus.connect("sync-message::element", self.on_sync_message)
new_pipeline.set_state(Gst.State.PLAYING)
*
I'm having some issues because I used xvimagesink and my application crashes
sometimes on a particular .mp4 configuration:*
0:00:00.558593949 616 0x1082f70 WARN basesrc
gstbasesrc.c:2943:gst_base_src_loop:<udpsrc1> error: Errore interno nel
flusso di dati.
0:00:00.558637417 616 0x1082f70 WARN basesrc
gstbasesrc.c:2943:gst_base_src_loop:<udpsrc1> error: streaming task paused,
reason not-linked (-1)
0:00:00.569523427 616 0x1068770 WARN basetransform
gstbasetransform.c:1414:gst_base_transform_setcaps:<videoconvert0> transform
could not transform video/x-raw(memory:VASurface), format=(string)I420,
width=(int)1280, height=(int)720, interlace-mode=(string)progressive,
pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)mpeg2,
colorimetry=(string)bt709, framerate=(fraction)0/1 in anything we support
0:00:00.569718285 616 0x1068770 WARN basetransform
gstbasetransform.c:1414:gst_base_transform_setcaps:<videoconvert0> transform
could not transform video/x-raw(memory:VASurface), format=(string)I420,
width=(int)1280, height=(int)720, interlace-mode=(string)progressive,
pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)mpeg2,
colorimetry=(string)bt709, framerate=(fraction)0/1 in anything we support
*
If I change to autovideosink the problem is resolved!
But I have to change my application because autovideosink hasn't
"set_window_handle(xid)" method.
So I add "bus.connect("sync-message::element", self.on_sync_message)" to
capture my imagesink so:*
if message.get_structure().get_name() == 'prepare-window-handle':
newimagesink = message.src
*
But I'm getting another crash:*
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not
been called
[xcb] Aborting, sorry about that.
python3.4: ../../src/xcb_io.c:274: poll_for_event: asserzione
"!xcb_xlib_threads_sequence_lost" non riuscita.
*
If I add autovideosink slowly the problem doesn't appear...
Is there someone who can help me?
Thanks,
G.*
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Throubles-with-Autovideosink-xcb-Most-likely-this-is-a-multi-threaded-client-and-XInitThreads-has-no-tp4674668.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20151127/157ad19f/attachment-0001.html>
More information about the gstreamer-devel
mailing list