Re: Call for informal discussion: APNG
Pavel Zlatovratskii <[email protected]> Wed, 20 Sep 2017 23:35:12 +0300
| Newsgroups | gmane.comp.graphics.png.general |
|---|---|
| Organization | TB.Budget |
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --===============0933040428700152539== Content-Type: multipart/alternative; boundary="------------DF63399C56AC36CD61FA1000" This is a multi-part message in MIME format. --------------DF63399C56AC36CD61FA1000 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable FLIF is FLIF and PNG is PNG. I don't like idea "X have feature Y, let's do the same" especially when=20 "same" done same way and X is also lossless. It became Not-Invented-Here=20 way... why people who want lossless animation with animation interlacing=20 couldn't use FLIF? When I wrote about EXIF I often try to remind that PNG tEXt/iTXt is=20 better than EXIF way to save same data. I don't think PNG could outperform FLIF in interlacing. Not without=20 breaking whole compatibility like "PNG 2.0". So why people should use=20 NewAPNG instead of FLIF? I think NewAPNG should have features that absent in FLIF so people could=20 use FLIF for one purpose and NewAPNG for another. My wishes: 1) Support for big and endless streams for use with screencast and=20 title|subtitle overlay. I know absolutely no lossless overlay video=20 codec for now. 2) No "auto" fallback to PNG, but easy PNG/APNG extraction to allow=20 intentional fallback. I suppose with nowadays JS there should be no=20 problem to do such things right in browser if it will require only chunk=20 headers handling. 3) Reuse more than one previous frame and other way than same positions.=20 Something like 2D LZ77: "paste this part of frame N frames before into=20 current frame". This could increase compression especially for cases=20 like text moving on the screen or appear and disappear labels (animated=20 comics style). 20.09.2017 22:57, Soni L. =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > FLIF has it, so I think it's a good idea for us to have it too. > > Due to the way normal APNG chunks work, it's *arguably* already=20 > supported - just deliberately use the "wrong" sequence numbers ;). > > https://wiki.mozilla.org/APNG_Specification#Chunk_Sequence_Numbers > > On 2017-09-20 04:15 PM, Pavel Zlatovratskii wrote: >> >> If we do new APNG we could do anything we want, but I don't think=20 >> global interlacing is good idea. >> >> It break too much compatibility and significantly increase difference=20 >> with current APNG (and so complexity of decoder). >> >> I think best way for "new APNG" (which definitely should get new=20 >> name) is be superset of current APNG (with different chunk names), so=20 >> at least some subset of NewAPNG could be converted to APNG files=20 >> without decoding image data, but just with chunk repacking. >> >> >> 20.09.2017 20:18, Soni L. =D0=BF=D0=B8=D1=88=D0=B5=D1=82: >>> If we do get a new APNG, can we get full image interlacing? >>> >>> As you know, in APNG, you can do interlacing to make each frame=20 >>> visible faster at a lower resolution, but EACH FRAME ONLY. The idea=20 >>> with full interlacing is that you'd interlace IDAT and fdAT, such=20 >>> that you can quickly load the whole APNG animation (at a lower=20 >>> resolution), and slowly get it up to high-res by loading the=20 >>> following chunks. >>> >>> On 2017-09-20 12:30 PM, Pavel Zlatovratskii wrote: >>>> >>>> I don't think approval of APNG could be any use for now. It was=20 >>>> important in 2007 to motivate browsers (and other software) support=20 >>>> it. But today it is already have pretty wide support as you=20 >>>> describe, so I see no reason to not left it as Mozilla's=20 >>>> "side-standard". >>>> >>>> May be it's possible to design some new animation PNG based on APNG=20 >>>> and make it standard. Like SPDY and HTTP/2: Google design and=20 >>>> spread SPDY, but SDPY is now left as SPDY, not became HTTP2.0 nor=20 >>>> was approved by IETF HTTP WG. >>>> >>>> There is also a little problem with official APNG same as Mozilla=20 >>>> APNG: current decoders may not able to handle approved aCTL chunk=20 >>>> as it is supposed to handle private acTL chunk. So without any=20 >>>> benefit for aCTL it may be never spread. >>>> >>>> 15.09.2017 2:09, Chris Lilley =D0=BF=D0=B8=D1=88=D0=B5=D1=82: >>>>> My reason for re-opening discussion is the "implementation and=20 >>>>> testing" part. APNG has since become widespread. Compared to=20 >>>>> animated GIF, it offers 24bit (and 48bit!) colors rather than 256,=20 >>>>> and full transparency rather than binary opacity. >>>>> >>>>> Regardless of what we may think about the reduced capabilities=20 >>>>> relative to MNG, or the advisability of re-using an image type for=20 >>>>> animations, this is the current state of the world and it seems=20 >>>>> sub-optimal to me that the PNG specification and extensions=20 >>>>> documents continue to not reflect this. I would like therefore to=20 >>>>> kick off informal discussion, then a formal discussion period and=20 >>>>> (re)vote. >>>>> >>>>> APNG continues to be supported in Mozilla Firefox (and other apps=20 >>>>> using the Gecko rendering engine), starting from version 3, June 20= 08. >>>>> >>>>> APNG is supported by Safari (and other apps using the WebKit=20 >>>>> rendering engine) since version 8, October 2014. >>>>> >>>>> In addition, native apps on MacOS X and iOS use native support for=20 >>>>> APNG, since iOS 10 and OS X Yosemite, October 2014. >>>>> >>>>> APNG is now supported by Google Chrome (and other apps using the=20 >>>>> Blink rendering engine, such as Opera and Samsung Internet),=20 >>>>> starting from version 59, June 2017. >>>>> >>>>> Microsoft Edge does not support APNG, but MS Edge Devs stated that=20 >>>>> this is "under review". Meanwhile, APNG displays in Edge as the=20 >>>>> first frame, which is the expected fallback behavior. >>>>> >>>>> A starter document is attached to facilitate discussion. >>>>> >>>>> --=20 >>>>> Chris Lilley >>>>> @svgeesus >>>>> Technical Director @ W3C >>>>> W3C Strategy Team, Core Web Design >>>>> W3C Architecture & Technology Team, Core Web & Media >>>>> >>>>> >>>>> -------------------------------------------------------------------= ----------- >>>>> Check out the vibrant tech community on one of the world's most >>>>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>>>> >>>>> >>>>> _______________________________________________ >>>>> png-mng-misc mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/png-mng-misc >>>> >>>> --=20 >>>> Have a nice DOS. >>>> >>>> Pavel Zlatovratskiiscondo-JGs/[email protected];[email protected] >>>> >>>> >>>> --------------------------------------------------------------------= ---------- >>>> Check out the vibrant tech community on one of the world's most >>>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>>> >>>> >>>> _______________________________________________ >>>> png-mng-misc mailing list >>>> [email protected] >>>> https://lists.sourceforge.net/lists/listinfo/png-mng-misc >>> >>> >>> >>> ---------------------------------------------------------------------= --------- >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>> >>> >>> _______________________________________________ >>> png-mng-misc mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/png-mng-misc >> >> --=20 >> Have a nice DOS. >> >> Pavel Zlatovratskiiscondo-JGs/[email protected];[email protected] >> >> >> ----------------------------------------------------------------------= -------- >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >> >> >> _______________________________________________ >> png-mng-misc mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/png-mng-misc > > > > -----------------------------------------------------------------------= ------- > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > _______________________________________________ > png-mng-misc mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/png-mng-misc --=20 Have a nice DOS. Pavel Zlatovratskii scondo-JGs/[email protected]; [email protected] --------------DF63399C56AC36CD61FA1000 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <html> <head> <meta content=3D"text/html; charset=3DUTF-8" http-equiv=3D"Content-Ty= pe"> </head> <body bgcolor=3D"#FFFFFF" text=3D"#000000"> <p>FLIF is FLIF and PNG is PNG.</p> <p>I don't like idea "X have feature Y, let's do the same" especially when "same" done same way and X is also lossless. It became Not-Invented-Here way... why people who want lossless animation with animation interlacing couldn't use FLIF?<br> </p> <p>When I wrote about EXIF I often try to remind that PNG tEXt/iTXt is better than EXIF way to save same data.</p> <p>I don't think PNG could outperform FLIF in interlacing. Not without breaking whole compatibility like "PNG 2.0". So why people should use NewAPNG instead of FLIF? <br> </p> <p>I think NewAPNG should have features that absent in FLIF so people could use FLIF for one purpose and NewAPNG for another. My wishes: <br> </p> <p>1) Support for big and endless streams for use with screencast and title|subtitle overlay. I know absolutely no lossless overlay video codec for now.<br> </p> <p>2) No "auto" fallback to PNG, but easy PNG/APNG extraction to allow intentional fallback. I suppose with nowadays JS there should be no problem to do such things right in browser if it will require only chunk headers handling.<br> </p> 3) Reuse more than one previous frame and other way than same positions. Something like 2D LZ77: "paste this part of frame N frames before into current frame". This could increase compression especially for cases like text moving on the screen or appear and disappear labels (animated comics style).<br> <br> <div class=3D"moz-cite-prefix">20.09.2017 22:57, Soni L. =D0=BF=D0=B8= =D1=88=D0=B5=D1=82:<br> </div> <blockquote cite=3D"mid:34af0622-c0fd-2343-9aba-52ab7963168f-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org" type=3D"cite"> <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DU= TF-8"> <tt>FLIF has it, so I think it's a good idea for us to have it too.<br> <br> </tt><tt>Due to the way normal APNG chunks work, it's *arguably* already supported - just deliberately use the "wrong" sequence numbers ;).<br> <br> <a moz-do-not-send=3D"true" class=3D"moz-txt-link-freetext" href=3D"https://wiki.mozilla.org/APNG_Specification#Chunk_Sequence_Number= s">https://wiki.mozilla.org/APNG_Specification#Chunk_Sequence_Numbers</a>= <br> </tt><br> <div class=3D"moz-cite-prefix">On 2017-09-20 04:15 PM, Pavel Zlatovratskii wrote:<br> </div> <blockquote type=3D"cite" cite=3D"mid:b633f591-4d17-1ece-9811-821d7007b796-o+MxOtu4lMCHXe+LvDLADg@public.gmane.org"> <meta content=3D"text/html; charset=3DUTF-8" http-equiv=3D"Content-Type"> <p>If we do new APNG we could do anything we want, but I don't think global interlacing is good idea.</p> <p>It break too much compatibility and significantly increase difference with current APNG (and so complexity of decoder).</p= > <p>I think best way for "new APNG" (which definitely should get new name) is be superset of current APNG (with different chunk names), so at least some subset of NewAPNG could be converted to APNG files without decoding image data, but just with chunk repacking.<br> </p> =C2=A0<br> <div class=3D"moz-cite-prefix">20.09.2017 20:18, Soni L. =D0=BF=D0= =B8=D1=88=D0=B5=D1=82:<br> </div> <blockquote cite=3D"mid:d5597239-0e12-d71e-a6c1-d311caf70b11-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org" type=3D"cite"> <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF-8"> If we do get a new APNG, can we get full image interlacing?<br> <br> As you know, in APNG, you can do interlacing to make each frame visible faster at a lower resolution, but EACH FRAME ONLY. The idea with full interlacing is that you'd interlace IDAT and fdAT, such that you can quickly load the whole APNG animation (at a lower resolution), and slowly get it up to high-res by loading the following chunks.<br> <br> <div class=3D"moz-cite-prefix">On 2017-09-20 12:30 PM, Pavel Zlatovratskii wrote:<br> </div> <blockquote type=3D"cite" cite=3D"mid:ab199da1-004a-5f1c-843a-4f3dda06b755-o+MxOtu4lMCHXe+LvDLADg@public.gmane.org"> <meta content=3D"text/html; charset=3DUTF-8" http-equiv=3D"Content-Type"> <p>I don't think approval of APNG could be any use for now. It was important in 2007 to motivate browsers (and other software) support it. But today it is already have pretty wide support as you describe, so I see no reason to not left it as Mozilla's "side-standard". <br> </p> <p>May be it's possible to design some new animation PNG based on APNG and make it standard. Like SPDY and HTTP/2: Google design and spread SPDY, but SDPY is now left as SPDY, not became HTTP2.0 nor was approved by IETF HTTP WG.<= br> </p> <p>There is also a little problem with official APNG same as Mozilla APNG: current decoders may not able to handle approved aCTL chunk as it is supposed to handle private acTL chunk. So without any benefit for aCTL it may be never spread.<br> </p> <div class=3D"moz-cite-prefix">15.09.2017 2:09, Chris Lilley =D0=BF=D0=B8=D1=88=D0=B5=D1=82:<br> </div> <blockquote cite=3D"mid:fa3adedb-5d2c-c892-4ae4-ef928270e542-Pl0VvzL1eo4@public.gmane.org" type=3D"cite"> <meta http-equiv=3D"content-type" content=3D"text/html; charset=3DUTF-8"> My reason for re-opening discussion is the "implementation and testing" part. APNG has since become widespread. Compared to animated GIF, it offers 24bit (and 48bit!) colors rather than 256, and full transparency rather than binary opacity.<br> <p>Regardless of what we may think about the reduced capabilities relative to MNG, or the advisability of re-using an image type for animations, this is the current state of the world and it seems sub-optimal to me that the PNG specification and extensions documents continue to not reflect this. I would like therefore to kick off informal discussion, then a formal discussion period and (re)vote.<br> </p> <p>APNG continues to be supported in Mozilla Firefox (and other apps using the Gecko rendering engine), starting from version 3, June 2008.</p> <p>APNG is supported by Safari (and other apps using the WebKit rendering engine) since version 8, October 2014.<b= r> </p> <p>In addition, native apps on MacOS X and iOS use native support for APNG, since iOS 10 and OS X Yosemite, October 2014.</p> <p>APNG is now supported by Google Chrome (and other apps using the Blink rendering engine, such as Opera and Samsung Internet), starting from version 59, June 2017.</= p> <p>Microsoft Edge does not support APNG, but MS Edge Devs stated that this is "under review". Meanwhile, APNG displays in Edge as the first frame, which is the expected fallback behavior.</p> <p>A starter document is attached to facilitate discussion.<br> </p> <pre class=3D"moz-signature" cols=3D"72">--=20 Chris Lilley @svgeesus Technical Director @ W3C W3C Strategy Team, Core Web Design W3C Architecture & Technology Team, Core Web & Media</pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">--------------------------------------------= ---------------------------------- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! <a class=3D"moz-txt-link-freetext" hre= f=3D"http://sdm.link/slashdot" moz-do-not-send=3D"true">http://sdm.link/s= lashdot</a></pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">____________________________________________= ___ png-mng-misc mailing list <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:[email protected]= ourceforge.net" moz-do-not-send=3D"true">[email protected]= et</a> <a class=3D"moz-txt-link-freetext" href=3D"https://lists.sourceforge.net/= lists/listinfo/png-mng-misc" moz-do-not-send=3D"true">https://lists.sourc= eforge.net/lists/listinfo/png-mng-misc</a> </pre> </blockquote> <br> <pre class=3D"moz-signature" cols=3D"72">--=20 Have a nice DOS. Pavel Zlatovratskii <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:= scondo-JGs/[email protected]" moz-do-not-send=3D"true">scondo-JGs/[email protected]</a>; <a class=3D"= moz-txt-link-abbreviated" href=3D"mailto:[email protected]" moz-do-not-sen= d=3D"true">[email protected]</a> </pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">----------------------------------------------= -------------------------------- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! <a moz-do-not-send=3D"true" class=3D"m= oz-txt-link-freetext" href=3D"http://sdm.link/slashdot">http://sdm.link/s= lashdot</a></pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">______________________________________________= _ png-mng-misc mailing list <a moz-do-not-send=3D"true" class=3D"moz-txt-link-abbreviated" href=3D"ma= ilto:[email protected]">[email protected]= et</a> <a moz-do-not-send=3D"true" class=3D"moz-txt-link-freetext" href=3D"https= ://lists.sourceforge.net/lists/listinfo/png-mng-misc">https://lists.sourc= eforge.net/lists/listinfo/png-mng-misc</a> </pre> </blockquote> <br> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">------------------------------------------------= ------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! <a class=3D"moz-txt-link-freetext" hre= f=3D"http://sdm.link/slashdot" moz-do-not-send=3D"true">http://sdm.link/s= lashdot</a></pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">_______________________________________________ png-mng-misc mailing list <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:[email protected]= ourceforge.net" moz-do-not-send=3D"true">[email protected]= et</a> <a class=3D"moz-txt-link-freetext" href=3D"https://lists.sourceforge.net/= lists/listinfo/png-mng-misc" moz-do-not-send=3D"true">https://lists.sourc= eforge.net/lists/listinfo/png-mng-misc</a> </pre> </blockquote> <br> <pre class=3D"moz-signature" cols=3D"72">--=20 Have a nice DOS. Pavel Zlatovratskii <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:= scondo-JGs/[email protected]" moz-do-not-send=3D"true">scondo-JGs/[email protected]</a>; <a class=3D"= moz-txt-link-abbreviated" href=3D"mailto:[email protected]" moz-do-not-sen= d=3D"true">[email protected]</a> </pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">--------------------------------------------------= ---------------------------- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! <a moz-do-not-send=3D"true" class=3D"m= oz-txt-link-freetext" href=3D"http://sdm.link/slashdot">http://sdm.link/s= lashdot</a></pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">_______________________________________________ png-mng-misc mailing list <a moz-do-not-send=3D"true" class=3D"moz-txt-link-abbreviated" href=3D"ma= ilto:[email protected]">[email protected]= et</a> <a moz-do-not-send=3D"true" class=3D"moz-txt-link-freetext" href=3D"https= ://lists.sourceforge.net/lists/listinfo/png-mng-misc">https://lists.sourc= eforge.net/lists/listinfo/png-mng-misc</a> </pre> </blockquote> <br> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">----------------------------------------------------= -------------------------- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! <a class=3D"moz-txt-link-freetext" hre= f=3D"http://sdm.link/slashdot">http://sdm.link/slashdot</a></pre> <br> <fieldset class=3D"mimeAttachmentHeader"></fieldset> <br> <pre wrap=3D"">_______________________________________________ png-mng-misc mailing list <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:[email protected]= ourceforge.net">[email protected]</a> <a class=3D"moz-txt-link-freetext" href=3D"https://lists.sourceforge.net/= lists/listinfo/png-mng-misc">https://lists.sourceforge.net/lists/listinfo= /png-mng-misc</a> </pre> </blockquote> <br> <pre class=3D"moz-signature" cols=3D"72">--=20 Have a nice DOS. Pavel Zlatovratskii <a class=3D"moz-txt-link-abbreviated" href=3D"mailto:= scondo-JGs/[email protected]">scondo-JGs/[email protected]</a>; <a class=3D"moz-txt-link-abbreviated"= href=3D"mailto:[email protected]">[email protected]</a> </pre> </body> </html> --------------DF63399C56AC36CD61FA1000-- --===============0933040428700152539== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot --===============0933040428700152539== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ png-mng-misc mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/png-mng-misc --===============0933040428700152539==--