RMagick exporting pixels as string


#1

Hi,

I’m exporting pixels to an OpenGL texture from Magick::Image
using export_pixels.

The problem is that it’s slow.
5.5 seconds for a 330x370 image -slow.

Is there a faster way to do this:

image.export_pixels(0,0, cols, rows, “BGRA”).pack(“c*”)

Thanks in advance,
Ilmari


#2

On 1/7/06, Ilmari H. removed_email_address@domain.invalid wrote:

image.export_pixels(0,0, cols, rows, “BGRA”).pack(“c*”)
Did some more timing and pinpointed the problem:
export-bgra: 0.557612
pack: 4.761164

export_pixels isn’t quite the speed demon, but pack’s
the real problem.


#3

Am Samstag, den 07.01.2006, 19:29 +0900 schrieb Ilmari H.:

image.export_pixels(0,0, cols, rows, “BGRA”).pack(“c*”)

Did some more timing and pinpointed the problem:
export-bgra: 0.557612
pack: 4.761164

export_pixels isn’t quite the speed demon, but pack’s
the real problem.

Hi,

try image.to_blob, that will return the image data as a string.

Cheer
detlef


#4

On 1/7/06, Detlef R. removed_email_address@domain.invalid wrote:

Is there a faster way to do this:

Hi,

try image.to_blob, that will return the image data as a string.

Cheer
detlef

Thank you so much, that did the trick.

Now it’s taking just 0.16s to get the pixels. Also, the image was
actually 1000x1000 pixels, brainfart on my side.
(As a sidenote, Imlib2’s doing the same in 0.016s.)