Wintermute Engine Forum

Wintermute Engine => Technical forum => Topic started by: ILY on September 18, 2007, 05:21:17 AM

Title: Theora performance problem
Post by: ILY on September 18, 2007, 05:21:17 AM
I have recently downloaded and started to use WME, and I am really delighted with its handiness and flexibility.
Thank you for this great job.

Unfortunately, I have found, that theora videos are quite slow on low-end configurations.
I have tried plying 720*576 theora video on 633 Mhz Celeron computer, and it gives 8 fps, while the rest of the game works quite fast on this configuration. Seems like this is because theora does not use hardware GPU resourecs to play video, and CPU power is not enough to display it in real time. I would like to support such slow processors. I have tried different advices, given on this forum (such as perform theora compresion from uncompressed video), but nothing helps.

I came across this problem while trying to make a main menu with a video, being displayed in the backgorund (behind menu buttons). If I did not miss something, Theora is the only way to play video simultaneously with GUI controls.

The video has 600 frames, so, I think, that replacing it with 600 jpg's would not be a good solution

Is there any way to make things beter, or I just have to replace mainmenu background with static image?
Title: Re: Theora performance problem
Post by: Mnemonic on September 18, 2007, 07:49:49 AM
Well I'm afraid the only thing you can do is to use lower resolution for the video. It's not possible to move the decompression to GPU, it must be done in CPU. Also, Theora is still in alpha, so it's possible it will get better optimized in the future, but I'd say the current build with SSE instructions enabled performs quite well on current processors.
Title: Re: Theora performance problem
Post by: metamorphium on September 18, 2007, 07:55:13 AM
you can also use video entities so only the really moving parts of the screen would be "theorized". This could be a really good performance.

Also 633MHz computers are now more subjects to the museum as even current operating systems won't perform well... :)
Title: Re: Theora performance problem
Post by: ILY on September 18, 2007, 08:05:39 AM
Thank you for such fast response. I think, I will check CPU clock frequency, and choose menu type (video or static image with video entities), depending on its value.
Title: Re: Theora performance problem
Post by: adonf on September 21, 2007, 12:01:08 PM
in my experience with theora, downgrading the video quality also helps a lot on low end machines. if you use ffmpeg2theora and set a video quality to 10 then your frame rate will be much lower than if you set it to 9 or 8.
Title: Re: Theora performance problem
Post by: SBOVIS on September 21, 2007, 05:23:08 PM
Hi,
     I have used theora in 800x600 in various animations for my project in various scenes, no slowdown is seen at all. But you need to make sure no entity animations are runing in the background whilst it is playing.

An animated menu should be a breeze to do with theora, just remember to create the animation initially as a high end piece in AVI (non compressed) then convert to theora to keep the quality from degrading too much.

A 600mhz system is very low and to be honest you should be looking higher as the majority of users do have higher specs than this for normal PC usage. Your other issue is your video ram should also be of normal size, a celeron is very low for this type of visual., and if you are tryign to develope anything you should get a bigger rig!

Hope this helps.