]> git.vomp.tv Git - vompclient.git/commitdiff
Added FPS benchmarking
authorMarten Richter <marten.richter@freenet.de>
Thu, 17 May 2012 11:09:33 +0000 (13:09 +0200)
committerMarten Richter <marten.richter@freenet.de>
Thu, 17 May 2012 11:09:33 +0000 (13:09 +0200)
osdopengl.cc
osdopengl.h [changed mode: 0644->0755]

index 23d3054ad01cdaa4506248c9c5d0404ee103c6e9..79e79cc0b1a4d835c55d66e8efe0579db0e43da9 100755 (executable)
@@ -57,6 +57,10 @@ OsdOpenGL::OsdOpenGL()
   gen_shader=0;\r
   osd_program=0;\r
 \r
+#ifdef BENCHMARK_FPS\r
+       last_benchmark_time=getTimeMS();\r
+       num_benchmark_frames=0;\r
+#endif\r
 \r
   \r
 }\r
@@ -556,6 +560,18 @@ void OsdOpenGL::InternalRendering(GLuint  present){
        eglSwapBuffers(egl_display, egl_surface);\r
 \r
        EndPainting();\r
+#ifdef BENCHMARK_FPS\r
+       num_benchmark_frames++;\r
+       if (getTimeMS()-last_benchmark_time>4000) {\r
+               float fps=1000./(float)(getTimeMS()-last_benchmark_time);\r
+               fps*=((float)num_benchmark_frames);\r
+               num_benchmark_frames=0;\r
+               Log::getInstance()->log("OSD", Log::NOTICE, "Current FPS %g", fps);\r
+               last_benchmark_time=getTimeMS();\r
+\r
+       }\r
+\r
+#endif\r
 \r
        \r
 //     if (!external_driving) {\r
old mode 100644 (file)
new mode 100755 (executable)
index 0e9d08e..4d7d83d
@@ -35,7 +35,7 @@
 #include "threadp.h"\r
 #include "mutex.h"\r
 \r
-\r
+#define BENCHMARK_FPS\r
 \r
 \r
 \r
@@ -127,6 +127,10 @@ private:
        EGLDisplay egl_display;\r
        EGLSurface egl_surface;\r
        EGLContext egl_context;\r
+#ifdef BENCHMARK_FPS\r
+       long long last_benchmark_time;\r
+       unsigned int num_benchmark_frames;\r
+#endif\r
 \r
 };\r
 \r