timecodestamper - how to

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

timecodestamper - how to

yair
i am looking to stamp my frames with SMTP timecode. in order to synchronize multiple streams on server.
but i dont get what i expect, depay overwrites the timecode with its own.  
PAY=       (GstVideoTimeCode)15:09:14:28
DEAPY= (GstVideoTimeCode)00:00:05:18

it might be an error in the plug or an error in my brain


PAY 
timecodestamper pay is configured to
get the timecode from RTC - (source=5, Timecode from real time clock)
ALWAYS push timecode - (set=2, Always set timecode and remove upstream timecode)
and has post-messages enabled to show it.
 
DEPAY 
timecodestamper is configured to 
KEEP timecode -  (set=0. Never set timecodes)  
and has post-messages enabled to show it.


#PAY
gst-launch-1.0 -m -v \
videotestsrc is-live=true ! "video/x-raw,width=720,height=480,framerate=1/1" \
! videoconvert ! clockoverlay ! timecodestamper post-messages=true set=2 source=0 \
! queue ! rtpgstpay config-interval=1 ! udpsink port=5000 host=127.0.0.1 \
 2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


#DEPAY
cps="application/x-rtp, media=(string)application, clock-rate=(int)90000, encoding-name=(string)X-GST, caps=(string)dmlkZW8veC1yYXcsIGZvcm1hdD0oc3RyaW5nKUk0MjAsIHdpZHRoPShpbnQpNzIwLCBoZWlnaHQ9KGludCk0ODAsIGZyYW1lcmF0ZT0oZnJhY3Rpb24pMS8xLCBtdWx0aXZpZXctbW9kZT0oc3RyaW5nKW1vbm8sIHBpeGVsLWFzcGVjdC1yYXRpbz0oZnJhY3Rpb24pMS8xLCBpbnRlcmxhY2UtbW9kZT0oc3RyaW5nKXByb2dyZXNzaXZl\0"

gst-launch-1.0 -m -v \
udpsrc port=5000 caps="$cps" ! rtpgstdepay \
! timecodestamper post-messages=true set=0 ! videoconvert ! autovideosink \
2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


 
  "post-messages"       : Post element message containing the current timecode
  
  "set"                 : Choose whether timecodes should be overridden or not
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSet" Default: 1, "keep"
                           (0): never            - Never set timecodes
                           (1): keep             - Keep upstream timecodes and only set if no upstream timecode
                           (2): always           - Always set timecode and remove upstream timecode

  "source"              : Choose from what source the timecode should be taken
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSource" Default: 0, "internal"
                           (0): internal         - Use internal timecode counter, starting at zero or value set by property
                           (1): zero             - Always use zero
                           (2): last-known       - Count up from the last known upstream timecode or internal if unknown
                           (3): last-known-or-zero - Count up from the last known upstream timecode or zero if unknown
                           (4): ltc              - Linear timecode from an audio device
                           (5): rtc              - Timecode from real time clock

btw.
im using RTPGSTPAY/DEPAY as i will be working with custom data, down the road

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: timecodestamper - how to

yair
in launch line for PAY -  source=5 (not 0 as above.)


either way, 
with GST_DEBUG=*stamper*:7 on the DEPAY i get weird messages. 

<timecodestamper0> received event qos event: 0x7f8ec4003570, time 99:99:99.999999999, seq-num 219, GstEventQOS, type=(GstQOSType)underflow, proportion=(double)0.99995626099444379, diff=(gint64)594361, timestamp=(guint64)71459716703;
<timecodestamper0> Handling video frame with running time 0:01:12.459720896
<timecodestamper0> Incremented internal timecode to 00:01:12:00
<timecodestamper0> Never saw an upstream timecode
<timecodestamper0> Created RTC timecode 16:25:29:00 for 2020-03-23 16:25 +0200 (436905 us)
<timecodestamper0> Incremented RTC timecode to 16:25:29:00 (+0:00:00.000000000 drift)

Got message #220 from element "timecodestamper0" (element): timecodestamper, timestamp=(guint64)72459720896, stream-time=(guint64)72459720896, running-time=(guint64)72459720896, duration=(guint64)1000000000, timecode=(GstVideoTimeCode)00:01:12:00;

On Mon, Mar 23, 2020 at 3:12 PM Yair Reshef <[hidden email]> wrote:
i am looking to stamp my frames with SMTP timecode. in order to synchronize multiple streams on server.
but i dont get what i expect, depay overwrites the timecode with its own.  
PAY=       (GstVideoTimeCode)15:09:14:28
DEAPY= (GstVideoTimeCode)00:00:05:18

it might be an error in the plug or an error in my brain


PAY 
timecodestamper pay is configured to
get the timecode from RTC - (source=5, Timecode from real time clock)
ALWAYS push timecode - (set=2, Always set timecode and remove upstream timecode)
and has post-messages enabled to show it.
 
DEPAY 
timecodestamper is configured to 
KEEP timecode -  (set=0. Never set timecodes)  
and has post-messages enabled to show it.


#PAY
gst-launch-1.0 -m -v \
videotestsrc is-live=true ! "video/x-raw,width=720,height=480,framerate=1/1" \
! videoconvert ! clockoverlay ! timecodestamper post-messages=true set=2 source=0 \
! queue ! rtpgstpay config-interval=1 ! udpsink port=5000 host=127.0.0.1 \
 2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


#DEPAY
cps="application/x-rtp, media=(string)application, clock-rate=(int)90000, encoding-name=(string)X-GST, caps=(string)dmlkZW8veC1yYXcsIGZvcm1hdD0oc3RyaW5nKUk0MjAsIHdpZHRoPShpbnQpNzIwLCBoZWlnaHQ9KGludCk0ODAsIGZyYW1lcmF0ZT0oZnJhY3Rpb24pMS8xLCBtdWx0aXZpZXctbW9kZT0oc3RyaW5nKW1vbm8sIHBpeGVsLWFzcGVjdC1yYXRpbz0oZnJhY3Rpb24pMS8xLCBpbnRlcmxhY2UtbW9kZT0oc3RyaW5nKXByb2dyZXNzaXZl\0"

gst-launch-1.0 -m -v \
udpsrc port=5000 caps="$cps" ! rtpgstdepay \
! timecodestamper post-messages=true set=0 ! videoconvert ! autovideosink \
2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


 
  "post-messages"       : Post element message containing the current timecode
  
  "set"                 : Choose whether timecodes should be overridden or not
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSet" Default: 1, "keep"
                           (0): never            - Never set timecodes
                           (1): keep             - Keep upstream timecodes and only set if no upstream timecode
                           (2): always           - Always set timecode and remove upstream timecode

  "source"              : Choose from what source the timecode should be taken
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSource" Default: 0, "internal"
                           (0): internal         - Use internal timecode counter, starting at zero or value set by property
                           (1): zero             - Always use zero
                           (2): last-known       - Count up from the last known upstream timecode or internal if unknown
                           (3): last-known-or-zero - Count up from the last known upstream timecode or zero if unknown
                           (4): ltc              - Linear timecode from an audio device
                           (5): rtc              - Timecode from real time clock

btw.
im using RTPGSTPAY/DEPAY as i will be working with custom data, down the road

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: timecodestamper - how to

yair
mybe the issue is with rtpgst discarding the metadata?
the following shows zero timecode

gst-launch-1.0 -m -v udpsrc port=5000 caps="$cps" ! rtpgstdepay ! queue ! timeoverlay time-mode=3 halignment=right ! autovideosink


On Mon, Mar 23, 2020 at 4:28 PM Yair Reshef <[hidden email]> wrote:
in launch line for PAY -  source=5 (not 0 as above.)


either way, 
with GST_DEBUG=*stamper*:7 on the DEPAY i get weird messages. 

<timecodestamper0> received event qos event: 0x7f8ec4003570, time 99:99:99.999999999, seq-num 219, GstEventQOS, type=(GstQOSType)underflow, proportion=(double)0.99995626099444379, diff=(gint64)594361, timestamp=(guint64)71459716703;
<timecodestamper0> Handling video frame with running time 0:01:12.459720896
<timecodestamper0> Incremented internal timecode to 00:01:12:00
<timecodestamper0> Never saw an upstream timecode
<timecodestamper0> Created RTC timecode 16:25:29:00 for 2020-03-23 16:25 +0200 (436905 us)
<timecodestamper0> Incremented RTC timecode to 16:25:29:00 (+0:00:00.000000000 drift)

Got message #220 from element "timecodestamper0" (element): timecodestamper, timestamp=(guint64)72459720896, stream-time=(guint64)72459720896, running-time=(guint64)72459720896, duration=(guint64)1000000000, timecode=(GstVideoTimeCode)00:01:12:00;

On Mon, Mar 23, 2020 at 3:12 PM Yair Reshef <[hidden email]> wrote:
i am looking to stamp my frames with SMTP timecode. in order to synchronize multiple streams on server.
but i dont get what i expect, depay overwrites the timecode with its own.  
PAY=       (GstVideoTimeCode)15:09:14:28
DEAPY= (GstVideoTimeCode)00:00:05:18

it might be an error in the plug or an error in my brain


PAY 
timecodestamper pay is configured to
get the timecode from RTC - (source=5, Timecode from real time clock)
ALWAYS push timecode - (set=2, Always set timecode and remove upstream timecode)
and has post-messages enabled to show it.
 
DEPAY 
timecodestamper is configured to 
KEEP timecode -  (set=0. Never set timecodes)  
and has post-messages enabled to show it.


#PAY
gst-launch-1.0 -m -v \
videotestsrc is-live=true ! "video/x-raw,width=720,height=480,framerate=1/1" \
! videoconvert ! clockoverlay ! timecodestamper post-messages=true set=2 source=0 \
! queue ! rtpgstpay config-interval=1 ! udpsink port=5000 host=127.0.0.1 \
 2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


#DEPAY
cps="application/x-rtp, media=(string)application, clock-rate=(int)90000, encoding-name=(string)X-GST, caps=(string)dmlkZW8veC1yYXcsIGZvcm1hdD0oc3RyaW5nKUk0MjAsIHdpZHRoPShpbnQpNzIwLCBoZWlnaHQ9KGludCk0ODAsIGZyYW1lcmF0ZT0oZnJhY3Rpb24pMS8xLCBtdWx0aXZpZXctbW9kZT0oc3RyaW5nKW1vbm8sIHBpeGVsLWFzcGVjdC1yYXRpbz0oZnJhY3Rpb24pMS8xLCBpbnRlcmxhY2UtbW9kZT0oc3RyaW5nKXByb2dyZXNzaXZl\0"

gst-launch-1.0 -m -v \
udpsrc port=5000 caps="$cps" ! rtpgstdepay \
! timecodestamper post-messages=true set=0 ! videoconvert ! autovideosink \
2>&1 | grep -o -P '(?<=timecode=).*(?=\;)'


 
  "post-messages"       : Post element message containing the current timecode
  
  "set"                 : Choose whether timecodes should be overridden or not
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSet" Default: 1, "keep"
                           (0): never            - Never set timecodes
                           (1): keep             - Keep upstream timecodes and only set if no upstream timecode
                           (2): always           - Always set timecode and remove upstream timecode

  "source"              : Choose from what source the timecode should be taken
                        flags: readable, writable
                        Enum "GstTimeCodeStamperSource" Default: 0, "internal"
                           (0): internal         - Use internal timecode counter, starting at zero or value set by property
                           (1): zero             - Always use zero
                           (2): last-known       - Count up from the last known upstream timecode or internal if unknown
                           (3): last-known-or-zero - Count up from the last known upstream timecode or zero if unknown
                           (4): ltc              - Linear timecode from an audio device
                           (5): rtc              - Timecode from real time clock

btw.
im using RTPGSTPAY/DEPAY as i will be working with custom data, down the road

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel