Move av_gettime() to libavutil

Signed-off-by: Mans Rullgard <mans@mansr.com>
This commit is contained in:
Mans Rullgard 2012-06-20 01:24:39 +01:00
parent db7d8fb4ef
commit ae0a301668
6 changed files with 70 additions and 9 deletions

View File

@ -1635,10 +1635,9 @@ void av_dump_format(AVFormatContext *ic,
const char *url,
int is_output);
/**
* Get the current time in microseconds.
*/
#if FF_API_AV_GETTIME
int64_t av_gettime(void);
#endif
/**
* Return in 'buf' the path with '%d' replaced by a number.

View File

@ -38,8 +38,6 @@
#include "riff.h"
#include "audiointerleave.h"
#include "url.h"
#include <sys/time.h>
#include <time.h>
#include <stdarg.h>
#if CONFIG_NETWORK
#include "network.h"
@ -3411,12 +3409,12 @@ void av_dump_format(AVFormatContext *ic,
av_free(printed);
}
int64_t av_gettime(void)
#if FF_API_AV_GETTIME && CONFIG_SHARED && HAVE_SYMVER
FF_SYMVER(int64_t, av_gettime, (void), "LIBAVFORMAT_54")
{
struct timeval tv;
gettimeofday(&tv,NULL);
return (int64_t)tv.tv_sec * 1000000 + tv.tv_usec;
return av_gettime();
}
#endif
uint64_t ff_ntp_time(void)
{

View File

@ -59,5 +59,8 @@
#ifndef FF_API_INTERLEAVE_PACKET
#define FF_API_INTERLEAVE_PACKET (LIBAVFORMAT_VERSION_MAJOR < 55)
#endif
#ifndef FF_API_AV_GETTIME
#define FF_API_AV_GETTIME (LIBAVFORMAT_VERSION_MAJOR < 55)
#endif
#endif /* AVFORMAT_VERSION_H */

View File

@ -36,6 +36,7 @@ HEADERS = adler32.h \
rational.h \
samplefmt.h \
sha.h \
time.h \
ARCH_HEADERS = bswap.h \
intmath.h \
@ -77,6 +78,7 @@ OBJS = adler32.o \
rc4.o \
samplefmt.o \
sha.o \
time.o \
tree.o \
utils.o \

30
libavutil/time.c Normal file
View File

@ -0,0 +1,30 @@
/*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* Libav is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with Libav; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <stddef.h>
#include <stdint.h>
#include <sys/time.h>
#include "libavutil/time.h"
int64_t av_gettime(void)
{
struct timeval tv;
gettimeofday(&tv, NULL);
return (int64_t)tv.tv_sec * 1000000 + tv.tv_usec;
}

29
libavutil/time.h Normal file
View File

@ -0,0 +1,29 @@
/*
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* Libav is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with Libav; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef AVUTIL_TIME_H
#define AVUTIL_TIME_H
#include <stdint.h>
/**
* Get the current time in microseconds.
*/
int64_t av_gettime(void);
#endif /* AVUTIL_TIME_H */