From c0e1967e2ef0ebd8f8ebfccc4017fbe8ca37df5c Mon Sep 17 00:00:00 2001 From: hecomi Date: Sat, 7 Jan 2017 13:26:28 +0900 Subject: [PATCH] modify duplicator state handling. --- .../Plugins/x86/uDesktopDuplication.dll | Bin 86016 -> 87040 bytes .../Plugins/x86_64/uDesktopDuplication.dll | Bin 102400 -> 102912 bytes .../uDesktopDuplication/Duplicator.cpp | 30 +++++++++++------- .../uDesktopDuplication/Duplicator.h | 2 +- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/Assets/uDesktopDuplication/Plugins/x86/uDesktopDuplication.dll b/Assets/uDesktopDuplication/Plugins/x86/uDesktopDuplication.dll index 78f316e5f5aa34d70c88b69a681264b22ef3b4ef..ad255841d7b795dcf5b4b371a32414a3f53dc1ed 100644 GIT binary patch delta 17682 zcmeHudstLe+x}i7;-ILb97PmRG(g1Jdro`KsGKxVJRzP@!O&1iG10KWL`9LpmNjHn zSXN|K6lzdbn7)cdMaHYBRFr6gpz-$==d=#bvkrTU z`DMNH%X?SI$q4<*>{QP6G;^|$eq;d0wSbZBWcIy8Bghnwnkd34dUISo-AqP$5$Hnv8t69sn&{iIfC0=4 zmk%XhP)p@GnLylcaSF$ar|AHJX``xSm2eQo4Q zWoEzE3HgvJ`p;$+{K~jN^!R{Oa)t&BOq7KVqL~AO7}+r}o{7#5Tt-eqG?dO%6p;5T zFDRxFa+Ho4Y#DMy8dGt?$SprK?-<`%bbP_5Zd|hC{1N)Z;A!LtZ5aH$-=`R0Qb*B( z&SJM>OgNXkf}7z8{*->^6;F=S!QLt_#UP^S^6@4_QHKd#(UsZWLQ}nGv9{mwUQ0fu zBYi$4@6oG16UV*xKR4*-45Ehu9s@6I=u*Zj9xCxZ z8u}rrrW*o>V>U|zvt+XQgQ$B@6gfmSK@$+5+#nkvS7}FZcyI#-S`=Sel#)# zVbAHp{JuSOe8@7WmWOB&tnWkONdtXgL=@RmnKI&e;&T8Kd1b+;o|w)~ zRm~#R7YiK|4ph2_dJ^(VrPruXGU#QehBxONMd{VbgwfXtDWlr3`D`}#gk2_AD|5rE zq>u|^7Lk4Q=`k8KSvy86iyZuPWE|N=<0D6r_R5u!x7^5Um5X?HLY||`gb?x*EfmI( zJ@l|Jk(AO7A=-Nv8&5B3I29Pqq0{k)+i9Xo3GpV?P|{AH!*3})qI#PARGFYQNzHE4 zn8?%ggr))mCtE)7FfGjGwt1t(^&;HEj2JVOhkCzE>mO?0?t{a~WV>9@i&#ZkSJ z%Ew!YgC>lRK(4GE|1{Y~-6y<@rm7~a20v`#9oct_XmCur_ZDYdd!%-=gONYPaljA zgg7(aAlo>f9*7?)D;!*TCSH{JJuWrr-1V?DoW2WNssH5hBPs(Stas&ZaZ-!pN5+V4 z+ggL6xg|T|Hq*x@o8Y%<@&s>e;M}s3{rfQSsxDHY086EeNmsH zXtymLWZ>4#SP8{R2jCYQKId3i-PKi$C>GB;P+Xh?Ge=f^R~NR>;-reAddE|=_QA=6 zTK?|p`guT?Parmr;-o4^3muslA^-I;XYc8}#6)t9mM3cZZSRG^JSOJ`7Hp!9#8I}D z=F!~7LfeF#2h6j%KKVJmW`g=Ub9IM1GUnD7U0tn1VB+{`5XZF+M5+2D6V&3YDSptc zst8AT@f3A)=!b!s1IA7pOMGQrkl4B)i%%XtyS4r)&dm30Qv zkCI|+rO1ioB6-)Ktu-6^I>H8{!JC-0qKRom56ZVRljP#qw$rf=w8)|8NOowhcXgeL z?esuSZ@sf_V08g&tGNzsy#c$^vFsS-U|THBcCzD2o21{rIH{?~zc{vKM{HA((Ghf` zt1Ed%mz_Q`Wmzyk0-cP_ht~l`NsY8pM4+bas(8PJPTHsd?*}oc>si^s5*j+P2qYz-Q~> z9ebIS(RFlZ^20$J*}`!<9p@%>eumrDvpHgMl6*&snvdXCnuG0w)EgQ{SB_}WP%kv1dfkzyiWH; zA~sH6N#f~lbar>HG~Bx**_=xsnZZ;FXCzH>%DSgwHk%4VaZ)>*ihUSOQLXV-&X6K< z8o@?wzz%mzug5e;3nrD_Fk;)Cv(vDi4xgzfKhxBi2C|l(I~da2^K_p;FIqiw3U(QG zvSDw{nkDU{`)09|jcsz^ZAy`NZ>1b$*0Yx}Ud?QY*FO6pnZ}FGNwwTl|0`7zjh(~x zN!NjCnk(_L<}$Y~UgA87mp88mZ~lCVw`+b6Ue*GMw{HRCvBQ>iX`#e>YvIOw`|i#~ z67PdW-N%Ay5Z#+5@jgon_pQRRsIHldXgq~%tY)+2*m{8Oo};AUX#?(^BnKBuCKnfn zdwC)koF=vpy1GuPFM zck8kH|FiW$c{rY&?d^RZt7q%Wv?w5GK*C+_3UFyvz%Z{sB$ZRq3KlvhmPxK2O&{r% zxC~j)fyi&|%JG}Af}8CaOAn<-k$=-m>5(`{{2;G!7OTA!S(u1x`TS1pFYEpzZ$%Ca@VzUdh!l;mVJL@)0PYkiJ}3^qLCT%mg)PJ zUg+v7az7p0m`Pt;mOJFRr7Q>K*u&X$7j0@Tifx(==^;Aqp$X&uwFtZ`3yLn!>%KkT ziItO-qFblkT?b=eiere=MbW8+G`YVY=CGmt-{Nrw?-49{gEP7O)LW5`f zQLoGxma3V#{p*^$y0+e72T_XS8~SZ#WcXor=3;#;Uns4Q?p>#NyxZO5ja~k#4pU*d z*}4bY^TJkp1!5M7qGQvq7+{=RHQVvG)VOVzFFaA5Ch4q&j`L`AE@Mx;7I@LOmk$ld zcD48hj$Fj0yTvNSEP8qQa;);C6+yV+tz2Pn`!}4>zmE*1r&eeK^HD);H#~=(XU+m= z@0=%ZpEm0M@H?c9);=8VTZ87ie8OZzffHk3wX!d|+5Q$Co>eNlvzJz7Jt+JA679Y6 z2+5-#uAC?H{f7Fl8tZin?^~FB=GE!5yp5)=(vzCXr&oCp@;u$Q`e8I6&whzquPo1& zlYqLHG4$Amt(S5Jj`{O=mu&V7N41khf7t6yQt9`P_(Qkj5$NXa|A+2!Cri?m({XD@ z$-?&2l(h@lo$Bb?Rg8?znMSVD+?-{s(wuVwr1I5uGJ;r^KYH4yajG;R8BcYw#jy|OWxt{tGvxdZI@&mCZp>F(?N$(BRlU~vwOj1Yu2~q zuB+8xIrpE8Ldn~type-*oV_lJ3tWi(x({AT=;L`~uwD=5ZTEY9HXD*B7J-yJ&VZe7 zqY0b#^m8qhG8v2+mnmk62*=FN?z&qa{`#p{(=Z_h_|3!9~I~>mq#dfjI z;kX$m%`lbeJ+2MtfH8DY>s1O+UC(Ll$-bXMZ`*p<~rQj(!%1(f0B-TLM_wm zpmRXF3M-#_B9*|vv1JSSoMsgaB{yhcK_fXw7jN}tj<&u={AtiOfAGa^4J3m0-yVQ+ z*!Ht{jsJ6dAjKE0GZX2==as2eoFK3g`- zlkR>dj|`#1OQB80(iyUM`!SYmY?P~`Vb3ikyXmgyHj%Nk?_M_cu)SY+jgP$R(&=!( zO)7u>MZ8?S{`_3>HkIK5K8!BhmxghDvM-g~r2a4Pet(C^jM!ZmPP7~bYPh;ZGXwXPiQ~XyEdSn z?vu*Odp010X32M~lNTqoIqrDS!m^jpblCnnS!xEovp-)Rhdbq|cyGdXiG%~8(jZP$ z?_$PT>$|!#YfvhVJy~4~nw)u()n?T=9+6ASqd2y-c-EfkW^gkbC50yZI%d#|FE2nd z;wyzTJIGyj`X+6B#Rf*|0UKUQ8xI^Li|LkE*W>rkR|_X~U_0%;e|uI(d&0xEwYUz> zD~fF?o>j4eOlQ(*q1bFatMi!nAtp8rd}q_X;vzOP$A6N|b}V_5*1a~u;}}y2hXO5H zIi_;N>jQhmhW2M;sQ;i7G&ysZRBNc_2C!NaYMIRv>vnRcLn?G6XSOl+ZK>AI?*Ew` z^wEPM=zQtHB||*D@dmM=8JG25*qc3Z;Vb&QOX=umr;RhisPRot=dG>BPSvm)JJlz1 z=~uIZJn!8u4y>lv-h6h}5TEXn84p`QQnmH;IO+WgNe zlRvo5?f0&?>koH(yFBy%=}m-^V`R#G-sIp)-Z~LhXWzbE(e3S<8F#(4(~gSF9!@2*9R#P>3Km|V$(N&O7^_Io3H#OU2j`t5r`o`DFt zv-xeAR9?A|OheOpT2|THzeKu)NV_an{=Ewo{iyQ6UJs%B>~=Bwu#P-L7apG5Ynh94 z?y#;O%Ff6=I+gk#nJ3B4uNWn}l|f%PvYpl+<>{=W(|e^$CZl8@rPHsEu6I?3(q-@K z`YrADa5a&ZzrPv@>R+`+CObrTRYl_~&lgqEedNe@<41 zI!`v~AXNP;7kuys8TOR)&Pa-j*++sRk-e!(Z?Hu=M}Upy9Ggp?q+cByN*<>_AKM(> z#Js#YA8);xcxNn%Z7!Zw*mJE8to9rTjUDspGarfghW6!08X^WhU>+_)l61 z*-821L&-*(bUd%mVWvGLmDV4hYAaynj@ek{<<+^Yoi>y+%TX%cnu^YSP>*7A<{`$2 zEvashY8Cj+JS?%=k~5D=p zA3F&*XA#~xY5U&Z^p#J&F<(`mM)&bopa(&-Y1gN-NerER;uTr4f_9!5PEzR5labDA zOpipmn1V$5*ZBJ~`5?GbCP!mz&Q!92<&6J2tCY!;{x#qqtE_ewyj4cu=dBc6$(!S@ zx0PTyy)Cs!-sYX^$6jcKVU-1^M)s0rkF9*;%scFJ-<;1=2LFIB;J@MHjUyjh`DwS% zgdgbf&)*;w^x?WZd@FO*)se=^BVQaMWC~sKm4M%8zRJP%v~PW&EHtVztp1{mG}B(+ zEGG?>E5Gp~?)AY$@nJpP)-cMwkrf*&-)$(64N2fz=jZ_Xx-ZBT5rWk^{oyA zGp%oJSJ73CBmC1wKq0NEb7S}aa#Xbt1(vloVA8jf6;D)SGe?iWYOW`@!+7Xyfr#$6ol zogWH=wSTw_np-<2qV<~d-gMW+f%wX}@8XbN<5+(hz1=sqp+C*^>_ycO?@_Qi`#ZD3 zeXmuX!A8~Gs>q6ZeZ8b~UO|2S9yP|aycEc{8 zM0{^N!II{2riuPMD$$nKRgz^Mvs@~%8e1P`A1}Ktnp(3Y4Ns;qUMk92(H(oSO9_N- zZ1kjM-}=SWvT+6f)?+ZYF_;alY*JV@_J&B>`isyPIegq5bQ|=hF}+gy=eOae#c1O& zlD`OX-8BX@)`3rp0}DJ6k}VmIznOi(+ODn>cO5jrL7M{(PSUjRe0sr#DlT{r`GBz$ zVQ4$!5`vDBmLzEQRY2{M*bM#@4lzUB(u!=z6CB4#?Vzi4iA5T^{S+m(Yy1w z3py`Dr)Y8~N~KIYZwx*1V<@Sj7k?Z&WHhsJwAM)UKx>smTUskd(*c)<<14|~%MtGL z5xvb(birjmf84hIGe*ZR!(&(^-F10LFW5f)y?4M)#>$Gsbot)87b9#}qv*NI!)KH+ z$>ny}Vrglu8ig(t=dv_>ixm;9SMRa*O04GArzP6h`oSV+ho6vCq)cBwipIBuV1X`g z3G$TKRcv`jjG}v5LcGMWXl{hmTy-w{95>oXYgI8$_5c@w;Aq0F0Lp>eK-74`%>^C>jshov z7C=6MaQ?t(KmZJAD-kpm$O7^v*wAAXo&_Qy^ac6?*K~xd0}cW^foxz3pau4!vli&H z#~*d}xW`~L6A8Br$OWDT4gyDkI^aj34ameyvgaK1PXU|_l|8Y9dmPvauqO?IggC<8 z0G$rH5IBhPKFHq&YJtgsJNP3218@y>_Ow7R66IiE8_K?*p1_kR%RoCoUj|BnC8$R+ zqZAa_GZ{<~NCDV00zGC=i)*y9i8R6yHzCl6D84=~{jC63n?e-+vx&mnmnaltzys1D z|DwrRUa~kncyU(N>ZOZwmaksLaTSuR@;%3QZnVB_px=zl#cMLsgJ)*s=B!(j5xjo! z+Tc~|va)Ez^$1{=SFO$oUcxG?9?e*j1IwJ%!INTC zF+A^bA;d({Pp*%xthk=+VdK!N$aqe%&yOhbEu5l4$0^EyYz?PqR&$Er2Gl{L1x^u( zvH%40oI;@l9mgr!qhJGs!A~gsaQ^p3$tETf@CL8M$|<~I8vtaRU=P6eNJWK_Q;Y_) z+j+Ad4T_vX1kVD*G|-oSGmMxYfE(;Os0}5Gi@4AI6ZFn+BW%$w@d2p+Q^jef?jdVW z#4v#b@UqvVYXAqdKgucU0VR+RSp_IVG7t?Y043lCnPLrWfRY@JzSQwXTqpXFy~D|C z-s$vj3M7g&7f(^-|kYoXwm^$$9*z()31TC=Wyh?d$%2p_#*}XR=@d=F(FDM z9CW0IiK9_ZaPbn7A){aa={2^e7E?`wB)5kp>s}%1dw??9|IZ-4r<7Ub!Qx~O3;eqP z*MNG~ELk1z2GYa4MFZaWFxDC1!x{=h2IqsOfi?jJG^sO)oTMu| zhfe9)IW`HIXeJRTb2ZmZ|HJ;iuCS?yMpu;6=$C)`4lYL%;7AXPNSGh}yE9-&X%9A& z9l(U_>T`tCBH(SeF8O)EQrm`D>@U|MKe1G&AWVoqq0Y?hZ)i zvOItK-CqF2FgZL0o^J(>+c{BHqK=9 zMaD90P|x<5UIX3#_s}Rdtd9FyZim z&KmQX37zf%u)#SXO`suNei7+CB&-|FkaTM@dU6&~)WWkkgEeN`bDx+s(bG9I5ocgs z+^1I$Uf_LA?defxc4=se4ThE3!#b+yQAgE}D?x*|(VtA4-Ko9Squ$&$}WD~fnN6XANd!&2{AYON4 z)ZKxTQV55z33h5ab!*{6f&KB2J&BN@kVq68{s*_rM45v0vKJFFbWT-|p0F0%d(1!$KXF_FU;{n@T7h5($GrzM0|Qz)E)^&Qnt{@5*vSD0kn}V65NG=t z&Vgp2PaDTA0?L8&fZ{sGO#yZQXMo>;s2d#j5MT%X4Gg%+adQDXa2imwb6hU)4$ufp zy2WwN-m?EKBfiAn?$e9x3Hb(Ia&Q$1UAc-4UCD;sznhoK)!cgjvtC3-LJr|COQP1K zFV0zv?Z*fA);`_!&^64k%zoXC_>EK)Mw6}%ha2}Yi3=`WxWW+-#K9RTz}yimEr7Jy?r-a zMl`62bbLlFmsC|u)d8LoN#NqC8P8v5|FSpPOWf>yAL3`vcPAd9Et~@HGF_sJVnU>P z0_cd|bO=kM1gARw<-o%mZ04!ZC1&d*kBNiiH7?ffkih=E!DiM>T*t)0_OTwMPk%Sm zJMb#by!zX3u}W7)WzsD74|1z)GKb8|; zeKzXM>v~Y;m7&{1Ei9u^?|v4Hx;Lgy`(il>9_I2^4$AuL4pk*SBeC|I&QL};@1egeI}y&PCZL)QJoMmW7PZ{_y=9vJOy{AogO*1rZ;4+@UH>YUF7piFH! zX!pb^@Of%?h&Kz9Tv6f@Fk4d(L2!-B!?!LEtvx*CIu-p{I9QMsKi%_w;GPqYfi6B9 zP`!&^(Vuu=flJAd+e7Y#?@v;%`reaQ_3$fp%UQ3Rdl;s>1kKFQ;T*Ot&o7gyTD zFgn?#un?5ZOBN{W-9}J01%;q249|kH(Y+4J95J2SE=SocUt66c=mW~+%r?wE&65nZ z;}5IdhDC!97MI|n$u2$CX1Y@^co6CB>0+~fmN?l8Ptx1uvii_PPk^#{W|Xz`xvPE_ zl=bogDC>m}%I(Ze=%j0|i2!A7j&#v6Es>77u|Q(^ zaMztya?tKERXIh`V6id9yF|=U8xsY4_Tc#27b{3m|B4>07$>XU#bT{xODvz@8%~!G zfOd!BfKxlI2dm!6Dsi#cz_FbvNN}Lb{C#|Li1zV=5DD(4vxz>S-2=*UilV`S zA~)3~Vt&gc(Xf1%)pk%e&Zk@|tlY#@f<0XvmaKC7@xdf$RJ+Tl!)3&^JDZk+vZk48 zqEmGdSg3K)pv>oVP}b?WE>%`8kyL%kz+%&0?h-NelagpqJy@toCyyMogRzI&>*Pe9 zz~MhFFqzy%y+E1Qp|1L9P}ZR+P?qajP?mTW(C&Gfk8g8q>thF@2lxq?lJbo1WzaYu(st37?yq053211j0tk9(0o(q#Y6i;VD1b9rOd$zz-?pDpFM_`xv3UV^5+L~i%CADc7q3G2WAWxv zY-X@g?tu(6`el?~f!))fuK`ct6Ik#wI9Z;9^WC_mJ&Q6FD}Z)1sC*p@0OhhGU>^)Y zqbcN1fdawIDNs`mUCmO9pf^vrVSpN#3@qmH32+?>TY%lb zYry-!r@$A$Mc^`U10Vw7e1K5^4_JX&z+xa9$OEM8HG(I1eUD_C z9pDAa@bR<<&mUj(@Yik}*Mp}8&mX+V9&L=q7r+>_(eC82uar1u@tsi)#oQi>yTB`f z;^7{=x529eZ+;Knm*C}q=jg$^4IT%7nLT*E_{5yg^l(A#e�Frv#9I|NB(^f1j%V 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 LKkw_O5IgyAJ;yg& delta 17371 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 zD(frameMilliSeconds); - if (!Duplicate(timeout)) break; + Duplicate(timeout); + + if (state_ != State::Running) + { + break; + } } if (state_ == State::Running) @@ -229,9 +234,9 @@ const Duplicator::Frame& Duplicator::GetLastFrame() const } -bool Duplicator::Duplicate(UINT timeout) +void Duplicator::Duplicate(UINT timeout) { - if (!dupl_ || !device_) return false; + if (!dupl_ || !device_) return; ComPtr resource; DXGI_OUTDUPL_FRAME_INFO frameInfo; @@ -247,31 +252,32 @@ bool Duplicator::Duplicate(UINT timeout) // it is necessary to re-initialize monitors. Debug::Log("Duplicator::Duplicate() => DXGI_ERROR_ACCESS_LOST."); state_ = State::AccessLost; - return false; + break; } case DXGI_ERROR_WAIT_TIMEOUT: { // This often occurs when timeout value is small and it is not problem. // Debug::Log("Duplicator::Duplicate() => DXGI_ERROR_WAIT_TIMEOUT."); - return true; + break; } case DXGI_ERROR_INVALID_CALL: { Debug::Error("Duplicator::Duplicate() => DXGI_ERROR_INVALID_CALL."); - return false; + break; } case E_INVALIDARG: { Debug::Error("Duplicator::Duplicate() => E_INVALIDARG."); - return false; + break; } default: { state_ = State::Unknown; Debug::Error("Duplicator::Duplicate() => Unknown Error."); - return false; + break; } } + return; } ScopedReleaser releaser([this] @@ -305,13 +311,15 @@ bool Duplicator::Duplicate(UINT timeout) ComPtr texture; if (FAILED(resource.As(&texture))) { - return false; + Debug::Error("Duplicator::Duplicate() => IDXGIResource could not be converted to ID3D11Texture2D."); + return; } auto sharedTexture = device_->GetCompatibleSharedTexture(texture, lastFrameId_ % 2); if (!sharedTexture) { - return false; + Debug::Error("Duplicator::Duplicate() => Shared Texture was null."); + return; } ComPtr context; @@ -331,8 +339,6 @@ bool Duplicator::Duplicate(UINT timeout) metaData_ }; } - - return true; } diff --git a/Plugins/uDesktopDuplication/uDesktopDuplication/Duplicator.h b/Plugins/uDesktopDuplication/uDesktopDuplication/Duplicator.h index 839ada4..3f4523b 100644 --- a/Plugins/uDesktopDuplication/uDesktopDuplication/Duplicator.h +++ b/Plugins/uDesktopDuplication/uDesktopDuplication/Duplicator.h @@ -67,7 +67,7 @@ private: void InitializeDuplication(); void CheckUnityAdapter(); - bool Duplicate(UINT timeout); + void Duplicate(UINT timeout); void UpdateCursor( const Microsoft::WRL::ComPtr& texture,