After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 71267 - implement a loader for MNG animations
implement a loader for MNG animations
Status: RESOLVED WONTFIX
Product: gdk-pixbuf
Classification: Platform
Component: general
git master
Other other
: Normal enhancement
: ---
Assigned To: gdk-pixbuf-maint
gdk-pixbuf-maint
: 113077 167718 (view as bug list)
Depends on:
Blocks: 122334 167718
 
 
Reported: 2002-02-12 11:37 UTC by Matthias Clasen
Modified: 2011-12-16 23:44 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
the loader (8.27 KB, text/plain)
2002-04-10 20:23 UTC, Matthias Clasen
  Details
necessary glue (5.86 KB, patch)
2002-04-10 20:25 UTC, Matthias Clasen
needs-work Details | Review
this file is probably needed, too (37 bytes, text/plain)
2002-04-11 21:33 UTC, Matthias Clasen
  Details

Description Matthias Clasen 2002-02-12 11:37:55 UTC
based on libmng
Comment 1 Havoc Pennington 2002-02-12 15:09:11 UTC
The problem is that libmng allows only one iterator at a time for each
animation, which means you can't implement the GdkPixbufAnimation API
without copying the entire image data structure for each iterator.
Comment 2 Matthias Clasen 2002-02-13 08:11:09 UTC
For how many potential users of that API do you expect the restriction
to a single iterator to be a problem ? I would guess that 90% of
them are quite happy with a single iterator, considering that they're
using libmng directly now. 
The remaining 10% will probably have to suffer the overhead of copying
the whole animation for every other iterator. If only libmng offered
a way to do that conveniently ! All I can see now is that you would
have to extract each frame and reconstruct an animation from these
full frames, which would of course be a huge memory hog.
Comment 3 Havoc Pennington 2002-02-13 16:10:21 UTC
Sure, most people will only display the animation one time. But the
GdkPixbufAnimation API does have to be implemented in such a way that
it works, and it'll be a pain with libmng.
Comment 4 Matthias Clasen 2002-02-13 16:24:07 UTC
Displaying it multiple times wouldn't even a problem, or would it ?
My understanding of the problematic case was: displaying the same
animation in two places at the same time, e.g. one window plays
the animation at full speed while another one single-steps through 
it.

Are there any alternatives to libmng ? You have talked to the libmng
maintainer about this problem, haven't you ? What was the outcome,
will there be a non-multiple-iterator-impaired libmng sometime ?
Comment 5 Havoc Pennington 2002-02-13 17:20:44 UTC
Displaying it two places at once conceptually means two positions in
the anim at once (look at how GtkImage works)

I think I intended to talk to the libmng maintainers but never did.
Comment 6 Matthias Clasen 2002-04-10 20:22:09 UTC
Simple things first: Here is a first cut at an mng loader which
only loads still images. I've only implemented incremental loading, 
non-incremental loading can be provided by the generic_image_load 
implementation which is attached to some other bug. Loading 
animations is left as an excercise for the reader.
Comment 7 Matthias Clasen 2002-04-10 20:23:48 UTC
Created attachment 7640 [details]
the loader
Comment 8 Matthias Clasen 2002-04-10 20:25:02 UTC
Created attachment 7641 [details] [review]
necessary glue
Comment 9 Matthias Clasen 2002-04-11 21:33:32 UTC
Created attachment 7658 [details]
this file is probably needed, too
Comment 10 Owen Taylor 2003-05-15 20:43:10 UTC
*** Bug 113077 has been marked as a duplicate of this bug. ***
Comment 11 Alan Horkan 2005-03-24 17:04:15 UTC
I see this is marked as "needs-work" but even a static loader would be really
useful (release early release often) so I'm hoping someone could clarify if the
needs work means you are waiting for minor cleanup of the patches or if for some
reason you thought it was a good idea to wait until it had full animation support?  
Comment 12 Thomas D Ahle 2007-03-18 20:57:27 UTC
Anything happening on this bug?
Comment 13 Matthias Clasen 2007-03-19 22:52:34 UTC
I don't think adding an mng loader that can only display the first frame is useful, and the libmng api cannot really support the iterator concept that 
GdkPixbufAnimation requires.
Comment 14 Thomas D Ahle 2007-03-20 13:25:07 UTC
Sure, but as gtk supports gif, why not mng? Isn't it just like a list of pngs?
If it can't be supported, GdkPixbufAnimation should at least have a constructor, which takes an array of pngs.
Comment 15 Lucas Rocha 2007-06-26 18:37:08 UTC
*** Bug 167718 has been marked as a duplicate of this bug. ***
Comment 16 Matthias Clasen 2011-12-16 23:44:45 UTC
Nothing happening here, and mng has not really made it as an animation file format anyway. Not worth keeping a bug open.