Expand description
§rust-yt-downloader
A professional CLI tool for downloading YouTube videos and audio.
This library provides a complete solution for downloading YouTube content with features including:
- High-quality video downloads with quality selection
- Audio extraction in multiple formats (MP3, FLAC, M4A, WAV, Opus)
- Playlist downloads with parallel processing
- FFmpeg integration for format conversion
- Progress tracking and user feedback
- Comprehensive configuration management
§Examples
use rust_yt_downloader::YtDlpClient;
let client = YtDlpClient::new();
let info = client.get_video_info("https://www.youtube.com/watch?v=dQw4w9WgXcQ")?;
println!("Title: {}", info.title);
println!("Duration: {} seconds", info.duration);§Modules
cli- Command-line interface and argument parsingconfig- Configuration file managementdownloader- Core download functionalityerror- Error types and handlingmedia- FFmpeg integration for media processingprogress- Progress tracking and displayutils- Utility functions and helpersyoutube- YouTube API client and metadata extraction
Re-exports§
pub use config::Config;pub use downloader::Downloader;pub use error::AppError;pub use error::AppResult;pub use youtube::YtDlpClient;
Modules§
- cli
- Command-line interface definitions and argument parsing.
- config
- Configuration management for the YouTube downloader.
- downloader
- Download orchestration and configuration management.
- error
- Error types and result aliases for the YouTube downloader.
- media
- Media processing module for video and audio manipulation.
- progress
- Progress tracking and visual feedback using the indicatif crate.
- utils
- Utility functions for file handling, formatting, and YouTube URL parsing.
- youtube
- YouTube integration module for video and playlist operations.