From f59ff6d55b219d2c112948a33903b3d390b98a4f Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Wed, 19 May 2021 21:16:12 +1000 Subject: [PATCH] Read BC5_TYPELESS as BC5_UNORM --- Tests/images/bc5_typeless.dds | Bin 0 -> 87556 bytes Tests/test_file_dds.py | 28 +++++++++++----------------- src/PIL/DdsImagePlugin.py | 3 ++- 3 files changed, 13 insertions(+), 18 deletions(-) create mode 100644 Tests/images/bc5_typeless.dds diff --git a/Tests/images/bc5_typeless.dds b/Tests/images/bc5_typeless.dds new file mode 100644 index 0000000000000000000000000000000000000000..b5bae52bb957df3160905350dacb09f060418d42 GIT binary patch literal 87556 zcma&O3p|tm|NnpO;4p{nvW?BDWMiqs9GlaI4puRt^6t2zqD)Sa6yEf%RG2xNLs4{~ zLQPW9Ii(CKjL0#SQ#rhq?Dtwe|J(2O|9pS9+wZp<-S^to=5k%n)8qMkS-sj*?>GcO z3a}CcA;2BkH~2>ejO_0J!_94rm$~d^df*!kzE^wGO#%MLO%Z1OkH28F^1`ue1ba@wbO z!MRj<)B=^!m&EU@lO=y=jff#Fp?KAB{A7ppYzQ+pR7u9EAg^wky@}?t!8cwma8q zy9)yIm-}_U|K?SY9`BGVjiv^_{#gHm=BXcBoEX4k>Z^_LPA3l&-Do}=giLju zmFAMP4>7$%9(Id+DtzP1X=v{aHepV*br5Xq5NbwKK#UhK=f`5?p??dgocUZ7k}aTu zF9hTQ7)Qk*+4(0Mrxq(f?EFiOvy1hVhmQspi`QGJ&@W z+Nb0|rbi{ES+M+_>9c~a)sD`~f`27Z^;~&df`199dI)Bw65R^J;1%ahvhgvmS%*FdG-wkA&n|U=B0O z56RBwMiaJ&L`(Tr&{p=|4_eBl3_Xf!8H8hSU9TrMK`2Xob??NV6)nFuQpJj8u(6E> z2DxnFYa`QG$s6Yo)k{@TBsFq<1m zB5Ykw&kPy!QsPjnqcTU|VZu4}QNooUFq_QTAMf>{p@<#q=8ir^XsdBdbF((aCDJRV z`8@^0VrxV@{p?Wk3v!-+@>8PZzd|jhw|_(2PjBLs`Lvd@KN0Pw?|@RpIHK9Tw9@2O zST0gP;~ z5exi3tijJCpn~WB5RGE}XT3lTv~`LwL5-k+Ovt`ppH8sX8slTf!fULFktAHP*i}uA ztZFr1Ky{GwYnHu_B5LWHtDNo`dBlH+s=MDV^07rD7ATMG+~1Pqqm70-xh+Y3N2#bt zL4S1=!CCfm)<@x-G4)c3^)rmGT*5DKJs`G{tG^05MVMm_R3BnAM<7{Co{Cv_-IwS zf5bW(bcx3kc536v&zpRlYu1_Iy(+>F+iJtB`vifEZYOfw?ZitvX=JR?hKyw|lx@iH z>z^D!r-rIfg!Eo7VQSCkWzG018L5iWy~?@RZI;19*voa8XJgPjUErF*kkBH>o zua_3+C~Ay5GE%l$%a!o4j1&?>XTn#hAV|sAnK9&+FGk$3olRv%=8%JTFBwXB`jXzl zWakS~&~3ut{>F+5VrTG*fBq&!fg?}ynOE)n-Gq8S-B5~ zxss4&-2J-#!m)$SN%=^C8VcHY#wf!-?-yEan@|L9p$tDyArrfqJB3IPemDwsBFSN-@o>D~neH8`P zSSlcSzeEAbRtjj0iftt?N)EX|1@zn8wsun$IphKr(QH9mnW{t{ocFd%suDT$pP;XY zLM{;4E0W4WLP*2{7wlWMmf8CsKl6wGdyRl0L@coP1)~21bUu3F?f7Upl&_1KuL~Z9 zSfH-LFmZj!IKo7}TGMl89J@sO(pq}Y{l6TSC;SrR-onVC^a!SV&YVOe!s8f0_n*om zMgBsn4*`W>XPu;`z<6ZL_aVb}M?G-8Qfs4d7O46diO3(j6T~YJw=wQ&AP(f}A&xGK z{L2l{-+s2MiO?|;BcA@ z+uKBcr>2>R?S6vmfkGJX{xDx~-&*U6^RM}_yIKV7B;I3%!@9+o6hh2El({xIm=a>B z?*RylWCc)dE`%?KEOVdcD*n)y)B$M;IBv^g_b zCR>#>@y_et`E4+>G447%)T?}Z5n=krbaBl2HM-HwB8ioYo?7(}X0h`H*G2Us87+p; za$Lmm+K6_g9rW^HfpHavzQ{jCO>UL{9?k?Dh+dkoT=fFVA@t+W4h!twaw5o)E5=OJz_`mrl01jrVM4U4g_0_scDO4&JJb3A{@tpHNlcm^B4SgT@xE&>NWBdk z3pgQ+XdebhA+Nw{<0&xDlpVj!L~TA^NcujGG|g^4;S{z4n`^ zGbX&)={ini;0K1olzeSW)Nw=on6=A0@6qE{zC7Rs_*nm&2?2idbH1Clbx~|_nNO{Q z28yqEep@xe5=plIIk}s8M@4pB<8g<<@iRG#a8EH{U8M>ID$1@eoZmfYwxEA1zKka~ zTQC=m6;TMunO?J*Bsa=T5OxSwayGcgcN?1w!o zZp^sbq6b1rgdg&jAWZwirZqa#X(K%jM|t>nsR5r1J)Nm95FI&o#}4&BNA%{}xtT*4 zp3fm>#CFIi(Pt;qLAwxTQ~1Qjcb#|gRF1Q)Cbpw+!aaGGiOWLST!^2A(b7H%$RqGb zX`l3x>KPR|aQ>!HKb24m#Gt*loAJ(x6p#y4M7u~jgpzymNJVyskewrs^1k0LF*}S# z{D(68WkCz}3n&Ntg)9#Le|h46uhA%%II5z|KP(W9WQ#S7_(&wgX5p8>$c5MQ(K7o# zMRmmM#(XReZH*2d#0wl+V}ay=b(S-& zF-EdTg9d)t%Y&RuZa%Tuu6kaF(9XqLt~*GlVAi;`L3?!Z+UN3q{JykG+qXPFY_y-I zVHI4-$gJ^No-1aL5vz3Jwku6jo;7ZEkd^38Dpdn(k#W{=ID}<-tMcBV%~-NpVowOc z;GE-1{|~%aw4)Y*{w1NZJ&}!UnzPItu$sbe= z$i3{2ce0!z)MN6qx3ahb_|2!0j_eS?OOZ_}z0j<=KT;192hCDgf;!Asi2ZTM9mnNE z^=Ovvoky1AQq~L;DM;j_JOdqC_oPQeW*?RBMh+P&DTdvZKd_|Ft+t zvZe0=BGu;YukDtPlpbktK7#ywD4Y`PpSj`OU4}lPM^Gi4^I;R*0|T=qHU@RK?>xw( z?sbRsQo^#S4m9xi&4OPCICxgzje?=a4S$;l$XEpOK;JP3-*vD>;+;I2 zsXG5|${n8VPD}CK@__A31ETj6<_Uqsb*cE?)Yl)KWVO;6Ri_3+=HjTml0g?o682F1 zjdz3o7I;uUY*S6dD~=TX^edVmDMULlzr;@|%4P9r>|O(T)PE@F5~l|t^<;J{qZ|rC zm_nFX6e#;;1o0m@07w@9|4<$!(v_4awxbaXln4F*B=jJ_vjw+#+i!#Tt|-vM2!MV6 zAsT5ED*`SY2`zyHT%@5QQWSZ*c2-*sA<{gJ$s;dP9_C{w_}HZi6R;;EGh&(UfOEIO zAt!4pk`;0|uWCJkEvOl_Km-v%9S8FDO-n!=C!kp;*r5If+-U27xZ~Y?_t+s!c{%s- zyAVfE+*?m5B?gLwTLGhYm9r3nE3Fxkd8RCJDI?Y@cA3p&i!|M<&dwpMSL&&Gytih6 ziU_bjF`o(OW-!YUbtwA#ZJ6CH>Ns=NO6vjBrVZubu~PqfledYLmRzjin+wiN3$*x} z<(C#33Edy$IV+sgMqc83)(huI%CS$`V;Y3zDycmoG1*y~xU|(CIy6)3C8=EORX9`+ zp4~1L{UEqm9FD4roKacby@2`e?{HSz@3$Q)X@ZtW(q7S#! z(vZ>~LWG@W*aqyTsPT6J!5RKvQ_lob)p-7&yuMOiClAyiW6!&7RDKYP<-T;)3__^0 z5E0wF?*9y`{m}o!XaYOx zYGvu-?(zeK-3s%+Yv@Om{?-NcwZRKa?yBlv83xZVXVzDL6-kuN6!WUTR*X`Qft}>kEP~)8u1Fnjg~eGWMQo zw;y(pLP*sMB4kt7X+U}|)NJY!91LLyvs4!xq{pWIqEZx*x7d_f>Ka9`<_W2W^0Bcg zWqJK;P|yWn@BO+e{M+FVwL|TdAq$Z-@2;+T+gPfRucw`kZ{A({GYplKJoe$?A%fd- zS-fK*4Adh9zXB7>H#rXXwGz(xlVQL5)V7UgYYYqHE#br_bvckHc%Up7qqgCGX2mlU z(D@|o;D81>u zFmW#n6x|#h!l@8%CXI6p7i(94BD2eom3O#ax2kI?m&YRN`IA*0PHsg)ez2-TpndG! zI}h{j$8QD{3GW8D*Yi9si&bOx*Yn(T>QsZaMVL?PB~JXq3#3fzsWxp}BvwoWx)0Ax zEYB04wX{<3F8evvM{`vapJ#;iQk75_b`Q<}=vP2wafYNn`sGp6T$!GNMl6tk?Ba4_ zvfIeWp`g$NVgDkm!LJ;8B;ExMkBo>+$L`Qb(9Rt5Rf@HZ1iFxy(k_#kmT7I}GqE1i zEkCuDuUM)4enJaD(ma(z^<~$U3d+~E<9Z?kgY;S6;rH;TG8+9Zyh^(pgF^3*n#~)+ zpkd5azitNwB>oTOQBTgdhnq>zi12gRS|nqh>hj?=7i4>>-WA zBYks(s4vI3|njTiS`6PuoM{N&!AWnSK_VG<)k8-%9XDIh}-NrZV)UV<< zJt_{LyidFT7Q=1>NBbTkaVzSu#z!|oC{w72KKy(poP$Xro?SCP>4}>lPV^3Ow*_a0 z=f;i&ZLKCnegCrK$pf{&z7?c;u{Xc?_fwzg+uH71=hClkNO+yL%m9_0TJ{vip~&i(Dmbi-hxsE^?8nRwLiK z%p7qgI&aSh_1q3LEU+2xHRKts+nLReWabS2&3QUDz-$qW9ldfsy7=)PU0>D7VZ@<| ze(#Elr`mf|b6JRK$UDved=>tO3P`ckL3(pe4*D!*{%)zILotGWwg4u8e07eUPk1M* zQ|Viwpg-KK_);0Ho8_VXvic$x&8}3G7R*g1&w8rY>t>oO1TQC7u>~zzNDs^4;gBv1 z%*sWH^??Lx#b4_&5gRCaNi=oupE6B0Y0y?G zt+et{Ei+R53UpLllbW2gZ>}`H6-F&k0sSQ4g~aZ#9CCrcKbX^=%L9L~KzTHpjKq*n zp^MhYre-;w)`KX?2wZ|K=|K!@q*~Gfe+dFpZX4+wIV3PnNjtrkBj}D8 z(zp`N`Q9DzL4)raxmAgv2bCR{5n`pRjFUeD;(CcIB!33j?H+Zmy);@tJwhTI-J6tB zJ=6!d*of@817u+x#xS#c?-HabyDX0yxe9s9l_#{@O^&sCKP9DxFNrNK_Z?x{D)(@h z(chUKD(*779<~&bPc2Pmk`$$J{7&R2r{Npv6+5VcGjOD?%B7)Mh29OLpD3A*WLQLj_29w@iDm z6AfwKeS=C30DfG=dn+#i$_!}2#PZ)l3_dC{TM`U0G*H#q()KlCv}+vEGg5O~Nj6eD zv;8SMWyd@%-^V%3G3JQPV8^}CIEO5z=^px(iZ$T18D8Oy5 z%x``Vr*K9vqU4bK)evJ+;8@qjyLWG|!zLd+cDA$f1@>E;bMnBkZ#8FkBNKmzd>k6< z&j^wrckQO z#BP7XkQxm6FM0&C+hIggWzmYId`#ee8!cmcTXklGv#=V z7S`_XwaF)HTU|R>E)pn~c{R9fv|m45O5US7bLWuI z&76=tQB>)$h}>_+uCqG0LZ=sX4_;oOrS#3*#vNy>r#MNm$--GG%55-fd?`9AkNOYg z!1V>B`9F3G2=oBEs2}&=06pLjfgZ;e_&OP)5DP@3Fnrmih(s*#kNy8y1LFr=u>U{$ zzbyPymC#cD#`?@odE_)dAR#kLSHW;RBsja1h&CMeh{*0-h9|JtgBc$ds}fBy#TqSV z{7P6*oRv+x(u;<*u&{fDXyZLzvakyE!#HYn-C;o84A^H?T6Ja4YL8=(y!er@vrXJ$i~8DmOO zO+*#H4K+S_LQR#*4WhS+9lE&4;~_))adf!;m&aHbPG2LkyI#YP#avonxre9+>8a0n z{(!G;veS<-6Txz-Oj5!uVWtP`vxGi?z0ATMV$t_0UFN!F><^xCD;{^N+a2@sXmUCs zb$u-QihI%T_t(l_+~w66XEm z8@WDmqW1esfj***$}akc=%mD5#~X!?Bb$J&3!xLp3BWPg$vBR*%#!g0(sC`dgpUBa z3mIBMbkrm|ZCG{OG#125E!dSM=wDya>MWOrWB+9C#6QalW#`&;gvQFdKtxB+#gCVj zwrC}_U(e@yMz>~pXd8Ztn*U`t^j^QmH8|(M3ELG-8Z+s;+v*e6I`^LZJ9NA9_0qfN ztU6vrt*8o3{MTpg=lJQMc-u}<(WB@iZO?b;U3ZL$J~-6zAU2NPrf<1@rTBcS)^3N! z%Y#9g(nCXzB&uWWRHMV-D;=-1H?(esn(FwToylqWAsHNZ8zqM3dR^|pj`AbMa$=F7 zPOZBdMR9pGve$foeCKd?Oa?iY#=qCf%RqmxL{M3==#6>DjJykVb}~jfv*eB9-!jf@ zhtU_}Rx-Mp_#$}zRVU9$Z$r()G3vKY+VhJAI<&}5i|YIbwP-^f$QMZ~>`w=~$FV#D z+D}gm8GSxmTAz|~te(#aCwWeP3*;^u*c?@yel`2pRW(98?r4&v!dQ}oI+`T?Su6E) zF^UsrFOxOgjU0$i!jf$-f?E zvBfF-Mwq%po|<-zcH3LU2U) zBTE-4Xn}r8k-dT3Hr#X;#R0@~K7R?p42^{NxBXMCK>p8;li4j2B>RAJXh^321HEs7 z|LF$+d;il9_#gKD-}e6BYmhJV+Y<6*`SKsiqs+OD)48kAh#!B5MWv0`)E7{d5UJdn z`aEj5nt18-w?0~;nz*>UXg6(zat}{BFYVue_1-N7sg*kJXdo}QUriG~6B=@360bw3 zKU^_br)8*K&2uZ}VmFdO-@1N=ypO`p&8nRu6)dg(9dfx2QN01w4aJ~ewJO@F0>s`|$YvY)5=!vYBhX~SCUe>|xnp+3I$3}3^`aX= z$i;lb5hi3E{Er5Eu&(w!Jo&8apEVC(62Dq^eXW^v{z*1YOxh}K8S0@leXILN!#QE% z#rdsrlc=}q%pd(U{ubAchnG&>>PueoRkG3V zU5xl}efm>-ywPNsbmqmYlA5chkE+mU_%BY~u5orBALur%ALDP?3-6!U5}Y12*wEil zMpj)J&(>G1;Nq;>>MopnP+0$bw>8)JmK9Aw>&(5ak5x8>^)$zwu3k1^>*W-Gy8LUu`Dbxh zkLP@r$9~(%Pg@-{Jtz9IeUrkr64DM06GLOB2tWG*9Jj34u(C8IA~+)OtJPJfm$h?m z#-!dvmqMy*FLkragmXsA1s<8$`8dVrluy!$%|{N25`g8U1gWARP+Av+f;fvWF2k@jz!tIBMs9qaVB$s zWT2|~8_Y77DMGhWLq ze|oZfU&jBof8a+zKLPn?rbtGapAoUQ-$p_pJHP-P@xSH?2q?YT4~y7l z`ivA$>n6;V?fF4UboJ1u5hX!N6U5M}R7el%&ycoMLVAdS45=tftmr4nsA;ajD+fq2 zI!n{Oq7tFo?3Xu-04>;8HWpD5W6{vl{nuq=WnrVueu@=cZY_>Bn-(jw0)bu$;%?JP z4Un&2$0cg1g@3hL^g!E^IGWZ!g%iCZX#R=EVX7K@$0cb_-7n;v3#t8TXWY@17YkRb zjXrJFaB8gEecmO5hV(L^3#3Q zt!)=U5@W3%>WHgO*}<8mS^*^M(H8nTCJww2dxL9?5!q9^E0Qv>^T33-0*BixW>zi zz8l*v4K#dqxv_FLbH7E;%Zl(H%$8b#;Tg#_D@VOpYANXNx4)>GfD`84t~cD5PMjqt zchoP^Il9B)y_;o5$Xzdo>XFx1KW#DIcR0e#A8_;GiBEm7Ql4Kz=D}%Lc`VIi!Vi*< zg;ey4==h}b1Z!FCY`LsWXjFS*uGoCx{a4)kLJYGuIRJYm_s`DnOlZ{JJG~y%H ztFu#->9AAxo1SW&H-kx=ZQGvdV6#P^TaCilM4Ok9?$tr-N#12+ozmkGgdFis@v z-^=;}vi`k{pza6uD%0~of(d$~|81}Tx3wG+sDaZ~E6_4MAYtT@8u+~a+7nnD6f-Za z{f#A}+21<`3=vpF{aA-V0_Kl@Fpew!;~%JqQ;UIrc$yGJu#^3K^?4*7&`mnWo+IKF zK|gTN0&#`}`UIU+=*qHci2yLoWwt9rBF`%4MFv&@#&3`OKr2K|T|7bGECoEZnJ_Nl zd}kI%;JK2R@64DrkoX=b?F$b=Vi9N+32pG=5Rix5_g&y67swQ`GPD1YAJA_B^L&6a zNKK2ViUyRV33Co?NBIF?Rvw)rqvCm;6NOWJMZe1yM+#ekYk3Kpp~~~_o>4lCe$JPZ z!5?cs@Yl~~1x0f|z}KsD1NvWbSD4CuW1r#xqIaGB_FTL+VacE~e{J(x|0R>kefMwQ zoOg)x57tGFu$~?TCs## z#G`D8>XMrgG2Wxyl!|G8dVVXxeSOT#(-F6gafV{lig^q62td3MbiXum^9I!ujDE1>U!{#~e@1mx2h zZEmK(o&dGEwiGb8&|Ni4)I`n}JgpZJtuV8?LSq`jNPbo~bJPmKz{NEG)W-NNR|ceD z{EQT0oS22U2|YBR4{k&OU75&}*sYR70=C($0`@Pfw`BJJhkxQX1W|!Iklkc;0l4uO z;yK`d+dr7s;R!L>FdC9EQ-v%C^s$J2N@~dZysU`LO3PKMM+9AK5fu6Ak&J=&7*nnK zv5I~}gaN+Zr)q@)f`Vq}gX17EfxY+FXOoiD>V**|t(dE7)sdltPcfxj`d@)UQ^bqt zNPo9fQ^fTQwuh)i@z%@Rk!}^u@})(oWyW`4^X5n8Q^u{Z`P-EJpHU9I@vS#bea1QT z#Lp&d=6s)vsaL%i?l#|F%f_BvGws9thAJ%%nC_zmAjMv`oLxglu+xWk-l=|m1Zm6E z6)QCrn%MZT$ca-$<~IKLQT~09M;+H37|-I2O3&etb?k`j{tL_haPIu_SVJB)TXKQ@ zhuxPpJp2?BlS4hRhg&+^|C`x%R#L|s&pz-`JJJch z>zU7vdg3nsoB2jn`swxb_^laX|7L?5udr$`!`#7uX$fKLLJV6&44>k z3^&sr^@tGKwR^C8sq2x3n~CgEI~RS!t(*b;Ve6)IWcBI$by@Vr>t6rx9qDO`WYr@5 zaw6k=)6K_g&ueI=J8G=q%?_o`*I$h_Srv;~MI-i@4?OWPxPReTk?r^7=NkAht0+Ak z^9L86A1`gssZhtAJuSS2$*&afDN`O4OEOHKAzAHpM|zJKLyB(y(l%`nhYxaZqv^>){*i#o5$$(9-}mvmk~JN~Ao?S7eL z2V*I*&8e9>V*j!{>iNlsnJ^hkHkuK271!TiYF*_}@b6-HQrrec$6D_>_*XKrVPpJ6 zMpa~%PVa|wv0L;!sK>uq+w7YHA}-g&M>Hg z%H5i!+$FSsA^ZKjnUF_6-JFmDSHnn6)n-Gn`%2m~QU9xem?$Jb)-L0pv<;1hYYAlpJ7fU-&aH7ohsxmLjgJ1;oDqlGe zjNC$SVi0!w2f_TXjH77i9fsW-2rLk+dqV(QjM(~#5O^NXHcO0^_kXymeoRVHP26Ev z&FcmQ63-!Kue40H!rL@vuVkNU;znE%Wg3qgw^u5nSmANsu;@u=iSKg05^}`z*MM!B zJd$c}Zm#+k4J{DZJ6~q;!2bX6zwKQXuW!3bG(fzr=c};s+9-BzZe#>b9n6vER+9*3 z_~57rFh{>s8T4&|{o3mX54l}tVN5k64{-8KRh{Tno)vwH2d!!4eHGu($gP;_?5)

01cA=6DfHO`|OfTigX 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 literal 0 HcmV?d00001 diff --git a/Tests/test_file_dds.py b/Tests/test_file_dds.py index 08f200f9a..dffdf4c45 100644 --- a/Tests/test_file_dds.py +++ b/Tests/test_file_dds.py @@ -10,6 +10,7 @@ from .helper import assert_image_equal, assert_image_equal_tofile TEST_FILE_DXT1 = "Tests/images/dxt1-rgb-4bbp-noalpha_MipMaps-1.dds" TEST_FILE_DXT3 = "Tests/images/dxt3-argb-8bbp-explicitalpha_MipMaps-1.dds" TEST_FILE_DXT5 = "Tests/images/dxt5-argb-8bbp-interpolatedalpha_MipMaps-1.dds" +TEST_FILE_DX10_BC5_TYPELESS = "Tests/images/bc5_typeless.dds" TEST_FILE_DX10_BC5_UNORM = "Tests/images/bc5_unorm.dds" TEST_FILE_DX10_BC5_SNORM = "Tests/images/bc5_snorm.dds" TEST_FILE_DX10_BC7 = "Tests/images/bc7-argb-8bpp_MipMaps-1.dds" @@ -60,30 +61,23 @@ def test_sanity_dxt5(): assert_image_equal_tofile(im, TEST_FILE_DXT5.replace(".dds", ".png")) -def test_dx10_bc5_unorm(): - """Check DX10 images can be opened""" +@pytest.mark.parametrize( + "image_path", + (TEST_FILE_DX10_BC5_TYPELESS, TEST_FILE_DX10_BC5_UNORM, TEST_FILE_DX10_BC5_SNORM), +) +def test_dx10_bc5(image_path): + """Check DX10 BC5 images can be opened""" - with Image.open(TEST_FILE_DX10_BC5_UNORM) as im: + with Image.open(image_path) as im: im.load() assert im.format == "DDS" assert im.mode == "RGB" assert im.size == (256, 256) - assert_image_equal_tofile(im, TEST_FILE_DX10_BC5_UNORM.replace(".dds", ".png")) - - -def test_dx10_bc5_snorm(): - """Check DX10 images can be opened""" - - with Image.open(TEST_FILE_DX10_BC5_SNORM) as im: - im.load() - - assert im.format == "DDS" - assert im.mode == "RGB" - assert im.size == (256, 256) - - assert_image_equal_tofile(im, TEST_FILE_DX10_BC5_SNORM.replace(".dds", ".png")) + assert_image_equal_tofile( + im, image_path.replace("typeless", "unorm").replace(".dds", ".png") + ) def test_dx10_bc7(): diff --git a/src/PIL/DdsImagePlugin.py b/src/PIL/DdsImagePlugin.py index dba4a5d72..21e6e0bd7 100644 --- a/src/PIL/DdsImagePlugin.py +++ b/src/PIL/DdsImagePlugin.py @@ -97,6 +97,7 @@ DXT5_FOURCC = 0x35545844 DXGI_FORMAT_R8G8B8A8_TYPELESS = 27 DXGI_FORMAT_R8G8B8A8_UNORM = 28 DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29 +DXGI_FORMAT_BC5_TYPELESS = 82 DXGI_FORMAT_BC5_UNORM = 83 DXGI_FORMAT_BC7_TYPELESS = 97 DXGI_FORMAT_BC7_UNORM = 98 @@ -160,7 +161,7 @@ class DdsImageFile(ImageFile.ImageFile): # ignoring flags which pertain to volume textures and cubemaps dxt10 = BytesIO(self.fp.read(20)) dxgi_format, dimension = struct.unpack("