From 6cbaa360a1e8f3695a716173ac32e99a97d75fd4 Mon Sep 17 00:00:00 2001 From: Glenn Rice Date: Fri, 11 Feb 2011 21:07:51 +0000 Subject: [PATCH] Fix frame dumping for linux. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7134 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/AudioCommon/Src/Mixer.h | 2 +- Source/Core/VideoCommon/Src/AVIDump.cpp | 10 +++++----- Source/Plugins/Plugin_VideoOGL/Src/Render.cpp | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Source/Core/AudioCommon/Src/Mixer.h b/Source/Core/AudioCommon/Src/Mixer.h index 9d7459921f..90a6f06e25 100644 --- a/Source/Core/AudioCommon/Src/Mixer.h +++ b/Source/Core/AudioCommon/Src/Mixer.h @@ -34,11 +34,11 @@ public: , m_bits(16) , m_channels(2) , m_HLEready(false) + , m_logAudio(0) , m_numSamples(0) , m_indexW(0) , m_indexR(0) , m_AIplaying(true) - , m_logAudio(0) { // AyuanX: The internal (Core & DSP) sample rate is fixed at 32KHz // So when AI/DAC sample rate differs than 32KHz, we have to do re-sampling diff --git a/Source/Core/VideoCommon/Src/AVIDump.cpp b/Source/Core/VideoCommon/Src/AVIDump.cpp index a8639158b9..539e209cc0 100644 --- a/Source/Core/VideoCommon/Src/AVIDump.cpp +++ b/Source/Core/VideoCommon/Src/AVIDump.cpp @@ -256,14 +256,14 @@ bool AVIDump::CreateFile() return false; } - s_Stream->codec->codec_id = CODEC_ID_FFV1; //s_FormatContext->oformat->video_codec; + s_Stream->codec->codec_id = s_FormatContext->oformat->video_codec; s_Stream->codec->codec_type = AVMEDIA_TYPE_VIDEO; s_Stream->codec->bit_rate = 400000; s_Stream->codec->width = s_width; s_Stream->codec->height = s_height; s_Stream->codec->time_base = (AVRational){1, VideoInterface::TargetRefreshRate}; s_Stream->codec->gop_size = 12; - s_Stream->codec->pix_fmt = PIX_FMT_BGRA; + s_Stream->codec->pix_fmt = PIX_FMT_YUV420P; av_set_parameters(s_FormatContext, NULL); @@ -275,7 +275,7 @@ bool AVIDump::CreateFile() } if(!(s_SwsContext = sws_getContext(s_width, s_height, PIX_FMT_BGR24, s_width, s_height, - PIX_FMT_BGRA, SWS_BICUBIC, NULL, NULL, NULL))) + PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL))) { CloseFile(); return false; @@ -284,10 +284,10 @@ bool AVIDump::CreateFile() s_BGRFrame = avcodec_alloc_frame(); s_YUVFrame = avcodec_alloc_frame(); - s_size = avpicture_get_size(PIX_FMT_BGRA, s_width, s_height); + s_size = avpicture_get_size(PIX_FMT_YUV420P, s_width, s_height); s_YUVBuffer = new uint8_t[s_size]; - avpicture_fill((AVPicture *)s_YUVFrame, s_YUVBuffer, PIX_FMT_BGRA, s_width, s_height); + avpicture_fill((AVPicture *)s_YUVFrame, s_YUVBuffer, PIX_FMT_YUV420P, s_width, s_height); s_OutBuffer = new uint8_t[s_size]; diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp index 1646161ee2..71906fe1bc 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp @@ -959,7 +959,7 @@ void Renderer::SetBlendMode(bool forceUpdate) // This function has the final picture. We adjust the aspect ratio here. void Renderer::Swap(u32 xfbAddr, FieldType field, u32 fbWidth, u32 fbHeight,const EFBRectangle& rc,float Gamma) { - static u8 *data = 0; + static u8 *data = NULL; static int w = 0, h = 0; if (g_bSkipCurrentFrame || (!XFBWrited && (!g_ActiveConfig.bUseXFB || !g_ActiveConfig.bUseRealXFB)) || !fbWidth || !fbHeight) { @@ -1198,7 +1198,7 @@ void Renderer::Swap(u32 xfbAddr, FieldType field, u32 fbWidth, u32 fbHeight,cons if (data) { delete[] data; - data = 0; + data = NULL; w = h = 0; } AVIDump::Stop();