[Bug 688310] New HLS sink element using the GstBaseAdaptiveSink base class

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sat Apr 20 02:43:09 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=688310
  GStreamer | gst-plugins-bad | 1.x

--- Comment #8 from Andoni Morales <ylatuya at gmail.com> 2013-04-20 09:43:03 UTC ---
(In reply to comment #7)
> 2) Why is multifilesink wrong for Smooth Streaming live? For encryption, it
> might make sense to add an extension point (like an insertbin) before the sink.

In Smooth Streaming Live there is a special atom for live which includes the
timestamp of the incoming next 2 fragments. The playlist is not reloaded by
clients and that's the way clients know when the should fetch the next
fragment. It's easier to store the whole fragment in memory and rewrite this
part when you have queued enough fragments rather than reading back your
fragment from disk.
For encryption it's not that important because most cyphers are block cyphers,
but you could have some a signal in the sink emitting  'fragment-added' so that
applications could apply their own encryption.
The point of using multifilesink is that  you shouldn't take care of delimiting
fragments (it already does it using the GstForceKeyUnit event) and you
shouldn't need to write code to write buffers to disk... But in the end you
still need to keep track of fragment boundaries in the sink (for timestamps and
fragments size) and you also need to have code to write buffers to disk (for
writing playlists) so there is no real benefit and it adding more code to the
sink.
But that's been discussed several times and I can live with it :)


> 3) Why do you care if the keyframe is forced or not? Can't you just wait for
> the first keyframe after the 10 second mark? Why does using FLAG_DELTA_UNIT
> need to be an option ?
You do care about the GstForceKeyUnit events because they fully delimit the
boundaries of a fragment.  Containers also do their job on the fragmentation
when they receive a GstForceKeyUnit event. For instance mpeg-ts ensures that
the fragment starts with a SPS/PPS and MP4 creates a Movie Fragment adding the
Movie Fragment Headers and flushing the queued buffers for the fragments.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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