sync=false and rate

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

sync=false and rate

eyalhir74
Hi,
  I would appreciate if someone could explain why this:
gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink
video-sink=xvimagesink

  Displays the video in 10fps
  And the one below, ignores the 10fps limit:
gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink
video-sink=xvimagesink sync=false

 Obviously the difference is the "sync=false" element. But why?

 Also, what can I do if I want to add a videotestsrc that will output 10fps
images to a bin which ends with
a xvimagesink with sync=false, and I can't drop the sync=false code?

thanks
Eyal



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

Re: sync=false and rate

Nicolas Dufresne-5
Le lundi 12 avril 2021 à 08:25 -0500, eyalhir74 a écrit :

> Hi,
>   I would appreciate if someone could explain why this:
> gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink
> video-sink=xvimagesink
>
>   Displays the video in 10fps
>   And the one below, ignores the 10fps limit:
> gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink
> video-sink=xvimagesink sync=false
>
>  Obviously the difference is the "sync=false" element. But why?

In GStreamer, specially for non-live playback like this, it's the sink elements
(leaf of the graph) that are responsible for time synchronisation. Sink will
translate the timestamp and segments to the pipeline clock and wait for the
right moment to present the media. The "sync" property allow users to disable
the synchronisation, which cause the content to be presented immediately.

>
>  Also, what can I do if I want to add a videotestsrc that will output 10fps
> images to a bin which ends with
> a xvimagesink with sync=false, and I can't drop the sync=false code?

That's an unfortunate problem, though specifically you can turn the pipeline
into live. "videotestsrc is-live=1". The data will be produced (let go) at 10fps
at the source, which will accidently make the display present at about 10pfs.
When you deal with elements that don't natively support being live, you can
alway use "identity sync=1" to simulate live pipeline from a non-live source. Be
careful, the data need to have time information, so place this element after any
demuxer or parser.

>
> thanks
> Eyal
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> 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
Reply | Threaded
Open this post in threaded view
|

AW: sync=false and rate

Thornton, Keith
In reply to this post by eyalhir74
Hi, sync=false tells the sink to ignore the timestamps and immediately output any frames it receives. If you put a videorate in your pipeline it might help.
Gruesse

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel <[hidden email]> Im Auftrag von eyalhir74
Gesendet: Montag, 12. April 2021 15:26
An: [hidden email]
Betreff: sync=false and rate

Hi,
  I would appreciate if someone could explain why this:
gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink video-sink=xvimagesink

  Displays the video in 10fps
  And the one below, ignores the 10fps limit:
gst-launch-1.0 videotestsrc !  video/x-raw,framerate=10/1 ! fpsdisplaysink video-sink=xvimagesink sync=false

 Obviously the difference is the "sync=false" element. But why?

 Also, what can I do if I want to add a videotestsrc that will output 10fps images to a bin which ends with a xvimagesink with sync=false, and I can't drop the sync=false code?

thanks
Eyal



--
Sent from: https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fgstreamer-devel.966125.n4.nabble.com%2F&amp;data=04%7C01%7C%7Ce835eb290a9743b2718208d8fdbf8279%7C28042244bb514cd680347776fa3703e8%7C1%7C0%7C637538346257017513%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=Q4PVbuT%2Fnr5N2n%2B%2BqwX3wNTL5Ga0DLA8QLic1Ns6cBA%3D&amp;reserved=0
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Fgstreamer-devel&amp;data=04%7C01%7C%7Ce835eb290a9743b2718208d8fdbf8279%7C28042244bb514cd680347776fa3703e8%7C1%7C0%7C637538346257027471%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=z%2FTqH7%2FgLn4VaLpqjRKXXT7owdj8m9gV6pwNcWM0GJs%3D&amp;reserved=0
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel