Re: DWAA minimum tile size?
Karl Rasche <[email protected]> Wed, 21 Nov 2018 06:44:47 -0800
| Newsgroups | gmane.comp.video.openexr.devel |
|---|---|
| Message-ID | <CAD5HwvQTw1enoeBU058CU7kN2B9pXZ_jiFWzRK6qXL=FXK7wkw@mail.gmail.com> |
--===============0204344102017965472== Content-Type: multipart/alternative; boundary="0000000000004e496c057b2dcb05" --0000000000004e496c057b2dcb05 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hey Larry - What is the single channel named? For tiled files, dwaa =3D=3D dwab, so you should hit the same issue with ei= ther case. There=E2=80=99s a couple of paths that lead to hitting zlib, and the = channel naming should tell us which that is. My guess is there=E2=80=99s some degenerate case in the buffer sizing logic= . Karl On Tue, Nov 20, 2018 at 9:49 PM Larry Gritz <[email protected]> wrote: > Here is a strange behavior (easy to repro for those of you who might have > a copy of OIIO lying around): > > # works > oiiotool --pattern checker 512x512 1 -d half -compression dwaa -tile > 16 16 -o test.exr > > # fails > oiiotool --pattern checker 512x512 1 -d half -compression dwaa -tile = 8 > 8 -o test.exr > > Just writing a simple tiled 1-channel half exr file with dwaa (or dwab) > compression. It succeeds with 16x16 tiles but fails with 8x8, wherein > writeTiles() throws an exception with the following message: > > > Failed to write pixel data to image file "test.bb700d14.temp.exr". > Data compression (zlib) failed. > > > Curiously, if I instead make a 3-channel file, > > oiiotool --pattern checker 512x512 3 -d half -compression dwaa -tile = 8 > 8 -o test.exr > > that succeeds (also fine with 4x4, 2x2, 1x1 tile size). Using zip > compression is fine. I can only make it fail with the specific combinatio= n > of 1 channel images + dwaa/dwab compression + tile size < 16. > > Anybody have any insight, or has this bug been reported before? > > Here's the OIIO issue if anyone wants to follow up there or reference it: > https://github.com/OpenImageIO/oiio/issues/1844 > > -- > Larry Gritz > [email protected] > > > > > > _______________________________________________ > Openexr-devel mailing list > [email protected] > https://lists.nongnu.org/mailman/listinfo/openexr-devel > --0000000000004e496c057b2dcb05 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div><div dir=3D"auto">Hey Larry -</div></div><div dir=3D"auto"><br></div><= div dir=3D"auto">What is the single channel named?=C2=A0</div><div dir=3D"a= uto"><br></div><div dir=3D"auto">For tiled files, dwaa =3D=3D dwab, so you = should hit the same issue with either case. There=E2=80=99s a couple of pat= hs that lead to hitting zlib, and the channel naming should tell us which t= hat is.=C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">My guess i= s there=E2=80=99s some degenerate case in the buffer sizing logic.</div><di= v dir=3D"auto"><br></div><div dir=3D"auto">Karl</div><div><br><div class=3D= "gmail_quote"><div dir=3D"ltr">On Tue, Nov 20, 2018 at 9:49 PM Larry Gritz = <<a href=3D"mailto:[email protected]">[email protected]</a>> wrote:<b= r></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border= -left:1px #ccc solid;padding-left:1ex">Here is a strange behavior (easy to = repro for those of you who might have a copy of OIIO lying around):<br> <br> =C2=A0 =C2=A0 # works<br> =C2=A0 =C2=A0 oiiotool --pattern checker 512x512 1 -d half -compression dwa= a -tile 16 16 -o test.exr<br> <br> =C2=A0 =C2=A0 # fails<br> =C2=A0 =C2=A0 oiiotool --pattern checker 512x512 1 -d half -compression dwa= a -tile 8 8 -o test.exr<br> <br> Just writing a simple tiled 1-channel half exr file with dwaa (or dwab) com= pression. It succeeds with 16x16 tiles but fails with 8x8, wherein writeTil= es() throws an exception with the following message:<br> <br> =C2=A0 =C2=A0 > Failed to write pixel data to image file "test.bb70= 0d14.temp.exr". Data compression (zlib) failed.<br> <br> <br> Curiously, if I instead make a 3-channel file,<br> <br> =C2=A0 =C2=A0 oiiotool --pattern checker 512x512 3 -d half -compression dwa= a -tile 8 8 -o test.exr<br> <br> that succeeds (also fine with 4x4, 2x2, 1x1 tile size). Using zip compressi= on is fine. I can only make it fail with the specific combination of 1 chan= nel images + dwaa/dwab compression + tile size < 16.<br> <br> Anybody have any insight, or has this bug been reported before?<br> <br> Here's the OIIO issue if anyone wants to follow up there or reference i= t:<br> <a href=3D"https://github.com/OpenImageIO/oiio/issues/1844" rel=3D"noreferr= er" target=3D"_blank">https://github.com/OpenImageIO/oiio/issues/1844</a><b= r> <br> --<br> Larry Gritz<br> <a href=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a= ><br> <br> <br> <br> <br> <br> _______________________________________________<br> Openexr-devel mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_blank">Openexr-devel= @nongnu.org</a><br> <a href=3D"https://lists.nongnu.org/mailman/listinfo/openexr-devel" rel=3D"= noreferrer" target=3D"_blank">https://lists.nongnu.org/mailman/listinfo/ope= nexr-devel</a><br> </blockquote></div></div> --0000000000004e496c057b2dcb05-- --===============0204344102017965472== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Openexr-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/openexr-devel --===============0204344102017965472==--