1 个不稳定版本

新版本 0.2.0 2024 年 8 月 18 日

#145多媒体

Download history 124/week @ 2024-08-12

124 每月下载量
rustypipe-cli 中使用

GPL-3.0 许可证

1MB
26K SLoC

RustyPipe 下载器

Current crates.io version License CI status

下载器是 RustyPipe 的一个配套crate,它允许轻松快速地下载视频和音频文件。

特性

  • 快速下载流,绕过 YouTube 的限速
  • 使用 ffmpeg 联合视频和音频流
  • Indicatif 支持显示下载进度条(启用 indicatif 特性以使用)
  • 使用标题、专辑、艺术家、日期、描述和专辑封面标记音频文件(启用 audiotag 特性以使用)
  • 使用 smartcrop 自动裁剪专辑封面,以确保它们是正方形

使用方法

要使下载器正常工作,您需要在系统上安装 ffmpeg。如果您的 ffmpeg 二进制文件位于非标准路径,您可以使用 Downloader::ffmpeg 配置位置。

首先,您必须使用 Downloader::newDownloaderBuilder 实例化和配置下载器。

然后,您可以使用视频 ID、流过滤器和解压路径构建一个新的下载查询,并最终下载视频。

use rustypipe::param::StreamFilter;
use rustypipe_downloader::DownloaderBuilder;

let dl = DownloaderBuilder::new()
    .audio_tag()
    .crop_cover()
    .build();

let filter_audio = StreamFilter::new().no_video();
dl.id("eRsGyueVLvQ").stream_filter(filter_audio).to_file("audio.opus").download().await;

let filter_video = StreamFilter::new().video_max_res(720);
dl.id("eRsGyueVLvQ").stream_filter(filter_video).to_file("video.mp4").download().await;

依赖项

~15–33MB
~616K SLoC