// switch to non-interleaved to get correct timestamps
if (last_pos == pos)
avi->non_interleaved = 1;
+#ifdef __TIZEN__
+ //[DF170418-00597] issue fix
+ if (last_idx != pos && len < avi->fsize) {
+ av_add_index_entry(st, pos, ast->cum_len, len, 0,
+ (flags & AVIIF_INDEX) ? AVINDEX_KEYFRAME : 0);
+ last_idx= pos;
+ }
+ if (len < avi->fsize)
+ ast->cum_len += get_duration(ast, len);
+ else
+ av_log(s, AV_LOG_TRACE, "invalid len : fsize=%lld i=%d len=%d \n", avi->fsize, i, len);
+#else
if (last_idx != pos && len) {
av_add_index_entry(st, pos, ast->cum_len, len, 0,
(flags & AVIIF_INDEX) ? AVINDEX_KEYFRAME : 0);
last_idx= pos;
}
ast->cum_len += get_duration(ast, len);
+#endif
last_pos = pos;
anykey |= flags&AVIIF_INDEX;
}