More info:

* Asynch mode gives a fairly big performance increase. It does prevent using different playback speeds, which may be a major feature limitation.

* Cacheing -- playing back 2 640x480 looping Photo JPEG movies, each about 10-20MB long I noticed that the external hard drive was churning -- checking Activity monitor revealed it was doing about 60 disk read i/o operations per second. This led me to suspect that the movies were not being cached at all. Opened each movie in QuickTime player, edited the video track to enable the "Cache in RAM" hint. This, in combination with the Asynch mode, reduced the disk seeking behavior by about 80%.

* Conclusion: QC is very un-aggressive about cacheing movie frames in RAM: one can partially work-around this by turning on the "Cache in RAM" hint in the quicktime movie, AND enabling Asynch mode in the movie loader.

The cache behavior is so bad that I'm almost wondering if there is a bug? I know that OS X is very aggressive about cacheing disk files, so I'm baffled why two 10MB looping movies wouldn't have been cached by OS X or QuickTime after the first loop?

* Question -- option-preferences in QC reveals two cache settings:
  QCMaximumCacheRam : 0.00
  QCMaximumCacheVRAM : 0.00

  What do these do?

* Feature Request: I think QC should default to be much more aggressive about caching movie data. Ideally, it would cache both the decompressed movie frames and the raw movie data, perhaps with some user-controllable settings as to the % of RAM / VRAM to use.

* Bug? In a movie loader, when Async mode is off and/or the CacheInRam hint in the movie is off, it seems as if QC is preventing the normal OS X disk cache behavior -- is QC perhaps opening the movies in editable mode or doing something else that is preventing efficient OS-level disk cacheing?

* Workaround? I'm going to experiment with using a RAM disk to cache these movie files, to see if that helps override the poor cacheing behavior.


On Feb 21, 2008, at 10:10 AM, Troy Koelling wrote:

You did not mention Asynchronous mode on the movie. That may not be an option in all cases but for the cases that it can be used, it is good for performance because QuickTime can pre-fetch frames.

On Feb 20, 2008, at 10:49 AM, Michael Diehr wrote:

I'm trying to maximize movie playback performance under QC.

These tests are all with 640x480 Photo JPEG movies, on macbook pros (with ATI1600 and NVIDIA8600 cards). CPU utilization was under 100% in all cases.

In the movieloader patch:
* disable color correction (little or no effect)
* disable high quality hint (small effect)
* disable deinterlacing (small-moderate effect)
* scale movie to smaller # of pixels (very large effect)

Some questions:

1. Why does deinterlacing have any effect. Wouldn't that step be done in CPU/RAM? If so, and CPU was under 100%, why would that affect frame rate? Or is this done in GL?

2. It appears as if the main bottleneck is simply the # of movie pixels that are transferred from RAM to GPU/VRAM per second. It appears fairly linear : double the # of pixels = half the frame rate.

I'm wondering if there's a way to speed this up at all -- would it be possible for example to have QC pre-compute the image data into a compressed GL texture format and then send that data to the GPU? Or if one is using a JPEG compressed format, can that data be sent directly to the GPU and decompressed in VRAM?

I tried the following pathway:
RenderInImage[MovieLoader -> billboard] -> billboard
...while experimenting with texture settings but that seemed to have no effect (other than giving me blank screen with some settings).

Thoughts?
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list ([email protected] )
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/tkoelling%40apple.com

This email sent to [EMAIL PROTECTED]


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to