From 8721c2699165586664bbd3a655217dd57edc44d3 Mon Sep 17 00:00:00 2001 From: Tobisaninfo <thinkdifferent055@gmail.com> Date: Fri, 30 Sep 2016 13:37:15 +0200 Subject: [PATCH] Add device option to nawin --- PlayWallNativeWin/j4n/NativeAudio.dll | Bin 6144 -> 6656 bytes PlayWallNativeWin/j4n/NativeAudio.j4n.jar | Bin 1794 -> 1842 bytes PlayWallNativeWin/j4n/build.cmd | 4 +-- .../clr/nativeaudio/NativeAudio.generated.cs | 27 ++++++++++++++++-- .../j4n/jvm/nativeaudio/NativeAudio.java | 6 ++++ .../classes/nativeaudio/NativeAudio.class | Bin 1256 -> 1421 bytes 6 files changed, 33 insertions(+), 4 deletions(-) diff --git a/PlayWallNativeWin/j4n/NativeAudio.dll b/PlayWallNativeWin/j4n/NativeAudio.dll index e85f118b0af0c8c9a03777d25938e76a635adcb1..fff208682998191bb5fd58c8100cada3dd37e35d 100644 GIT binary patch delta 1957 zcmZoLXfT=3p%m)!E}Q`h9xx~=a5EY(FbFX)Ft9-c;|wOQ3ghE3U|{eE2{<q?bTCg; z6y`}_VBle3V7Q{kz#ubOkx6HAB%?Z4iU0!xg8~BsgV5wIMr}rs$=ev!86_s)V^orK zFaT+1VDMmIU|?ckW#Ca}U^v0ez`!{9p@8}10Hy;v=@11B%=zLB3|vKw3=9SN5)2Gn zI($sb#gYsRT(!&$3@q9_Ow7enljE7Cm8C&qtPBh+Ow}M#EMJC!feXTBs%BweV9A%A zJeOIsUXFo*OUn-;kuMKYBVNnKz`&wq1Qk;NDPUk=5H?_B5COZ7L6E5$WLv%>0|OVA z5QByiNC_5sWn}qHQ1et67`ViZWuQh(c4ASeR|V-egE)&hpP7MyO$%%x6N51W0|PSy zgP<6fwi=s;8Uq6tw-BR-Is*e2bG`=1`#ca+*}&do6OZ6x)6isK;4-?T#UO0J%%I1> zz`(-5AP5%hm1JOG<Pzi77G+~+2OGvC#H69lz|X+7h+RB_n;opm=<(!Y7MsZ%SX68` zurM$v*D)~2ure_G0kMNiiZb)ki$QTA!3Bw9<<MXT6)pw_P~<ARhkCj&Fff>KF)&P- zEXb-33SE%<!RbYmfq{XGfq_Arfq_8~;w}b8C=E(aAT|@oXoibSAT}tKoniE5VPmjl z0+9@iKbZL$vROdl8jN<#Yz*tc<ODFOzyuO`17@>=+4hWf^~`JxB8)mLYz&_mKx8pk zI*KuqiHm`eA(n}Y;Wtw(6C1;I25%NFhLtQJ_7)Z;W-f-~V74YRh}{KdOEXI_urVxW z0*P#72I<`oCeMM%lVH<cvBZLXzz_BYBSSqS10#a~0~>QKvm*nD4dT@@*D?n(Ff(v6 zFfu%3YGz<$FlT6IU}O+v2C?5Ubuln9yk_oWU}V_N(9RG5$}tRW5}%l*7#JDSAv}&| zrb!G;4Ea#rR3=ddCWZ<y?-<8Y76k@ohE@<yf#Dd(UM5urW`;>1F2ga70A>(xK9m<b z`8Jz${U>HN26hG>MUbQ07>pR~8Q2->p}g-bYz!O>E1<mn3?SYfC~r11h<66cGhz;5 z;9z(I<z<0+JW3EV*D+0E;9#(X^5!wbGH@`sLwTL`%%TjO3=vRn7=r)<7sCuNZyJLl z%QOaVhD%^x8-oD@8v{2313273WH=Loyu%DCI(D;w^2-wzkoXR;><X~@iOe980tQZo zPt1%Af(#%pOEP?7=3>xfsQ<()z+lJ#A}ztBBbf9AlYw9|5=<sCd}0=5$ON+s!DJ<v zoCr3qkpUD%oeZGhKga+I^@9wc&_2iz%dE+8kU^Wlm|-DU<w=Ie%+?Gi8BQ?SGhAf& zRL?BHa1(6MO0e`wh6T)w3@aH9vA8g-Wcb9w#;}rMCj*F_#>~dh$xzDR&#;k!n<a#y zlcAZxpJ64#QHBVHMuy1@u?!y>s#r1@b}}R|fGn8DV$blA;R;J0!%Bwr3~USs!K5Ao zH^T}BJqBThjSPAW(hT(%81xvF8E!J@F=#WqV$fqS29wrc(itr7&G3Oik0BT=5)CGk z88{gA7_u3R81)#68SEJy7^)e186Cl70+`fe@M1_}C}Lm&XY!d$vl$o|R<g`zU|=}N zw1k0yA(wdx0}}%i1M_5GPD4R(@eN8WP+T>+pHq~jjG2L9@-ogC>EhH9m(;S%<Wz?A z)ROpsqWqN7<PyKc+*F3V$zoh~o8!2Om^ss7iYA}qEn#&nEKSUr?7$Z#&7R9p04_-x z7$THQ%vUAOa-5@lAjMifd*<XFeAf2N3JiQK3XDvAtO|^bLWL~sjDnFY3Jijg%nA&= zAVw*R0wW_2D?1a1U@R*GqhKrtGXnz$J3F&1ABSM<WPN@aRu%>ZS-#2M{C{;|btb4F zkYQwC_@KwY@IioqAt=}-m`C87%IWob{?m1iw_HqlUc9+PfP+!U1X}xnyzU2LD@;@r lV{$N<yi71-vw~Ow<7Pgg&&-?#kODWsV6&jud&Y?d>;U)2K34z$ delta 1768 zcmZoLX)u`3q4XjBZ8!rIJYY~#;AS*nU=UznU|@p?p3|SWDvYm2pMk+2B;dfn(7`-W zQJ5!zfq{pCfx$(Ofk9@nB9qSKNJe$8EBp)$3<?Yk3<8t87_}LNCU0X@XB3-!k5Nf- zgFZ+*1A_+x0|OHSE5imQ28Joz3=E8u3kA(52QVG*?*hv(2#RrOi?eBnGca&*3o&X) zFfedwNHQ>Rv57};v1v##FmM??WX_jnVBjiZWMC-BmtkPw(&1xbE|z6r;HqV2U|`Ya zVPY<pn{2}@tt<}`V`X4qVX6j^V)+UT3|tU4Q#A_%153W*<SJ%OJ|zYQE-gQZM85Lm zjm*M+Dj*?Y14afB1_lOZ1_nW<YLMaistgQVTtW;QYB=Q8k>xi*jntSd%AzZ%3DRN) zv6wlZnSo*Q1s0ph+^nj$6Id7+l<OE6{;)7Gd;qb7ONuh{(u+Z1_J$J@)XJg33_my_ zk)!M$>gmG3z`()9z|b=}msMR>9^y)Hv<WjXFmN(3FlaL{FbIOgCvRkxtiQs<2r`a= zjp00_GYcDo4HJlDX8g^}&ydUlig0a4M`kvLO<-~|m{ev0iM$81IlycuFk75ag@ujb zD+7ou1B=8m<}h(FFft@CaWVX3N?>ARxW(Yi!o@I)1;k#;qFT?)#jt|~B;5oS(qUF* zW@C_JmSEswxD6HwV*rV)Vp3)1V%WkAQh5kWUIde87!sI3?gu3?1_nkj6ky<FZeVr< zvl$r#7#f%xm;)J@88{gj8J;jTFfcNhGqf-;GKerYFyu2bd}L~8U}Sj5+|9tqu#2IE zApn$A8QLViGD|TqGNeOz9BoYf3``85l)}K!#xa9Ql!1w%0xWloV;YMB12aP_ly`th zm4TUI5|kIr4C2j)@)9N+vP;*0WoBbwXW&r;IlPU*h#`c5onaA__kx9ufrH^Rly`^$ z#JdmW&0_}f-avV#%$W=v3_MB@Q*yyP9Vl-jQ$GU-LnM?pouP<<gCQNt>#1iJW#D8e zg>nrT*ciANKw<ZU2}DLAk@uNF*>VjFD5+m%0m<$L%Ps_~pTf+^@Rga7L68CDAxVa> z%v=nb3}2ZA7!1LrC75&slb&EQ5KPubf~iD?ugszhnP7Gyn5+bo6T!wcGJwLrlK~XA z2N^(NdXNDWmIoOUm^B#=GH5dxGb{wFJjqbR;>fU(A&$YF;UdEd25*Lw3`bc47;Z8= zV|Hh_$#9w}gyA9B<d<M_Wj$EiN`}SEj0`IoHnT)BtYmo1!p5+YVGjd{oXO0_(8-X; zkixK&fsZAVp_8G8A%$Tj!wH65hDL@Sh9ZWQ44W9(7!HC-JqB)u1q^x&!VD`J^cbWW zPB7>(C^KAS&|}bMc*LN`U<@X$!K5=-Jk*=v1%n<#Fjy!WOeQlhFzPX6GiWjDF%&bH zGdeI-Gqf@~g2@ChsmEZ=5YNEG0Lra%m?kqYFwA0^&cMKMglP@~149AxoXH0{%{3Z8 zg%K!0Kyf((IF=b08Q4Lk6;!m6d9o5$jEHl7UU7a-Dnoi|Nqj(2eoAR_iQnXzTy`Ac zMVTe3KACx&uX2?zPY&TLntYZoLXLrffjyU@fWa7SilE4;E}iGj9&@$j-3`=KA5M1Q zx3*zrXW|fyWMyC!jO1WeVBlk6U}WTDW?<l8QD9`^V^v^e6slxlXB3QOQD6{^WmaI| z1u<$_6c`zKChy{xnS7i7uMVv40p)8MMh1oiJqCsZ0S1PkV3*+YcDDZ6JO_PuZ)##R zJ(C``nMII;QD_OY76CbIABe3mQBjO(gZ^YQp^VLZBA=N#6(EJ>1^dl{67Lx&8n6QZ DpZ6@A diff --git a/PlayWallNativeWin/j4n/NativeAudio.j4n.jar b/PlayWallNativeWin/j4n/NativeAudio.j4n.jar index 8f888bc0ebad18acd661a0d0ea694791d69778a4..c88e638822beb9a0d9f267ea0f963a89b43a4175 100644 GIT binary patch delta 800 zcmZqT+r-Bk;LXe;!ob17!Eh<fZX&N0Gl=qP0#O^!M=*it$y&_%^}(^hmmNg*axdJt zP(fa4J`?N3Eul?azXFa+ww;Pt7Unj??g8`UZQghNW|d6xJ^oMIUaq93pyr#q<vd@< z#w|7}o4?Pgez$k`_jm8@?dyatn%SCbIQExR<y_#f^-Q{X?d3|p^AeJcTb8bnExkSG zVua=kwn^J{QlCkx#&Lw7nBG$#c4pG)rJ{49e8Y2AuPvAzwsFt@Q*WPqHx_lfwJzMf zWwz?WPenIY75zW4&dQ<9*Y*5<?pV#JJxWZB6~{|$r(Q2+cDuQHW3FaxAg?O_n%Lv_ zTPJ@xJnKu%6q8FE=L#e)_wy48a+|<+pY!#h+euU2#j7>R{J3{KFD`UbVeK~an7aB8 zuRNAm&WlYqNuD;V?D#gB+qn_#A4;Tuo-zD1d+FhOv9SzWw<VVcCg0{`zOsV#Qns;F zZb2l+-xoVB){0c!XcX^|n<jFQaSDg<$BrpHJJwYA-3UrNV;j1IZ^e_94YMlOFgy)@ zARG9Y`P7;(+QJJiT8OiG&8(EauBH0nbQF)vi~4WtR22;s?`cZqrLE)XjXQGY&Ghb` zqU*kARYOCrE)@S|x=;Pe6`z=lH_KM_UHtX6xBJl&4NtaZxe2#Kd@qG`mFzm0ajm!L zhE{v2qWrysk-7P+ed8uiIo9m?Kyjhl(j$43Or~<4&{$I%A@#4yZ2Pa?8_!Rewq9MJ zxaP9JeWpoE>J4vrZQv|#`(H8b@1lh&CO6-k{E0XBI~?(R!Ho7aMl;9u)5pvOFGv_) zF-({veEB(x^Rk&1h0;fKoW6#h;Z=IZF37z_LS4*Jhga#{g`znTY#W_c7bc0i%)0jI zh*U@EE@^eMh)M4*{<TPSn)tGs?@r#dqIBJuu3wHzY8BsJ-f!osqO_&K&Tc__`n=3P zq2caD@t(VHy}F)}Be>i5P5X(iqE!mfF7=E7-s~KbzB~UcVq#$EWo2Lp@MdHZVSuOa l$uC(gz$sdV%^pmrvAOeIO0)As=$X8m&5@0Zje&uI0RXYqY~ug` delta 752 zcmdnQ*Tlyg;LXe;!ob17!Ekt`?L=NHW)S7o1fn*ck6;4PleL)j>w{wbg&jrqGJ9Xw zd+IFkQzS~@?zU4|hoX5o#XJ?33MtxraN72^>2gl`thqOj{nNIWGqIDH|2OcMadg0v zDeZITR-d0!{Qi#d{<`}AjxMvmTv{k1np^ek0*9@C^34q=H@{?6cF&Ce{Ht)gtbx?( z73(fJo;FVG416Uj9+PhvRj6IBbYY&=_gPK(vvkFM^VjeC?^fdV`=_v5SftqkgTRMM zD~_#=5|I79RbXb~^#h;ZCoQbhws_d3yjQoyq;zRO510AY+O^7Y-K7im6iG}i^l&eX zJ<XxpTk^-C?ah^&Gf##nUgF&Lm~HwFpLgHP6pJKI^532GGUe~PEcV7aeQAx9*7{5N z2D1vaefK}EUZ}6PM|qBj_|iX`uXayed~eM<)wN|W$}cA0?ia1vGG$t>+hXy?d!37) z>^f;vR<+Z4WrhCqXRic&PN-N+xukVL-KZzp?buz@-rF9bO9Z#v37+h6bkX%>ufuwk zeJ^+al;*otZBVd(*YOn<(_8;<?AcbV@_2>ZoBE>UhflU@=FiA9h}vD<)#=xE>B)g# zjj6^Z^OqT=T())FthDmsY^i%&t16~U-@A9MY4fgSGI9A_>!oa^)XIcYW_q3IQHpX- zd6+NWb#wg@J5_h%2wAB^R=l5>Q!bgb-4HM<nDfv+F2O!igV*n&H1Ge%y_XHHSsFY$ z80p~iAn`{14>i$V!{af`2Sp8PSq(yFy=0eTn$db?ZO=}}1Ai0}8pVD$x-xh-H@I)P z!>_{}u`tJe0_%juSL+f)58PTCn;6!g`S;R<r762yuBC6X`!_dB>tx=+sp?<8d`jV~ ze|*v7BX^{EZ#D1iQ#W?r;19H0nd!piQqK_J&CYRmadJQrlPCkj3l;{30B=Sn5e9gA ooh->_0ZySIZ1!M!8k;-c;gz<Y5KSOGlV7trvfW~3U|?VX074^GFaQ7m diff --git a/PlayWallNativeWin/j4n/build.cmd b/PlayWallNativeWin/j4n/build.cmd index 4c2f0e84..5f40ca80 100644 --- a/PlayWallNativeWin/j4n/build.cmd +++ b/PlayWallNativeWin/j4n/build.cmd @@ -4,7 +4,7 @@ if not exist target\classes mkdir target\classes echo compile classes -javac -nowarn -d target\classes -sourcepath jvm -cp "d:\programmieren\git-java\playwall\playwallnativewin\j4n\jni4net-0.8.8.0-bin\lib\jni4net.j-0.8.8.0.jar"; "jvm\nativeaudio\LoopStream.java" "jvm\nativeaudio\NativeAudio.java" +javac -nowarn -d target\classes -sourcepath jvm -cp "d:\programmieren\git-java\playwall\playwallnativewin\j4n\jni4net.j-0.8.8.0.jar"; "jvm\nativeaudio\LoopStream.java" "jvm\nativeaudio\NativeAudio.java" IF %ERRORLEVEL% NEQ 0 goto end @@ -14,7 +14,7 @@ IF %ERRORLEVEL% NEQ 0 goto end echo NativeAudio.j4n.dll -csc /nologo /warn:0 /t:library /out:NativeAudio.j4n.dll /recurse:clr\*.cs /reference:"D:\Programmieren\Git-Java\PlayWall\PlayWallNativeWin\j4n\NativeAudio.dll" /reference:"D:\Programmieren\Git-Java\PlayWall\PlayWallNativeWin\j4n\jni4net-0.8.8.0-bin\lib\jni4net.n-0.8.8.0.dll" +csc /nologo /warn:0 /t:library /out:NativeAudio.j4n.dll /recurse:clr\*.cs /reference:"D:\Programmieren\Git-Java\PlayWall\PlayWallNativeWin\j4n\NativeAudio.dll" /reference:"D:\Programmieren\Git-Java\PlayWall\PlayWallNativeWin\j4n\jni4net.n-0.8.8.0.dll" IF %ERRORLEVEL% NEQ 0 goto end diff --git a/PlayWallNativeWin/j4n/clr/nativeaudio/NativeAudio.generated.cs b/PlayWallNativeWin/j4n/clr/nativeaudio/NativeAudio.generated.cs index a869f90f..ea98eeed 100644 --- a/PlayWallNativeWin/j4n/clr/nativeaudio/NativeAudio.generated.cs +++ b/PlayWallNativeWin/j4n/clr/nativeaudio/NativeAudio.generated.cs @@ -49,7 +49,9 @@ namespace NativeAudio { methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "isPlaying", "isPlaying6", "()Z")); methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "setVolume", "setVolume7", "(F)V")); methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "setLoop", "setLoop8", "(Z)V")); - methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "unload", "unload9", "()V")); + methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "setDevice", "setDevice9", "(Ljava/lang/String;)V")); + methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "getDevices", "getDevices10", "()[Ljava/lang/String;")); + methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "unload", "unload11", "()V")); methods.Add(global::net.sf.jni4net.jni.JNINativeMethod.Create(@__type, "__ctorNativeAudio0", "__ctorNativeAudio0", "(Lnet/sf/jni4net/inj/IClrProxy;)V")); return methods; } @@ -152,7 +154,28 @@ namespace NativeAudio { }catch (global::System.Exception __ex){@__env.ThrowExisting(__ex);} } - private static void unload9(global::System.IntPtr @__envp, global::net.sf.jni4net.utils.JniLocalHandle @__obj) { + private static void setDevice9(global::System.IntPtr @__envp, global::net.sf.jni4net.utils.JniLocalHandle @__obj, global::net.sf.jni4net.utils.JniLocalHandle name) { + // (Ljava/lang/String;)V + // (LSystem/String;)V + global::net.sf.jni4net.jni.JNIEnv @__env = global::net.sf.jni4net.jni.JNIEnv.Wrap(@__envp); + try { + global::NativeAudio.NativeAudio @__real = global::net.sf.jni4net.utils.Convertor.StrongJp2C<global::NativeAudio.NativeAudio>(@__env, @__obj); + @__real.setDevice(global::net.sf.jni4net.utils.Convertor.StrongJ2CString(@__env, name)); + }catch (global::System.Exception __ex){@__env.ThrowExisting(__ex);} + } + + private static global::net.sf.jni4net.utils.JniHandle getDevices10(global::System.IntPtr @__envp, global::net.sf.jni4net.utils.JniLocalHandle @__class) { + // ()[Ljava/lang/String; + // ()[LSystem/String; + global::net.sf.jni4net.jni.JNIEnv @__env = global::net.sf.jni4net.jni.JNIEnv.Wrap(@__envp); + global::net.sf.jni4net.utils.JniHandle @__return = default(global::net.sf.jni4net.utils.JniHandle); + try { + @__return = global::net.sf.jni4net.utils.Convertor.ArrayStrongC2JString(@__env, global::NativeAudio.NativeAudio.getDevices()); + }catch (global::System.Exception __ex){@__env.ThrowExisting(__ex);} + return @__return; + } + + private static void unload11(global::System.IntPtr @__envp, global::net.sf.jni4net.utils.JniLocalHandle @__obj) { // ()V // ()V global::net.sf.jni4net.jni.JNIEnv @__env = global::net.sf.jni4net.jni.JNIEnv.Wrap(@__envp); diff --git a/PlayWallNativeWin/j4n/jvm/nativeaudio/NativeAudio.java b/PlayWallNativeWin/j4n/jvm/nativeaudio/NativeAudio.java index f8a496f0..ffd1aef7 100644 --- a/PlayWallNativeWin/j4n/jvm/nativeaudio/NativeAudio.java +++ b/PlayWallNativeWin/j4n/jvm/nativeaudio/NativeAudio.java @@ -55,6 +55,12 @@ public class NativeAudio extends system.Object { @net.sf.jni4net.attributes.ClrMethod("(Z)V") public native void setLoop(boolean loop); + @net.sf.jni4net.attributes.ClrMethod("(LSystem/String;)V") + public native void setDevice(java.lang.String name); + + @net.sf.jni4net.attributes.ClrMethod("()[LSystem/String;") + public native static java.lang.String[] getDevices(); + @net.sf.jni4net.attributes.ClrMethod("()V") public native void unload(); diff --git a/PlayWallNativeWin/j4n/target/classes/nativeaudio/NativeAudio.class b/PlayWallNativeWin/j4n/target/classes/nativeaudio/NativeAudio.class index e81585d278c3c21c56c80de6ccd3c9db5118c09d..95dcb66bfa41ce732ba8934419c2def276b6ae7a 100644 GIT binary patch delta 303 zcmaFC*~_hT>ff$?3=9k=4CY)6Yz&6%3`SfGtPIAS46F<$><p&t3}zdZ_A=IU7N?fD zq?TnSr!q2#YWQR&mL=-vB<7{-2bUCO=A~O}hA}b-Y4`+J7MG;vA`5b*!!#CybZSOp z>ILc4j7HPT$iP;bmy@5E!pOi@QaSlG;~z%B%`cd08GTe37#a8&7#O%27#V~a7#ReL z8B`fL8PpimF(ot@85uMgcrhh-88{iV7_=wXvnaE>FmN&GFz8NR$)Y0d!N9`c$-u;* U$H2hA#Gnthh>d}f!GM7Q0MoBL!2kdN delta 110 zcmeC>e!;19>ff$?3=9k=42E0`Yz*4$3_4s4tPHxG46F=#><s$s3<evO_A+h`V&Y(A z<lh|4T+2AwiA98sfs;XnL3OeUt1`PC0~doDgZgAYRuyR{1{MZq1||j#1_lNu22BP& O1_lN;21W)g1_l6PU=QX1 -- GitLab