[libav-api] Fragmented mp4 stream demuxing

Александр Костин akostinnn at gmail.com
Tue May 30 00:16:52 CEST 2017


Hello.

I have a problem with using libav mp4 demuxer on fragmented live stream.
As I undestand from mov.c the AVIndexEntry* index_entries may greatly
increase on fragmented mp4 stream and mp4 demuxer (mov.c) doesn't contain
any algorithms to control indexes table size.
This can lead to high memory consumption on live mp4 stream such as dash.
Is there any way to use the libav mp4 demuxer on fragmented mp4 stream
without storing the indexes or controlling them?

Thanks.

Best regards,
Alexander

28 мая 2017 г. 2:07 PM пользователь "Александр Костин" <akostinnn at gmail.com>
написал:

> Hello.
>
> I have some questions about using mp4 demuxer.
>
> I try to demux mp4 file with duration about 20h using libav. I have
> compiled and tested ffmpeg example doc/examples/demuxing_decoding.c.
> But after a while I get an error "Failed to add index entry" and mp4
> demuxer stops working. This doesn't reproduce with shorter file (less than
> 15h).
> Also I try to demux and mux this file with ffmpeg.exe as follows:
>
> ffmpeg.exe -i input.mp4 -acodec copy -vcodec copy out.mp4
>
> And I have no any errors messages in this case.
>
> What is the difference between demuxing_decoding example and ffmpeg.exe
> demuxing approach?
> Is there a specific use of libav mp4 demuxer with too long or fragmented
> mp4 files?
> Any ideas about reducing/ignoring indexes?
>
> Thanks.
>
> Best regards,
>
> Alexander
>


More information about the libav-api mailing list