[Bug 793058] qtdemux: add support for edit lists for fragmented files in push mode

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Mar 31 17:40:57 UTC 2018


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

--- Comment #18 from Alicia Boya García <aboya at igalia.com> ---
(In reply to Thiago Sousa Santos from comment #17)
> How does this patch handle this?
> 
> """
> A non‐empty edit may insert a portion of the media timeline that is not
> present in the initial movie, and
> is present only in subsequent movie fragments. Particularly in an empty
> initial movie of a fragmented
> movie file (when there are no media samples yet present), the
> segment_duration of this edit may be
> zero, whereupon the edit provides the offset from media composition time to
> movie presentation time,
> for the movie and subsequent movie fragments. It is recommended that such an
> edit be used to
> establish a presentation time of 0 for the first presented sample, when
> composition offsets are used.
> """

It doesn't, because that's a different problem (a). See this patch for that:

qtdemux: edits with duration = 0 don't work on files without a mehd
https://bugzilla.gnome.org/show_bug.cgi?id=794858
https://bug794858.bugzilla-attachments.gnome.org/attachment.cgi?id=370389

> Also, just because the PTS on a buffer is non-zero it doesn't mean that the
> first PTS for the running time is going to be non-zero as well.

That's correct, but I see no problem with the patch.

> Shifting both the buffer PTS and segment start by the same amount makes it
> effectively be 0 on running time point of view.

But that's not what we want with edit lists. Edit list should shift running
time too. An edit list can be used not only to displace the track in movie
presentation (it's current, usual use case), but to compose a movie with slices
of the track (its original purpose). You could for instance set media_time = 5
minutes and would expect the frame with track PTS (CTS) = 5 minutes to be
played immediately and be rendered to the user as 0:00:00.

-- 
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