Frame is a high-performance media conversion utility built on the Tauri v2 framework. It provides a native, macOS-only interface for FFmpeg operations, allowing for granular control over video and audio transcoding parameters. The application leverages a Rust-based backend for concurrent task management and process execution, coupled with a Svelte 5 frontend for configuration and state monitoring.
[!WARNING]
Unsigned Application Notice (macOS) Since the application is currently unsigned, macOS will flag it and its sidecar binaries with a quarantine attribute. To run the app, remove the attribute manually:xattr -dr com.apple.quarantine /Applications/Frame.app
mp4, mkv, webm, mov, mp3.libx264 (H.264 / AVC)libx265 (H.265 / HEVC)vp9 (Google VP9)prores (Apple ProRes)libsvtav1 (Scalable Video Technology AV1)h264_videotoolbox (Apple Silicon), h264_nvenc (NVIDIA).aac, ac3 (Dolby Digital), libopus, mp3.ffprobe.tokio::mpsc) limiting concurrent FFmpeg processes (default: 2).stderr for accurate progress tracking and log output.tokio (Async I/O).serde, serde_json.tauri-plugin-shell for sidecar execution (FFmpeg/FFprobe).tauri-plugin-dialog, tauri-plugin-fs, window-vibrancy.clsx, tailwind-merge.$state / $props.cargo).src-tauri/binaries/ directory.ffmpeg-<target-triple> (e.g., ffmpeg-aarch64-apple-darwin).[!IMPORTANT]
Note for Developers: Binaries insrc-tauri/binaries/are now tracked via Git LFS. As part of this migration, the repository history was rewritten to remove large files from the Git history, which changed all previous commit hashes. Make sure you have Git LFS installed and initialized (git lfs install) before working with these files. If you had a local clone before this change, you may need to re-clone the repository or perform a hard reset.
Install dependencies:
bun install
Start development server:
bun run tauri dev
Compile for production:
bun run tauri build
GPLv3 License. See LICENSE for details.