簡體   English   中英

如何測量使用TextureView的android應用的FPS? (上午使用OpenGL)

[英]How do I measure FPS of an android application that uses TextureView? (Am using OpenGL)

我的渲染線程中有一個無限循環。 我嘗試進行測量,假設每次調用eglSwapBuffers繪制一個新幀,但這給了我200 fps的結果,這是不可能的,對吧? 刷新率不能超過60?

現在,我正在做同樣的事情,但是還使用了SurfaceView的surfaceTexture的surfaceTexture.getTimeStamp() 我認為僅當上一次迭代中返回的時間戳與當前迭代中的時間戳不同時,才繪制框架。 可以接受的測量方法嗎? 當我不繪圖時,這顯示為50-55fps。 即循環僅eglSwapBuffers()getTimeStamp調用。

surfaceTexture.getTimeStamp()似乎給出了正確的結果。 我通過將連續的getTimeStamp()調用返回的結果之間的所有差加起來來測試它,它等於代碼運行的總時間。 這表明沒有任何幀被忽略等。

我發現的另一個解決方案是這個Android應用程序 我不知道它是如何工作的,但是它給出的結果與上述方法大致相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM