Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

APNG patch for graphics/png port

3 views
Skip to first unread message

Coleman Kane

unread,
Dec 14, 2008, 1:22:34 PM12/14/08
to
Hello,

I recently played with building Thunderbird 3.0b1 from source (it works
pretty well, btw). I was playing with some of the options to enable
using the system versions of a number of libraries, rather than relying
upon statically linking them into the project.

One thing that I noticed was the APNG patch from here:
* http://littlesvr.ca/apng/.
This seems to be expected by Thunderbird and is part of the latest
source tree. Mozilla has been maintaining a format spec here:
* https://wiki.mozilla.org/APNG_Specification

Sadly the patch has lagged behind the latest releases of libpng. I
merged the patch into the latest version (1.2.33) that we use, and have
made an appropriate change to the port files of graphics/png. I think
that APNG support from libpng may be useful in other software as well.

I am attaching the patch, to apply in /usr/ports, for anyone to test. So
far it doesn't seem to regress anything for me, and I can use
thunderbird 3 with --with-system-png=/usr/local in my .mozconfig. I'd
like to see some other testers, and get a comment from the graphics/png
maintainer.

--
Coleman Kane

graphics_png-apng.patch
signature.asc

Andrey Chernov

unread,
Dec 14, 2008, 6:28:18 PM12/14/08
to
On Sun, Dec 14, 2008 at 01:22:34PM -0500, Coleman Kane wrote:
> One thing that I noticed was the APNG patch from here:
> * http://littlesvr.ca/apng/.
> This seems to be expected by Thunderbird and is part of the latest
> source tree. Mozilla has been maintaining a format spec here:
> * https://wiki.mozilla.org/APNG_Specification

It should be either accepted by libpng developers (and this way appears in
the png port automatically) or separate slave apng port should be made.
Porter is poor replacement for developer, especially considering lots of
security holes libpng long history.

--
http://ache.pp.ru/

Coleman Kane

unread,
Dec 14, 2008, 7:03:23 PM12/14/08
to

That is a good point, though the author of libpng suggests the MNG
format for animated graphics (and JNG as a jpeg version). This leads me
to believe that he's probably uninterested in actually incorporating the
APNG patch into libpng.

Honestly, I don't understand why the mozilla people have decided to push
this APNG standard now. Maybe I'll just go and post into that mozilla
issue a complain about wasting development time on an unfinished spec
that seems like a reimplementation of MNG.

I'll write to Greg (author) and see what he says. This is one of those
annoying points in software evolution where big entity A begins
spreading around a patched version of Author B's software, which may end
up rivaling Author B's implementation of the patch's functionality.

--
Coleman Kane

signature.asc

Jeremy Messenger

unread,
Dec 14, 2008, 11:54:18 PM12/14/08
to
On Sun, 14 Dec 2008 12:22:34 -0600, Coleman Kane <cok...@freebsd.org>
wrote:

> Hello,
>
> I recently played with building Thunderbird 3.0b1 from source (it works
> pretty well, btw). I was playing with some of the options to enable
> using the system versions of a number of libraries, rather than relying
> upon statically linking them into the project.

We should keep compile static link, because PNG folks disapprove Mozilla's
APNG patch. It's what we did with Firefox 3.

Cheers,
Mezz

> One thing that I noticed was the APNG patch from here:
> * http://littlesvr.ca/apng/.
> This seems to be expected by Thunderbird and is part of the latest
> source tree. Mozilla has been maintaining a format spec here:
> * https://wiki.mozilla.org/APNG_Specification
>
> Sadly the patch has lagged behind the latest releases of libpng. I
> merged the patch into the latest version (1.2.33) that we use, and have
> made an appropriate change to the port files of graphics/png. I think
> that APNG support from libpng may be useful in other software as well.
>
> I am attaching the patch, to apply in /usr/ports, for anyone to test. So
> far it doesn't seem to regress anything for me, and I can use
> thunderbird 3 with --with-system-png=/usr/local in my .mozconfig. I'd
> like to see some other testers, and get a comment from the graphics/png
> maintainer.


--
me...@cox.net - me...@FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/ - gn...@FreeBSD.org
_______________________________________________
freebs...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-port...@freebsd.org"

--
Posted automagically by a mail2news gateway at muc.de e.V.
Please direct questions, flames, donations, etc. to news-...@muc.de

Coleman Kane

unread,
Dec 15, 2008, 5:38:56 PM12/15/08
to
On Sun, 2008-12-14 at 22:54 -0600, Jeremy Messenger wrote:
> On Sun, 14 Dec 2008 12:22:34 -0600, Coleman Kane <cok...@freebsd.org>
> wrote:
>
> > Hello,
> >
> > I recently played with building Thunderbird 3.0b1 from source (it works
> > pretty well, btw). I was playing with some of the options to enable
> > using the system versions of a number of libraries, rather than relying
> > upon statically linking them into the project.
>
> We should keep compile static link, because PNG folks disapprove Mozilla's
> APNG patch. It's what we did with Firefox 3.
>
> Cheers,
> Mezz
>

Any idea why the mozilla folk jumped on further developing APNG, rather
than just using (much more mature) MNG for the same purpose?

--
Coleman Kane

signature.asc

Jeremy Messenger

unread,
Dec 16, 2008, 12:02:34 AM12/16/08
to
On Mon, 15 Dec 2008 16:38:56 -0600, Coleman Kane <cok...@freebsd.org>
wrote:

> On Sun, 2008-12-14 at 22:54 -0600, Jeremy Messenger wrote:
>> On Sun, 14 Dec 2008 12:22:34 -0600, Coleman Kane <cok...@freebsd.org>
>> wrote:
>>
>> > Hello,
>> >
>> > I recently played with building Thunderbird 3.0b1 from source (it
>> works
>> > pretty well, btw). I was playing with some of the options to enable
>> > using the system versions of a number of libraries, rather than
>> relying
>> > upon statically linking them into the project.
>>
>> We should keep compile static link, because PNG folks disapprove
>> Mozilla's
>> APNG patch. It's what we did with Firefox 3.
>>
>> Cheers,
>> Mezz
>>
>
> Any idea why the mozilla folk jumped on further developing APNG, rather
> than just using (much more mature) MNG for the same purpose?

I have no idea. The google has found useful links and I think two URLs
might help you. I didn't read there as I have no interest with and don't
care about APNG vs MNG.

http://mozilla.wikia.com/wiki/APNG_vs_MNG
http://en.wikipedia.org/wiki/APNG#History

Cheers,
Mezz

Coleman Kane

unread,
Dec 18, 2008, 9:58:34 AM12/18/08
to

Short version:

whatwg.org and Mozilla people seemed to think that an "Animated PNG"
specification would work best (quickest adoption) if they piggy-backed
it on top of the already supported PNG file format. Due to the political
implications of such things, the hill was much steeper to climb to get
everyone to agree to use MNG than it was to get them to use APNG, even
though the latter is basically a reimplementation of the former
(actually MNG is a superset of APNG functionality). One key component
was that a non-APNG viewer will still view the first image in an APNG,
while an MNG file would come up with a "broken image" placeholder.
Another key component was that IE would be more likely to adopt it (we
remember how long it took them to adopt PNG, right?) if it was based on
PNG rather than MNG.

The PNG maintainers, coming at it from a pure maintainability standpoint
stood their ground and said that they didn't want to absorb the burden
of maintaining an "Animated" feature within libpng, they would rather
that be handled by the separate libmng.

So now we basically have an unofficial fork of libpng that I'd call
"mozilla-libpng", which implements the desired features from WHATWG, but
makes a very liberal interpretation of the PNG specification.

Oh yeah, and it also is based upon a Specification started by an SoC'er,
and a patchset which is no longer maintained by him, and instead is
maintained by mozilla.org at their discretion (read: whenever they
update their png dependency). Again it is unofficial, and Mozilla.org's
specification is unfinished as of now.

And, from the bug report linked in one of the articles above, it doesn't
seem like the two camps are getting along very well. PNG maintainers
won't accept APNG, and WHATWG and Mozilla.org won't replace it with MNG.

Especially now that APNG is pretty much out of the bag, my opinion is
that the libpng people should either adopt APNG into their tree, or
yield control over PNG to Mozilla.org. It's not about being the "right"
thing to do, it is about avoiding a highly user-confusing feature-based
fork of a file format.

Okay. So that was actually still kinda long.

--
Coleman Kane

signature.asc
0 new messages