{"_id":"@terron/djs-music","_rev":"32-9b33666c18ea399154bdfabedbdb23c6","name":"@terron/djs-music","dist-tags":{"latest":"0.5.10-beta"},"versions":{"0.0.7-beta":{"name":"@terron/djs-music","version":"0.0.7-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.0.7-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"c48d15ed25a120f17c8b334240bddb21911536f5","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.0.7-beta.tgz","fileCount":7,"integrity":"sha512-gqPd6yza2eFcAfNsaTTHlCAZWPs0JyRSXSMPZR6+7kUrTAx55QF8iAAVs6PfWAU4nyr2DU08Rr4sZADV+R+A4Q==","signatures":[{"sig":"MEUCIGkQipeXmvez/7naLQ7tYnXc6sdZOoVT/OjgL03CnlwdAiEA8F59waysuIFgvCCqJ8zlxKN/BOnQJ2jVTrKvR9WS3w8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25701},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"10.8.1","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"22.3.0","dependencies":{"yt-search":"^2.11.0","ytdl-core":"^4.11.5","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.0.7-beta_1720083969390_0.44477608924893186","host":"s3://npm-registry-packages"}},"0.1.0-beta":{"name":"@terron/djs-music","version":"0.1.0-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.1.0-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"e0581ba70d104cd0469a43cda726e41a1b3dc402","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.1.0-beta.tgz","fileCount":6,"integrity":"sha512-+GPTu8IYB0Zuzbvo+Yp4+L5dKNHAzXH6Bk93/7TGj37wvGvtQfQxAk4UdC2okCGftSx8+xeAqefJdOQNf4KYqQ==","signatures":[{"sig":"MEUCIH65YShKDZ9gvqM6BGIKiXleKVTukjYVy4eHnEkpkSq+AiEAhgU9XVPMAWKIcLL4M6vJHmVIyJUMI7O0oSTuLxLQVnI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30646},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","ytdl-core":"^4.11.5","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.1.0-beta_1740504835387_0.5127446786924794","host":"s3://npm-registry-packages-npm-production"}},"0.1.1-beta":{"name":"@terron/djs-music","version":"0.1.1-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.1.1-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"dbc90528080020a91376f9f38495204fd9a9a91c","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.1.1-beta.tgz","fileCount":6,"integrity":"sha512-5W3pWlKey8tiS03u+Hvv5/YEI7/HuO/emDV9Ljd6rEG7Fy9/xh1Bs8bL+xXNiDPiMfeEuEx7TJwKHPGPtDN58Q==","signatures":[{"sig":"MEUCIEGjtq+7KGLeJtGvwYn7fag6OkiqmWVBDDnatWBPZ7fgAiEAviLZoZV3x09MvHwl9zadDcSMTNMzt+6x9RcWbuXrzWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30663},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","@distube/ytdl-core":"^4.16.4","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.1.1-beta_1740505514507_0.11805184783532541","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-beta":{"name":"@terron/djs-music","version":"0.1.2-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.1.2-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"842bd0128f0e467ffb8613c6351227819e2dc17f","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.1.2-beta.tgz","fileCount":6,"integrity":"sha512-mRYfWPDFHipC+eO4jn81ToF1QRIvPJYNa0DkkxpcE4Zz5yW/MYVr8EdguP5lhXvNvzPutzIM1JXqfymUp4pUOQ==","signatures":[{"sig":"MEYCIQCoCyichtilZqHRapwMU5NuA/qkhmA24jcRbEkqaZRsgAIhAOXtPkgZG0c7kOP/CHmUq/NWN6HfyPqQxiohHgtzR/W9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30675},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","@distube/ytdl-core":"^4.16.4","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.1.2-beta_1740505966253_0.6697737076246082","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-beta":{"name":"@terron/djs-music","version":"0.1.3-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.1.3-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"2c1cc79582d0521bc03882a18f4ed1edac87d24e","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.1.3-beta.tgz","fileCount":6,"integrity":"sha512-lsQWDNaYZVapCDWCLNuy01vfCTiqChSTHZ5eGzyoqXXEkVJz0+ooDAD1DxmGuLY7YNGOrG3DmjP2Mco1nZb8EA==","signatures":[{"sig":"MEYCIQCpGTE2KgwR4ZB9uohoNoZxeL3jYj4t32zPy/HEOGLFtAIhAPLJtq7d3DVo8DTlb0IiZPNRpGAz/4u5+0PwQyM//f07","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30737},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","@distube/ytdl-core":"^4.16.4","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.1.3-beta_1740507951642_0.31168987346981836","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-beta":{"name":"@terron/djs-music","version":"0.4.1-beta","keywords":["terron","ytdl","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.4.1-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"f6c386581c3152b157d5984a87f661b3d79369ef","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.4.1-beta.tgz","fileCount":6,"integrity":"sha512-y0bmIhhM9uSXIqYHFJ3lrAK6+swsxfO6ffENQS0ODXf88McSERUma9MTqWtH7TLdnhjoTXM0gSrjIFruW1ziaQ==","signatures":[{"sig":"MEQCIBvaIn0YGmHr0ffxaeKYXytbO/VV5Poye9frDi0zOx8FAiA1makJEh5y9IWawTBYBNIBpqVhbEUeWzfMRaZkSHgI9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35924},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with ytdl supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","@distube/ytdl-core":"^4.16.4","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.4.1-beta_1742311057066_0.715327684269218","host":"s3://npm-registry-packages-npm-production"}},"0.5.1-beta":{"name":"@terron/djs-music","version":"0.5.1-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.1-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"5b9ca809d908aa98365a6eea412315d9f62b4965","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.1-beta.tgz","fileCount":7,"integrity":"sha512-0VAPigkwst23xTsRIBgGWfVasDSg9y/MgY9i0ytHMq6jeIZAkdp+84XZCVJTgg7beFKd3tbrCSjVsEMHMHinXA==","signatures":[{"sig":"MEQCIF+fPiMnzBWEhR8v6ysMultjdnfF6rNtfy1TJVl6o2f5AiBaYRYecnj4pGtI3k5nNRwsAAh7Lwib6Kj6xe1xEQMqGA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22343534},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.1-beta_1743073686652_0.15004448924919855","host":"s3://npm-registry-packages-npm-production"}},"0.5.2-beta":{"name":"@terron/djs-music","version":"0.5.2-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.2-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"08d3e4395c15cd7950bfdc84efa198a68dbe4fbc","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.2-beta.tgz","fileCount":8,"integrity":"sha512-ymx6kslDBmTwDIRMQhP+6+XTEyzX40Rh9YsGJ6L0JNSNBBHAB2VaFTwHP+5FwzaCk9onEaQ5D0Ui7Q0k7DK7IQ==","signatures":[{"sig":"MEUCIQCrN8SbL7ma7xm+TUAEyviFnQdHEU3sbdlHqdtOBOJGygIgcQUrk5s2vyWmgAvhW4MboTHSRPRIX5+5/jWsQj2Tpas=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349664},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.2-beta_1743074415067_0.5178421456885816","host":"s3://npm-registry-packages-npm-production"}},"0.5.3-beta":{"name":"@terron/djs-music","version":"0.5.3-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.3-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"545c7402ab5cc05d0668515489c98d70032061f8","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.3-beta.tgz","fileCount":8,"integrity":"sha512-GLlCT2QAHcDYjR27Hdz3qRvM/8j1GYqigRqQXtW1fFNUUbYd3H4j9hvl1Ge1H0CC31ssoFENEuvCIU20h/ja+w==","signatures":[{"sig":"MEUCIG2LFAwGHGMi5o2af+k7VcJXrDV8x/2FJIWkJgoT9yjnAiEA+z2m5HqcQITx2EGWZAf+AqqnXv9SIl3CZEj3Ha+niVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349668},"main":"index.js","_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.3-beta_1743074962806_0.4480430751105997","host":"s3://npm-registry-packages-npm-production"}},"0.5.4-beta-test":{"name":"@terron/djs-music","version":"0.5.4-beta-test","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.4-beta-test","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"7e5cbe5267ca511010094b0df816fa864b4f822a","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.4-beta-test.tgz","fileCount":8,"integrity":"sha512-1M0Q9nI6+Ormu5vMLIPTqOwxEqLTicl9wIF7K3qO9KzFe3JH+5+yDnmuBpycrWVxm4xv0nzFcEThO2ZzHymSgQ==","signatures":[{"sig":"MEUCIQDY32KrZRlEYEw79QyCYEb1SG4RO0SwUYetEOCH1KGPzQIgOIqh4760nmftzPRggga/crte64KDLkVVHzNsm5Sr08w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349743},"main":"index.js","scripts":{"postinstall":"pwd && chmod +x ./src/yt-dlp/linux"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.4-beta-test_1743075656906_0.33601640630139507","host":"s3://npm-registry-packages-npm-production"}},"0.5.5-beta":{"name":"@terron/djs-music","version":"0.5.5-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.5-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"0ded39cbfc11da2a0d701e303a5417741b1c5d9c","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.5-beta.tgz","fileCount":9,"integrity":"sha512-VauFqv79tjlT+VP1opikcca0N44hKQz5s4yr04K6NUG1Q2l7fbDxKV5zYXH/rDg8ooaDv0VNHGjnKef3y7yV8g==","signatures":[{"sig":"MEYCIQCxGnS833N6jJ3ASzYDtSEjyZ8OYEkUn+dxCKdoeW9CowIhAKROstNuEmTlYjZ1OKzCvC/46njGhgoxOW9DOza/DrmT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349891},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.5-beta_1743076057678_0.40196807552182756","host":"s3://npm-registry-packages-npm-production"}},"0.5.5-beta-test":{"name":"@terron/djs-music","version":"0.5.5-beta-test","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.5-beta-test","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"109132ea4d9c11de2adea6399178ab4a83cf3396","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.5-beta-test.tgz","fileCount":9,"integrity":"sha512-2pZaORsC2/UtdkDuim0EueMa6HXCXucM2c4+VdI33G0w0u7ICCguG0RdbJWWi9I4ex4J1IAnHNJ45ytDrEpfUQ==","signatures":[{"sig":"MEQCIGUd6m8ZHmbFwh9MLKYjw2zaEcDE2tnv7tw918WI9GyUAiBcb377RZmHmp5Pq8AY3NBccFvUbDSr07QwcZYIIou3PQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349942},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.5-beta-test_1743076230567_0.13989471472307025","host":"s3://npm-registry-packages-npm-production"}},"0.5.51-beta-test":{"name":"@terron/djs-music","version":"0.5.51-beta-test","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.51-beta-test","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"f6c5de1471a0fa08d0bd57ffd078659e65a60ff3","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.51-beta-test.tgz","fileCount":9,"integrity":"sha512-rsl7QcmlbH+OupuGUvXcXY4SHcDUzoeOsj92sL+SVb/+Kwi7d0aZcjYylb+yXyBaISWHsSh+1A6SDlm6+wS43w==","signatures":[{"sig":"MEYCIQDNkHc/tSUpJDkpt9tvyITPSdlmU3EvBkn3KUc0t89GCAIhAMIn0Ak7Qdbop42tT5DDZisHmYZuEUuin/YgTsELgpYU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349970},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.51-beta-test_1743076433852_0.6329837434628975","host":"s3://npm-registry-packages-npm-production"}},"0.5.6-beta":{"name":"@terron/djs-music","version":"0.5.6-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.6-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"e587469a15fa0f2101a702bf6a9ba0f3ddaafa45","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.6-beta.tgz","fileCount":9,"integrity":"sha512-F/po/J682dE8T6F9yzwClDNhgIZzAe/Ud4diMttNJD+Tu1d2LhbcC5fdSznCSz6vUPMU2OmN8XW5BVfNsVdcSw==","signatures":[{"sig":"MEUCIFv+YGvI2CAh7Vy2NBgO88s5zTq4PxQYdkfMfnk6l03OAiEA8+G3zVif7B22f3g6s1Jin9I7mymNCLDUrl0xwjYXpOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349909},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.6-beta_1743076922622_0.006790578903274946","host":"s3://npm-registry-packages-npm-production"}},"0.5.7-beta":{"name":"@terron/djs-music","version":"0.5.7-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.7-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"a0ab51098b2d2da8e1ed550d6f88fef7ef7e18df","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.7-beta.tgz","fileCount":9,"integrity":"sha512-WFa/VzmUSuQgY6yUu8RdYs60jFfc/FLeLTVh2RoIqw4eakDX3ghEf/kHQN0FnUwBOGYLKvAy+81s7WZai8gKAg==","signatures":[{"sig":"MEYCIQD5glxlu6HMtosQrTAz7mo3zEJAxBUQhoK9zyt9TE/CZQIhAMxl3v1SWrW4TE/G3ypE4ysRfERfU4wOZBb3bD1L8cHI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22350132},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.7-beta_1743077663907_0.5832303978913642","host":"s3://npm-registry-packages-npm-production"}},"0.5.8-beta":{"name":"@terron/djs-music","version":"0.5.8-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.8-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"ad84f2b85058ab476c8b0869a47ac311fdf64974","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.8-beta.tgz","fileCount":9,"integrity":"sha512-zfzBOXEpp7duAG4RhwHjKqLhDeY/FbFm/Dm/cWFuNosXqqOVCGUS0kSwUqRFltaprSu1AWTDO2r86MDsnIw49Q==","signatures":[{"sig":"MEUCIQC5mPZRMfPvtSNIAcuVFesC7oNIuUX7JPzMUdCvH05a5wIgKjZwQK3x3TjEPYM879BUdTejO7FbdFMmSCv85s1wNyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22349100},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.8-beta_1743080658365_0.15989666246640488","host":"s3://npm-registry-packages-npm-production"}},"0.5.9-beta":{"name":"@terron/djs-music","version":"0.5.9-beta","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","_id":"@terron/djs-music@0.5.9-beta","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"dist":{"shasum":"86f7275df0206d406493993a0aeb652e2755ee1b","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.9-beta.tgz","fileCount":9,"integrity":"sha512-VOGNvTy8cWTwmUDQe6z4FEbfZKby2APVa5/0nnHKWjV4sxZWfZa5K38yoSIfrHIKXfyqSZgxh5gkzUnOZOjKPg==","signatures":[{"sig":"MEUCIQCKkU66q57zRKTkKy5kW0SZ52yryeMkYACsRNIkq+d3PgIgZkxAGyZ8PFDdZA8KPYNm9u54yYnPrnAx6QRboIJBmSI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22348864},"main":"index.js","scripts":{"postinstall":"node ./postinstall.js"},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"_npmVersion":"9.6.7","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","directories":{},"_nodeVersion":"18.17.0","dependencies":{"yt-search":"^2.11.0","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","ffmpeg-static":"^5.2.0","@discordjs/voice":"^0.17.0","libsodium-wrappers":"^0.7.13"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/djs-music_0.5.9-beta_1743446492151_0.7539056835431186","host":"s3://npm-registry-packages-npm-production"}},"0.5.10-beta":{"dependencies":{"@discordjs/voice":"^0.17.0","ffmpeg-static":"^5.2.0","libsodium-wrappers":"^0.7.13","opusscript":"^0.0.8","prism-media":"^1.3.5","yt-dlp-wrap":"^2.3.12","yt-search":"^2.11.0"},"name":"@terron/djs-music","version":"0.5.10-beta","description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","main":"index.js","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"author":{"name":"terron"},"license":"ISC","scripts":{"postinstall":"node ./postinstall.js"},"_id":"@terron/djs-music@0.5.10-beta","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-B1xXOF+BM2RwZEuHAEQwJxjZAZ1W9fW5Zf94A9ihm7VC+2sCC0efX7ZOb4PVBIHF9unVIpcAZAEeu7YBt58woQ==","shasum":"5e8ee186b1196b5442791146b56ff3cb7b1c4b18","tarball":"https://registry.npmjs.org/@terron/djs-music/-/djs-music-0.5.10-beta.tgz","fileCount":9,"unpackedSize":22348850,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCDYUCoiikaVfVZK6JAO0tOOQGu3jrX4d+qhb8yCOrGHgIhAJ5R58bJ0q2LdCUzCaUjAWPafnLFBCb8rbqfKHrz360D"}]},"_npmUser":{"name":"terron","email":"terroncodm@gmail.com"},"directories":{},"maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/djs-music_0.5.10-beta_1743447289031_0.2194442996611663"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-03T21:10:43.012Z","modified":"2025-03-31T18:54:49.707Z","0.0.1-beta":"2024-07-03T21:10:43.274Z","0.0.2-beta":"2024-07-03T21:16:14.513Z","0.0.3-beta":"2024-07-04T07:10:06.625Z","0.0.4-beta":"2024-07-04T07:11:31.036Z","0.0.5-beta":"2024-07-04T07:14:53.948Z","0.0.6-beta":"2024-07-04T08:58:38.103Z","0.0.7-beta":"2024-07-04T09:06:09.568Z","0.1.0-beta":"2025-02-25T17:33:55.595Z","0.1.1-beta":"2025-02-25T17:45:14.738Z","0.1.2-beta":"2025-02-25T17:52:46.448Z","0.1.3-beta":"2025-02-25T18:25:51.831Z","0.4.0-beta":"2025-03-18T14:43:53.675Z","0.4.1-beta":"2025-03-18T15:17:37.272Z","0.5.1-beta":"2025-03-27T11:08:07.245Z","0.5.2-beta":"2025-03-27T11:20:15.744Z","0.5.3-beta":"2025-03-27T11:29:23.296Z","0.5.4-beta-test":"2025-03-27T11:40:57.369Z","0.5.5-beta":"2025-03-27T11:47:38.590Z","0.5.5-beta-test":"2025-03-27T11:50:31.072Z","0.5.51-beta-test":"2025-03-27T11:53:54.375Z","0.5.6-beta":"2025-03-27T12:02:03.544Z","0.5.7-beta":"2025-03-27T12:14:24.432Z","0.5.8-beta":"2025-03-27T13:04:18.834Z","0.5.9-beta":"2025-03-31T18:41:32.582Z","0.5.10-beta":"2025-03-31T18:54:49.487Z"},"author":{"name":"terron"},"license":"ISC","keywords":["terron","yt-dlp","discord","music","player","voice","youtube","ffmpeg"],"description":"New simple voice player with yt-dlp supporting, filters & events for discord.js v14.","maintainers":[{"name":"terron","email":"terroncodm@gmail.com"}],"readme":"# Music Player Documentation\r\n\r\n## Overview\r\nThis documentation outlines the functionality and features of the `Player` class, its associated constants, filters, and events. The `Player` class enables advanced audio playback features for Discord bots, such as queue management, audio effects, and looping options.\r\n\r\n---\r\n\r\n## Classes and Components\r\n\r\n### 1. **Player**\r\nThe main class responsible for managing audio playback, including queue operations, filters, and connection handling.\r\n\r\n#### **Constructor Options**\r\n- **`defaultVolume`** (number)  \r\n  Default playback volume percentage. *(Default: `100`)*\r\n  \r\n- **`leaveAfterEnd`** (boolean)  \r\n  Whether the bot leaves the voice channel after the queue ends. *(Default: `true`)*\r\n  \r\n- **`keepVoiceIfExists`** (boolean)  \r\n  Whether to retain an existing voice connection instead of creating a new one. *(Default: `true`)*\r\n  \r\n- **`client`** (Discord.Client)  \r\n  Instance of a [Discord.js](https://discord.js.org) client.\r\n\r\n- **`ytDlpOptions`** (string)\r\n  Your [yt-dlp options](https://github.com/yt-dlp/yt-dlp/blob/master/README.md)\r\n\r\n#### **Key Methods**\r\n- **`search(query, trackLimit = 10)`**  \r\n  Searches YouTube for tracks matching a query.  \r\n  - `query` (string): The search term or URL.  \r\n  - `trackLimit` (number): Maximum number of tracks to fetch. *(Default: `10`)*  \r\n\r\n- **`connect(channelResolvable, voiceJoinOptions = {})`**  \r\n  Force connect in a voice channel (ignoring `keepVoiceIfExists` option!).  \r\n  - `channelResolvable` (Object or Snowflake): Voice channel to play in.  \r\n  - `voiceJoinOptions` (object): [JoinVoiceChannelOptions](https://discord.js.org/docs/packages/voice/main/JoinVoiceChannelOptions:Interface) && [CreateVoiceConnectionOptions](https://discord.js.org/docs/packages/voice/main/CreateVoiceConnectionOptions:Interface).  \r\n\r\n- **`play(channelResolvable, query, voiceJoinOptions = {})`**  \r\n  Plays a track in a voice channel.  \r\n  - `channelResolvable` (Object or Snowflake): Voice channel to play in.  \r\n  - `query` (string): Track URL or search query. \r\n  - `voiceJoinOptions` (object): [JoinVoiceChannelOptions](https://discord.js.org/docs/packages/voice/main/JoinVoiceChannelOptions:Interface) && [CreateVoiceConnectionOptions](https://discord.js.org/docs/packages/voice/main/CreateVoiceConnectionOptions:Interface). \r\n\r\n- **`pause(guildResolvable)`**  \r\n  Pauses the current track.  \r\n  - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`unpause(guildResolvable)`**  \r\n  Resumes playback.  \r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`skip(guildResolvable)`**  \r\n  Skips the current track and plays the next one in the queue.\r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`stop(guildResolvable)`**  \r\n  Stops playback and clears the queue.\r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`setVolume(guildResolvable, volume)`**  \r\n  Sets playback volume.\r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.  \r\n    - `volume` (number): Percentage.  \r\n\r\n- **`shuffleQueue(guildResolvable)`**  \r\n  Randomizes the playback order in the queue.\r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`nowPlaying(guildResolvable)`**  \r\n  Fetches information about the currently playing track.  \r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`addFilter(guildResolvable, ffmpegFilter)`**  \r\n  Adds an FFmpeg audio filter.  \r\n    - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n    - `ffmpegFilter` FFmpeg filter from `Filters` class or you can using `registerAudioFilter` method from `Filters` class enum for your own filters.\r\n\r\n- **`setFilter(guildResolvable, ffmpegFilter)`**  \r\n  Replaces existing filters with a new filter.\r\n      - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n     - `ffmpegFilter` FFmpeg filter from `Filters` class or you can using `registerAudioFilter` method from `Filters` class enum for your own filters.\r\n     \r\n- **`resetFilters(guildResolvable)`**  \r\n  Removes all applied filters.  \r\n      - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`loopQueue(guildResolvable, status)`**  \r\n  Sets the loop status.\r\n        - `guildResolvable` (Object or Snowflake): The guild ID or object.  \r\n  - `status` (number):  \r\n    `0` = Nothing, `1` = Loop Track, `2` = Loop Queue. (Also you can using `LoopStatuses` class enum).  \r\n\r\n- **`restartCurrentTrack(guildResolvable)`**  \r\n  Restarts the currently playing track.\r\n        - `guildResolvable` (Object or Snowflake): The guild ID or object.\r\n\r\n- **`setChannelStatus(channelResolvable, status)`**  \r\n  Updates the voice status of a specified channel.  \r\n        - `channelResolvable` (Object or Snowflake): The channel ID or object.  \r\n        - `status` (string): The voice status to set (e.g., `\"muted\"`, `\"unmuted\"`). \r\n\r\n---\r\n\r\n### 2. **Filters**\r\nProvides static methods for generating various FFmpeg-based audio filters.\r\n\r\n#### **Available Filters**\r\n- **`nightcore({ strength: 1.25 })`**  \r\n  Produces a \"nightcore\" effect by altering pitch and tempo.  \r\n\r\n- **`bassboost({ strength: 10 })`**  \r\n  Enhances bass frequencies.  \r\n\r\n- **`reverb({ strength: 50 })`**  \r\n  Adds a reverb effect.  \r\n\r\n- **`crusher({ bits: 8 })`**  \r\n  Reduces the audio quality for a distorted effect.  \r\n\r\n- **`speed({ strength: 1 })`**  \r\n  Alters the playback speed.\r\n\r\n#### **Registering Filters**\r\nFor creating your own filters on this project, you can use `registerAudioFilter` method from `Filters` class enum. Usage:\r\n```js\r\nconst { Filters } = require('@terron/djs-music');\r\n\r\nFilters.registerAudioFilter(\r\n    'dynamicBassboost', // name\r\n    'bass=g={strength},dynaudnorm=f={frequency}:g={gain}', // ffmpeg syntax\r\n    { strength: 10, frequency: 150, gain: 15 } // default args\r\n);\r\n\r\nFilters.dynamicBassboost();\r\n```\r\n---\r\n\r\n### 3. **PlayerEvents**\r\nEvents emitted by the `Player` class to track playback, queue changes, and other interactions.\r\n\r\n#### **Available Events**\r\n- **`VoiceJoin`**: Emitted when the bot joins a voice channel.  \r\n- **`VoiceLeft`**: Emitted when the bot leaves a voice channel.  \r\n- **`VoiceUpdate`**: Emitted when the bot's voice state is updated.  \r\n- **`TrackAdd`**: Triggered when a track is added to the queue.  \r\n- **`TrackStart`**: Triggered when a track starts playing.  \r\n- **`QueueEnd`**: Triggered when the queue ends.  \r\n- **`UpdateLoopStatus`**: Emitted when the loop status is changed.  \r\n- **`Backward`**: Emitted when playback moves backward.\r\n\r\n---\r\n\r\n## Examples\r\n\r\n```javascript\r\nconst { Client, GatewayIntentBits } = require('discord.js');\r\nconst { Player, PlayerEvents, Filters } = require('@terron/djs-music');\r\nconst client = new Client({\r\n    intents: ['Guilds', 'GuildMessages', 'MessageContent', 'GuildVoiceStates']\r\n});\r\n\r\nclient.player = new Player({\r\n    client,\r\n    defaultVolume: 75,\r\n    leaveAfterEnd: false\r\n});\r\n\r\nclient.on('ready', () => console.log('Client is ready!'));\r\n\r\n// commands\r\nclient.on('messageCreate', async msg => {\r\n    if (!msg.content || !msg.guild) return;\r\n    const args = msg.content.split(' ');\r\n    const cmd = args.shift();\r\n\r\n    if (cmd == '!play') {\r\n        await client.player.play(msg.member.voice?.channel, args.join(' '), {\r\n          selfDeaf: false\r\n        });\r\n    }\r\n\r\n    if (cmd == '!stop') {\r\n        client.player.stop(msg.guildId);\r\n    }\r\n});\r\n\r\n// player events\r\nclient.player.on(PlayerEvents.VoiceJoin, channel => console.log(`Client join in ${channel.name}!`));\r\nclient.player.on(PlayerEvents.VoiceLeft, channel => console.log(`Client left from ${channel.name}!`));\r\nclient.player.on(PlayerEvents.TrackStart, track => {\r\n    console.log(`Started track ${track.title} by ${track.author.name}!`)\r\n});\r\n```","readmeFilename":"README.md"}