musicutil/Cargo.toml

85 lines
1.9 KiB
TOML
Raw Normal View History

2022-08-16 09:05:18 +01:00
[package]
name = "musicutil"
version = "0.1.0"
edition = "2021"
[workspace]
members = [
"modules/ascii_reduce",
"modules/ffprobe",
"modules/relative_file",
"modules/replaygain",
"modules/taglib"
]
2022-08-16 09:05:18 +01:00
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
relative_file = { path = "./modules/relative_file" }
2022-10-22 15:15:37 +01:00
# for decode/encoding yaml/json for transcode config & ffprobe output
2023-08-31 22:08:21 +01:00
serde = { version = "1.0.0", features = ["derive"] }
serde_yaml = "0.9"
2022-08-16 09:05:18 +01:00
serde_json = "1.0"
2023-08-31 22:08:21 +01:00
serde_with = "3"
2022-10-22 15:15:37 +01:00
# argument parsing
2023-08-31 22:08:21 +01:00
clap = { version = "4", features = ["derive"] }
2022-10-22 15:15:37 +01:00
# for reducing filenames to ascii
# useful for when storing music files on mp3 players with broken unicode support
ascii_reduce = { path = "./modules/ascii_reduce" }
# transcode presets & format handlers
2023-08-31 22:08:21 +01:00
lazy_static = "1"
2022-10-22 15:15:37 +01:00
# for scan_for_music
2023-08-31 22:08:21 +01:00
walkdir = "2"
2022-10-22 15:15:37 +01:00
# format detection
2023-08-31 22:08:21 +01:00
infer = "0.15"
bytes = "1"
2022-10-22 15:15:37 +01:00
# tag reading
id3 = { version = "1", optional = true }
metaflac = { version = "0.2", optional = true }
taglib = { path = "./modules/taglib", optional = true }
ffprobe = { path = "./modules/ffprobe" }
2022-10-22 15:15:37 +01:00
# replaygain_analysis
replaygain = { path = "./modules/replaygain", optional = true }
2022-10-22 15:15:37 +01:00
# for genhtml command
html-escape = { version = "0.2", optional = true }
urlencoding = { version = "2", optional = true }
2022-10-22 15:15:37 +01:00
# error handling
2023-08-31 22:08:21 +01:00
thiserror = "1"
string-error = "0.1"
2022-10-22 15:15:37 +01:00
# temporary file for transcode prefix file
2022-08-16 09:05:18 +01:00
tempfile = "3"
2022-10-22 15:15:37 +01:00
# for reading ffmpeg progress output file
2023-08-31 22:08:21 +01:00
notify = "6"
[features]
default = [
"replaygain",
"mp3_extractor",
"flac_extractor",
"ffprobe_extractor",
"command_genhtml"
]
# Formats
2023-10-19 16:13:26 +01:00
taglib_extractor = ["dep:taglib"]
flac_extractor = ["dep:metaflac"]
mp3_extractor = ["dep:id3"]
ffprobe_extractor = [] # If to allow using ffmpeg/ffprobe as a fallback tag extractor
command_genhtml = ["dep:html-escape", "dep:urlencoding"]
replaygain = ["dep:replaygain"]