I have done:

http://www.imagemagick.org/discourse-
server/viewtopic.php?f=3&t=11827&p=38454#p38454

They say:

"A patch from you or another user is the best path to getting this into
the ImageMagick source base as quickly as possible. We are in agreement
with you but the ImageMagick developers are currently swamped and we
will not get to this problem for a minimum of several months."

Unfortunately I can't my patch to work. :( It needs someone with a
better understanding of how exactly the code works. I can give a few
pointers, though, if it helps anyone else.

The actual commands used are in magick/delegate.c and
config/delegates.xml.in (the latter seems to be the one that's actually
operative, at least in my case). For the mpeg case, these are called
from coders/mpeg.c , so you need to look at that to see exactly what it
does, too.

Currently ImageMagick uses this command for decoding:

command=""mpeg2decode" -q -b "%i" -f -r -o3
"%u%%d"

which basically works out to:

mpeg2decode -q -b (input) -f -r -o3 (output)

where %i is the input and %u%%d is the output. I'm not quite sure how
%u%%d *works* - that's the bit I can't figure out and I think is what's
preventing me from patching it properly.

The following ffmpeg command does something rather similar:

ffmpeg -i (input) -vcodec ppm -an -f rawvideo (output)

but just substituting it in the most logical way doesn't work. I'm
missing something here but I'm not sure what. The logical "mpeg2dec"
program, btw, doesn't actually seem capable of doing what's needed (for
one thing it doesn't seem possible to control the output filenames).

You don't need to keep rebuilding to test modifications. The installed
ImageMagick package will contain a file named delegates.xml , somewhere
like /usr/lib/ImageMagick-6.4.2/config/ . You can edit this and change
the command directly in there - the change will be applied the next time
you run an ImageMagick command.

You can test with simply 'identify file.mpg' . If it's working right,
you should get something like:

[EMAIL PROTECTED] ~]$ identify movie.mpg 
movie.mpg=>/home/adamw/tmp/magick-XXRc9qGL0.ppm[0] MPEG 128x128 128x128+0+0 
8-bit DirectClass 48kb 

(repeated a lot of times, use a short movie).

For encoding it gets more complex, but again the basic thing is you need
to look at what mpeg.c does - in this case it'll need to be changed -
and then adjust the delegate to a modern command (probably mpeg2enc ,
which most distros package).

I'll see if I can find all discussions of this issue in various places
and link them together...

-- 
identify command requires mpeg2decode
https://bugs.launchpad.net/bugs/59908
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to