SwiftPlayer
A lightweight, fully native video and audio player for macOS.
Built entirely with SwiftUI and AVFoundation. No third-party dependencies—just Apple's own frameworks.
Download v2.2 Stable
View on GitHub
Features
- Zero dependencies – Pure Swift
- Hardware-accelerated decoding via AVFoundation/VideoToolbox
- Subtitle support: SRT, VTT, ASS/SSA with adjustable delay
- Minimal UI that fades away when idle
- Drag & drop, keyboard navigation, and space to play/pause
Supported Formats
Video: MP4, MOV, M4V
Audio: MP3, M4A, AAC, WAV, AIFF, CAF
Installation
- Download the latest
SwiftPlayer.app.zip from the Releases page.
- Move it to your Applications folder and launch it.
⚠️ First launch note
The app is ad-hoc signed, so macOS Gatekeeper will block the first launch. To open it:
- Right-click the app in Finder and choose Open, then Open again.
- Or run:
xattr -dr com.apple.quarantine /Applications/SwiftPlayer.app
Compatibility
Runs on both Apple Silicon and Intel Macs. Minimum macOS version: 13.0 (Ventura).
Build from Source
Requires Xcode 16+ and macOS 13.0+.
git clone https://github.com/scadavide55/SwiftPlayer.git
cd SwiftPlayer
open SwiftPlayer.xcodeproj
Changelog
2.2 — Stable
Latest
- Picture in Picture support
- Playback speed control (0.5× – 2×)
- Skip buttons (⏪ 10s / ⏩ 10s)
- Volume slider and mute toggle
- Volume keyboard shortcuts (↑ / ↓)
- Faster, smoother seeking — thanks to u/Casfaber_ on Reddit for the suggestion
- Play/pause state now fully synced with playback
- Filename display, subtitle toggle, and state cleanup on Go Home
- Fullscreen button in the top-right corner
2.1.1 — Stable
Previous
- Real reverse playback via AVPlayer's negative rate
- Subtitle timestamp fix (ASS/SSA 3-digit milliseconds)
- Full Xcode project published to GitHub
- Unit tests for SRT, VTT, and ASS/SSA parsers
See all releases on GitHub →