I agree with Daniel on FBOs instead of PBOs as long as there is support for FBOs on the platforms iv is targeting. Generally it would be wise to say that "iv" is OpenGL2.1 compatible or OpenGL3/3.1...
Of course, the trick is that we can't read images from disk at 24 fps at > that resolution (I really don't think -- my intuition is that read speed is > probably 1-2 Hz), so a big part of this task is going to be to > intelligently buffer the images so that playback can happen at frame rate. > And we need to deal with detecting and handling gracefully what happens > when somebody wants to play back a stack of frames whose sum is greater > than the amount of GPU texture memory available, which happens pretty fast > -- a 2048x1536 x 3 channel x "half" (2 byte) = 18 MB per frame, you will > fill GPU memory with only several seconds of footage. > > Hey, how does that work? Has anybody here written a good playback app > before? (I haven't.) The one I use at work, for example, seems to be able > to play back essentially infinite amounts of video (I've certainly made it > play tens of seconds, maybe minutes), and it doesn't appear to be showing > me a lossy of lower precision image than when I view the stills, nor do I > ever notice it pausing to refill a buffer (other than when it first starts > up). So do apps like this work, particularly when the full image stack > would exceed RAM? > > Anyway, doing this well is certainly a good sized summer project, don't > fool yourself into thinking it's going to be a simple modification of the > current timer and adding a couple buttons. > I agree, if iv will be more than "reference-implementation" all of this will be needed, my first suggestion was based on getting a very basic "scrubbing" feature with non-cached image data up and running. You can't load it all into GPU memory at once, you need to use FBOs/PBOs or something similar to not stall the GPU pipeline while doing playback. Basically, "load next frame" while "rendering current frame". To make the GSoC scope more clear, what would be ideal to see in iv when it comes to playback? Mikael
_______________________________________________ Oiio-dev mailing list [email protected] http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
