VideoHelp Forum
+ Reply to Thread
Results 1 to 5 of 5
Thread
  1. Greetings. please be gentle. 1st post

    I am using Avidemux and want to mux to MP4

    I get options at Configure -> Optimize for Streaming.
    "No optimization"
    "Move index to the beginning of the file"
    "Use fragmentation"

    Can someone can tell me advantages and/or disadvantages of each? that would be awesome

    Thank you for reading.

    (... assuming the second one is so you can avoid VFR. Then why would you choose otherwise if VFR is problematic?)
    Quote Quote  
  2. MP4 normally has the keyframe index near the end of the file. Because the size of the index is unknown until the video compression is done. That's not good for streaming because the player has to seek to the end of the file to get the index, then back to the beginning to start playing. With locally stored files that will only take a few tens of milliseconds. But with files streamed over the internet it could take several seconds.

    Putting the index near the start of the file eliminates that seeking, allowing the video to start playing sooner. The disadvantage is that program building the file will take a little longer to make the video since it may not be able to tell how big the index is going to be. It may build a normal file with the index at the end, then remux it (create a second file) with the index at the start (since it no knows how big the index is) and the A/V data after the index.

    I'm not sure about "fragmentation", but I suspect it interleaves portions of the index along with the A/V streams as the file is being built. Ie, some A/V data followed by the index for those frames, some more A/V data and some more index, etc. That should help with linear streaming (the player can linearly preload a bunch of data that includes the first A/V segment and the index for that segment, then start playing that segment, then linearly move on to the next segment. But it makes the decoding more difficult and won't help with random seeks.
    Quote Quote  
  3. hi jagabo, thank you for your answer!

    Here's my understanding:
    -Putting index to the beginning is faster for decoding, particularly in streaming.
    -No optimization is advantageous in that it will mux the file much faster.

    I have tested that no optimization does indeed create the file quicker, but if this is the only advantage I'll stick with putting it to the beginning. the extra muxing time is nothing really if it does avoid playback delays to a minimum

    Fragmantation sounds like minor science, and likely beyond my scope, ha ha
    Quote Quote  
  4. Originally Posted by Rinka_CA View Post
    Fragmantation sounds like minor science, and likely beyond my scope, ha ha
    Read answer #2.

    https://avidemux.org/smif/index.php/topic,19533.0.html
    Quote Quote  
  5. I'm thinking a good balance of good streaming and local playback, with minimum problems, etc, is "Move index to the beginning of the file", just my hunch unless I'm wrong.

    Originally Posted by Secoast View Post
    yup, it seems like "Use fragmentation" is best with files you know you will want to stream, and pretty much ONLY stream, otherwise use something else.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!