【发布时间】:2013-12-30 05:12:35
【问题描述】:
我有一个视频解码器。使用openGL 我正在使用glfw 库在屏幕上渲染解码的帧。我必须在解码器解码和渲染帧时显示 FPS。我知道如何在屏幕上显示一些东西。
What i know:
我知道解码每一帧所花费的时间。即我在解码功能和显示功能之前和之后放置了一个时钟()函数。那就是我知道解码和显示每一帧所花费的时间(比如 x 毫秒)。现在使用这些数据我需要计算视频的 FPS 并显示它。
What i tried:
Time taken to decode a 1 frame=x milli seconds
How many frames are decoded (y) in 1 second (this is the definition of FPS)
因此,FPS=1*1/(x*milli)
=> FPS=1000/x
因此,对于每一帧,我都使用上述公式进行计算并显示它。但经过验证,我知道这是错误的。谁能告诉我上述方法有什么问题?我如何实时计算 FPS,而我知道解码每一帧所花费的时间?
【问题讨论】:
-
您也可以考虑使用
glfwGetTime而不是clock()。
标签: opengl video frame-rate