FFmpeg is now automatically downloaded on first run if not found, eliminating the need for vcpkg or manual FFmpeg installation on Windows. Changes: - Add FFmpeg availability check and auto-download on startup - Use ffprobe_path() for auto-downloaded binaries in video decoder - Track FFmpeg availability in app state with graceful degradation - Show warning banner when video conversion is unavailable - Skip video files when adding to queue if FFmpeg unavailable - Simplify build instructions in README (remove vcpkg recommendation)
74 lines
1.9 KiB
TOML
74 lines
1.9 KiB
TOML
[package]
|
|
name = "avif-maker"
|
|
version = "0.1.1"
|
|
edition = "2021"
|
|
description = "Convert images and videos to AVIF format with a native GUI"
|
|
license = "MIT"
|
|
|
|
[dependencies]
|
|
# GUI
|
|
eframe = "0.30"
|
|
rfd = "0.15"
|
|
egui_extras = { version = "0.30", features = ["image"] }
|
|
|
|
# AVIF encoding (links to libavif C library)
|
|
libavif = "0.14"
|
|
|
|
# Image decoding (pure Rust)
|
|
image = "0.25"
|
|
gif = "0.14"
|
|
|
|
# Video decoding (runs ffmpeg as subprocess - no FFI issues)
|
|
# Default features include "download_ffmpeg" for auto-downloading FFmpeg on first run
|
|
ffmpeg-sidecar = "2"
|
|
|
|
# Async & utilities
|
|
tokio = { version = "1", features = ["rt-multi-thread", "sync", "macros"] }
|
|
directories = "5"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
|
|
# Error handling
|
|
thiserror = "2"
|
|
anyhow = "1"
|
|
|
|
# Logging
|
|
tracing = "0.1"
|
|
tracing-subscriber = "0.3"
|
|
|
|
# Utilities
|
|
open = "5"
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = true
|
|
|
|
[package.metadata.deb]
|
|
maintainer = "cottongin"
|
|
copyright = "2026"
|
|
depends = "ffmpeg"
|
|
section = "graphics"
|
|
# Note: cargo-deb auto-detects binary location when --target is specified
|
|
|
|
[package.metadata.generate-rpm]
|
|
assets = [
|
|
{ source = "target/x86_64-unknown-linux-gnu/release/avif-maker", dest = "/usr/bin/avif-maker", mode = "755" }
|
|
]
|
|
[package.metadata.generate-rpm.requires]
|
|
ffmpeg = "*"
|
|
|
|
[package.metadata.bundle]
|
|
name = "AVIF Maker"
|
|
identifier = "com.cottongin.avif-maker"
|
|
icon = ["resources/AppIcon.icns"]
|
|
version = "0.1.0"
|
|
copyright = "Copyright © 2026 cottongin. All rights reserved."
|
|
category = "public.app-category.graphics-design"
|
|
short_description = "Convert images and videos to AVIF format"
|
|
long_description = """
|
|
AVIF Maker is a native desktop application for converting images and videos
|
|
to the AVIF format. It supports PNG, JPEG, WebP, GIF (animated), and video
|
|
files. Features include quality settings, speed presets, and batch processing.
|
|
"""
|
|
osx_minimum_system_version = "10.14"
|