Temporary storage of imagedata
Mark Smith
lists at futilism.com
Mon Aug 24 08:45:45 EDT 2009
Richard, the imagedata will tend to be a lot bigger (maybe 10x) than
the compressed image file, so you probably want to store <the text of
image "someimage">, and then <set the text of image "someimage" to
tStoredData[1]>.
The text of an image is what would be in the file - ie. <the text of
image "someimage.jpg"> is the same as what you'd get from <get url
("binfile:someimage.jpeg")>, whereas the imagedata is (I think) the
actual pixels that revolution displays.
Other than that, I'd think your idea would work well.
If you store the text of your images in an array, then you could
serialize the array with <arrayencode>, (and maybe base64encode the
result for transmission over the net).
Best,
Mark Smith
On 24 Aug 2009, at 13:28, Richard Miller wrote:
> This is for a revlet application.
>
> I'm looking at various ways to temporarily store image snapshots
> before displaying them in a stack. The objective is to record
> several hundred screen shots (one per second), store them
> temporarily, then put the images into a new stack, one image per
> card, for replay. The temporary storage process needs to occur very
> quickly, as the user is interacting with the main stack while the
> recording is taking place. Each snapshot is shot with a low
> jpegquality (30-40), as the file size of the final group of images
> must be kept to a minimum so it can be transferred fairly quickly
> over the net.
>
> Each image is averaging 30k. 100 images is 3 mb... which will work
> for this application. Right now, I am just saving each snapshot to
> a file, then at the end of the recording process, quickly putting
> each image onto a card. That whole saving-to-stack process takes
> about 10 seconds or so, which is fine.
>
> I'm thinking it might be better/more elegant to store the imagedata
> of all the images into one variable (rather than to separate
> files), but I'm not sure how best to store this data (since it is
> binary and contains many lines per image). Then, at the end of the
> recording, I could transfer just this data over the net (stored as
> one binary file), then either create a display stack containing one
> image per card, or maybe even better, just create one card with one
> image "on the fly", pulling the data for each image from this data
> variable.
>
> Thoughts?
>
> Thanks.
> Richard Miller
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
More information about the use-livecode
mailing list