GNOME Bugzilla – Bug 118006
invalid time requested, returning _TIMEOUT
Last modified: 2009-08-15 18:40:50 UTC
Running this pipeline : ./gst-launch --gst-debug-level=5 filesrc location=/home/gstreamer/applications/changelog.txt ! udpsink host=localhost port=8080 control=2 I got for each iteration these messages : LOG GST_DATAFLOW(21756) gstbin.c(1016):gst_bin_iterate: [pipeline0] starting iteration LOG GST_REFCOUNTING(21756) gstobject.c(217):gst_object_ref: [pipeline0] ref 1->2 LOG scheduler(21756) gstoptimalscheduler.c(421):ref_chain: ref chain 0x80beef8 2->3 LOG scheduler(21756) gstoptimalscheduler.c(589):ref_group: ref group 0x80bedf8 4->5 LOG scheduler(21756) gstoptimalscheduler.c(908):schedule_chain: scheduling group 0x80bedf8 in chain 0x80beef8 LOG scheduler(21756) gstoptimalscheduler.c(589):ref_group: ref group 0x80bedf8 5->6 LOG scheduler(21756) gstoptimalscheduler.c(854):gst_opt_scheduler_schedule_run_queue: [GstOptScheduler@0x80bed50] entering scheduler run queue recursion 0 1 LOG scheduler(21756) gstoptimalscheduler.c(873):gst_opt_scheduler_schedule_run_queue: [GstOptScheduler@0x80bed50] scheduling group 0x80bedf8 LOG scheduler(21756) gstoptimalscheduler.c(940):get_group_schedule_function: get wrapper of group 0x80bedf8 LOG scheduler(21756) gstoptimalscheduler.c(954):get_group_schedule_function: doing get and push on pad "filesrc0:src" in group 0x80bedf8 LOG filesrc(21756) gstfilesrc.c(548):gst_filesrc_get: attempting to read 00000d58, 00005d58, 00000000, 00400000 LOG GST_BUFFER(21756) gstbuffer.c(313):gst_buffer_create_sub: new subbuffer 0x806c4e8 LOG GST_DATAFLOW(21756) gstpad.c(2286):gst_pad_push: [filesrc0:src] pushing LOG GST_DATAFLOW(21756) gstpad.c(2311):gst_pad_push: [filesrc0:src] calling chainhandler &0x403c134c of peer pad udpsink0:sink DEBUG default(21756) gstudpsink.c(277):: udpsink: clock wait: 18446744073709551615 DEBUG GST_CLOCK(21756) gstelement.c(759):gst_element_clock_wait: waiting on scheduler clock DEBUG GST_CLOCK(21756) gstclock.c(170):gst_clock_id_wait: invalid time requested, returning _TIMEOUT LOG GST_BUFFER(21756) gstdata.c(235):gst_data_unref: unref data 0x806c4e8, count before unref is 1 LOG GST_BUFFER(21756) gstdata.c(235):gst_data_unref: unref data 0x806c534, count before unref is 2 LOG scheduler(21756) gstoptimalscheduler.c(881):gst_opt_scheduler_schedule_run_queue: [GstOptScheduler@0x80bed50] done scheduling group 0x80bedf8 LOG scheduler(21756) gstoptimalscheduler.c(613):unref_group: unref group 0x80bedf8 6->5 LOG scheduler(21756) gstoptimalscheduler.c(886):gst_opt_scheduler_schedule_run_queue: [GstOptScheduler@0x80bed50] run queue length after scheduling 0 LOG scheduler(21756) gstoptimalscheduler.c(920):schedule_chain: done scheduling group 0x80bedf8 in chain 0x80beef8 LOG scheduler(21756) gstoptimalscheduler.c(613):unref_group: unref group 0x80bedf8 5->4 LOG scheduler(21756) gstoptimalscheduler.c(2059):gst_opt_scheduler_iterate: [GstOptScheduler@0x80bed50] iterate scheduled 0x80beef8 LOG scheduler(21756) gstoptimalscheduler.c(431):unref_chain: unref chain 0x80beef8 3->2 LOG GST_DATAFLOW(21756) gstbin.c(1034):gst_bin_iterate: [pipeline0] finished iteration LOG GST_REFCOUNTING(21756) gstobject.c(238):gst_object_unref: [pipeline0] unref 2->1 LOG GST_DATAFLOW(21756) gstbin.c(1016):gst_bin_iterate: [pipeline0] starting iteration LOG GST_REFCOUNTING(21756) gstobject.c(217):gst_object_ref: [pipeline0] ref 1->2
There're several issues about this bug : - Time shown isn't valid DEBUG default(21756) gstudpsink.c(277):: udpsink: clock wait: 18446744073709551615 - filesrc don't support timestamp and should support it .
What are you expecting it to do? The current behavior appears to be exactly how I would expect it. Note that filesrc _does_ put proper timestamps on the buffers. That timestamp is GST_CLOCK_TIME_NONE.
First , thanks for that quick answer :-) I expect to use udp & filesrc plugin to send data across network without need to use a more complex protocol as RTP. BTW , Why does it assign GST_CLOCK_TIME_NONE to all its buffers ? for me static timestamps has no sense at all , moreover why gst_clock_id_wait: need to show this message "invalid time requested, returning _TIMEOUT" ? someone could missunderstand it as i did. IMHO it isn't enough clear . Best Regards.
timestamps are NONE because filesrc has no way of knowing what the playout time should be.