diff options
| author | NeoBrainX <NeoBrainX@googlemail.com> | 2011-09-08 22:06:12 +0200 |
|---|---|---|
| committer | NeoBrainX <NeoBrainX@googlemail.com> | 2011-09-08 22:06:12 +0200 |
| commit | 063660e40916f69eea3a56c5208dbcad175163ae (patch) | |
| tree | b04255c98ca554fa17c6f3637500f24ebc90fe17 /Source/Core/VideoCommon/Src/RenderBase.cpp | |
| parent | 8b8e60c2767d2d21b3aeea7e938bdd64e3a2a61b (diff) | |
| parent | 3802201fb7ae6defb3614973ff01e1cfa8c38d6c (diff) | |
Merge remote-tracking branch 'remotes/origin/d3d11-frame-dumping'
Diffstat (limited to 'Source/Core/VideoCommon/Src/RenderBase.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Src/RenderBase.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/Src/RenderBase.cpp b/Source/Core/VideoCommon/Src/RenderBase.cpp index d89e582860..fa6ba018c7 100644 --- a/Source/Core/VideoCommon/Src/RenderBase.cpp +++ b/Source/Core/VideoCommon/Src/RenderBase.cpp @@ -42,6 +42,7 @@ #include "Host.h" #include "XFMemory.h" #include "FifoPlayer/FifoRecorder.h" +#include "AVIDump.h" #include <cmath> #include <string> @@ -52,7 +53,6 @@ int OSDChoice, OSDTime; Renderer *g_renderer = NULL; -bool s_bLastFrameDumped = false; std::mutex Renderer::s_criticalScreenshot; std::string Renderer::s_sScreenshotName; @@ -81,15 +81,28 @@ bool Renderer::s_EnableDLCachingAfterRecording; unsigned int Renderer::prev_efb_format = (unsigned int)-1; -Renderer::Renderer() +Renderer::Renderer() : frame_data(NULL), bLastFrameDumped(false) { UpdateActiveConfig(); + +#if defined _WIN32 || defined HAVE_LIBAV + bAVIDumping = false; +#endif } Renderer::~Renderer() { // invalidate previous efb format prev_efb_format = (unsigned int)-1; + +#if defined _WIN32 || defined HAVE_LIBAV + if (g_ActiveConfig.bDumpFrames && bLastFrameDumped && bAVIDumping) + AVIDump::Stop(); +#else + if (f_pFrameDump.IsOpen()) + f_pFrameDump.Close(); +#endif + delete[] frame_data; } void Renderer::RenderToXFB(u32 xfbAddr, u32 fbWidth, u32 fbHeight, const EFBRectangle& sourceRc, float Gamma) |
