Vylux
Vylux 是一個獨立運行的媒體處理服務,將圖片即時轉換與影片非同步處理拆成可單獨部署的基礎能力。它不承載你的業務模型,只負責接收來源物件、驗證資訊與處理參數,輸出可快取、可追蹤、可播放的媒體資產。
目前的核心能力包括:
- 即時圖片轉換:
/img依 URL 參數即時 resize、轉檔與快取 - 原檔與縮圖代理:
/original、/thumb - 非同步工作:
image:thumbnail、video:cover、video:preview、video:transcode、video:full - HLS CMAF:AV1 + H.264 ladder、fMP4 segment、Shaka Packager 打包
- 加密播放:CBCS / SAMPLE-AES、
/api/key/{hash}Bearer token 金鑰發放 - 維運能力:PostgreSQL job state、Redis queue、Prometheus metrics、OpenTelemetry tracing
先選符合你當前工作的閱讀路徑
很多誤解其實不是 API 規則錯,而是還沒先決定部署形態或 trust boundary 就開始讀細節頁。先選下面最符合你當前任務的閱讀路徑,會快很多。
服務形態
all
- 同時啟動 HTTP server 與 worker
- 適合本機開發、staging 與較小型的單節點部署
server
- 只啟動 HTTP server、圖片投遞、播放路由與主要 metrics surface
- 適合搭配獨立 worker,一起達成較乾淨的擴展與故障隔離
worker
- 只處理 queue 任務與 worker metrics listener
- 適合讓 FFmpeg、libvips、packager 這類工作與 HTTP 流量分開擴展
這個設計讓同一個映像可同時用於 Docker Compose、單機部署,以及 K8s 下的 server/worker 拆分。
目前已驗證的能力
/img即時圖片縮放、格式轉換與快取video:preview動態預覽,支援webp與gifvideo:transcode產出 HLS CMAF- AV1 + H.264 雙 codec ladder
- portrait / non-16:9 影片的實際解析度輸出
- raw-key CBCS / SAMPLE-AES 加密串流
/api/key/{hash}Bearer token 金鑰發放- PostgreSQL job state、Redis queue、Prometheus metrics、OpenTelemetry tracing
建議閱讀路徑
First run
Application integration
- 先讀 整合導覽
- 接著讀 工作 API 與 圖片與媒體投遞 API
- 若你需要串流或加密播放,再讀 播放 API 與 加密串流
Operations
文件範圍
目前這個 docs site 聚焦於:
- 服務結構與核心資料流
- 媒體處理 pipeline
- HTTP endpoints、授權方式與 curl 範例
- 部署、設定、觀測與測試
文件原則
- 以目前程式碼與測試行為為準
- 以部署與接入可操作性為優先,而不是抽象設計描述
- 會吸收 repo 根目錄與本機輔助資料中已驗證、但不適合長期保留在正式發行包內的操作知識