[Libav-user] Fragmented mp4 stream demuxing

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[Libav-user] Fragmented mp4 stream demuxing

Александр Костин

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?


Best regards,

28 мая 2017 г. 2:08 PM пользователь "Александр Костин" <[hidden email]> написал:

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?


Best regards,


Libav-user mailing list
[hidden email]