Index: OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp
===================================================================
--- OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp (revision 9847)
+++ OpenSceneGraph/trunk/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp (revision 9860)
@@ -58,4 +58,6 @@
         const_cast<unsigned char *>(m_decoder->video_decoder().image()), NO_DELETE
     );
+    
+    setOrigin(osg::Image::TOP_LEFT);
 
     m_decoder->video_decoder().setUserData(this);
@@ -265,6 +267,13 @@
     FFmpegImageStream * const this_ = reinterpret_cast<FFmpegImageStream*>(user_data);
 
+#if 1
+    this_->setImage(
+        this_->m_decoder->video_decoder().width(), this_->m_decoder->video_decoder().height(), 1, GL_RGBA, GL_BGRA, GL_UNSIGNED_BYTE,
+        const_cast<unsigned char *>(this_->m_decoder->video_decoder().image()), NO_DELETE
+    );
+#else
     /** \bug If viewer.realize() hasn't been already called, this doesn't work? */
     this_->dirty();
+#endif
 
     OpenThreads::ScopedLock<Mutex> lock(this_->m_mutex);
