diff options
author | Mans Rullgard <mans@mansr.com> | 2012-06-20 01:24:39 +0100 |
---|---|---|
committer | Mans Rullgard <mans@mansr.com> | 2012-06-20 17:09:03 +0100 |
commit | ae0a301668da542eaf8855e5dd61d0728181b0dd (patch) | |
tree | 7910f895668b75a8b7e0843dfe70e3ebf7172b01 | |
parent | db7d8fb4ef950329745224d49c8d4fb4174baa22 (diff) | |
download | ffmpeg-ae0a301668da542eaf8855e5dd61d0728181b0dd.tar.gz |
Move av_gettime() to libavutil
Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r-- | libavformat/avformat.h | 5 | ||||
-rw-r--r-- | libavformat/utils.c | 10 | ||||
-rw-r--r-- | libavformat/version.h | 3 | ||||
-rw-r--r-- | libavutil/Makefile | 2 | ||||
-rw-r--r-- | libavutil/time.c | 30 | ||||
-rw-r--r-- | libavutil/time.h | 29 |
6 files changed, 70 insertions, 9 deletions
diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 040e35eb92..1c1aad652f 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -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. diff --git a/libavformat/utils.c b/libavformat/utils.c index 5450dc4bff..156c527e25 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -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) { diff --git a/libavformat/version.h b/libavformat/version.h index 2216e4eabd..29e520534c 100644 --- a/libavformat/version.h +++ b/libavformat/version.h @@ -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 */ diff --git a/libavutil/Makefile b/libavutil/Makefile index 56ccd04dff..6fe174bb62 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -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 \ diff --git a/libavutil/time.c b/libavutil/time.c new file mode 100644 index 0000000000..a0b713e803 --- /dev/null +++ b/libavutil/time.c @@ -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; +} diff --git a/libavutil/time.h b/libavutil/time.h new file mode 100644 index 0000000000..2ee7e08caf --- /dev/null +++ b/libavutil/time.h @@ -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 */ |