ImageMagick incompatibilities

jouke on 2004-10-08T12:07:49

When I started working on pVoice 2.0, I planned to use Image::Magick (or PerlMagick if you like) for processing images. At that time however, I was unable to get an Image::Magick package that could be distributed with pVoice without having to install the complete ImageMagick.

Recently I discovered a PPM repository at http://www.bribes.org/perl/ppmdir which provides Image::Magick 6.1.0, compatible with PAR (as he calls it). I was delighted and immediately started to write a replacement for AAC::Pvoice::Bitmap, so it would use Image::Magick. Everything worked fine on my development machine, so I packaged it with PAR, put it on another Windows XP machine, and it still worked. Great!

I then put the same package on my Win98 box and tried again. Everything worked fine until I closed pVoice. 'page fault'. Since adding the Image::Magick stuff was the only thing I had changed since my latest test, it had to come from there...

Today I created a (very) minimal test consisting of the following code:

use Image::Magick; my $img = Image::Magick->new(); $img->Read(filename => 'logo.jpg'); $img->Set(magick => 'png'); $img->Write(filename => 'logo.png');

I ran this on five different Windows versions. The results were not making my any happier: Windows XP and Windows NT can run this without any problems. Windows 98SE and Windows ME generate the page fault, and Windows 95 can't even load Magick.dll (the dll that causes the pagefault on the mentioned installations)

This basically means I can't use the Image::Magick based AAC::Pvoice::Bitmap into production. Unless of course someone has a solution....


It's dead, Jim

djberg96 on 2004-10-08T14:30:34

I think it's great that you're trying to support as many versions of Windows as possible. However, I think it's fair to say that Windows 95 and 98 are dead, and Windows ME never was. Frankly, my solution would be to stop supporting those platforms.

Or do you have some users that simply can't upgrade for various reasons?

Re:It's dead, Jim

jouke on 2004-10-08T14:47:26

I know it's dead, and I *really, really* hate to keep supporting those versions, but unfortunately there are still quite a number of people who use Windows 98. I think that if my own daughter wouldn't have Windows 98 on her PC, I would have dropped Win98 support long ago. But given the slow processor and the very limited amount of RAM, installing a newer version would not improve her experience :-/. And yes, we're in the process of getting her a newer machine...but that may still take a few months...

And there's another (potential) reason to keep supporting (at least) Windows 98. Today I received an email from the director of a Russian orphanage for disabled children. They are investigating how they can use pVoice for some of their children. Given the circumstances they find themselves in (no support from the government, living on grants and donations from abroad), I don't expect them to use the latest technology.

Now, given the results of the tests, I'm considering building in a check for the OS version , using Image::Magick on recent Windows version, and using the 'old-style' image handling on older versions. I have to move on some day...