Soon to become plainly obvious, I'm quite new to MagickWand. I'm trying to pass output from DCRaw to MagickWand with python and can't get past a Windows error 'access violation reading 0x00000000'. Whether I pipe the output of dcraw directly into MagickReadImage() or first write the dcraw output to a file then open it with MRI() in the same thread. Only if I write the output to a file, exit the thread and start a new one to read the file do I have success. Yes, yes, that does tell me something.... but what?? ;)
I have have tried a number of methods to kill the dcraw output and move the data to some other holder but always have the same result. I think what I'm asking is what ways do people pass in-memory images to MagickWand?
Any advice is greatly appreciated.
The basics of what I have going on in python using ctypes:
Code: Select all
proc = subprocess.Popen("dcraw -c -4 -T image.dng", shell=True, stdout=subprocess.PIPE).communicate() magickWandLib = 'C:\\Program Files (x86)\\ImageMagick-6.5.3-Q16\\CORE_RL_wand_.dll' Magick = cdll.LoadLibrary(magickWandLib) Magick.MagickWandGenesis() wand = Magick.NewMagickWand() Magick.MagickReadImageFile(proc) -> WindowsError: exception: access violation reading 0x2B2A3761