A
A
ADOLF88HITLER2014-01-20 16:58:46
mp4
ADOLF88HITLER, 2014-01-20 16:58:46

mp4 segmentation in gstreamer?

Decided to make a subject. Faced some problems.
There is a pipeline:

gst-launch-1.0 rtspsrc location=rtsp://ip/cam ! rtph264depay ! h264parse ! mp4mux fragment-duration=10000 streamable=1 ! multifilesink next-file=2 location=file-%03d.mp4

The first segment plays well, the rest not so much. When trying to study the structure of invalid mp4s, I come across an interesting feature:
1) MOOV-atom
2) some obscure data,
3) MOOF
4) MDAT
5) MOOF
6)
MDAT go. Based on the size, I can assume that this is MDAT. I add the MDAT header before this data, I count the duration. The file immediately becomes valid, but that very unknown piece is not played, since it does not have a MOOF in front of it with a description of the duration.
Both mp4mux and qtmux have these problems. The experiments were carried out on GStreamer 1.1.0 and 1.2.2. Everywhere the result is identical.
Maybe using multifilesink is wrong? Tried through multifdsink but the result is identical.
Help me understand what I'm doing wrong. Ultimately, I want to broadcast via DASH.

Answer the question

In order to leave comments, you need to log in

1 answer(s)
V
Victor, 2014-02-02
@victor1234

As far as I know, this task cannot be implemented on multifilesink. Dash I broadcast via nginx-rtmp.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question