[Bug 787300] basesink: Add property to handle seamless-seek by sink

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Sep 23 07:59:44 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=787300

--- Comment #9 from HoonHee Lee <hoonh83.lee at gmail.com> ---
Dear All.
I want to explain more.
And I want to assume that new segment is delivered directly to sink and it is
not forwarding to upstream (demux layer).

For example,
1) play 10s with 1x.
2) trick with 2x at 10s.
3) trick with 0.25 at 20s.
4) trick with 1.x at 25s.
5) paused while 10s.
6) play

Assume clock's absolute time at starting 0s.

For 1)
  * clock(absolute-time): 0s -> 10s
  * c.start-time: 0s
  * c.base-time: 0s
  * running-time: 0s -> 10s

For 2)
  * clock: 11s -> 20s
  * c.running-time vs b.running-time
         11s       ->        12s
         12s       ->        14s
         13s       ->        16s
         14s       ->        18s
         15s       ->        20s
         16s       ->        22s
         17s       ->        24s
         18s       ->        26s
         19s       ->        28s
         20s       ->        30s

For 3)
  * clock: 21s -> 25s
  * c.running-time vs b.running-time
         21s       ->        30.25s
         22s       ->        30.50s
         23s       ->        30.75s
         24s       ->        31.00s
         25s       ->        31.25s

For 4)
  * clock: 26s -> 30s
  * c.running-time vs b.running-time
         26s       ->        32.25s
         27s       ->        33.25s
         28s       ->        34.25s
         29s       ->        35.25s
         30s       ->        36.25s

For 5)
  * clock: 31 -> 40s
  * c.start-time: 30s
  * c.base-time: 0s
  * c.running-time: 30s

For 6)
  * clock: 41s -> ...
  * c.start-time: 30s
  * c.base-time: 10s
  * c.running-time: 30s

  * c.running-time vs b.running-time
         31s       ->        37.25s

My analysis is correct??
As I know, c.running-time is 31s and sink may would expect a buffer with
timestamp 31s after paused to playing. I am guessing there will be a jitter.


I am not sure how to synchronize correctly between clock, buffer and segment.
It would be helpful if you give some advices.

Thanks.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list