mirror of
https://github.com/fumiama/RVC-Models-Downloader.git
synced 2026-01-22 07:43:47 +09:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b6ca35a6d | ||
|
|
e6b2709814 | ||
|
|
0bcc668b80 | ||
|
|
97c40d407e |
26
README.md
26
README.md
@@ -1,30 +1,43 @@
|
||||
# RVC-Models-Downloader
|
||||
English | [简体中文](README_sc.md)
|
||||
|
||||
English | [简体中文](README_sc.md) | [한국어](README_kr.md)
|
||||
|
||||
Easy tool to download a batch of files listed in yaml (ex. RVC models in Hugging Face 🤗).
|
||||
|
||||

|
||||
|
||||
## Quick Start
|
||||
|
||||
### Preparation
|
||||
|
||||
1. Download the program at [Release](https://github.com/RVC-Project/RVC-Models-Downloader/releases) page.
|
||||
2. Put this program into the root directory of RVC (or whatever position you want to download some files into).
|
||||
3. You can also add it to the `PATH` to use this tool everywhere. If you have installed this program by a package manager, it may be already in the `PATH`.
|
||||
|
||||
### Download
|
||||
|
||||
#### All Assets of RVC
|
||||
|
||||
```bash
|
||||
rvcmd assets/all
|
||||
```
|
||||
|
||||
#### Latest General Pack of RVC (Windows Only)
|
||||
|
||||
```bash
|
||||
rvcmd packs/general/latest
|
||||
```
|
||||
|
||||
#### ffmpeg Tools (Windows Only)
|
||||
|
||||
```bash
|
||||
rvcmd tools/ffmpeg
|
||||
```
|
||||
|
||||
### Customized Download
|
||||
|
||||
#### Ex.1. Download ffmpeg Tools & Latest Intel Pack
|
||||
|
||||
1. Write and save the following `cust.yaml`.
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main
|
||||
@@ -36,8 +49,11 @@ rvcmd tools/ffmpeg
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
|
||||
#### Ex.2. Download other Repositories in 🤗
|
||||
|
||||
> Use [Stable Diffusion v1-5](https://huggingface.co/runwayml/stable-diffusion-v1-5) as the example.
|
||||
|
||||
1. Write and save the following `cust.yaml`.
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main
|
||||
@@ -50,8 +66,11 @@ rvcmd tools/ffmpeg
|
||||
Copy: # files to download
|
||||
- vae/diffusion_pytorch_model.bin
|
||||
```
|
||||
|
||||
#### Ex.3. Download Releases in GitHub
|
||||
|
||||
> Use [yousa-ling-diffsinger-v1.3](https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/tag/v1.3) as the example.
|
||||
|
||||
1. Write and save the following `cust.yaml`.
|
||||
```yaml
|
||||
BaseURL: https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/download/v1.3
|
||||
@@ -64,7 +83,9 @@ rvcmd tools/ffmpeg
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
|
||||
## Full Usage
|
||||
|
||||
```bash
|
||||
Usage: rvcmd [-notrs] [-dns dns.yaml] 'target/to/download'
|
||||
-c use custom yaml instruction
|
||||
@@ -75,6 +96,8 @@ Usage: rvcmd [-notrs] [-dns dns.yaml] 'target/to/download'
|
||||
use standard TLS client
|
||||
-notui
|
||||
use plain text instead of TUI
|
||||
-ua string
|
||||
customize user agent
|
||||
-w uint
|
||||
connection waiting seconds (default 4)
|
||||
'target/to/download'
|
||||
@@ -104,6 +127,7 @@ All available targets:
|
||||
tools:
|
||||
ffmpeg
|
||||
```
|
||||
|
||||
## Demo Video
|
||||
|
||||
https://github.com/RVC-Project/RVC-Models-Downloader/assets/41315874/da2b5827-8b1a-45f8-a9c0-03a5618ad5f8
|
||||
|
||||
135
README_kr.md
Normal file
135
README_kr.md
Normal file
@@ -0,0 +1,135 @@
|
||||
# RVC-Models-Downloader
|
||||
|
||||
[English](README.md) | [简体中文](README_sc.md) | 한국어
|
||||
|
||||
yaml의 batch 파일을 쉽게 다운로드 할 수 있는 도구입니다. (Hugging Face 🤗의 RVC 모델 등).
|
||||
|
||||

|
||||
|
||||
## 빠른 시작
|
||||
|
||||
### 준비
|
||||
|
||||
1. [릴리스](https://github.com/RVC-Project/RVC-Models-Downloader/releases) 페이지에서 프로그램을 다운로드를 받아주세요.
|
||||
2. 해당 프로그램을 RVC의 루트 디렉토리(또는 파일을 다운로드하고 싶은 위치)에 넣어주세요.
|
||||
3. 이 도구를 어디에서나 사용할 수 있도록 `PATH`에 추가할 수도 있습니다. 패키지 매니저를 통해 이 프로그램을 설치했다면 이미 `PATH`에 등록되어 있을 수 있습니다.
|
||||
|
||||
### 다운로드
|
||||
|
||||
#### RVC의 모든 자산
|
||||
|
||||
```bash
|
||||
rvcmd assets/all
|
||||
```
|
||||
|
||||
#### RVC의 최신 일반 팩 (Windows 전용)
|
||||
|
||||
```bash
|
||||
rvcmd packs/general/latest
|
||||
```
|
||||
|
||||
#### ffmpeg 도구 (Windows 전용)
|
||||
|
||||
```bash
|
||||
rvcmd tools/ffmpeg
|
||||
```
|
||||
|
||||
### 사용자 정의 다운로드
|
||||
|
||||
#### 예시 1. ffmpeg 도구 & 최신 인텔 팩 다운로드
|
||||
|
||||
1. 다음 내용을 포함한 `cust.yaml`을 작성하고 저장합니다.
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main
|
||||
Targets:
|
||||
- Refer: tools/ffmpeg
|
||||
- Refer: packs/intel/latest
|
||||
```
|
||||
2. 같은 폴더에서 `rvcmd`를 실행합니다.
|
||||
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
|
||||
#### 예시 2. 🤗의 다른 저장소 다운로드
|
||||
|
||||
> [Stable Diffusion v1-5](https://huggingface.co/runwayml/stable-diffusion-v1-5)를 예시로 사용합니다.
|
||||
|
||||
1. 다음 내용을 포함한 `cust.yaml`을 작성하고 저장합니다.
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main
|
||||
Targets:
|
||||
- Folder: sd1.5 # 다운로드할 폴더
|
||||
Copy: # 다운로드할 파일
|
||||
- v1-5-pruned-emaonly.ckpt
|
||||
- v1-5-pruned-emaonly.safetensors
|
||||
- Folder: sd1.5/vae # 다운로드할 폴더
|
||||
Copy: # 다운로드할 파일
|
||||
- vae/diffusion_pytorch_model.bin
|
||||
```
|
||||
|
||||
#### 예시 3. GitHub에서 릴리스 다운로드
|
||||
|
||||
> [yousa-ling-diffsinger-v1.3](https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/tag/v1.3)를 예시로 사용합니다.
|
||||
|
||||
1. 다음 내용을 포함한 `cust.yaml`을 작성하고 저장합니다.
|
||||
```yaml
|
||||
BaseURL: https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/download/v1.3
|
||||
Targets:
|
||||
- Folder: . # 다운로드할 폴더
|
||||
Copy: # 다운로드할 파일
|
||||
- yousaV1.3.zip
|
||||
```
|
||||
2. 같은 폴더에서 `rvcmd`를 실행합니다.
|
||||
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
|
||||
## 전체 사용법
|
||||
|
||||
```bash
|
||||
Usage: rvcmd [-notrs] [-dns dns.yaml] 'target/to/download'
|
||||
-c use custom yaml instruction
|
||||
-dns string
|
||||
custom dns.yaml
|
||||
-f force download even file exists
|
||||
-notrs
|
||||
use standard TLS client
|
||||
-notui
|
||||
use plain text instead of TUI
|
||||
-ua string
|
||||
customize user agent
|
||||
-w uint
|
||||
connection waiting seconds (default 4)
|
||||
'target/to/download'
|
||||
like packs/general/latest
|
||||
All available targets:
|
||||
assets:
|
||||
all hubert rmvpe uvr5 v1 v2
|
||||
packs:
|
||||
amd:
|
||||
latest
|
||||
v2:
|
||||
20230813 20231006
|
||||
general:
|
||||
latest
|
||||
v1:
|
||||
20230331 20230416 20230428 20230508 20230513 20230516 20230717
|
||||
v2:
|
||||
20230528 20230618
|
||||
intel:
|
||||
latest
|
||||
v2:
|
||||
20230813 20231006
|
||||
nvidia:
|
||||
latest
|
||||
v2:
|
||||
20230813 20231006
|
||||
tools:
|
||||
ffmpeg
|
||||
```
|
||||
|
||||
## 데모 비디오
|
||||
|
||||
https://github.com/RVC-Project/RVC-Models-Downloader/assets/41315874/da2b5827-8b1a-45f8-a9c0-03a5618ad5f8
|
||||
41
README_sc.md
41
README_sc.md
@@ -1,30 +1,43 @@
|
||||
# RVC模型下载器
|
||||
[English](README.md) | 简体中文
|
||||
# RVC 模型下载器
|
||||
|
||||
[English](README.md) | 简体中文 | [한국어](README_kr.md)
|
||||
|
||||
一个能够批量下载`yaml`清单内文件的简单工具(例如 Hugging Face 🤗 中的 RVC 模型)。
|
||||
|
||||

|
||||
|
||||
## 快速开始
|
||||
|
||||
### 准备工作
|
||||
|
||||
1. 在[发布](https://github.com/RVC-Project/RVC-Models-Downloader/releases)页面下载程序。
|
||||
2. 将此程序放入RVC的根目录(或您想要下载文件的任何位置)。
|
||||
2. 将此程序放入 RVC 的根目录(或您想要下载文件的任何位置)。
|
||||
3. 您也可以将它添加到`PATH`中以便在任何地方使用此工具。如果您已经通过包管理器安装了此程序,那么它可能已经位于`PATH`。
|
||||
|
||||
### 下载
|
||||
#### RVC的所有资源文件
|
||||
|
||||
#### RVC 的所有资源文件
|
||||
|
||||
```bash
|
||||
rvcmd assets/all
|
||||
```
|
||||
#### RVC的最新通用整合包(仅限Windows)
|
||||
|
||||
#### RVC 的最新通用整合包(仅限 Windows)
|
||||
|
||||
```bash
|
||||
rvcmd packs/general/latest
|
||||
```
|
||||
#### ffmpeg工具(仅限Windows)
|
||||
|
||||
#### ffmpeg 工具(仅限 Windows)
|
||||
|
||||
```bash
|
||||
rvcmd tools/ffmpeg
|
||||
```
|
||||
|
||||
### 自定义下载
|
||||
#### 示例1. 下载ffmpeg工具和最新的Intel包
|
||||
|
||||
#### 示例 1. 下载 ffmpeg 工具和最新的 Intel 包
|
||||
|
||||
1. 编写并保存以下`cust.yaml`。
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main
|
||||
@@ -36,8 +49,11 @@ rvcmd tools/ffmpeg
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
#### 示例2. 下载🤗中的其他仓库
|
||||
|
||||
#### 示例 2. 下载 🤗 中的其他仓库
|
||||
|
||||
> 以 [Stable Diffusion v1-5](https://huggingface.co/runwayml/stable-diffusion-v1-5) 为例。
|
||||
|
||||
1. 编写并保存以下`cust.yaml`。
|
||||
```yaml
|
||||
BaseURL: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main
|
||||
@@ -50,8 +66,11 @@ rvcmd tools/ffmpeg
|
||||
Copy: # files to download
|
||||
- vae/diffusion_pytorch_model.bin
|
||||
```
|
||||
#### 示例3. 下载GitHub中的发布版本
|
||||
|
||||
#### 示例 3. 下载 GitHub 中的发布版本
|
||||
|
||||
> 以 [yousa-ling-diffsinger-v1.3](https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/tag/v1.3) 为例。
|
||||
|
||||
1. 编写并保存以下`cust.yaml`。
|
||||
```yaml
|
||||
BaseURL: https://github.com/yousa-ling-official-production/yousa-ling-diffsinger-v1/releases/download/v1.3
|
||||
@@ -64,7 +83,9 @@ rvcmd tools/ffmpeg
|
||||
```bash
|
||||
rvcmd -c cust
|
||||
```
|
||||
|
||||
## 完整用法
|
||||
|
||||
```bash
|
||||
Usage: rvcmd [-notrs] [-dns dns.yaml] 'target/to/download'
|
||||
-c use custom yaml instruction
|
||||
@@ -75,6 +96,8 @@ Usage: rvcmd [-notrs] [-dns dns.yaml] 'target/to/download'
|
||||
use standard TLS client
|
||||
-notui
|
||||
use plain text instead of TUI
|
||||
-ua string
|
||||
customize user agent
|
||||
-w uint
|
||||
connection waiting seconds (default 4)
|
||||
'target/to/download'
|
||||
|
||||
5
main.go
5
main.go
@@ -20,8 +20,6 @@ import (
|
||||
|
||||
//go:generate ./pckcfg.sh assets packs tools
|
||||
|
||||
const ua = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0"
|
||||
|
||||
var (
|
||||
notui = false
|
||||
sc screen
|
||||
@@ -33,6 +31,7 @@ func main() {
|
||||
cust := flag.Bool("c", false, "use custom yaml instruction")
|
||||
force := flag.Bool("f", false, "force download even file exists")
|
||||
wait := flag.Uint("w", 4, "connection waiting seconds")
|
||||
ua := flag.String("ua", defua, "customize user agent")
|
||||
flag.BoolVar(¬ui, "notui", false, "use plain text instead of TUI")
|
||||
flag.Parse()
|
||||
args := flag.Args()
|
||||
@@ -89,7 +88,7 @@ func main() {
|
||||
}
|
||||
ch := make(chan struct{})
|
||||
go func() {
|
||||
err := usercfg.download(args[0], "", time.Second*time.Duration(*wait), *cust, !*ntrs, *force)
|
||||
err := usercfg.download(args[0], "", *ua, time.Second*time.Duration(*wait), *cust, !*ntrs, *force)
|
||||
ch <- struct{}{}
|
||||
if err != nil {
|
||||
errorln(err)
|
||||
|
||||
6
net.go
6
net.go
@@ -15,7 +15,7 @@ import (
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
func (c *config) download(path, prefix string, waits time.Duration, usecust, usetrs, force bool) error {
|
||||
func (c *config) download(path, prefix, ua string, waits time.Duration, usecust, usetrs, force bool) error {
|
||||
for i, t := range c.Targets {
|
||||
if t.Refer != "" {
|
||||
refp := path[:strings.LastIndex(path, "/")+1] + t.Refer
|
||||
@@ -24,7 +24,7 @@ func (c *config) download(path, prefix string, waits time.Duration, usecust, use
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = refcfg.download(refp, prefix+strconv.Itoa(i+1)+".", waits, usecust, usetrs, force)
|
||||
err = refcfg.download(refp, prefix+strconv.Itoa(i+1)+".", ua, waits, usecust, usetrs, force)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -70,7 +70,9 @@ func (c *config) download(path, prefix string, waits time.Duration, usecust, use
|
||||
return
|
||||
}
|
||||
infof("#%s%d get: %s", prefix, i+1, req.URL)
|
||||
if len(ua) > 0 {
|
||||
req.Header.Add("user-agent", ua)
|
||||
}
|
||||
var resp *http.Response
|
||||
if usetrs {
|
||||
resp, err = http2.DefaultClient.Do(req)
|
||||
|
||||
5
ua.go
Normal file
5
ua.go
Normal file
@@ -0,0 +1,5 @@
|
||||
//go:build !windows
|
||||
|
||||
package main
|
||||
|
||||
const defua = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0"
|
||||
3
ua_windows.go
Normal file
3
ua_windows.go
Normal file
@@ -0,0 +1,3 @@
|
||||
package main
|
||||
|
||||
const defua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0"
|
||||
Reference in New Issue
Block a user