4个版本
0.2.3 | 2024年3月2日 |
---|---|
0.2.2 | 2023年1月5日 |
0.2.1 | 2022年7月11日 |
0.2.0 | 2022年7月11日 |
#193 in 图像
每月 60 次下载
180KB
212 行
Spotify拼贴
使用专辑封面生成Spotify播放列表封面的CLI工具。
示例
[!NOTE] 工具可以生成最大为4096x4096的图像,但以下示例显示的是极低分辨率,以突出工具的功能,而不是艺术作品本身(这些艺术作品不属于我)。所有封面图像均来自这个Spotify播放列表。
默认参数
当只传递所需参数时,生成的图像将与Spotify为所有新播放列表设置的默认艺术作品相同
瓷砖数量
您可以使用--tiles <TILE_SIDE_LEN>
参数自定义拼贴瓷砖的数量。
-t 2 (默认值) |
-t4 |
-t8 |
---|---|---|
![]() |
![]() |
![]() |
排列
您可以使用--arrange <ARRANGEMENT>
以预定义的方式对瓷砖进行排序。
-a first (默认值) |
-a last |
-a random |
---|---|---|
![]() |
![]() |
![]() |
模糊
可以使用--blur <PERCENTAGE>
对生成的封面进行模糊处理,以减少视觉杂乱。
-b5 |
-b25 |
-b100 |
---|---|---|
![]() |
![]() |
![]() |
安装
[!NOTE] 所有当前的安装方法都需要安装Rust。未来可能会提供预编译的二进制文件。
从crates.io
cargo install spotifymosaic
从GitHub
git clone https://github.com/tchojnacki/spotifymosaic.git
cargo install --path spotifymosaic
用法
基本
spotifymosaic <PLAYLIST_URI> [AUTHORIZATION]
位置
<PLAYLIST_URI>
- 播放列表的URI(形式为spotify:playlist:ID
)[AUTHORIZATION]
- 任何形式的授权,如下文所述
授权
【注意】此工具需要授权,因此您应根据Spotify App 设置指南创建一个应用。
客户端凭据流
目前,唯一支持的授权方式是通过传递来自Spotify 客户端凭据流的 client_id
和 client_secret
。生成一对 ID 和密钥,并通过冒号(:
)将它们传递给 --creds
CLI 参数。
帮助
USAGE:
spotifymosaic [OPTIONS] <--creds <CLIENT_ID:CLIENT_SECRET>> <PLAYLIST_URI>
ARGS:
<PLAYLIST_URI> Spotify playlist URI
OPTIONS:
--creds <CLIENT_ID:CLIENT_SECRET>
Spotify client's ID and secret delimited by a colon
-t, --tiles <TILE_SIDE_LEN>
Number of tiles forming the mosaic's side [default: 2]
-o, --out <OUTPUT_PATH>
Output image file path [default: mosaic.png]
-a, --arrange <ARRANGEMENT>
Ordering of mosaic's squares [default: first] [possible values: first, last, random]
-r, --res <RESOLUTION>
Output image's resolution, may be rounded down [default: 640]
-b, --blur <PERCENTAGE>
Amount of blur applied to cover images [default: 0]
-h, --help
Print help information
免责声明
- 本项目与 Spotify 无关,也未获得 Spotify 的支持或认可。
- Spotify 开发者设计指南指出,Spotify 提供的艺术作品不应在粉丝制作的应用程序中被裁剪、覆盖或模糊。尽管显然,由该工具生成的图像不遵循此规则,但我认为该工具不违反此要求,因为艺术品从未在应用程序中实际显示给任何用户。此应用程序仅是一个图像编辑工具,由它生成的图像受手动编辑图像的相同法规约束,用户应自行遵守这些法规。
依赖项
~16–28MB
~382K SLoC