First of all: thank you so much for this library! I've been using it for a while on my Linux netbook now, and with this I pretty much have no reason to switch back to Mac or Windows anymore.
I've been using it for capturing video, modifying the frames and then exporting it (I'd give an example, but this is my first post and I'm not allowed to include links
), and it's been working great!
However, I run into a peculiar problem: when the rendering of the frames goes too fast, the GSMovieMaker object gets filled up with unprocessed frames, which crashes the processing sketch. My poor little netbook just can't keep up
.
Now, I get the advise to lower the framerate, but the whole point is that I'm not drawing to the screen: I just want to send arrays with pixels into the GSMovieMaker as fast as possible, to export a highres movie as fast as possible. The limiting factor seems to be the speed at with the frames are processed by GSMovieMaker, and there's no way for me to tell how long I should wait untill I pass another array of pixels.
Would it be possible to make a function that tells wether or not the GSMovieMaker still has unprocessed frames or not? So that I could do something like:
Code:while (currentFrame < totalFrames) {
if (!mm.unprocessedFrames()) {
// render currentFrame, add it to GSMovieMaker object, ++currentFrame
}
}
or maybe make a variant of the
addFrame() function which doesn't return to the sketch untill the added frame has been processed? Those are the two most obvious solutions I could think of.
(I saw in the messageboard on sourceforge you made some changes that would reduce the amount of memory used by this library in the first place, so maybe my problem already has been solved indirectly...)