开源推荐
morning
GitHub 热门项目:seek-tune
2026-05-26
1 阅读
GitHub Trending
GitHub 项目:seek-tune
仓库地址:https://github.com/cgzirim/seek-tune
星级:5582 | 作者:cgzirim
项目描述:Shazam 歌曲识别算法的实现。
===================================================
自述文件内容:
SeekTune:musical_note:
视频演示 | 制作过程 (YouTube)
## 描述?
SeekTune 是 Shazam 歌曲识别算法的实现,基于这些[资源](#resources--card_file_box) 的见解。它集成了 Spotify 和 YouTube API 来查找和下载歌曲。
## 安装:桌面计算机:
### 先决条件
- Golang:[安装Golang](https://golang.org/dl/)
- FFmpeg:[安装 FFmpeg](https://ffmpeg.org/download.html)
- NPM:[安装节点](https://nodejs.org/en/download)
- YT-DLP:[安装 YT-DLP](https://github.com/yt-dlp/yt-dlp/wiki/Installation)
### 步骤
? 克隆存储库:
````
git 克隆 https://github.com/cgzirim/seek-tune.git
CD 寻道
````
#### ? Spotify API 设置
1. 获取凭据:按照[官方入门指南](https://developer.spotify.com/documentation/web-api/tutorials/getting-started) 创建 Spotify 应用程序并获取您的 **Client ID** 和 **Client Secret**。
2.配置:在`server`目录下创建一个`.env`文件:
````bash
SPOTIFY_CLIENT_ID=您的客户 ID
SPOTIFY_CLIENT_SECRET=您的客户秘密
````
该应用程序将根据需要自动获取并缓存访问令牌。
#### ? 使用 Docker 设置
先决条件:[Docker](https://docs.docker.com/get-docker/) 和 [Docker Compose](https://docs.docker.com/compose/install/)
1. 构建并运行应用程序:
````重击
docker-compose up --build
````
访问该应用程序:http://localhost:8080
2. 停止应用程序:
````重击
docker-compose 下来
````
#### ? 本机设置
安装后端依赖
````
CD服务器
去拿./...
````
为客户端安装依赖项
````
光盘客户端
npm 安装
````
## 用法(本机设置):bicyclist:
#### ▸ 启动客户端应用程序?♀️➡️
````
# 假设您位于客户端目录中:
npm 启动
````
#### ▸ 启动后端应用程序?♀️
在单独的终端窗口中:
````
CD服务器
go run *.goserve [-proto (默认:http)] [-port <端口号> (默认:5000)]
````
#### ▸ 下载歌曲?
注意:来自 Spotify 移动应用程序的链接不起作用。您可以从桌面或网络应用程序复制链接。
````
go run *.go download
````
#### ▸ 将本地歌曲保存到数据库(支持所有音频格式)?️
````
go run *.go save [-f|--force] <歌曲文件或歌曲目录>
````
即使未找到 YouTube ID,“-f”或“--force”标志也允许保存歌曲。请注意,前端不会显示没有 YouTube ID 的匹配项。
注意:如果 `*.go` 没有