codecs

Hi again.

Just running some tests for video playback and am finding that 720p (1280x720) quicktime or avi files are not playing back so well. choppy, but seem fine playing from quicktime or vlc.

I’ve tried a few different codecs, and will try more but just wondering if there is anything recommended for bigger movies?

cheers,
quine

Currently we use QT for our internal movie decoding. We hope to move to the same library that VLC uses soon.
We’re actually working on a lot of improvements for playing back large movies right now. H264 seems to be the best choice for large movies, but QT doesn’t do well when playing multiple HD movies at the same time (the VLC library does it well).

You should check the performance monitor (its under dialogs), and see if it gives you any hints why the movies are playing back slowly. If you can tell me where it’s spending a lot of time we may be able to speed things up.
Make sure you press the ‘Monitor’ button and turn on ‘Graphic Driver Time’ in the performance monitor.

Hrm. I am rendering QT with ‘animation’ codec set to 50% quality (this is the lowest visual quality acceptible). But have tried QT with mp4 codec (slowww to decode), H.264, all with various quality settings. I tried a few avi variations also. Nothing good there so far.

The setup is one background movie @ 720p 30fps, then two spheres with 480p 30fps movies as their textures.

I looked at the perfmon log and it looks like “Uploading 2d Texture” takes the longest. As high as 46.782 ms. A few entries complain about ‘waiting for frame for ### from harddrive’. As high as 12.631 ms there.

Would the actual log file help?

Glad to hear some focus on codecs:)

cq

Check out the parameters on the the Tune page of the Movie In TOP. Try turning up the Read Ahead Size, and turning the Read Timeout to 0, this will avoid Touch from stalling when it’s waiting for a frame from the harddrive (with the cost of the movie frame not changing). Also try turning on the Asynchronous Upload to GPU parameter.

Read Ahead Size is max 10. turned off Read timeout. Nothing really visible change.
I cant find the Asyncronous Upload to GPU parameter?

It may be called ‘Use PBOs’, I renamed it recently, the new name may not be in the build you have.

ah yes I see that, but it’s greyed out?

What kind of graphics card are you using, and what drivers? The fact that it’s greyed out means that your GPU doesn’t support that feature (or more likely, you have old drivers that don’t). if you’re using old drivers I bet upgrading will give you a big speedup.

Radeon 4870. I updated the drivers but still no love with Use PBO’s.
I realize you don’t support ATI.

i’ve done some optimizing, mainly by making sure all movies are exact same spec regarding codec. And I originally only made Tune modifications to the background video but have since updated the other two.
Looking good, but not golden.
I wonder if I can modify any driver settings with my card that might enable PBO?

cq

Hmm as far as I can tell the 4800 series suppots PBOs, so I’m not sure why your getting this. When you upgraded your drivers did you uninstall the old ones first?

But ya, since ATI doesn’t focus on making good OpenGL drivers, our hands are tied about how well Touch will run on ATI cards. If you plan to use Touch for work, I strongly suggest you move to nvidia.

Yeah I uninstalled first. shoot.

I’ll likely pick up an nvidia card here.

thanks for all the help :slight_smile:

Oh another thing to mention. We’re having good results with solid state drives when trying to play many movies from the same drive. Without SSDs, HDD seek time may really hurt the performance.

good to note. i don’t ‘think’ the presentation systems have been fully spec’d yet so i’ll keep this in mind. who’s the reliable leader in solid state manufacturing currently? if you know?

a few other questions regarding video playback on their way, i hope to have some specific questions to ask monday…

We haven’t used them enough to know about long term reliability yet. But we’ve been having good results with some drives from Intel so far.

On the wiki it describes: /asyncupload, /cudayuvtorgb, and /bottomhalfalpha in the Tune settings of a MovieIN TOP.

  • these might be useful but they do not show in v1440 UI. The UI does
    show /usepbo but that isn’t described on the wiki.

Are these first options available in a new version or are they older utilities?

What is the gain/cause of modifying use pbo (pixel buffer object)?

Many thanks,

quine

The Use PBO feature has been renamed to “Async Upload to GPU /asyncupload”, which is described in the wiki page.

Ya the other features aren’t in 1440, they are in the upcoming builds, however they will be disabled for you. They are still in testing a phase and not ready for full use quite yet.