isomp4/mux: fixes for fragmented mp4 output
commit a4fe0af4
isomp4/mux: add a function for seeking to a specific output byte position
We do it enough times that this makes sense. Also add a debug log line
for the seek position requested.
commit d1a54019
isomp4/mux: don't overwrite with a bigger moov when fragmenting
When outputting fragmented mp4, with a seekable downstream, we rewrite
the moov to maybe add a duration to the mvex. If we start by not
writing the initial moov->mvex->mhed duration and then overwrite with a
moov containing mhed atom, the moov's will have different sizes and
could overwrite subsequent data and result in an unplayable file.
e.g. The initial moov would be of size 842 and the final moov would have
a size of 862.
Fix by always pushing out the mhed duration in the moov when
fragmenting.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/898
commit 422d2266
isomp4: actually make streamable fallback work
We weren't setting the fragment_mode field anymore now that the
implementation doesn't change based on the value of the streamable
property. This lead to invalid files.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/362
commit 417ea504
isomp4: fix trun data offset handling
The trun offset was missing a calculation for one of the box type
headers.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/866
commit 2c928e5a
isomp4/mux: fixes for fragmented mp4 output
Various buffer offset calculations were not quite correct in all cases.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/866
Edited by Matthew Waters