[Bug 777984] isomp4: initial ftyp/moov streamheader missing

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Feb 9 14:09:50 UTC 2017


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

--- Comment #7 from Andoni Morales <ylatuya at gmail.com> ---
You can stream streamable formats like matroska, flv or mpeg-ts with
tcpserversink because:
  1) the format provide inband information about the frames boundaries
  2) tcpserversink starts new connections appending the streamehaders
  3) tcpserversink syncs on a keyframe for seeking.
And that's all you need in the client side to start playback with these
formats.

With mp4, there is no inband information about frames boundaries, it's only
available in the container headers, in the stream index. With fragmented mp4
the whole header is split into parts, the streams description at the beginning
than for each segment a moof atom with the stream index for that range. So for
an MP4 segment to be autocontained you need the streamheaders cointaining the
moov atom (streams info and codec data) to initialize both the demuxer and the
decoder, and for each segment, the moof atom whith the index for this
particular segment. 

On your client implementation you will probably have to do the demuxing your
self, parsing the moof fore each segment to split the input stream in frames to
feed into the decoder using the MSE API.

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