[gst-devel] GST_ELEMENT_ERROR not working ?

Antoine Tremblay hexa00 at gmail.com
Fri Aug 5 13:48:03 CEST 2005


Hi,

I'm using gstreamer 0.8.7 and i'm having problems with
GST_ELEMENT_ERROR in the doc it says : Utility function that elements
can use in case they encountered a fatal data processing error. The
pipeline will throw an error signal and the application will be
requested to stop further media processing.

But when I call it in a chain function and return from the chain, my
other plugins (especally the loop demuxer I use ) won't stop,,,  any
ideas ? Isn't it supposed to propagate ?

Here's the complete debug : 

DEBUG (0x8050908 - 312020:43:35.229851000) GST_ERROR_SYSTEM( 4557)
gstelement.c(2208):gst_element_error_func: forwarded error "ERROR --
failed to init ra decoder" from vanradecoder0 to pipeline0
LOG   (0x8050908 - 312020:43:35.229895000) GST_REFCOUNTING( 4557)
gstobject.c(246):gst_object_unref:<vanradecoder0> unref 6->5
LOG   (0x8050908 - 312020:43:35.229924000) GST_REFCOUNTING( 4557)
gstobject.c(246):gst_object_unref:<pipeline0> unref 4->3
INFO  (0x8050908 - 312020:43:35.229953000) GST_ERROR_SYSTEM( 4557)
gstelement.c(2577):gst_element_error_full: signalled error in
vanradecoder0: ERROR -- failed to init ra decoder
DEBUG (0x8050908 - 312020:43:35.229985000)       scheduler( 4557)
gstoptimalscheduler.c(1060):group_error_handler: group 0x8200148 has
errored
LOG   (0x8050908 - 312020:43:35.230011000)       scheduler( 4557)
gstoptimalscheduler.c(728):chain_group_set_enabled: request to 0 group
0x8200148 in chain 0x8200108, have 1 groups enabled out of 1
DEBUG (0x8050908 - 312020:43:35.230039000)       scheduler( 4557)
gstoptimalscheduler.c(762):chain_group_set_enabled: disable group
0x8200148 in chain 0x8200108, now 0 groups enabled out of 1
DEBUG (0x8050908 - 312020:43:35.230067000)       scheduler( 4557)
gstoptimalscheduler.c(765):chain_group_set_enabled: disable chain
0x8200108
DEBUG (0x8050908 - 312020:43:35.230095000)         default( 4557)
gstelement.c(2733):gst_element_set_state:<vanradecoder0> setting state
to PAUSED
LOG   (0x8050908 - 312020:43:35.230123000) GST_REFCOUNTING( 4557)
gstobject.c(226):gst_object_ref:<vanradecoder0> ref 3->4
LOG   (0x8050908 - 312020:43:35.230150000) GST_REFCOUNTING( 4557)
gstobject.c(226):gst_object_ref:<vanradecoder0> ref 4->5
INFO  (0x8050908 - 312020:43:35.230176000)      GST_STATES( 4557)
gstelement.c(2768):gst_element_set_state_func:<vanradecoder0> setting
state from PLAYING to PAUSED
DEBUG (0x8050908 - 312020:43:35.230220000)      GST_STATES( 4557)
gstelement.c(2791):gst_element_set_state_func:<vanradecoder0> start:
setting current state PLAYING again
LOG   (0x8050908 - 312020:43:35.230251000) GST_REFCOUNTING( 4557)
gstobject.c(226):gst_object_ref:<vanradecoder0> ref 5->6
LOG   (0x8050908 - 312020:43:35.230278000)      GST_STATES( 4557)
gstelement.c(2965):gst_element_change_state:<vanradecoder0> default
handler tries setting state from PLAYING to PAUSED (0804)
DEBUG (0x8050908 - 312020:43:35.230307000)        GST_PADS( 4557)
gstpad.c(466):gst_pad_set_active: de-activating pad vanradecoder0:src
LOG   (0x8050908 - 312020:43:35.230350000)       GST_EVENT( 4557)
gstobject.c(369):gst_object_dispatch_properties_changed: deep
notification from src to vanradecoder0 (active)
LOG   (0x8050908 - 312020:43:35.230391000)       GST_EVENT( 4557)
gstobject.c(369):gst_object_dispatch_properties_changed: deep
notification from src to pipeline0 (active)
DEBUG (0x8050908 - 312020:43:35.230431000)        GST_PADS( 4557)
gstpad.c(466):gst_pad_set_active: de-activating pad vanradecoder0:sink
LOG   (0x8050908 - 312020:43:35.230473000)       GST_EVENT( 4557)
gstobject.c(369):gst_object_dispatch_properties_changed: deep
notification from sink to vanradecoder0 (active)
LOG   (0x8050908 - 312020:43:35.230514000)       GST_EVENT( 4557)
gstobject.c(369):gst_object_dispatch_properties_changed: deep
notification from sink to pipeline0 (active)
LOG   (0x8050908 - 312020:43:35.230556000)      GST_STATES( 4557)
gstelement.c(3028):gst_element_change_state:<vanradecoder0> signaling
state change from PLAYING to PAUSED
DEBUG (0x8050908 - 312020:43:35.230585000)       scheduler( 4557)
gstoptimalscheduler.c(1553):gst_opt_scheduler_state_transition:
element "vanradecoder0" state change (0804)
LOG   (0x8050908 - 312020:43:35.230613000)       scheduler( 4557)
gstoptimalscheduler.c(1079):group_element_set_enabled: request to 0
element vanradecoder0 in group 0x8200148, have 4 elements enabled out
of 4
DEBUG (0x8050908 - 312020:43:35.230643000)       scheduler( 4557)
gstoptimalscheduler.c(1113):group_element_set_enabled: disable element
vanradecoder0 in group 0x8200148, now 3 elements enabled out of 4
LOG   (0x8050908 - 312020:43:35.230671000)      GST_STATES( 4557)
gstbin.c(673):gst_bin_child_state_change: child vanradecoder0 changed
state in bin pipeline0 from PLAYING to PAUSED
LOG   (0x8050908 - 312020:43:35.230702000)             bin( 4557)
gstbin.c(700):gst_bin_child_state_change_func:<pipeline0> before child
state change: 4 elements: 4 PLAYING, 0 PAUSED, 0 READY, 0 NULL, own
state: PLAYING
LOG   (0x8050908 - 312020:43:35.230733000)             bin( 4557)
gstbin.c(725):gst_bin_child_state_change_func:<pipeline0> after child
state change: 4 elements: 3 PLAYING, 1 PAUSED, 0 READY, 0 NULL, own
state: PLAYING

Thanks a lot

Antoine




More information about the gstreamer-devel mailing list