From b684550fd984626cf368f95e69e917468620c61c Mon Sep 17 00:00:00 2001 From: mr-shitij <21.shitijagrawal@gmail.com> Date: Wed, 5 Oct 2022 10:00:29 +0530 Subject: [PATCH] Added Music Player --- Projects/Music-Player/LICENSE | 21 ++++++ Projects/Music-Player/README.md | 33 ++++++++++ Projects/Music-Player/images/backward.png | Bin 0 -> 2435 bytes Projects/Music-Player/images/forward.png | Bin 0 -> 2451 bytes Projects/Music-Player/images/pause.png | Bin 0 -> 2213 bytes Projects/Music-Player/images/play.png | Bin 0 -> 2193 bytes Projects/Music-Player/images/stop.png | Bin 0 -> 2288 bytes Projects/Music-Player/music_player.py | 75 ++++++++++++++++++++++ Projects/Music-Player/requirements.txt | 1 + 9 files changed, 130 insertions(+) create mode 100644 Projects/Music-Player/LICENSE create mode 100644 Projects/Music-Player/README.md create mode 100644 Projects/Music-Player/images/backward.png create mode 100644 Projects/Music-Player/images/forward.png create mode 100644 Projects/Music-Player/images/pause.png create mode 100644 Projects/Music-Player/images/play.png create mode 100644 Projects/Music-Player/images/stop.png create mode 100644 Projects/Music-Player/music_player.py create mode 100644 Projects/Music-Player/requirements.txt diff --git a/Projects/Music-Player/LICENSE b/Projects/Music-Player/LICENSE new file mode 100644 index 0000000..e7e458f --- /dev/null +++ b/Projects/Music-Player/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Shitij Agrawal + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Projects/Music-Player/README.md b/Projects/Music-Player/README.md new file mode 100644 index 0000000..55a64e9 --- /dev/null +++ b/Projects/Music-Player/README.md @@ -0,0 +1,33 @@ + +![Star Badge](https://img.shields.io/static/v1?label=%F0%9F%8C%9F&message=If%20Useful&style=style=flat&color=BC4E99) +![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103) + +# Music Player + + +## 🛠️ Description +A simple music player in python which enables you to play, next, back, pause, resume the music + +## ⚙️ Languages or Frameworks Used +This project is created using python programming language. +Modules : tkinter, vlc and glob + +## 🌟 How to run +Running the script is really simple! Just open a terminal in the folder where your script is located and run the following commands: + +```sh +pip install -r requriment.txt +``` + +```sh +python music_player.py +``` + + +## 📺 Demo +

+ + +## 🤖 Author +[mr-shitij](https://github.com/mr-shitij) + diff --git a/Projects/Music-Player/images/backward.png b/Projects/Music-Player/images/backward.png new file mode 100644 index 0000000000000000000000000000000000000000..e168039aa003449b994bf3470f159094b988b8d0 GIT binary patch literal 2435 zcmV-}34Hd6P)%Y+_`L<@f{lC1C1B6ayU&yS>Xj>3 z-oG0Hog`05DLADy$;{^VT^%ND*Qf4KJjxZpxYj>$Gbv^M?U=U!$cBk1Qf}W zQpzv8;4MG^xOM9mj4{Y$GEhpj1f2vt?hz}y1Okv!o)<#&jf{*m$w{PG;h+#A0^V9U z2m(w@Oh8JBd_E7)^CB{t3HUe>V@zlqOGIn!uBA1`m_sX8tZ2e36W+N&2ys9u6@peu zK?nig_ff4@k;~?!^OZ*CMzbIU?lNty_nmz5Fs(uU?IMBUmI!EeL{0 z)f*$RMv?4|m$zJIo;5=t{@18cjRiJKlw^?(EL+O=!gwR0!V z6^n`BwbmFM9K^P5+i>yX#YFIN3C#q9#VbfowrYJO{Y^U_&|2f{JMZAh&6}}%*DhQc z9gTnwf@ztZI&}(teSO%sZy&CYjiFwzMhh zSpV2#`2B0IVQOj$L7)-n+t&4cAHRF`RXo(!heL-B!T0@XFVyR9ofDaxWVn&CpPi#5 z01TzIK+-;IW11GJ9hFK2zc_FJn>K8~TW|e!THiVftW+xD#TQ<{#tj>A=FAz?>h;8M z3;;q1c%B!Q*)anDRwU0`X6~@%L=w5nLqq85>Vno9LqkIez60KW?>+3=z8w#&T?^Gn zMDg*@3m5Qoe?PwT=%e^=sni7C7!xK_8%ksCoD0n7^AJLeko=g-&UK;t;#QHu9j!jk z=DM@96PZi~V`F2;<#K3iYqRINQmR`_PEG>A-&##J8}La{<#L!me?Cg35~P&yJTG#P{JFh9BrrZc{yxdy zBzeFMVQG`kg=_%8^E`BQb>YU18{uBSJ*1S!2L=YtG!ba9-!FvtAfB>~F$jVnY<1X) z=UO(N=b^j18`WwxX$J<+^CqQ~+g;2N0%K!i<0OBW)cdz}OD2=CQ6K_jE@ZQ4(IWW1 zkL%a3TfpJDVf~*Ji^X@{cQ)-A7c5xtFRk@L0H3ojcej~ZYh<(8uTNwTrP(e&t|j8X0x^zdt3M7pE^1#%S9! zb!(!TWML^Ka=9EjIyyiSrBWΜ+Op_-rC$!pCjmSd zZ+Tl!D5XLowOTFwmBuCN4%_pzB>@1G%VkVXPKF`U)qDf|MJeSY#bWV;B%Cc{NS_9Uyv_Y*Gomlna z){yK4u#{vwNdcfj@|qB0h|~XWbAE7e(4UKW{|8a7Z`KHt@DBh0002ovPDHLkV1iRS BeXjrj literal 0 HcmV?d00001 diff --git a/Projects/Music-Player/images/forward.png b/Projects/Music-Player/images/forward.png new file mode 100644 index 0000000000000000000000000000000000000000..244d71ced9531a36db40cb4ecb2b89a24bd9350b GIT binary patch literal 2451 zcmV;E32gR>P)vVG?DV70i%f;Yc%N}HBB*)80?RR zSg47L0)_Cs2^2^XD5MrsNn0_L?QUvm5e?l^`r)$OPWSHa{g^ra*n6hu&d2R;yEw^Y zX7-*r=Xu`uIq!MTJ4?*dAtG8tmIL@Q$zGC6Nwxw2$!U^j0F014LUOoNDoxMFxV%Ep z3jo|faxKZPknAK0_XLo2od&R<$2SIT9|4M*lAIXg*zeBQBL?9wfK|Ajz?<*u< zA$kA!`1re@HGw50H-hI9`6REofG&E#o*#UgF_E;v9TsS%Qi11r z@tkmp7-Meh>FK#Ci@?v6Qhsugnwpw|=XuatXIji&llPZu*X(_}t`v*Kcrv?_8o;Io z0wh~We%}pWB;$oCIbr8RHqF)rD0H~A_ zk|&i?%iOqcUoI31DeLt2_v6^HV<~Vh$o~F*96fq8*SgD=EyKEX>k!rZ*zv*(ICbh& zs;^?P2(2|HCMMwfzI)cR)}K>KsV|Vc*Nr?Pf@-xIFJQ@IU|;~NSFgsQLx*tw{P|1| z?c28x{r&woc<>-frBbSo8*jW3zuCGKD^{+=ij^zzx4nCD;>3wmUnJ4e(t@d}DI_uj z5s}@3nLTVOON^o@2A_0wWDM4NaNxiJY}l{?zVD}` z61v*X@Dc!oVc3xMCgi$YNcJStTQ{l7l1LOq2%`u}Yph?t9&hg6joa6*jpt5GHj2>J z-i~|jy%&GoyBD|Kdh5k8>iyWhnuXLb45777NtWanrCvQ~u)Z-SB^~$0D2h-ELxi;& zYGH`3g$wcP&71MmGtc1q8*Z3sQ}>j$ba!_*9^JkjPe1!C`uh4Vf@_TLsl&EYN@dNt z#k#%*xU3LGQKt1>w_5Nnk-qD$!$Xfef*sF4AGeQXQeRD1ty+bhufB?XZ@=9rp`2)y zXV5y>dghob2@Y@F;#9Mpzq$ZyQf8_o5vH8CHuz&x> zR6a5$20!D0{1n@6r0lbEj%olOWksN5NA7bNh6pZPz+;bY$J0+eiE_D|Y9B=rMnC-& z4{Y6vf#;r!0mS_o#Nfj)fBxaF$W7jUc{@QCe zb0*h$c=CxS@c3hoVSIc%(-6Uh0LMQ%UY{o+f*?q>GseXG4;xAo<(wmIZEb~!oFw^q zm!0cEx8r7!!abTj&*i?evlG7WV{B{;#bOaHEiLw1(^@Z*$;n9oc&pi9a{-?fMJ|=V z<@F~bXl-r9#Kc5H8c|Pq-W?tu4s15MbG94wxg5GbOW z#`40a+wp9y*eoQ@_FhEL(b0h*2pTr_^=nN;o{I?tK`=@32@5!HU6`$G+&MH?+1P7a zTN{*8D3waKA_1pT^7_!w&`3<6KIk^ie0XR8ZL`wZO6*EyLlVVe5m#Mx6-Gx#p_GE> zc?~DYEw+73V0?W1W0DVLdB6=}d4tb~YyiOXJalz+;r#jYsMTsI@JgvyhK7dzo+40Z zzga{+NiNxT@v@~3JMetV#`8QZTC@n|aye@U2G8>*l~TWOF*gtx8yg!Z`O~c0|ICUR z!uS1nMRbA8hin!vUW`hmf^+B2S-|nNZvA@(2M0fN`%KkF7c5wCEQ+Fq09M$}Em&J% zDijKF+C5v4dG|^wbaZr}tE&qaE?htm1hK^ng#rqNg002AA|gLOefo5Rr7~yck|j$t zfIk~!zHY6XsLRAL+SW|nP04IlVWkv`#UeU7IzSSmqoc8hJ_8Vz8ZF=j*36IpdjV;Vm<0f>p(T9eK3UGOe}`lNkH zM1GJZn>i5xfbQ;YL{W4HfIk{zmShpJ&z3}1n00HfZeC+OR|h_!l-eXBe|qn|_vYm@ zt4m}dfXx7Y6h)Dr1f8`xzZ3z-1Cdf{hf-?e;NalMY%yI{3fj}t(+glDfbSY(+Ow>l z+)reDxU*+PDfJS``-g^x4$T$I73I*qy}g|zZwIgzz*mhi3o-{ue|ek`k^LgFljM$} zp`o*vi(%e20eyXa8o+e`mXquOu#{vwNdYiH^1mYT5oiA0=J4?FaAiKm{T~UMeiOgO Rr1Ss)002ovPDHLkV1mCfrhNba literal 0 HcmV?d00001 diff --git a/Projects/Music-Player/images/pause.png b/Projects/Music-Player/images/pause.png new file mode 100644 index 0000000000000000000000000000000000000000..79f1e80686a445a99daf4c9f3959a0a9f4dfc504 GIT binary patch literal 2213 zcmV;W2wL}vP) zfckCl zwR2}@XTI;8GiT16y~G|B5z!)Y3c$xn&X7Dzas&WKZj!tWV1eWflGoeq_U2y9%f|$L z0KkhR&yf5q$uW}fF92otO#oL(ULyJDR;zXE|4M-536keXo+UXVA`p?GpuKm)dP?## z$yZlaR{r^66PP4lr7ei#H^5|Lkv$RQ{3Q1Vp- zthJ@}3KHug@)H2RT3T8%dqE&3`Ad@DRZ2lAg(?EB7-L|qEx?A)%gBU65Rt!={KlO- zcUB&Uz!=HDipb|2c%OhXA7c!<-7fMxhqbnN?tuAVLrwVv+}#^{p5&Kq-@g6+qYxM) z`46Skr^~>L2(m0gnx?SULTg<-FEgL;UJ2--2Hf?oh&;ErxL8V}ihw5hhEnSDK6nQZ z05&!@V68H*ek?Fej;y!mNn&fp-$l^BnDV8%imR zjEo?PqCPX(3HXqRwYCtBBVvs4*U~9#?H`XFJ2rqh*eI zMrEM3ll-uLBoRdsthMNNyS@pbhi6knKC!T{@Q!=84++ViDW#^W7Hhp;hf@7Y+l|?5 z*Uty8wML%jp-CkGX8kb>0wj-<{GQL+NqTd06G@VkO1`QLGn=a7fTn4RD2j?T;S;ge zK0iG@{Ztu&A1bBdaFg2D*gzCT&{~&D%-zHKcKwFE@Aj1>Ns7hnFKPg<^bsIALh_rw z`yyFvOyPpv3$q!vFE~>IfH;l^NC0?#W@cvEC-4=L2f`h;)9Do8cVYsMVm4L%t+hzg zbU+I|4GDm+`2@b|$21~RNXeN_ILTg{P1%m!?RH_UMHEGSi@CSqodEzUrG(^7rPP$~ z_ub32TCG$%W%a44DNIaE003I878Vv300762A4j9nfVCF)?%l)U;$o#x!jdEjwANT# zTSFYj{*`I1pU^$;GZh9|d7dMRqJaU!;+xm(>?}^7J`H0GZoK_Ao_*#S0KkO{7jW|A zN#w@h%9Shl`q{Ik0tijjT8k{pP_NhfwA|~X0en(p>kK;(B^qN2x4D}IYm7nuaIqEb zuFdw^!?DW1J3;zUZ$RRdkem*~TR*58=2-^7_kiYkj;!aw{J18|GUUdTjy24s=6MdS z^}u=}`4Q=55Bj8UtsU63LRFVNbCYFRR>U)|J%=4oJ<*_74Gq5zVk+WS!nawp&c6s8kOI`4t^iTU8STU%w% z99|*0J}mW7)mAo9K_D=pK4QUnd027%+yV}r4aqglt&Caa0K-fvlw9sis3+~By@FWT z7-5}cagcJqy=zGTyjPV18TPx%tkbMh~pT`%gacT1oe8| z-7~HAK?1<&=;$9vzFd`n+UaCrJ!~7+uk4wKU~+O2D=RC=^SqBhk|b}=&(D9xMWdH? zdO+Vz*^Rd;tGiQRr_({0-XVDjcoFnI4Tj;hU*8L} z0e~oqFg`wx)zwvGSvCM(DRp^nZtl$i0zLNUMdX8U%XYh|OLe%3_u6ctD8j*m2hr(t z%1&U2qG(+y^fb50Y96EFeX`15x{re7Zaqmh0 zr_E;bU4P7h+~|P=2mWo0nE>!9H@JVyG{&G-s}*7QPC-`Hl~QOl8WS(AxRQ6 z8V!)d($Z3);V6m<@U>bEaU5S)NRHKo)mBJ#Uy*RJi!XI7uc1c37ZzGIAuL(t*p)xL=;2zVMWN~zbBQsu8GK15xGS2wYj;uJCBNC&kg}6PMpvHJ_g_v$!P$GNsf{f0Ba=g nipYE1`n%2i_3PKuy_olZ$fFc`alPkG00000NkvXXu0mjf?x8%g literal 0 HcmV?d00001 diff --git a/Projects/Music-Player/images/play.png b/Projects/Music-Player/images/play.png new file mode 100644 index 0000000000000000000000000000000000000000..4f8758f3f8474059ae9afcdacf8d1e6d7e86840b GIT binary patch literal 2193 zcmV;C2yXX@P)N$_R&$&iI5y*u)I>y!$UXocB{@ZM8_5a)kX#{o8^A2dw@A)3o6VK=SeK6p zdJMqRBoC1MG|5qta4!J9eg(iKlIKXCZZsOV{;vc`?j?DMDJ4cOQko zD9OJor9SBcFCu8S+lZnF#u#X=v)_H@lkW=wJ=B1`-WHK3Zr;4?reL{Wq|jxjPa zl9`bY)F8?CyN@J-Ab>FjaU8oQgbtn+5&78c?Cf>>Y!?!ehm}&>i#F@X$Ox3`R@z$3 zX3%{uaIH0xB*~jp8Ne}j&Wr%b-6X%~vbK_5Sy@53T=q)7sP!|OqGo|cQG_4}vOVDv zF~&SOIXSuCN8m?FsW2a;mY0_i1Oc?xUWwU0KOS^nzvpdSDVNLHW_C9Est#Z?o}5>^P2Lj6o0tU7NWR@D2a~l~O|ThEi&~ z>-X)$rBcZ&9pBgnx?#Lckx=rjTrNXvjm5=9gkk7jZLReOq~m?I=aZ}?NqStSueoM( z@ZdolJ$e)q6B7fU^O5nHV7uMUVna^T8of%xw;9Hlh^1^~^K)$E8bn z_POVJJl8O0lP8uWNmtgJTX&z3oXn@UZc^3Hv*f=sosCwlR`K)0hjHQJMeLuRE_}uZ z-se)2B!SktM_?rPNT+(xC4FN|PtY2qYTGACf_9Ri-EL!Y&mR2Y<(F~%`S`FmQWRSN>jmf}gM3Mxbnx4j=PM^l}KlmXwY}nwH{GhQf z3m~~sJ0E%;%uAx^JKLve+6}(lUhU)d>i6kG59ONYpkV0x&EnN0m->}H-0ucP-HyGw z;Nv*PYp=eB-~9R*{xdr}5Tp;VO(^ruhUB8=YQ?N@0^de1lALQo?IgkVYuE70mtMl_ zmoE>cS>Kps7GLaV=bF<1-tl=L-=zJ(0}oB;?%lgMdEx}loIZ_qyFK*tzRx0pAP5l0 zF_cny0{_w^uUckqv*|=XGWizAF4YeyfG#Vrq-3_$~kYbQmH^h zZjk(-%g$AyJ8?giYppYh_mk>c#-pR72*VKb^YbW|%NQ9Mv3*->y;+u)mH^<@ev1w3 z^4jgT&sPtO#6|Oo2r88d78e)csgArcGc(h$+32}p59n)YJ~Bo3`NsAX*lM+U2#`Dn zJWQuA0GKawpYFuNNO4g5G0a#*P_0(cXf(PG_MN^hBCliw8jZ#h$v;}aMRB3u!ucTc zsAgmP4I4HVNL9D&4wh(-GBO z9s(WqM?~bke8{$0rY&{Yh1c6`f*`==&709`wR|Tq1VON*l=_K_xr@O3{QLsR@B3>1 zNs=H*5`I#RI;_$^CI%&Teog?Ny@u3 zw{G340sPe%^93v2TwNyf(Y9vl6rF~O!b&NW%VkunRglEo++3#NAP6$>rBVrD7|tlA zrfaoYBagMvwQSqAZ6kn-0QTog-c}P@>x@Vo$JtvNm#Eup&C{j?0MKYOu(Y(4xk%UM zJK(P?rJktOYVY}Q_VtZBcI?;);LpaG&*!z^l2J;bR4Qd9$Xpo^Br||%nxfTeq1kLA ziXyl2oY}myY2Q>zeW?iiKmq`;bLUPC;FvMy`Mf54bxWJnxy4~i)Yh78j_-nZ33N8? zSrIwtGn+LL0D#@QcOy;Hrvd!V7_-$!#D2CUd~VjQy}Egg)m#VoqEhMw5&8XBXf-$~On%!AIqUhP__fPkZcR4H{vDRrn;tIZCJ>5)><$;rtn0EYm4!x*#C zC-wY!!UdnxK%|s9OY+5fz5eD}u{>4|JvB8oO7bZH2LOD=7&GQwr1#C^qKI4)k#i)^ z)a&&-kBVX44gq`j?$rQ30$?A>NdVhOZX_uH7D@hBMBd@*-)*kW%*;gVvF`r>QA^~$ TW%~|C00000NkvXXu0mjf-w!^k literal 0 HcmV?d00001 diff --git a/Projects/Music-Player/images/stop.png b/Projects/Music-Player/images/stop.png new file mode 100644 index 0000000000000000000000000000000000000000..a36ae8348f1b6bb9036c8985ba66246355c919f3 GIT binary patch literal 2288 zcmVW_Y&Mgfot-;#@9{(Kxjl2{-n+BO)&rM& z=HBz;dEWOu?|ILAhuEPaBA$pG0dOzLIgNhKL~tDM1CbA`;5e0$(Iq( zS{K$!NNkA6(*T}ZSy@SUfmn6TXl!8(UWduw~(-d0k9IX4kh>R-)5%~+ruU@-$ zZS777Op^SQh`9H^6MLuBL1P=5CF>Nb+-6uU@@$I|L?4 z{#7aUU=er`LBHQe9LLaF!}GlSeUbUN_fkObX~0}>iO3_DFJCSsQAWTc`KnUt(>8bm z5CA%z4z$(?f&iZ9Re~-8?rOxCT>$|or4~ix;pOG!A#;)vDV!3K0q{n`Ns^%5ZbK=B zTCE1(_Xo^m6!0z)t#vLOLnKX8do3N&TEBGo@Zll6s$k5=MC9k5=jEV1&x42{j$?GY zT|`lYAPBbYDvJmi0yc>xNe2358u<{(^;WBOZeVO@u015*@I3E;O+YDyIF8Zl^)NOz zmYY!#sI4Sl)s7^5--p&3ySx3pwhNu zHe0o`fqR~ZBuQM8iU6Fl$IJ6ctLotW=pzSusH4IEL^0`I@ka zXssWu*Xs`z5%```DsVTcPNxIk_u+Y7p~TGHt#8$?s=wJ+qA1E2v%RPRoERWLvPSZ2 zw)-NPZ%poj-3ha)+82x|0YDH0LnHt^IyX00w+VcKH>-{d{k5H0=R+Kyd2}I}|0RX_~vu?U>C2{XSk; zU&q}^f*3#ypq?anzTL)s{r;9_;}T1fWFYEw<~<@L>uz{!2US%j;y$~--^VZ7ZL|Tb zkca_nX7zOvKk9UFZx$xFV^z7-BuU_T-jKjZ-Yr@7U_km>>!D3+D^-iuc&5|AqEh&7 zt%eqfO#mIOag)T;V`I1=f~Ph&!HThp1e2yIlu|OT=uZ_I_Z+Y!_Io)gU6vB=54> z*($7(yj#C3P4Q&6iw`FWdO*IJEsEgxL4bE1!E9BZoSZ}u1Xx{NMHEFC8yhqCzUO&+ z2>|2c<1dmtR+fMobuzntAWbowrbq$&m&COS;ALZo2xewxu(q~_BuNGcL{aqG;^N}R zJpkaXEb*~Y~6J`SdzVBmtdKx!w+{n)Y_NA0M+iW&p8zPXgKPe*bxLdZ? z8cCAmsSY#oPMeMI``Ej8FS^}s(FqK`?{6rjeqduBAh5c+x<>M;qTGLyBuJ73K@b=( zFaTsH%x2%deTd^2*RNkUfb)AM{bw4D##{E7L$TM?)YQc^P4@u!m>JwYW~OP1FbwmI z@~9xo>Pjh0OiW;UdKx!x-bAa_$|W9#A;K^;x!AKJ^8G7Ut_(=3aAnTS%yltLJWc?!}=1A=4@Filf*yIr)~ZNzbGXP$GLw-)W| zN~zD6f!~q<0314W$OCXnYyBNp6GeGTtp`6h0mzA(T$73MZSXdMY|)+;k*^n-&9(>t z!0hZS(lmV>!1G$`nIay?S5Vzn5cw+rGZo_^|Dgxc%#u+8Wq!R{nemeug?KE4&a#9db~*L?s>vJj940o zl~SikKHF?IU*9g4JNmQ7+}zwG$;SX31@K9&^;F>`!(SfPMdX}_oFVygv)R0MyBO|> zfL-S2=RE-T060Rj4q!jYagqXHo#eYB@-}b%-DYuNVIkg$dH)AXHMDv&ZSd3p0000< KMNUMnLSTZ{OG*s@ literal 0 HcmV?d00001 diff --git a/Projects/Music-Player/music_player.py b/Projects/Music-Player/music_player.py new file mode 100644 index 0000000..eee923c --- /dev/null +++ b/Projects/Music-Player/music_player.py @@ -0,0 +1,75 @@ +import glob +import tkinter as tk +from tkinter import * +import vlc + + +def last(list): + return list[-1] + + +def music_name(): + global my_music, music_number + return last(my_music[music_number].split('/')) + + +def play_music(): + global music_number, my_music, player, instance + to_play = my_music[music_number] + media = instance.media_new(to_play) + player.set_media(media) + player.play() + + +def pause_music(): + player.pause() + + +def next_music(): + global music_number, my_music, music_label + if music_number < len(my_music) - 1: + music_number += 1 + music_label.config(text=str(music_name())) + + +def previous_music(): + global music_number, my_music, music_label + if music_number > 0: + music_number -= 1 + music_label.config(text=str(music_name())) + + +music_number = 0 + +window = Tk() +window.geometry('330x120') +window.resizable(False, False) +window.title('Mp3 Player') + +instance = vlc.Instance() +player = instance.media_player_new() + +my_music = glob.glob('/home/shitij_agrawal/Music/*.mp3') # path to music folder + +play_image = PhotoImage(file='images/play.png') +pause_image = PhotoImage(file='images/pause.png') +forward_image = PhotoImage(file='images/forward.png') +backward_image = PhotoImage(file='images/backward.png') +stop_image = PhotoImage(file='images/stop.png') + +music_label = tk.Label(window, text=music_name()) + +play = tk.Button(window, image=play_image, command=play_music) +pause = tk.Button(window, image=pause_image, command=pause_music) +forward = tk.Button(window, image=forward_image, command=next_music) +backward = tk.Button(window, image=backward_image, command=previous_music) +stop = tk.Button(window, image=stop_image, command=lambda: sys.exit()) + +play.place(x=130, y=50) +pause.place(x=10, y=50) +forward.place(x=190, y=50) +backward.place(x=70, y=50) +stop.place(x=250, y=50) +music_label.place(x=10, y=0) + +window.mainloop() diff --git a/Projects/Music-Player/requirements.txt b/Projects/Music-Player/requirements.txt new file mode 100644 index 0000000..0759759 --- /dev/null +++ b/Projects/Music-Player/requirements.txt @@ -0,0 +1 @@ +python-vlc==3.0.12118