Require several consecutive long render times to drop a frame

This commit is contained in:
Cameron Gutman
2019-01-21 17:58:42 -08:00
parent 58b77cf589
commit 1f972b1828
2 changed files with 37 additions and 16 deletions
@@ -27,12 +27,14 @@ public:
bool isUsingFrameQueue();
private:
void addRenderTimeToHistory(int renderTime);
void renderFrame(AVFrame* frame);
QQueue<AVFrame*> m_FrameQueue;
QQueue<int> m_FrameQueueHistory;
QQueue<int> m_RenderTimeHistory;
SDL_SpinLock m_FrameQueueLock;
bool m_DropNextFrame;
IVsyncSource* m_VsyncSource;
IFFmpegRenderer* m_VsyncRenderer;