8 个版本 (4 个重大变更)
0.5.0 | 2022 年 4 月 3 日 |
---|---|
0.4.0 | 2022 年 4 月 1 日 |
0.3.0 | 2021 年 12 月 23 日 |
0.2.2 | 2021 年 12 月 23 日 |
0.1.1 | 2021 年 12 月 21 日 |
#173 in WebSocket
每月 33 次下载
12KB
135 代码行
Spotify Info
使用 WebSocket 通过 spicetify 扩展从 Spotify 获取元数据
我制作这个主要是为了我的音频可视化器,以便在 Windows 上没有提供任何方法进行此操作的情况下,与歌曲信息一起显示,在 Linux 上我可以使用 MPRIS,对于 macOS,我不知道,我没有使用它
这将在所有桌面平台上(Windows、Linux、macOS)工作
API 使用
示例可以在 examples 目录中找到
use spotify_info::{SpotifyEvent, TrackListener};
#[tokio::main]
async fn main() {
// Create listener
let listener = TrackListener::bind_default().await.unwrap();
// Listen for incoming connections, if spotify closes, the loop keeps listening
while let Ok(mut connection) = listener.get_connection().await {
while let Some(Ok(event)) = connection.next().await {
match event {
// Gets called when user changed track
SpotifyEvent::TrackChanged(info) => println!("Changed track to {}", info.title),
// Gets called when user changes state (if song is playing, paused or stopped)
SpotifyEvent::StateChanged(state) => println!("Changed state to {}", state),
// Gets called on a set interval, wont get called if player is paused or stopped,
// Value is a percentage of the position between 0 and 1
SpotifyEvent::ProgressChanged(time) => println!("Changed progress to {}", time)
}
}
}
}
使用 API
将此添加到您的 Cargo.toml 依赖项中
spotify_info = "0.5"
计划
- 改进文档
- 使说明易于普通用户理解
- 歌曲创作时间
- 歌曲所在的播放列表
安装/卸载 Spicetify 扩展
自动安装
运行脚本进行安装,再次运行以卸载
Windows
打开 PowerShell
(Win + S),输入 powershell 并按回车键,然后运行此命令
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/Ricky12Awesome/spotify_info/main/extension/install_extension.ps1" | Invoke-Expression
Linux / macOS
打开 Terminal
(通常在 Linux 上是 Ctrl + Alt + T),然后运行此命令
curl https://raw.githubusercontent.com/Ricky12Awesome/spotify_info/main/extension/install_extension.sh | sh
手动
您可以从 这里 获取扩展(右键单击 ->另存为)
将此文件放置在 Windows 上的 %userprofile%\.spicetify\Extensions\
或 Linux / macOS 上的 ~/.config/spicetify/Extensions
安装
从终端运行命令 spicetify config extensions spotify_info.js && spicetify apply
以安装插件
卸载
从终端运行命令 spicetify config extensions spotify_info.js- && spicetify apply
以卸载插件
有关安装扩展的更多详情 https://spicetify.app/docs/getting-started/extensions
依赖项
~6–16MB
~214K SLoC