[package]
name = "av1an-core"
version = "0.3.1"
edition = "2018"
authors = ["Zen <master_of_zen@protonmail.com>"]
description = """
Cross-platform command-line AV1 / VP9 / HEVC / H264 encoding framework with per scene quality encoding [Core library]
"""
repository = "https://github.com/master-of-zen/Av1an"
keywords = ["video"]
categories = ["command-line-utilities"]
license = "GPL-3.0"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
log = "0.4.14"
arrayvec = "0.7.2"
av-format = "0.3.1"
av-ivf = "0.2.2"
memchr = "2.4.1"
num_cpus = "1.13.0"
anyhow = "1.0.42"
rand = "0.8.4"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
sysinfo = "0.22.3"
splines = "4.0.0"
indicatif = "0.17.0-rc.1"
once_cell = "1.8.0"
chrono = "0.4.19"
strum = { version = "0.23.0", features = ["derive"] }
itertools = "0.10.1"
which = "4.1.0"
strsim = "0.10.0"
crossbeam-channel = "0.5.1"
crossbeam-utils = "0.8.5"
textwrap = "0.14.2"
path_abs = "0.5.1"
av-scenechange = { version = "0.7.2", default-features = false }
y4m = "0.7.0"
thiserror = "1.0.30"
paste = "1.0.5"
simdutf8 = "0.1.3"
parking_lot = "0.11.2"
cfg-if = "1.0.0"
# TODO: move all of this CLI stuff to av1an-cli
ansi_term = "0.12.1"

# TODO: https://github.com/elast0ny/affinity/issues/2
# update this when macos support is implemented
[target.'cfg(any(target_os = "linux", target_os = "windows"))'.dependencies]
affinity = "0.1.2"

[dependencies.smallvec]
version = "1.7.0"
default-features = false
features = ["const_generics", "const_new", "union"]

[dependencies.ffmpeg-next]
version = "4.4.0"

[dependencies.plotters]
version = "0.3.1"
default-features = false
features = ["svg_backend", "line_series"]

[dependencies.vapoursynth]
version = "0.3.0"
features = ["vsscript-functions", "vapoursynth-functions"]

[dependencies.tokio]
version = "1"
features = ["rt", "process", "io-util"]

[dependencies.dashmap]
version = "5.0.0"
features = ["serde"]

[features]
ffmpeg_static = ["ffmpeg-next/static", "ffmpeg-next/build"]
vapoursynth_new_api = [
  "vapoursynth/vapoursynth-api-32",
  "vapoursynth/vsscript-api-31",
]
