avformat/segment: use time_internal.h, simplify code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-11-02 20:07:34 +01:00
parent bab09864b4
commit 32a2876b12

View File

@ -39,6 +39,7 @@
#include "libavutil/parseutils.h"
#include "libavutil/mathematics.h"
#include "libavutil/time.h"
#include "libavutil/time_internal.h"
#include "libavutil/timestamp.h"
typedef struct SegmentListEntry {
@ -716,11 +717,7 @@ static int seg_write_packet(AVFormatContext *s, AVPacket *pkt)
if (seg->use_clocktime) {
int64_t avgt = av_gettime();
time_t sec = avgt / 1000000;
#if HAVE_LOCALTIME_R
localtime_r(&sec, &ti);
#else
ti = *localtime(&sec);
#endif
usecs = (int64_t)(ti.tm_hour*3600 + ti.tm_min*60 + ti.tm_sec) * 1000000 + (avgt % 1000000);
wrapped_val = usecs % seg->time;
if (seg->last_cut != usecs && wrapped_val < seg->last_val) {