[FFmpeg-cvslog] lavu/timer.h: factor out timer report
Clément Bœsch
git at videolan.org
Fri Sep 8 19:52:20 EEST 2017
ffmpeg | branch: master | Clément Bœsch <cboesch at gopro.com> | Sat Sep 2 19:17:45 2017 +0200| [9c0d823a7c2c29560f298a007289b9a63d0e3b87] | committer: Clément Bœsch
lavu/timer.h: factor out timer report
This commit is meant to reduce the diff in the following one.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9c0d823a7c2c29560f298a007289b9a63d0e3b87
---
libavutil/timer.h | 27 +++++++++++++++------------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/libavutil/timer.h b/libavutil/timer.h
index ed3b047870..da0761b607 100644
--- a/libavutil/timer.h
+++ b/libavutil/timer.h
@@ -60,23 +60,17 @@
# define FF_TIMER_UNITS "UNITS"
#endif
-#ifdef AV_READ_TIME
-#define START_TIMER \
- uint64_t tend; \
- uint64_t tstart = AV_READ_TIME(); \
-
-#define STOP_TIMER(id) \
- tend = AV_READ_TIME(); \
+#define TIMER_REPORT(id, tdiff) \
{ \
static uint64_t tsum = 0; \
static int tcount = 0; \
static int tskip_count = 0; \
static int thistogram[32] = {0}; \
- thistogram[av_log2(tend - tstart)]++; \
- if (tcount < 2 || \
- tend - tstart < 8 * tsum / tcount || \
- tend - tstart < 2000) { \
- tsum+= tend - tstart; \
+ thistogram[av_log2(tdiff)]++; \
+ if (tcount < 2 || \
+ (tdiff) < 8 * tsum / tcount || \
+ (tdiff) < 2000) { \
+ tsum += (tdiff); \
tcount++; \
} else \
tskip_count++; \
@@ -90,6 +84,15 @@
av_log(NULL, AV_LOG_ERROR, "\n"); \
} \
}
+
+#ifdef AV_READ_TIME
+#define START_TIMER \
+ uint64_t tend; \
+ uint64_t tstart = AV_READ_TIME(); \
+
+#define STOP_TIMER(id) \
+ tend = AV_READ_TIME(); \
+ TIMER_REPORT(id, tend - tstart)
#else
#define START_TIMER
#define STOP_TIMER(id) { }
More information about the ffmpeg-cvslog
mailing list