Skip to main content

Vylux

Vylux 是一個獨立運行的媒體處理服務,將圖片即時轉換與影片非同步處理拆成可單獨部署的基礎能力。它不承載你的業務模型,只負責接收來源物件、驗證資訊與處理參數,輸出可快取、可追蹤、可播放的媒體資產。

目前的核心能力包括:

  • 即時圖片轉換:/img 依 URL 參數即時 resize、轉檔與快取
  • 原檔與縮圖代理:/original/thumb
  • 非同步工作:image:thumbnailvideo:covervideo:previewvideo:transcodevideo: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 動態預覽,支援 webpgif
  • video: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

  1. 先讀 快速開始
  2. 接著讀 設定部署
  3. 等服務可達後,再看 可觀測性

Application integration

  1. 先讀 整合導覽
  2. 接著讀 工作 API圖片與媒體投遞 API
  3. 若你需要串流或加密播放,再讀 播放 API加密串流

Operations

  1. 先讀 部署
  2. 接著讀 設定
  3. probe、metrics 與排障則看 系統端點可觀測性

文件範圍

目前這個 docs site 聚焦於:

  • 服務結構與核心資料流
  • 媒體處理 pipeline
  • HTTP endpoints、授權方式與 curl 範例
  • 部署、設定、觀測與測試

文件原則

  • 以目前程式碼與測試行為為準
  • 以部署與接入可操作性為優先,而不是抽象設計描述
  • 會吸收 repo 根目錄與本機輔助資料中已驗證、但不適合長期保留在正式發行包內的操作知識