diff options
Diffstat (limited to 'source/gameengine/VideoTexture/VideoBase.cpp')
-rw-r--r-- | source/gameengine/VideoTexture/VideoBase.cpp | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/source/gameengine/VideoTexture/VideoBase.cpp b/source/gameengine/VideoTexture/VideoBase.cpp index 038a04a55a8..10117c3af9e 100644 --- a/source/gameengine/VideoTexture/VideoBase.cpp +++ b/source/gameengine/VideoTexture/VideoBase.cpp @@ -54,22 +54,34 @@ void VideoBase::process (BYTE * sample) if (m_image != NULL && !m_avail) { // filters used - FilterRGB24 filtRGB; - FilterYV12 filtYUV; // convert video format to image switch (m_format) { + case RGBA32: + { + FilterRGBA32 filtRGBA; + // use filter object for format to convert image + filterImage(filtRGBA, sample, m_orgSize); + // finish + break; + } case RGB24: - // use filter object for format to convert image - filterImage(filtRGB, sample, m_orgSize); - // finish - break; + { + FilterRGB24 filtRGB; + // use filter object for format to convert image + filterImage(filtRGB, sample, m_orgSize); + // finish + break; + } case YV12: - // use filter object for format to convert image - filtYUV.setBuffs(sample, m_orgSize); - filterImage(filtYUV, sample, m_orgSize); - // finish - break; + { + // use filter object for format to convert image + FilterYV12 filtYUV; + filtYUV.setBuffs(sample, m_orgSize); + filterImage(filtYUV, sample, m_orgSize); + // finish + break; + } } } } |