ytdlp-helper
v1.0.0
Published
ytdlp-helper is a Node.js module that provides a simple interface for downloading and retrieving information from YouTube videos using the `yt-dlp` command-line tool.
Downloads
3
Readme
ytdlp-helper
ytdlp-helper is a Node.js module that provides a simple interface for downloading and retrieving information from YouTube videos using the yt-dlp
command-line tool.
Features
- Download YouTube videos in various formats
- Retrieve video information such as title, description, and duration
- Utilizes the
yt-dlp
command-line tool for video processing - Supports caching of the latest
yt-dlp
version for faster execution
Installation
To use YtDlp in your project, you need to install it using npm:
npm install --save ytdlp-helper
Usage
import YtDlp from ytdlp-helper;
(async () => {
const ytdlp = await YtDlp.withLatest();
// Download video
const videoInfo = await ytdlp.download('https://www.youtube.com/watch?v=dQw4w9WgXcQ', {
format: 'bv*+ba/b',
path: './downloads',
onProgress: (progress) => {
console.log(`Progress: ${progress.percent}%`);
}
});
// Get video information
const info = await ytdlp.info('https://www.youtube.com/watch?v=dQw4w9WgXcQ');
console.log(info);
// Stop the YtDlp instance
await ytdlp.stop();
})();
API Reference
YtDlp
constructor(options)
Creates a new YtDlp instance.
options
: An object containing the following properties:ytdlpPath
: (Optional) Path to theyt-dlp
executable. Defaults to the latest version.ffmpegPath
: (Optional) Path to theffmpeg
executable.pythonPath
: (Optional) Path to the Python executable.verbose
: (Optional) Enable verbose logging. Defaults tofalse
.
withLatest(options)
Creates a new YtDlp instance with the latest yt-dlp
version.
options
: An object containing the following properties:ffmpegPath
: (Optional) Path to theffmpeg
executable.pythonPath
: (Optional) Path to the Python executable.maxage
: (Optional) Maximum age of the cachedyt-dlp
version in milliseconds. Defaults to 24 hours.verbose
: (Optional) Enable verbose logging. Defaults tofalse
.
download(url, options)
Downloads a YouTube video.
url
: URL of the video to download.options
: An object containing the following properties:format
: (Optional) Video format. Defaults to 'bv*+ba/b'.path
: (Optional) Output path for the downloaded video. Defaults to the current working directory.ydlOpts
: (Optional) Additional options to pass toyt-dlp
.onProgress
: (Optional) A callback function to handle progress updates.
info(url, options)
Retrieves information about a YouTube video.
url
: URL of the video to get information from.options
: An object containing the following properties:format
: (Optional) Video format. Defaults to 'bv*+ba/b'.ydlOpts
: (Optional) Additional options to pass toyt-dlp
.
stop()
Stops the YtDlp instance and cleans up resources.
License
This project is licensed under the MIT License.