]> git.sesse.net Git - vlc/commitdiff
mp4 mux: simplify stts box creation
authorRafaël Carré <funman@videolan.org>
Sat, 24 Aug 2013 15:22:23 +0000 (17:22 +0200)
committerRafaël Carré <funman@videolan.org>
Sat, 24 Aug 2013 16:24:29 +0000 (18:24 +0200)
modules/mux/mp4.c

index 63013cd217b4ceae76f07ee65ec60d1c9dc5e1db..be8a5e54df8c49b7e737784491d5b2a2764bfc3b 100644 (file)
@@ -1151,19 +1151,10 @@ static bo_t *GetStblBox(sout_mux_t *p_mux, mp4_stream_t *p_stream)
     else
         i_timescale = CLOCK_FREQ;
 
-    /* first, create quantified length */
-    int64_t i_dts = 0, i_dts_deq = 0;
-    for (unsigned i = 0 ; i < p_stream->i_entry_count; i++) {
-        mp4_entry_t *e = &p_stream->entry[i];
-
-        int64_t i_delta = e->i_length + i_dts - i_dts_deq;
-        i_dts += e->i_length;
-        e->i_length = i_delta * (int64_t)i_timescale / CLOCK_FREQ;
-        i_dts_deq += i_delta;
-    }
-    /* then write encoded table */
     unsigned i_index = 0;
     for (unsigned i = 0; i < p_stream->i_entry_count; i_index++) {
+        p_stream->entry[i].i_length = p_stream->entry[i].i_length
+            * (int64_t)i_timescale / CLOCK_FREQ;
         int     i_first = i;
         int64_t i_delta = p_stream->entry[i].i_length;