文件
所有功能 GUI / CLI / MCP 都能使用。下面是完整的命令參考。
命令名稱、參數、JSON key 保持英文(這就是你實際輸入的內容),周邊的說明翻譯成中文。
快速開始
安裝
下載 AI 版安裝包並執行。所有相依都打包好了,無需修改 PATH。
終端試用
# Open a file
unflick play movie.mp4
# Save a screenshot of the current frame
unflick screenshot --output frame.png
# Cut a 30-second GIF starting at 00:01:00
unflick clip 60 90 --file movie.mp4 --gif
# Generate subtitles (AI edition: zero config)
unflick subtitle generate movie.mp4 接入 AI 用戶端
把下面這段設定加到你的 MCP 用戶端(Claude Desktop / Cursor / Codex CLI 等),AI Agent 立即取得 39 個工具和 3 個即時資源,可以驅動播放、生成字幕、掃描媒體庫等。
{
"mcpServers": {
"unflick": {
"command": "C:\\Users\\<you>\\AppData\\Local\\unflick\\unflick.exe",
"args": ["--mcp"]
}
}
} CLI 參考
所有命令都把 JSON 輸出到 stdout,可以管線接 jq、腳本裡解析、自由自動化。子命令首次呼叫時會自動啟動後台 daemon。
Playback
unflick play <FILE> [--seek N] [--volume 0-100] [--speed N] | Open a file and start playback. Resumes from saved position by default. |
unflick pause | Pause the currently playing file. |
unflick resume | Resume a paused file. |
unflick stop | Stop playback and save the current position. |
unflick seek <SECONDS> | Jump to an absolute position in seconds. |
unflick volume <0-100> | Set the volume level. |
unflick speed <RATE> | Set playback speed multiplier (e.g. 1.5). |
unflick status | Print current playback state as JSON. |
Media tools
unflick info <FILE> | Probe a file for duration, codecs, fps, container — without disrupting playback. |
unflick screenshot [--output PATH] | Save the current frame as a PNG. |
unflick clip <START> <END> [--file PATH] [--output PATH] [--gif] | Extract a segment to MP4 or animated GIF (uses bundled ffmpeg). |
Tracks
unflick subtitle load <FILE> | Load an external .srt / .ass / .sub file. |
unflick subtitle list | List embedded and external subtitle tracks. |
unflick subtitle select <ID> | Switch to a subtitle track (0 disables). |
unflick subtitle generate <VIDEO> [--mode local|api] [--whisper PATH] [--model PATH] [--api-key KEY] | AI-generate subtitles. Auto-detects bundled whisper in the AI edition. |
unflick subtitle translate <SRT> --to <LANG> --api-key <KEY> | Translate an SRT file via OpenAI. |
unflick audio list | List embedded audio tracks. |
unflick audio select <ID> | Switch to an audio track (0 disables). |
Playlist
unflick playlist add <FILE> | Append a file to the playlist. |
unflick playlist remove <INDEX> | Remove an entry by index. |
unflick playlist list | Show all playlist entries with the current track marked. |
unflick playlist play <INDEX> | Jump to a specific entry. |
unflick playlist next | Advance to the next track. |
unflick playlist prev | Go back to the previous track. |
unflick playlist clear | Remove all entries. |
Library
unflick library scan <DIR> | Scan a directory for video files into the SQLite library. |
unflick library search <QUERY> | Search the library by title or path. |
unflick library list | List every entry in the library. |
unflick library remove <ID> | Remove an entry by ID. |
Filters
unflick filter list | Show current values of brightness / contrast / saturation / gamma / hue. |
unflick filter set <NAME> <-100..100> | Adjust a single filter. |
unflick filter reset | Set every filter back to 0. |
Settings
unflick settings path | Print the absolute settings.json path. |
unflick settings get [--key K] | Print all settings, or a single key. |
unflick settings set <KEY> <JSON-VALUE> | Set a key (parses as JSON; falls back to string). |
unflick settings unset <KEY> | Remove a key. |
Server
unflick daemon | Start the background daemon explicitly. Other CLI commands auto-start it on first use. |
unflick --mcp | Start the MCP server over stdio. See the MCP section below. |
unflick shutdown | Stop the running daemon. |
MCP 參考
加 --mcp 參數啟動時,unflick 透過 stdio 暴露一個 Model Context Protocol 服務。所有 CLI 能力也都是 MCP 工具,外加 3 個可訂閱的狀態資源。
工具 (39)
play | Play a video file with optional seek/volume/speed. |
pause | Pause playback. |
resume | Resume playback. |
stop | Stop playback. |
seek | Seek to a position in seconds. |
set_volume | Set the volume (0-100). |
set_speed | Set playback speed. |
get_status | Read state, file, position, duration, volume, speed. |
file_info | Probe a media file (duration, resolution, codecs, fps, container). |
load_subtitle | Load an external subtitle file. |
subtitle_list | List subtitle tracks (embedded + external). |
subtitle_select | Switch subtitle track by ID (0 disables). |
audio_list | List embedded audio tracks. |
audio_select | Switch audio track by ID. |
generate_subtitles | Whisper-generate subtitles (local or OpenAI mode). |
translate_subtitles | Translate an SRT via OpenAI. |
playlist_add | Append a file to the playlist. |
playlist_remove | Remove a playlist entry by index. |
playlist_list | List playlist entries. |
playlist_play | Jump to a playlist entry by index. |
playlist_next | Advance to the next track. |
playlist_prev | Go back to the previous track. |
playlist_clear | Remove all entries. |
library_scan | Scan a directory for video files into the library. |
library_search | Search the library by title or path. |
library_list | List every entry. |
library_remove | Remove a library entry by ID. |
screenshot | Save the current frame as a PNG. |
clip | Extract a video segment to MP4 or GIF. |
save_position | Save a playback position for later resume. |
get_position | Look up the saved position for a file. |
settings_path | Get the path of settings.json. |
settings_get | Read all settings, or a single key. |
settings_set | Set a single settings key to any JSON value. |
settings_unset | Remove a settings key. |
filter_list | Read brightness/contrast/saturation/gamma/hue. |
filter_set | Set one of those filters to a value in -100..100. |
filter_reset | Reset all filters to 0. |
shutdown | Shut down the unflick daemon. |
資源 (3)
unflick://now-playing | Current playback state — file, position, duration, volume, speed. |
unflick://playlist | Current playlist with the active track marked. |
unflick://library | Every media file in the library. |