67 lines
2.3 KiB
Markdown
67 lines
2.3 KiB
Markdown
# Play-dl
|
|
|
|
A **light-weight** YouTube, SoundCloud, Spotify and Deezer streaming and searching library.
|
|
|
|
- Search by video, playlist/album, channel/artist
|
|
- Stream audio from YouTube and SoundCloud
|
|
|
|
# Why play-dl ?
|
|
|
|
[ytdl-core](https://github.com/fent/node-ytdl-core) has some issues with miniget and also stream abort issues. On the other hand, [youtube-dl](https://github.com/ytdl-org/youtube-dl) is a perfect alternative but it takes time to launch. Hence, play-dl is created to avoid these issues along with providing comparatively faster performance than others.
|
|
|
|
[](https://discord.gg/8H3xWcv3D7)
|
|
[](https://www.npmjs.com/package/play-dl)
|
|
|
|
## Support
|
|
|
|
You can contact us for support on our [chat server](https://discord.gg/8H3xWcv3D7).
|
|
|
|
### Installation
|
|
|
|
**Node.js 16.0.0 or newer is required.**
|
|
|
|
```bash
|
|
npm install play-dl@latest
|
|
pnpm add play-dl@latest
|
|
yarn add play-dl@latest
|
|
```
|
|
|
|
### Importing
|
|
|
|
**TypeScript:**
|
|
```ts
|
|
import play from 'play-dl'; // Everything
|
|
|
|
import { video_basic_info, stream } from 'play-dl'; // Individual functions
|
|
```
|
|
|
|
**CommonJS modules:**
|
|
```js
|
|
const play = require('play-dl'); // Everything
|
|
|
|
// Individual functions by using destructuring
|
|
const { video_basic_info, stream } = require('play-dl');
|
|
```
|
|
|
|
**ES6 modules:**
|
|
```ts
|
|
import play from 'play-dl'; // Everything
|
|
|
|
import { video_basic_info, stream } from 'play-dl'; // Individual functions
|
|
```
|
|
|
|
## **Compatibility issues** - discord-player
|
|
|
|
Because discord-player doesn't work with raw opus packets you need to enable the compatibility mode in `play-dl`, if you want to use both frameworks together.
|
|
|
|
- To fix the playback of YouTube videos with `discord-player`, you can disable some of play-dl's optimisations and fixes by setting the `discordPlayerCompatibility` option for `stream` and `stream_from_info` to true
|
|
|
|
- The `discordPlayerCompatiblity` option might break the playback of long YouTube videos.
|
|
|
|
- Even with the `discordPlayerCompatibility` option set you will not be able to use the seek option for `stream` and `stream_from_info`.
|
|
|
|
|
|
### [Documentation](https://play-dl.github.io/modules.html)
|
|
### [Examples](./examples)
|
|
### [Instructions](./instructions)
|