Hello,
I am new to Gstreamer, and I am trying to adapt a code using Gstreamer 0.1 to 1.0. The code is a synchronizing buffer for eye-tracking glasses (written in python). The code basically receives raw data (images and eye-tracking datapoints) from the glasses, and when a frame is decoded, the synchroniser finds the corresponding eye-tracking datapoint (the nearest in time), and publishes both to a ROS topic.
In the version using Gstreamer 0.1, the _decoded_buffer callback function received a buffer containing the image, its offset, and a timestamp. This timestamp is not directly usable to find the corresponding eye-tracking datapoint because they use different timeframes, but an other callback function received "offset" - "pts" pairs, and the glasses also send "pts" - "eye tracking timestamps" pairs, so the code found the corresponding eye-tracking datapoint the following way: for each decoded image it found the "pts" corresponding to the image's offset, and then found the eye-tracking timestamp corresponding to the "pts" of the image.
The Gstreamer 1.0 returns buffers with invalid "offset" values "GstBufferOffsetNone", so now I don't know how to find the eye-tracking datapoint that matches the image. I would need either the "offset" or the "pts", something that I can use to find the nearest eye-tracking datapoint timestamp.
I am a newbie with Gstreamer, and would be thankful for any help.
Best regards, Maxim _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le mercredi 11 décembre 2019 à 23:24 +0000, Pavliv Maxim a écrit :
> Hello, > > I am new to Gstreamer, and I am trying to adapt a code using Gstreamer 0.1 to 1.0. The code is a synchronizing buffer for eye-tracking glasses (written in python). > The code basically receives raw data (images and eye-tracking datapoints) from the glasses, and when a frame is decoded, the synchroniser finds the corresponding eye-tracking datapoint (the nearest in time), and publishes both to a ROS topic. > > In the version using Gstreamer 0.1, the _decoded_buffer callback function received a buffer containing the image, its offset, and a timestamp. This timestamp is not directly usable to find the corresponding eye-tracking datapoint because they use different timeframes, but an other callback function received "offset" - "pts" pairs, and the glasses also send "pts" - "eye tracking timestamps" pairs, so the code found the corresponding eye-tracking datapoint the following way: for each decoded image it found the "pts" corresponding to the image's offset, and then found the eye-tracking timestamp corresponding to the "pts" of the image. > > The Gstreamer 1.0 returns buffers with invalid "offset" values "GstBufferOffsetNone", so now I don't know how to find the eye-tracking datapoint that matches the image. I would need either the "offset" or the "pts", something that I can use to find the nearest eye-tracking datapoint timestamp. There is too little information to answer your question. Be aware that in 1.0, we carry up two timestamps. Maybe this could help. Sharing more details may help getting better answer. > > I am a newbie with Gstreamer, and would be thankful for any help. > > Best regards, > Maxim > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |