TheoraVideoPlugin Player
From Ogre Wiki
This demo plays media/oggs/clip.ogg (be sure to put one there before testing) and prints some benchmarking information.
Legend
- Frame number - the index of the currently displayed frame
- Frames dropped - number of frames that couldn't be displayed to keep the video clip in sync
- Video time - current time in seconds of the playing video
- Decoding time - average time it took to decode the last frame,(in milliseconds)
- YUV--RGB time - average time it took to decode YUV pixels to an RGB buffer
- TexBlit time - average time it took to upload the current frame from RAM to the texture buffer on the display card
- Time per frame - average number of milliseconds it takes to prepare one video frame
- Max FPS - how many frames per second can be prepared (estimated)
- Precached frames - how many frames are prepared in advance
Code
The code is a modified and stripped down version of OGRE's CEGUI demo. It uses OGRE's sample framework headers. The only demo relevant code is located in the ClipListener class and frameStarted() function.
- The demo loads clip.ogg located in one of the resource locations.
Material
- located in demos/media/materials/scripts/Example.material
material SimpleVideo
{
technique
{
pass
{
cull_software none
cull_hardware none
lighting off
texture_unit
{
texture_source ogg_video
{
filename clip.ogg
precache 50
play_mode play
}
}
}
}
}
As you can see, displaying a video in OGRE is as simple as putting a few lines in the material file. See Material documentation for explanations of these parameters.

