From 896cebaf8b81ef3b138064dee4128fb4ceacfd9e Mon Sep 17 00:00:00 2001 From: Cao Sen Miao Date: Tue, 9 Apr 2024 12:11:57 +0800 Subject: [PATCH 1/2] docs(jpeg): Add full-content of jpeg decoder and encoder programming guide --- .../diagrams/jpeg/jpeg_drv_file_structure.png | Bin 0 -> 146039 bytes docs/_static/diagrams/jpeg/jpeg_workflow.png | Bin 0 -> 116723 bytes docs/en/api-reference/peripherals/jpeg.rst | 184 +++++++++++++++--- 3 files changed, 162 insertions(+), 22 deletions(-) create mode 100644 docs/_static/diagrams/jpeg/jpeg_drv_file_structure.png create mode 100644 docs/_static/diagrams/jpeg/jpeg_workflow.png diff --git a/docs/_static/diagrams/jpeg/jpeg_drv_file_structure.png b/docs/_static/diagrams/jpeg/jpeg_drv_file_structure.png new file mode 100644 index 0000000000000000000000000000000000000000..947e8f4b42402468e18645ed0e08431cc463e3c0 GIT binary patch literal 146039 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

eKtIASumq+4afeDl~m$J-Qup69xSQIZT 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%0AD zQ};LOj)ZCcJ)1YTwtDAW4LZ%$n#T7+=1Lw{Lif(+Y}{PM!cTv#>1&w9a&+qL?H8-3 z*new1b9jIHxdf*dHEZ~1q+M-Fih3*caGrbL;_bQB8?UbP*_h-pL!q%u=JoAQA$t-W zQ&z?aU*DeN^e*S-BH91V>b}QLZ_hV8p6=4~*?Il~i^7jWQr})kE}pypcg(7{$!$J$ zmS@zR-#oGLIl#rC5fyM{RVerQ`S#*@3&fxAt@y}foPJKk{<7#c?eKLX`LFsiTMym8 zAK%gb@$vD+F*}PMDGDyVx;lJyP=HJ1N`u{?+JN=G#2wbtpi(L2ov#1%{CiH5R0N}E zYAp4b#S?Cp+wgn~!;{k!neXP_>R9fe8nsRAQPa7wh}YB9lV)$6tDB}1+jiHz@6p%Y z+cQF!>mA#*Q)-LTMD6S_k*qr+>-*%c6{!UiSZ;nQt zUeFQ_G5t6lzKG*08ZV4b?Js#5WK;dkXV0ATXV3axZ8|gwl-qpvv)<78DX_uK@#4Nj z<}Is&-MMG-F)jC>EygNsdhj>DyhF8xX6>&}tje*!4s1-~=%W#9GMe7O%y zUw?l?p&P@UpbPJgEB|LLb!qW6r35SBG@0T-Ir_sLp!z0T6S*yVD6U+va( zEt3T=@35||$hosaaC`p!u(w>TZSAVt>^Cl$kQG&I-KCn)+oZJX_DoQx*yis&5sTQ@ zt2c+QKX~)F`0?rbTcaEw1}_b&crIx7$YGnB?EV7A+`H_L?yZxZVNuV>H{Y^*>*Zw` z_RD8)D7vz;dv>(Ba`m$_D=uAR>|GVw8qWXR zw{9%`^n}ZQmil~)H$ICVUA?_s!lF>fuI5k2(#OX+4FlHg)m>Iuu^{xW)gv*D?S+p& z{{79r_QZ|iFA_O-?i`)Atc+KQZ=-+o9+uT*?+%?5Jv~t=GRWk`#o#qnK9WWpuAiPB zo~a#vp|(Xo=FQt9J2`68HRiNcKmK~V9GoWSUS5{um>3)HeMed?fdl0460@WS2O4i| z$rS$d>}HI5`_iOA}=6p)UWD!@_iuao(ZY(vf z`TfPLd-hT*k39=RH-C`zoRoZcUv0(zhsr@J{%vfbs}AhXk6+>~ym6KT`;~S--UC0g zuTM~_EZVXnmOJ^^ZYAGSQ*P~hXImz-xT&e|-7QlU&p8sjt3r-tT(3JZO>^>z&;K5~ z|6nei=3GoeTVDnM#;Io-9K$bN|rtPdhzg&4=;uHFfBU{uJyzv4m2Io zSv*NQ@xr@T9~q!)0hqd!7DPBM)Hs!97Ut!c2=d{fGt7;vH`_5?Q`4C8NO2`gt0n)Q z(^J=m=tHU#UbEmVmZhW$1 zP8O_DQ|jO;%Cfovo_nqa}+&7DrWO>!G6H9y~@a<>J~^x}tFXJr4o%R?c%jKkxCYWxNyLeTmyx%PwQvp7?sr%oVX4oz@(04RI{UIWj9~rq|I+ z0_vv|?Ie@bpC>YfIe=!8Edp2RZCEg&%VhiFC{WWQN%%{ajO)Sm-TyOU?(MLPx<66i zLhZr3$Is7q)K9uy{6(WrH@Ztde*dDjWbu@@fKK$_IOUv%vyN|ZAa&xirieu%qYefz8jG|AzrTJ-hpKQCleOFyHI=%uep%eO)8e)8Y;u$U1ew}8Rw1s^_tZeG8B{l&CP z-{$V{x^~4Zw{_Fjt*#y(9g&5b78q#zt?S|ZwyT867OOTp>UupHX zL%DYJUL0_VpHXZFPdIkGFpRIhb?ee7Zc?e_^IDMU`r)8Phk;g;jh7^rTw8? zT&hN?jtB4O_&7{uIisbap|QN(=h(9OjH@>u_0C_ORVc=?W}EAPKBT=C)h{9DX7X6gD*^`6>v zIKcl;@iQH>a~uwxO{}5%;AGdjXJ7CQDK!N_#?4$@ojK3a>VzH`i`aYy`=3#niFsq)dpl6me&^;?*Xh%AFYXU^fBRdzg!SmOW_H7x zUp$~CyFEC7UfD(U|*)AvF43;=kCKSJjw@}4jK4uI&*Zp&B;r;IU>Ra^BRI! zTR+-PbN5`?l#qPyqawdkTePC6x3kV9lroaly6{j7=ZmYWrypJ4eO2L+u?Ux(PR=eP zX!$5zYT^MaUT0oJ>d+)OCbIfXS;eiRu|({5wA8kqjco2a(3O_UB1|3qSA?(#_DQ* zb2?UsuTOe+XJ=Y@=&dc8g&!ZeUhIn!;^x{~G3&QvI?EFQhL_w`ysgC_o@joNdAVFv zWY_zUA0J*$=E&opZ`)ljrYmyr!~1(X9rX9DzPeQV(o(&keO^5O>BwSe)z$pFw{qbi9B-sq7buCpqb^=kq9eBm!+AXGQQ1T)m zWK{^Kyj{(K?fLg7Se0gN-rdFO`ex#>%fTvh?n%h~&f3W$yg?3B|9xTI+ji;S+yx7) z;`Y{duQAPfcyl51qm#eivm9-!{e7YS4Y=g-6jr}B>%+&->3b@_^FLafjduLnEy0)V6oNly>kjN}QfyZI%{uZV`|0W@Mt^8f1)>5xTm-lf_ z0XCH%nU0@}KQQyEpgzlzkh2E`S&N^$&C9vDrRmYr*XAqk?F4n*n=hHY-H`juC*|}M zPyKW;kt)GLHnoIamK0r$u(eUF@$vCBe}9QaZccLz2$&F2JHsSX$ZxJytN(nvhXhaVpwpJ7*PC1sM)@Zm$jj@`SH54Z6yV7D{Pz9zC-mQz@bg}dv9 zKRaj$)Ah~FB2I1P1!|5T_g`N>adBB}%irPvmL2W`s_qW5A6|vqnjhAyOXYDOgooB-@Y~Mf6IGn>Wiu2<1B}psK^ZklJ zDpNLziv0ikUEXV&PN%TC--3jLO&olD$M#fyE_idp&}XidsIq(C5zsi7X0Y0hojV`i z-CaJzIGxXHiiToSUDU!0IhBhxefjy^Pb^ElrXG5B zcJ{>$iOxFl`(ik{>i_>0pKX@g)ZX4Mpugqra;H|Vq_2msU7N<*D%d=qwN>!Kj*eZR zg0;){!f)&MfAU%%-EHRw?S}B)o|ou;;Z6Lv|Jko{?{83Ss@-$(?s0KTqtr`myRG@< z-L?zb-FmkD{Jh>I)=$#55lgt5cvHQ#^|vvzFRbYl`ta(Z&ab7rpL%XzEc*7%!Wka~oRrR<&MS_xH%Q6+b>cdU*Q!`iU%{`hCW8bD{bt zXS;Xv%XeO#G+BH4>r@?4@4ams78tMyK2KzNrlb(<==dn{?ygd$3(H+r3!a>$dU$pC zdI2e^F3?E)RA#U0Z*Lk`uU>6&Szzu01wn^J56{jvcajMB_51z))(FrW*#P1o1Q zci*3HUmv$7=FaYN|1|-7>i@_6R(mC9TczMX&*sCIFDZ_RM>tX(6Io337U?lv)6pp5 zPrZEkoz_xs9-!O7rxh>dSN7mlYCfD4| zQ@}acJ+8COvROexHi7Hr<}Nw>PKD`zg-6B7A(^f`EJ<3KJ zWjPTR&;uIr4UgK8&?r{iC8BvmOjSrS{rtS6e|~;Gn!cs$;-*w@o0=a6QH~cugT$*G zlpH6|GRbTTTN~9ml_zTEg0;a@Jf>vSEqfc-%*K0Ys&;sbz|QLLdNDCE51u|f+H|Pn z;Q6LQ92qe#v7q8wQs|4@bI~d$;T<`aGSOQcR*9T+T+MNKnXkD2v9Gebu6?(>TlM6{ z%huJi&6P^KL?+Jqzd1BpN6z}17R%A)`tcW5r0d_fvbx=_Y}>?Nl5-b;`odOKJV)zy zmp{6&^72J4F0Jc}!gRm9zY?ge(N^}lYuDX54=?P|e6}{WpZT-1ftE&uwnm#Tx5KR~ zD-Bn8r?2HLDfqqrc)wxc0|qgXSHGej-7{iz<~R`+aDnUSEYs`_rLV&-@>?bNHZ_Gw zzA%oOxvmy^Vk)6@0c938cV=G)hcy;b#? zz;Jh0sq?)(m5~7wMw=F$Jlu51qaen|mSu{L#tH9GE2{;CU$c_d+uG{-&$8fT+H2!0 zCZZCS(fauF^z}1rDkj{x_vOP&V-}srrmMTl9v=CWswR78+N+hj>^8bN{=F=&Z*aHx zg?@8fctFkHZ@zavJ$Yj+bhz4TarWzL`wf<@PWao@RQTYCr%e1l5zR@e-6|T-)>LZ8JN6m$67m#P2UJFFOeYEbwPvn|@|S z>gGc&WK>?;k7%tuaf ztj*YxeVs4)c;8b|E@d`*ZZ72og@UDm6Py{A=)d?o*B!JH>78;-!Q*@ND`HlOIQ^-a zs99Up%;M_ve&G$aSaWM9xBsC-6EthBOjbpO?pdx_{p^eyuL!t) z=QhpL`n9a`lk41~Z5t1^G`^d7&)G3uj_dhZ=5lxUE%`SbzQlgF6;U}5wA7=qEp&B4 z&+63`>Fla!7v@AQTo66ylW9iB>u9s?^QPJ&Q@y7jI?y@!$Xma_VAkmBA75U!9=p0~ z;{t=sBZY}-38gG4+8P~SUR_=N@bTkj{rG(fvDbuso$nbD!s^+n{yWIIx;Ibh9# z1yfnP_b}e(s>#}@w_(8siKulmI9&ul(bTrU{8hzdE$EETr@4wq7K(|4J#bmM>p+u} z)}=drS)7m=9nk0n@=$|_rbfz{%d32o9TTsYR*C#V?;f zG3zP}ePoSTDvMLhXD$!X;WZ3Fs@`=p)*L|VGNkk^FkiKx;M+&nMJ=3#WoNZiJm*CG z2v^qlb?bKaU*D(K-rZ~VZM?j7fA_nkxIq* zUu4=inb{UpuATMc+gs~px^X?Nv&|m=xpmc|_-WP>@jDkyx0vO<%Lv@Pts+o%@0@ju zV%c-J<|wwX>@B@h?WVvt-?rVETlt!5baZJ<1c3fzqpBt1dHps-3rkR z+>_wQ^YT^7rUeVQc2)4YKipI4_&&tI)KipYcC+qY?nC=LlRrMozH3tdm+fO+N4I(Y zzfZ?9V$01-?0LDJ=e^nEl=v#*(I+2=rJ!-O8y_DZ z?{|NHZ|_8-R4>n}gH29CXYO>&;*40mV1`A#T~n>wf=RXRb0YSM+%!rx%4~h~=j-c? zOSf6M-TR%^a*6uL8F>kctiQk48MJu1_O#lQbJKKh)w#!BTxj04{l#tmeR_K@E~zR7 zb!(UA-g@+Yk}7D8*GHy9A)1qBp9u(V1Vv*6N;HbRaj9~Y&o%#sIXLq~fMMoi&8jP+ zU7QO)AFbr7lK%XbonPRQxlvftqD*=5C0=rZUoMHw?Rj}AG2{EX7q@n8jg-+270A)L z{o8+D!@XsHU%g0F`Ma}JM~gv7L@MqJ`=hhJzb9p1*)vgj>mkKAPrX6?i?!_h4{zPw zy&`g-joa7P-IMA?%w}RqZX$1voSdwF`1EORP9c>8-{0SV`0!z3VB*0hr-RL{zTs@3 zF~DVPdtI#596vt1tUe_tw^{Y^u@2|kB^uV-(lxfp{$hXkSpC7BTURIYWzBw+xUwlB z_~yRM7#Ru+b92;wDiV?a`}I;dp=B8Qqg0YuIqkb)zuw4 zbGav}`(|-@c^thYpo}yve4xqcp`XuuJKMN@HJVk9(ergQbs_>ZYBp^6`AJ=&o#Dil z1>eh?n(U%C*0QJR#AgLh#Y?{{Bm@T^aVvr}liA zy86+LO-nWAnD=}7EKSPnn21#BAVz@>INdIA>yy#^H^1)vThgF-1OsbhoEwc z?U$DL>*sd-+Pi)G_6_MjK0KWG=HmC?hg!KG|N8oRVw)0T*r;8Dn``r_?L~tW`I+8G8lD*p|!b{@&T8{#EkQGSf;8a7KDNZ}IUXYkjx4 zu8eK|wdnn2G5v$9=I$;iI$AVmM}^^}1q*bOjHl@yKlAi-VexA*ojW@?A3tkN_<7{x zkJSZ53{qJqNef0`CYj8lB7%yW~7!cXp5Hc&uQwQy>aPG z7ePKa(sZaOIhZ#mG9V)FPr+IEfch_=*#?PBRbOAFetex|TJ}Mbt5)ve`I!x!pxrwh z7fw71Vm+v%(Ni*E;?XAt^LtF@b{jG-6-;nkXwrXl;a(k$M*?={YxzKx>lJ}7ZnC~Q z8fVP+FGl!W-%#SdS7{it(y! znQ@3{6khs@iJNPsN3r!P)dimzG#(WdI(%NAb-Yp1dL4LaTbhhpjHvJh&?>ArmpP8k z4XmvFtZE5~Oj`U6A+mp>GBS{twSjgBHnF$C);}6CJ_aq7TlI7Dt-8lA3Rh-utN<-` z5%%X$Q&0u1<-HVE5v`*k^3K65{vT*V)BgS&PEQ3M{9Gavzj0}o`hg~=k9t$qG3#h7 zNj|H)atZ^xgI1|c`E4bZ3cE-a?eJ49il-gwTUam)8z?i1iKMk;z75^DU_%*y@&8A28cs1Qgyx^$ zc;P{?Y4FtZ>fF4V>!xvj;9~7(ybRjS)GI$djj0N>6jEF;J%Nc$_`%Nbmq(Q`cRAc zYpPR<-#_s=kl+}2`Lg%9zX`W}6gJd<(b%xSfKfp_mFbxh%3{7B{(aLKdYC5&J4iC* zpFJAR`qdyarAJC>%mxgNrb68tVD<=L<5M>F`(0I}L>+^gjr|a!121XxW zwFDlX1zK~K^`JmeErE$qOhoO#=4p#`G}auQe24$2aKOR^3iB@tmzFbh)?0nxZaBHe zD)CZ5+A@X^tNA`s7BMq8B|IBgTPHqPvr>YaEBlk$ch`$7AyN#kwTsTJ7GBn$ly<7= z(3ij?rUs0MIX$#A-mvi=TfO}~XgKMx?i7XRYecmT3l6#Lv9G+dHDCO%EInlN*mtwn!l-3h^ZcJlI>vAd8_a1~ z(v)=mV)BnaU%92iSEuc0ttz_3FW2N2x_VLY=QOwLD@_~|L8kS{S;b7?oH4zji&>#+ z(Yk7l+4*HgwHYhtt?YU}`Q_sF>;$Hb$_kweeti3DEp(*6fBt*Jj=8N>MdF#)WDf5t z51+cgK=i@&{QDC$5}k5Qbu@fbPd%O4FcXxUW_=b;E;oMoB#Qx@6d!#&&$2`%Vafu~ zW+$6nrH9Y{|95!T-RcidUx#1$yIUx&n&17GNoLF6n_1V|!uiwR*j0(_=953zym$A- z>?QMWeA-fU$>qtaVDZCM7RdqA&)xbLWV`d#73co4T*FIC`TgQ{@w}HbE_ik-^rG9v zKR*pF9cA6B9VU=EX`1G8-PvlXUN*Kn;{WVP`pxIV!Flv+_4f&Cp;|YttnR+}H+G^9 zXROPQ>_wto2Pdl~pWkCyAZyGwJ^#MjHXljDMdAK8O!L<07W_ITTH(ig;3K#A1O>;M zD;nW^pb4ORGB;i2ZhiXl;AQZat=o@pXkf6Z_$1=`>8W$W^MEP(f`x~FeV4a4$SM;6 z?YDP7KVRAT)|QO0&1`PFzd3iMoHS4>P)pN|SFBL=o8oc%+Y(l8!=h_BckXZIwymjA z&XukH@kO%DXI_)-@jlS@BaJEQ=4@r}cy=G_b@_Q9^|Ya$ip!7X?d#=lnddZgGP7@3 zFrjE!VYJTy0j6mj4cl&S;W1y5d+spHqgf7zufBdf^D>+F8TH~@$4dXn%IL@cBdMFLI__ zS5HkjSo1&7kc*4!#DAR-4$y`o_i1Nl>?$z4_U2x%@agFbD-JUKc>ghZO73;J`sq5X z`}gVn`1V)2&1YU$yZ?O9CM%Cw78?ab+|SQ-Z@jbf$STfGKCTCvb0hZ#{qa6@ApcrU zOV20aw|DD5vDntQFLHewrF3F{#b>osTQ?tVd&!s)uyoV4d#mQkOfdEi)0uA(_r?v>9KSz3 zT~NN#O(kyOhDDNRV*||~+cJNgU2;lJJZr z>Z3obA2{b|hH<{|v}XNv(>V2reYaTF=ND{;R+qm8ZJxSwYny8av)4I0<-%8=ROdwP zbh0^F|L2e8rDa~NQ%+9qK7YUVM?+8O>g10*3^%L{=byi?#_^WdRKw%xEoG;JBhxx6 zU~2(P+1*vVW@t>xJ-scj`EtQ~kKC8PCWmR?K!)?R)2eR?c3U0Q)eBWZMOI}hy0)S zAM8EmnP`IM7tG(^Qw+bhCQ8_5nGb8{%FWqfo%g3^T^0k4H~6eie3ULE+bU&#_15y! zg_r*^XS}v!`0eZ*u<}X#Ei3Kv7b+~*rp;{Rh}|x?_m5j*?Ew>$HBnEeFFez9$Sd8v z+`AIggF2s{v$2w6!vX_-_jRqDM+6xcv$`%%^EEto*EjpyHRtvVx32Q4hv^9W-}4N( z5H>GU&Uuljh`e2`(CyiOVt+46-(9w#SZwF(YwrL3WDReu?AF*^c)zY^ws_O&?RlLH z@spQT^SPGKHrvm^C8U_C^^dndFZO7ew(q4iDHksPowik(r8(~sM^}4wdAF{|tdNuY zm_MbRR}5p7`tqU^G(UTN&I6Cs?(G?>VM1#Baw;sKvCP7fmqNMoblLeA`PP?%j&I>u z9-e={iRH*P=l>6Wo}RwQ&kMBXvVM12*ME6Yk)8#is|)j=mmTSsmuK{z)|DId|LslH zFsBk$*4$<#xBPy2(Mr>m_h)R3*j>#p_vYqOQIRkIB`+`iz4X71#-ogHg`0g8v>3%i zY}BrJHL$iu*`EKqO^C^jyX)Szx5}(>(9^S0wR28XB}GZpRc=W z#r3(DxL8@Q-fm87%+t%dw3~lj?!6A1o0}hhT6=p%M!J3rGbhijQ_f9_sXx0qJOeVq z420A?8dx}mT#7C}*N+!4xWarcH#bQ{MBY!XUu4SlvR7(h(PpfE?6x26tKUW~IeaEW zFxN6Gc>B5t)6RFdB6=_E+M2uihS$}~8RC3%Y+70WEe`m&-hQG=VbaD;!kg;$h6Tjz zt`=8~zTIIg8|pRP?W~@k#uWAbh|YyePJ@OABX*^7%e}oVy)wQ;Ecw->>0MY+ z*wfTB@7wZ~A(DFE%3j>rbX32?c)5Rn$;#m48X7Bf&z7m3a!FU?dVW%Qo7BXJMWIt1 z^v}niTJAM3W{uqoVUe50=|a)lGFV-|8&sX2Sf}uCVdTOEY%gM5)^a_4`0Rq`hC3$7 zyDWalg$DdM%XjF;&d&}>j^D-B?pu63;qSfL9s8@*xw&Tgn3*+mz5wmc(N_X3S6m*x zR>VIeY4$Sx*e-AL{7z}DGjq?y?$(?4E#}^idv`)tFR~L8SyfGo&Y}_0APn zn)fU_Ov)r(qp5b!QN|pvtFpTl!msH>80D?mCbL$_rskW@CC8N5=~>%sa_0y({FkZPflrunSJ5px^>N^DgD!f#-!Qe zs#d{)Ybw11=QY*)F3R=s-j*Y1?)H#EQ>c3w+dYYSeRfr(_6irDb4UKql{rs4HrNZL*caGehdmA)V8yHvoSlHHM zkulenSs&lO+-y1@56@&7HwR7w32IA?MjDrF%dfw zmHpO6DgK+kP4#Zw2M3PcN%bOPx97d+X;XWdSGlO%>%uhyAlRGNaz&pHt1-|6!GTmKv*xo|oi|Y(kXSa;LCGP%P_tpH?n%BeH`$4RJ#Tw0x3pS|b7sZEo9LR8V zOxJkvyWr-vwLiZ6?A~FU@vK1q?KDMa*4Ae|j(hk27fTl{5w5LoTX(--%W<7zSQjZZG+z1It0 zwe6FAqqH|iW7oBp^Gc43=^i=V^rCxy-s^&G8ykaPhdIeyFsz605^MCg_Jt)bz9ASOy1;d9 z)QS1p&(AxT79XukvXUu(^2Tz_3=>Ct9oDA_jtdpiH?H(~5YFVr&9%#~G-La^Ggr7c zJ}k`9E>J2zXvMK%!G-tky$cqoYiud;{cWY0`R%}^yH87^S!2y_tZ&}?!vfo#Q!?!Hu1RhE@au-)Tf2zASDwsoW^Mgbdqm8r@xDNU z$w z!pVI1;)?YAjmJ&Ox8>~5ox*Z-Ve9ACgauWnw&becdmv@{a^AuPtAA%y3*B9{aCSz$ zmTaH(uAI&d{jap|ELj;Akn!mf~ky* z)~1KQ7TvhGO*E^j>gCzvl2bsvZKJ=(!lD%!#YBG1T_q?oWpYz>)hqvlc6Zk~wr_dK zYWGF|?()6rDeEFw7cgg*{P^|bX!ot`&c@U_eU+A0m~u`uav)2yjL>IAknGt zLe;55u0QTStQXi+HrHZ?#hIPE4H{iIJNx*2XD#sA{q2UlmH(Pa7k2Vmy;)lw++LUU z>HNVar+;=y+%pg4gN|K!crbb%=m3?S0tt=_?+fqRZgX++??6Y#AD_NT7p0!*Jf4SGj2Rlq`#~w%W;R3!>eUyaHKS?~2|#eqWw{ zo{i{pjTq}Pf&7Hts?)-E|L(2$oVIc6%7Aw^3x1#7oO-GSX-o5*y&q=F^4t>InszFs zME+qnw|QPi)oD?EwY=g*&Ua@;&&v>PW8uoZzA9$bl)4D6QwN)z9M2^M&pfc6B_iO% ziUh}luq3~;qUr5~Sq$7sXmj&ai=eK&4GShT8Es#Pe!@+-9iy1YsqYI@Y!e(6CA0E8)`HGKy88J} zzLB|xiu87EkHvw)i5LNgj#ISUw45)V9EJuiQ$vAlQp)gzxzCS~kQ zQWF4e$(9pF9^E^@IHB;)qXi<|T^0>;x78}`j!u(!p3dY38UQr0`YM{@xX^BXalfkC z0mcbO4)o^tv9^AEqoRHCv!~IOI|9O>=sA$Uq@%&(c2sg^Lm}uWvA$@TDM^lk>=%-6 ztDIkcL+J4zp92|8IvPE0%l9?uXk2+-{BGkB(154Jj*n+IE-;ukH$}D5&a-WnbP^Nj zv>yr3NZi2{7Rtf~eGKdl#|pcfgLE_=F;wNue)3Z!I%&>)P6^P4|BElKgil~?{Z(_$ zcG?UEb_XG5^L>_LBF8pQUZZke{bWF~vkz#%ma&<0!vX^d(exCiV}cJDPFUm>26VBy z$~g4rPPUn!gI%s;>LxRCGz29Kl%$IOp69jYjsH1)|(70Il; z4$ch=9vFh#FrZ!PJ_jtAWEdom>+*SRT+qS%Vq@;4=fOFhg>|5P5zQ>F_ced_<~49@ zH6JM1KC6m1)o~$s*mD`k5his))6yIj6?2kjKl+)XW2twXCCT?dg5$;W`=ZupKW93n zAh6+!KtzDX;qaWLQ$emVc@%RYao>Ci3PGk=457`YlmlGk+c_Li?=KXjUH z<&1`+U2^Y3`YTRtoTi(~)CFqaZ(L_Q|Dle?nd6hPlbC!CSaI?&7;rVPH)JxHXp5|4 zIL7pW$>5~b?sI#SK*u&gy9BS#A80!CtM-g-3X{(P6Q-36dl)|O9$;sXWcb7HV8p;# z|L@PWEowVVgcF#295%9~C~IhmoNYRH?(c=$xe+}ErJr^9I9vV~l*d&5xT*1D*);Q2 zfpeV>8Xr@x_*J3eF+t$Cp1t8#tI4M}FED@{spX)`a*UyXeL}?Y{qYPwYz85!JUeEC zPAO=7!J!craA!xEm+nF4jn%H@$v8SJ+;53w%jtxJy&Fsl_o46+j&KeyUU`SQ5tjt zmlMZ}bwM9qwK&Z=mS)7LmQcu~#@#iKPj{k1qSKVs5uyt>FMs5E!&pS~pSYXfjMhi> z)5K&oX4>=q;{D=w{a(o$T_xV)@?%rG(>InqFZ^iCdV}w7%!g-Rwb#UNm6&f|>oRrL zSA(h|gGxnfqP)mo-@ao?Tsw>FMW>FE8)ch+iq?=0CH!XXd5_$*XT!)IC|SZ5{7!|4uWr_0fGd z8Iud2KPz40H(9KA*7lBnPno@R+sdi4z1dYHX5seU*VrKP4yH6{y_jSxYBn{=}+t)W$pXb|A{ao#v%x*re8N8w*Cnqm=So_QO;<0Oj|L^W?eb`*JFsrxf zk>@@;$A^y}Hswl(Cm)%?@Z?;$K=-qA2hOd1y`l2HBJ)vaf4-}d~t!xxvyeR`tL^8VuG30A&VZ|-eltlhn}dGqOn zEgOrE{H-p3V7fs4)c;uC$!U5*x!>L=_DhHBcNO{B-kqQx&$y@lx7gR!B8O+JEDl`m zXskG6*G+TLr+?Mi6_byhu_%6}VRLt`VeL7tE4f#kt}I>OUw8Od^4CiOiTN`>O)Y$K zA+G0Bk+9FL(l=s{6A~R0KiNFun!z9(AjlZCbiwiD|JU#BZE%fzTF>ym>F|l854BVb zcodo!rKv61c(15@ZK#QEwCY8!+_y=uy0+_1o#L}rMMwYV`ubC8(<)E?t4s|x55E}W zV)A!&j>7brj3Q6!MA>dUujRaQL}jMrvrluMZ(M%--uF45f6p;|e!B9!n&N07XB;l{IUY(Vz;eJ1g(D=s&Wb+VoUrS&Tg3U<8dyZh#Y^(;eCtk zxABz4zKOo^DC#)Uy0cKzT++N z=SGJaE7$)9xf`2a2b|t|NXzTh($7Dv9!~jD?c{rRs-ted&ELu^?-P`#Cf(ltKWnFZ zgkq$@XI2^SlZTk+-J9|M*5{-PmOuYn78Df;uGiMv)#qMae)yLE_T(os(vRHV9aq2` z78X|U`qjlt*M6w8JzDsnG2+{~D#HtZqI&ti$}9Z)K0QtMNW8e-?#RP?rWgLYQdm>| zNQjyBzqC}ef{)Gh_uJ(& zFYnp1%}LNKPw8I7wp~yEl_!Zk@;D?X^Goq-pF?1Ld_Q}wtU>ZQr8Besr=7OF{;5b| zP1&0JTZH|4>Y{i=rt8f)+?f14dR?Y&0LSbj_j@B7HlJL6)~il_EO zkGvZ#ttFzN)IKni;j$jJx53wyeX|IC4@ssRm5({vY1c9=MIV%y&THn){D|FqaH zX`j90y2A|toi$-+W{KC{UiPNac%F0Gull^(Q*7UzpS-bRXThTK%dh2smvvW*%xXS# zH%z1D?4?7?G8M1z{JFcq>}*CgbF09t7E!K;H?DIE9y;{>t-kqp_9O0dZV73en{Uhe z@Z-v753by~)Nx^6#fJC}35|E5$)CB}Hr!v5u6_K%DbatA>ZV#toqcedWVd9zhiT>Sg{OG~{UEBD(3nP*&3h%6}Bu*HAA-G`4K4I?76wn~ZX#~r!3 zIX&Bdjz!?SIdgJ?0|OJEK6+HNZP%_}4vC2m85zWR%oNI87`Xx*%$ck>Mef&cmsi)z zi2BB1QvXBrn{o@^PusSy-wzv4R?4s57XPDj&xgbFqWvp{%yiz{6l_|$iT_@#*1Vo6 ze=e7Pys~6BE7!x66&KiTKSo_i+GAGUS+V~^>yNaY)PJ;+Gx*(wUH2Uxu7A_{ z{Ti45c_v|Z{4%SR_2Mp1bGW!iX!HO0=YlsjZ?A~=y5w2d zs+9AFrRKv)vyWd^$FD9ta$@5nxi0g2UAZ^im9{9)kxR|Zt-XGHZcDa=M#<;)&b0vz zOve-rE*(Gqymiy2O@e)WeUpyM*UKoo_m#*QrEs)NWlyf=)Rye*?6j!(kZ|(h;r76= zuw|tsB{plqR@*aANXU8ov_ivyk!y<*C`}aoV*kP|*I~(>d_?rY(cy@oYl;s4KFz^U;RN%gb8`(}{+w>`Z6?RZDJy;& z&pW=s{txFy>1`d(|FC1vxq4?TY^Vq+Na}lOM?#VVaeH5`r2&y!i5h*-QC@nzr4KswyTTFjgwD{Hm?j? zeDOiI{=OCWwqypEW@cut+`9Fvd-(dezX1`v=ChR|IaoCk_&|B?&|{1FZ~vT=vC-MY z#>Uk>r%cS3ak6MZsMgf{Y?E0hCMvs6J3rU@dh&}43)P~1qS@>I{3twf^ypJ{6_pcv z_Uw6NY-F^k^?20nD*N?|8CW$IxHGbG**==(b(u$GnNhHeI;&3fg3bH)*XQ{8o%6oD z%vZbq@7L>hYietC{Zy>2rB{co)#~c+fB)$1+rOS^Y0qjH4s9>{?8?X$uwXHZgoc&Z zy^de03k(*Wd=Q}F&}hxNtNguOXh6V*l0QE_nuo26dHL|^)6|bXJ9qAk*pd-=@ZH_r zOY`#b3?m~WvvuTJ8AKL1xN~l?4k)>D;O6>wED{t5(a|w2eEvQzFJIrI zM>>VMSFK*%zijz(|1074In$X$797xLxh12ak$#Wq^`f@>n;o>ZwI51-l>h#D*Y)1s zx0!$H*p5_dI4~|2ez7J%qp!WKO>0~J{eKM?d(XMBiO9*->1t|vPMtbcRi^$Z?`<`s zd>J)XpNIv%jfYxZKfX|^alm1rvyYi8Bi9|p2M?Y;ohl+HcTZPO@7z?ox56D=U0QcG zCLiB==gyr*2CduIrQR=NVAc4rnu$lGrg=+bL*t^eA$uk;iTqg0RJ8L?Ohv_x@|>KU z>-Vel*XPG39Bg8}zCHi`ywzc=e_!li5?Rn7$10)mr6W7f*EnFt?Ve3?ToRoP`}hAp z`0#Lhd(OQ*H}871rI;O_VO5%SaAWfENybJ-ht4e15OZSWl9hhTqur)NBA(j*(7t!&Bi-w!l0f9~$?w)gV)?>GFmv8YC5L4zlkLBNbB zTT0I?kkqg`Hg|8(fjO*GggT#mTIxMrrLnQ`SxkESwQ19)wcXoWoxL?GSD)dftd&HW zA0yX{#SF}?mgiQ@%Su{sL0D(@(uSp6KYss~pJi40s^P_p40Uf)gOIz1hK8#1Yroxm zdFIR+b)Kv0zZWvF>bNyD9!gra>u;-3z?Sk5jC zS8Hf#NijWeXD&UNr{TbOS|DM;hMvl6o>O^5tP)d{MHVzDJb3+jcj>1mCzHe0L?lkQ z+Ijvwv;4eWm+PhoMf_t=c#)=XK=jA&-~)456arao?(@(1n{nATysP0u?1AY0?1z~0 z_wU;#ccVbcViKcBDD$Rs2Lf0P+}A{(WMJT&2)ZMnULZkx=goU3#The~FZ=fGAIlM$ zy*KA6-V^nnrla}$QMdlL)YMd8Gne`|%}gR2BpBJax@W%nCVtA{Vx99g2S%8*Nl7^yn|2hx$XwL}+s`w_zOAVLwlVIV zLy_KxTrGpAiV1!zKC*Bn>brV)cz9M;?&QATA+mshwFHtXi}Sl058X+h@ip*30aNYX zy?gt!O{ALF_;I9~vUhD=+~8-p%K2Tmc7~SR^!bGB(|g)?#+8X05bm)llH_SbE7k?aU0py=iBqteq#`$>l%l zt=RD4^>l5KS4IkTG6rSR26y-?-YwkC-t~*^!DW$zdMO1K!G}+u^Kd+TdQG(JT2}78 z$%z{6mc`FPYJWUzKlD9tPx=bGoBXUA3E!A_MAGb!?$Qpp-}tDS;c%&W%r+NBE{V+t zHl?24Q1UXUnRlaQfDb=gRoUK~Yd;)}|8X^H!H=q>%cl+>PjC1x$NsGT`mbegqPtJ5 zX6Q>}d_B2=U8dpg!((4h1pD~#Ow)~4W9dp|JDlz=vY=rnw?V*+-#o83*wwOg$?{G0 z4Qya?)7wz+?#|Bq{r~^{Hfxi5o`2U_aZLb6?I+^$7v@(e>D7p2^?ajNtuXg(zlMDK%|FUr!v8_&qX=i3E`uqF)`A2eGfA`(LVa2NB)6jV6klG&Gr$zx= z-21-=H85@G`ZD$O)6T4|w=M?gyyX-*^xdcDHk(Mu)_*60J$W~LyMKT`%i%}4xV1tE z-x(Q>9k(RI7d+7PZ>u`KQJyPe3IlVit8e-5uG9q?^W{M$YM!9Mm+t`r@(;cTe28^m z47gY0c1vo5c;t{cWnvyJHP|Ij%8T~KR-QvI=}AMOMb1Xul%dtb)5}vU;<^`FKP!I7Me$y`7llv4e(N# zbb7j8>?9U8wplrX$LtCc-@ClOw|8sQ+HK+uCCT#o$K4sZ0veb^cFbmAX1y;hvfzL$ z)4qNCyzkt-n?B#J_SRgRUxE?_2@Z~li4S+3IdkUeua}K$gCI8XC?9Z0lt};P#5h@) zgM-6E!m1?W|BoLP{F9~kOysvPGBUC^G&FpAYO40)o|+Xhau8oVn8(B;@?GT-tH_2J z#+@;B?{22g{~EcsYU{y$Z_eG>Dy|n3u_gDm*;cp3l{fBWr`Ce}q>&)W#3M4z@cf!d zOy9L1Jb3%Iw(3v|=ez7{YhG6E@BOe(t#QSQ6-{%k%j3?UJSoYrV3HnKn*(F9K*9op z_Q(`okqhe`(p#MhbxcgI5t*V0)`3R@4eA7zB<|DtlhVWE12nKxsx_=M9>>veT? zdnN7bYVMwzs=d3avT|ni$?t3Q&CSKVr|In6mwjDNT3vm)xvA9ITh;fDa6|o|rgy+0 z@saR}hrtV)S*^6Ep0b$g^>zA*6DKygc8isM{rdIo14YSwzu&ycSrfJORaH&Rp2bcJ zf877_(o_LEGnw1^3I((QzPs!u`>MZE2wj}a~lMFkac9_dJ%NMO>g@7 zwQJYb9=&++;>V-n@o#KWPl>Saj9GWu&T5NpuUqrl=%fk_Z*6U}9nW{p;5`9SseM%d5lJ&+?qCX4xle9VR6qkx{gC z`O>9{pbQgV_cQh8)6>&)cbC206~8oSEpx%4CtVL4G#$YC$4V?=!39H&*^3!iqeLZE z252aGdwc)an0!)2*{vsohnu@t(kO+)#@4pCPe)&$AJhXac;N8y;oV>gVU@ z9-?*iKBJ1n-3ChqNE&ot=Q0Q=QLx*+tf7_b%hZ!8^^;Df_)nWQ?c4N|DZPq{ink6n zvs-_Ae?R`xa)0?BKYmE`xUCI){OD-6MftlqW`>3v-<+9gJn7S?BJK3_=To}6y8bR* zy40y*N5Tfijmi)^8ag=*0%qK3Dcm7q;M^$3;ACTK+iq@V#ugqH#&+e}HLl-!t9F&Y zzqcSnYbhfmBj4R!rJIYe4#`Xs6I&bBJ!_U!NNDK7J$qzSRaG@~bX*)A89#mcBxP)5 zq;>i7@#WAdH%*7e zGA;|I0HzPj3knJgUn)-Z66NLPmE+~*T~}IKx@p%gE9iPH+4I- f+|-GBus=%vW6JsR{Yx1b7#KWV{an^LB{Ts5J$QHx literal 0 HcmV?d00001 diff --git a/docs/en/api-reference/peripherals/jpeg.rst b/docs/en/api-reference/peripherals/jpeg.rst index 8f45c5547b..ad24411a53 100644 --- a/docs/en/api-reference/peripherals/jpeg.rst +++ b/docs/en/api-reference/peripherals/jpeg.rst @@ -11,12 +11,15 @@ JPEG codec on {IDF_TARGET_NAME} is an image codec, which is based on the JPEG ba Functional Overview ------------------- -The JPEG driver offers following services: +This document covers the following sections: - `Resource Allocation <#resource-allocation>`__ - covers how to allocate JPEG resources with properly set of configurations. It also covers how to recycle the resources when they finished working. -- `JPEG Decoder Engine <#jpeg_decoder_engine>`__ - covers behavior of JPEG decoder engine. Introduce how to use decoder engine functions to decode an image (from jpg format to raw format). -- `JPEG Encoder Engine <#jpeg_encoder_engine>`__ - covers behavior of JPEG encoder engine. Introduce how to use encoder engine functions to encode an image (from raw format to jpg format). +- `Finite State Machine <#finite-state-machine>`__ - covers JPEG workflow. Introduce how jpeg driver uses internal resources and its software process. +- `JPEG Decoder Engine <#jpeg-decoder-engine>`__ - covers behavior of JPEG decoder engine. Introduce how to use decoder engine functions to decode an image (from jpg format to raw format). +- `JPEG Encoder Engine <#jpeg-encoder-engine>`__ - covers behavior of JPEG encoder engine. Introduce how to use encoder engine functions to encode an image (from raw format to jpg format). +- `Performance Overview <#performance-overview>`__ - covers encoder and decoder performance. - `Thread Safety <#thread-safety>`__ - lists which APIs are guaranteed to be thread safe by the driver. +- `Power Management <#power-management>`__ - describes how jpeg driver would be affected by power consumption. - `Kconfig Options <#kconfig-options>`__ - lists the supported Kconfig options that can bring different effects to the driver. Resource Allocation @@ -25,35 +28,37 @@ Resource Allocation Install JPEG decoder engine ~~~~~~~~~~~~~~~~~~~~~~~~~~~ -JPEG decoder engine requires the configuration that specified by :cpp:type:`jpeg_decode_engine_cfg_t`: - -- :cpp:member:`jpeg_decode_engine_cfg_t::intr_priority` Set the priority of the interrupt. If set to ``0`` , then the driver will use a interrupt with low or medium priority (priority level may be one of 1,2 or 3), otherwise use the priority indicated by :cpp:member:`jpeg_decode_engine_cfg_t::intr_priority` Please use the number form (1,2,3) , not the bitmask form ((1<<1),(1<<2),(1<<3)). +JPEG decoder engine requires the configuration that specified by :cpp:type:`jpeg_decode_engine_cfg_t`. If the configurations in :cpp:type:`jpeg_decode_engine_cfg_t` is specified, users can call :cpp:func:`jpeg_new_decoder_engine` to allocate and initialize a JPEG decoder engine. This function will return an JPEG decoder handle if it runs correctly. You can take following code as reference. .. code:: c - jpeg_decoder_handle_t jpgd_handle; + jpeg_decoder_handle_t decoder_engine; jpeg_decode_engine_cfg_t decode_eng_cfg = { .intr_priority = 0, .timeout_ms = 40, }; - ESP_ERROR_CHECK(jpeg_new_decoder_engine(&decode_eng_cfg, &jpgd_handle)); + ESP_ERROR_CHECK(jpeg_new_decoder_engine(&decode_eng_cfg, &decoder_engine)); Uninstall JPEG decoder engine ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -If a previously installed JPEG engine is no longer needed, it's recommended to recycle the resource by calling :cpp:func:`jpeg_del_decoder_engine`, so that to release the underlying hardware. +If a previously installed JPEG engine is no longer needed, it's recommended to recycle the resource by calling :cpp:func:`jpeg_del_decoder_engine`, so that the underlying hardware is released. + +.. code:: c + + ESP_ERROR_CHECK(jpeg_del_decoder_engine(decoder_engine)); Install JPEG encoder engine ~~~~~~~~~~~~~~~~~~~~~~~~~~~ The JPEG encoder engine requires the configuration specified by :cpp:type:`jpeg_encode_engine_cfg_t`. -If the configurations in :cpp:type:`jpeg_encode_engine_cfg_t` is specified, users can call :cpp:func:`jpeg_new_encoder_engine` to allocate and initialize a JPEG decoder engine. This function will return an JPEG decoder handle if it runs correctly. You can take following code as reference. +If the configurations in :cpp:type:`jpeg_encode_engine_cfg_t` is specified, users can call :cpp:func:`jpeg_new_encoder_engine` to allocate and initialize a JPEG encoder engine. This function will return an JPEG encoder handle if it runs correctly. You can take following code as reference. .. code:: c @@ -71,17 +76,48 @@ Uninstall JPEG encoder engine If a previously installed JPEG engine is no longer needed, it's recommended to recycle the resource by calling :cpp:func:`jpeg_del_encoder_engine`, so that the underlying hardware is released. +.. code:: c + + ESP_ERROR_CHECK(jpeg_del_encoder_engine(encoder_engine)); + +Finite State Machine +^^^^^^^^^^^^^^^^^^^^ + +The JPEG driver usage of hardware resources and its process workflow are shown in the following graph: + +.. figure:: ../../../_static/diagrams/jpeg/jpeg_workflow.png + :align: center + :alt: JPEG finite state machine + + JPEG finite state machine + JPEG Decoder Engine ^^^^^^^^^^^^^^^^^^^ -After installing the JPEG decoder driver by :cpp:func:`jpeg_new_decoder_engine`, {IDF_TARGET_NAME} is ready to decode JPEG pictures by :cpp:func:`jpeg_decoder_process`. :cpp:func:`jpeg_decoder_process` is flexible for decoding different types of pictures by a configurable parameter called :cpp:type:`jpeg_decode_cfg_t`: - -- :cpp:member:`jpeg_decode_cfg_t::output_format` Set the output raw image format. -- :cpp:member:`jpeg_decode_cfg_t::rgb_order` Set the output pixel order. (RGB or BGR). -- :cpp:member:`jpeg_decode_cfg_t::jpeg_yuv_rgb_conv_std_t` Set the output YUV and RGB conversion standard (BT601 or BT709) +After installing the JPEG decoder driver by :cpp:func:`jpeg_new_decoder_engine`, {IDF_TARGET_NAME} is ready to decode JPEG pictures by :cpp:func:`jpeg_decoder_process`. :cpp:func:`jpeg_decoder_process` is flexible for decoding different types of pictures by a configurable parameter called :cpp:type:`jpeg_decode_cfg_t`. Moreover, our jpeg decoder api provides a helper function which helps you get the basic information of your given image. Calling :cpp:func:`jpeg_decoder_get_info` would return the picture information structure called :cpp:func:`jpeg_decoder_get_info`. If you already know the picture basic information, this functions is unnecessary to be called. +The format conversions supported by this driver are listed in the table below: + ++----------------------------------------+-----------------------------------+ +| Format of the already compressed image | Format after decompressing | ++========================================+===================================+ +| | RGB565 | +| YUV444 +-----------------------------------+ +| | RGB888 | ++----------------------------------------+-----------------------------------+ +| | RGB565 | +| YUV422 +-----------------------------------+ +| | RGB888 | ++----------------------------------------+-----------------------------------+ +| | RGB565 | +| YUV420 +-----------------------------------+ +| | RGB888 | ++----------------------------------------+-----------------------------------+ +| GRAY | GRAY | ++----------------------------------------+-----------------------------------+ + Overall, You can take following code as reference, the code is going to decode a 1080*1920 picture. .. code:: c @@ -108,26 +144,42 @@ Overall, You can take following code as reference, the code is going to decode a jpeg_decode_picture_info_t header_info; ESP_ERROR_CHECK(jpeg_decoder_get_info(bit_stream, bit_stream_size, &header_info)); uint32_t out_size = 0; - ESP_ERROR_CHECK(jpeg_decoder_process(jpgd_handle, &decode_cfg_rgb, bit_stream, bit_stream_size, out_buf, &out_size)); + ESP_ERROR_CHECK(jpeg_decoder_process(decoder_engine, &decode_cfg_rgb, bit_stream, bit_stream_size, out_buf, &out_size)); There are some Tips that can help you use this driver more accurately: -Firstly, in above code, you should make sure the `bit_stream` and `out_buf` should be aligned by certain rules. We provide a helper function :cpp:func:`jpeg_alloc_decoder_mem` to help you malloc a buffer which is aligned in both size and address. +1. In above code, you should make sure the `bit_stream` and `out_buf` should be aligned by certain rules. We provide a helper function :cpp:func:`jpeg_alloc_decoder_mem` to help you malloc a buffer which is aligned in both size and address. -Secondly, the content of `bit_stream` buffer should not be changed until :cpp:func:`jpeg_decoder_process` returns. +2. The content of `bit_stream` buffer should not be changed until :cpp:func:`jpeg_decoder_process` returns. -Thirdly, the width and height of output picture would be 16 bytes aligned if original picture is formatted by YUV420 or YUV422. For example, if the input picture is 1080*1920, the output picture will be 1088*1920. That is the restriction of jpeg protocol. Please provide sufficient output buffer memory. +3. The width and height of output picture would be 16 bytes aligned if original picture is formatted by YUV420 or YUV422. For example, if the input picture is 1080*1920, the output picture will be 1088*1920. That is the restriction of jpeg protocol. Please provide sufficient output buffer memory. JPEG Encoder Engine ^^^^^^^^^^^^^^^^^^^ -After installing the JPEG encoder driver by :cpp:func:`jpeg_new_encoder_engine`, {IDF_TARGET_NAME} is ready to decode JPEG pictures by :cpp:func:`jpeg_encoder_process`. :cpp:func:`jpeg_encoder_process` is flexible for decoding different types of pictures by a configurable parameter called :cpp:type:`jpeg_encode_cfg_t`: +After installing the JPEG encoder driver by :cpp:func:`jpeg_new_encoder_engine`, {IDF_TARGET_NAME} is ready to decode JPEG pictures by :cpp:func:`jpeg_encoder_process`. :cpp:func:`jpeg_encoder_process` is flexible for decoding different types of pictures by a configurable parameter called :cpp:type:`jpeg_encode_cfg_t`. + +The format conversions supported by this driver are listed in the table below: + ++--------------------------+--------------------------------------+ +| Format of Original Image | Down sampling method | ++==========================+======================================+ +| | YUV444 | +| +--------------------------------------+ +| RGB565/RGB888 | YUV422 | +| +--------------------------------------+ +| | YUV420 | ++--------------------------+--------------------------------------+ +| GRAY | GRAY | ++--------------------------+--------------------------------------+ + Below is the example of code that encodes a 1080*1920 picture: .. code:: c + int raw_size_1080p = 0;/* Your raw image size */ jpeg_encode_cfg_t enc_config = { .src_type = JPEG_ENCODE_IN_FORMAT_RGB888, .sub_sample = JPEG_DOWN_SAMPLING_YUV422, @@ -151,20 +203,108 @@ Below is the example of code that encodes a 1080*1920 picture: There are some Tips that can help you use this driver more accurately: -Firstly, in above code, you should make sure the `raw_buf_1080p` and `jpg_buf_1080p` should aligned by calling :cpp:func:`jpeg_alloc_encoder_mem`. +1. In above code, you should make sure the `raw_buf_1080p` and `jpg_buf_1080p` should aligned by calling :cpp:func:`jpeg_alloc_encoder_mem`. + +2. The content of `raw_buf_1080p` buffer should not be changed until :cpp:func:`jpeg_encoder_process` returns. + +3. The compression ratio depends on the chosen `image_quality` and the content of the image itself. Generally, a higher `image_quality` value obviously results in better image quality but a smaller compression ratio. As for the image content, it is hard to give any specific guidelines, so this question is out of the scope of this document. Generally, the baseline JPEG compression ratio can vary from 40:1 to 10:1. Please take the actual situation into account. + +Performance Overview +^^^^^^^^^^^^^^^^^^^^ + +This section provides some measurements of the decoder and encoder performance. The data presented in the tables below gives the average values of decoding or encoding a randomly chosen picture fragments for 50 times. All tests were performed at a CPU frequency of 360MHz and a SPIRAM clock frequency of 200MHz. Only JPEG related code is run in this test, no other modules are involved (e.g. USB Camera, etc.). + +Both decoder and encoder are not cause too much CPU involvement. Only header parse causes CPU source. Calculations related to JPEG compression, such as DCT, quantization, huffman encoding/decoding, etc., are done entirely in hardware. + +JPEG decoder performance +~~~~~~~~~~~~~~~~~~~~~~~~ + ++----------------+-------------------------------------------------------------------------------------+------------------+ +| JPEG Size | Pixel Format | | ++--------+-------+--------------------------------------------+----------------------------------------+ Performance(fps) + +| Height | Width | in(Format of the already compressed image) | out(Format after decompressing) | | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 1080 | 1920 | YUV422 | RGB888/RGB565 | 48 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 720 | 1280 | YUV422 | RGB888/RGB565 | 109 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 480 | 800 | YUV422 | RGB888/RGB565 | 253 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 480 | 640 | YUV422 | RGB888/RGB565 | 307 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 480 | 320 | YUV422 | RGB888/RGB565 | 571 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ +| 720 | 1280 | GRAY | GRAY | 161 | ++--------+-------+--------------------------------------------+----------------------------------------+------------------+ + +JPEG encoder performance +~~~~~~~~~~~~~~~~~~~~~~~~ + ++----------------+-------------------------------------------------------------------------------------+------------------+ +| JPEG Size | Pixel Format | | ++--------+-------+-----------------------------------------+-------------------------------------------+ Performance(fps) + +| Height | Width | in(Format of Original Image) | out(Down sampling method) | | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 1080 | 1920 | RGB888 | YUV422 | 26 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 1080 | 1920 | RGB565 | YUV422 | 36 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 1080 | 1920 | RGB565 | YUV420 | 40 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 1080 | 1920 | RGB565 | YUV444 | 24 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 1080 | 1920 | RGB888 | YUV422 | 26 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 720 | 1280 | RGB565 | YUV420 | 88 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 720 | 1280 | RGB565 | YUV444 | 55 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 720 | 1280 | RGB565 | YUV422 | 81 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 480 | 800 | RGB888 | YUV420 | 142 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 480 | 640 | RGB888 | YUV420 | 174 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 480 | 320 | RGB888 | YUV420 | 315 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ +| 720 | 1280 | GRAY | GRAY | 163 | ++--------+-------+-----------------------------------------+-------------------------------------------+------------------+ -Secondly, the content of `raw_buf_1080p` buffer should not be changed until :cpp:func:`jpeg_encoder_process` returns. Thread Safety ^^^^^^^^^^^^^ The factory function :cpp:func:`jpeg_new_decoder_engine`, :cpp:func:`jpeg_decoder_get_info`, :cpp:func:`jpeg_decoder_process`, and :cpp:func:`jpeg_del_decoder_engine` are guaranteed to be thread safe by the driver, which means, user can call them from different RTOS tasks without protection by extra locks. +Power Management +^^^^^^^^^^^^^^^^ + +When power management is enabled (i.e., :ref:`CONFIG_PM_ENABLE` is set), the system needs to adjust or stop the source clock of JPEG to enter Light-sleep, thus potentially changing the JPEG decoder or encoder process. This might lead to unexpected behavior in hardware calculation. To prevent such issues, entering light sleep is disabled for the time when JPEG encoder or decoder is working. + +Whenever the user is decoding or encoding via JPEG (i.e., calling :cpp:func:`jpeg_encoder_process` or :cpp:func:`jpeg_decoder_process`), the driver guarantees that the power management lock is acquired by setting it to :cpp:enumerator:`esp_pm_lock_type_t::ESP_PM_NO_LIGHT_SLEEP`. Once the encoding or decoding is finished, the driver releases the lock and the system can enter light sleep. + Kconfig Options ^^^^^^^^^^^^^^^ - :ref:`CONFIG_JPEG_ENABLE_DEBUG_LOG` is used to enable the debug log at the cost of increased firmware binary size. +Maintainers' Notes +------------------ + +The JPEG driver usage of hardware resources and its process workflow are shown in the following graph: + +.. figure:: ../../../_static/diagrams/jpeg/jpeg_drv_file_structure.png + :align: center + :alt: JPEG driver files structure + + JPEG driver file structure + +Application Examples +-------------------- + +* JPEG decoder application example: :example:`peripherals/jpeg/jpeg_decode`. +* JPEG encoder application example: :example:`peripherals/jpeg/jpeg_encode`. + API Reference ------------- From 2f7cd3127911defb5bcc1ccf9a768b8b049cb94e Mon Sep 17 00:00:00 2001 From: Cao Sen Miao Date: Wed, 10 Apr 2024 18:53:11 +0800 Subject: [PATCH 2/2] fix(jpeg): Fix issue that jpeg acquire return NULL when acquire twice --- components/esp_driver_jpeg/jpeg_common.c | 8 +++--- .../jpeg_test_apps/main/test_jpeg_encode.c | 27 +++++++++++++++++++ .../jpeg_test_apps/sdkconfig.ci.release | 1 + 3 files changed, 32 insertions(+), 4 deletions(-) diff --git a/components/esp_driver_jpeg/jpeg_common.c b/components/esp_driver_jpeg/jpeg_common.c index 28207536f7..28f9b54a2b 100644 --- a/components/esp_driver_jpeg/jpeg_common.c +++ b/components/esp_driver_jpeg/jpeg_common.c @@ -43,9 +43,9 @@ esp_err_t jpeg_acquire_codec_handle(jpeg_codec_handle_t *jpeg_new_codec) jpeg_codec_t *codec = NULL; _lock_acquire(&s_jpeg_platform.mutex); if (!s_jpeg_platform.jpeg_codec) { - new_codec = true; codec = heap_caps_calloc(1, sizeof(jpeg_codec_t), JPEG_MEM_ALLOC_CAPS); if (codec) { + new_codec = true; s_jpeg_platform.jpeg_codec = codec; codec->intr_priority = -1; codec->spinlock = (portMUX_TYPE)portMUX_INITIALIZER_UNLOCKED; @@ -59,7 +59,7 @@ esp_err_t jpeg_acquire_codec_handle(jpeg_codec_handle_t *jpeg_new_codec) jpeg_ll_reset_module_register(); } #if CONFIG_PM_ENABLE - ESP_RETURN_ON_ERROR(esp_pm_lock_create(ESP_PM_NO_LIGHT_SLEEP, 0, "jpeg_codec", &codec->pm_lock), TAG, "create pm lock failed"); + ESP_RETURN_ON_ERROR(esp_pm_lock_create(ESP_PM_CPU_FREQ_MAX, 0, "jpeg_codec", &codec->pm_lock), TAG, "create pm lock failed"); #endif jpeg_hal_init(&codec->hal); } else { @@ -68,14 +68,14 @@ esp_err_t jpeg_acquire_codec_handle(jpeg_codec_handle_t *jpeg_new_codec) } } - if (codec) { + if (s_jpeg_platform.jpeg_codec) { s_jpeg_platform.count++; } if (new_codec) { ESP_LOGD(TAG, "new jpeg module has been acquired at (%p)", codec); } - *jpeg_new_codec = codec; + *jpeg_new_codec = s_jpeg_platform.jpeg_codec; _lock_release(&s_jpeg_platform.mutex); return ret; } diff --git a/components/esp_driver_jpeg/test_apps/jpeg_test_apps/main/test_jpeg_encode.c b/components/esp_driver_jpeg/test_apps/jpeg_test_apps/main/test_jpeg_encode.c index 24c3eed427..f1612fe7c5 100644 --- a/components/esp_driver_jpeg/test_apps/jpeg_test_apps/main/test_jpeg_encode.c +++ b/components/esp_driver_jpeg/test_apps/jpeg_test_apps/main/test_jpeg_encode.c @@ -13,6 +13,7 @@ #include "freertos/FreeRTOS.h" #include "esp_private/periph_ctrl.h" #include "driver/jpeg_encode.h" +#include "driver/jpeg_decode.h" #include "esp_log.h" #include "test_jpeg_performance.h" #include "esp_system.h" @@ -91,3 +92,29 @@ TEST_CASE("JPEG encode performance test for 480*640 RGB->YUV picture", "[jpeg]") free(raw_buf_480p); TEST_ESP_OK(jpeg_del_encoder_engine(jpeg_handle)); } + +TEST_CASE("jpeg initialize twice test", "[jpeg]") +{ + jpeg_encoder_handle_t encoder_handle = NULL; + + jpeg_encode_engine_cfg_t encode_eng_cfg = { + .intr_priority = 0, + .timeout_ms = 40, + }; + + TEST_ESP_OK(jpeg_new_encoder_engine(&encode_eng_cfg, &encoder_handle)); + assert(encoder_handle != NULL); + + jpeg_decoder_handle_t decoder_handle = NULL; + + jpeg_decode_engine_cfg_t decode_eng_cfg = { + .intr_priority = 0, + .timeout_ms = 40, + }; + + TEST_ESP_OK(jpeg_new_decoder_engine(&decode_eng_cfg, &decoder_handle)); + assert(decoder_handle != NULL); + + TEST_ESP_OK(jpeg_del_encoder_engine(encoder_handle)); + TEST_ESP_OK(jpeg_del_decoder_engine(decoder_handle)); +} diff --git a/components/esp_driver_jpeg/test_apps/jpeg_test_apps/sdkconfig.ci.release b/components/esp_driver_jpeg/test_apps/jpeg_test_apps/sdkconfig.ci.release index 91d93f163e..199b0cf97c 100644 --- a/components/esp_driver_jpeg/test_apps/jpeg_test_apps/sdkconfig.ci.release +++ b/components/esp_driver_jpeg/test_apps/jpeg_test_apps/sdkconfig.ci.release @@ -1,5 +1,6 @@ CONFIG_PM_ENABLE=y CONFIG_FREERTOS_USE_TICKLESS_IDLE=y +CONFIG_PM_DFS_INIT_AUTO=y CONFIG_COMPILER_OPTIMIZATION_SIZE=y CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT=y