Llumi Cut · Nordic Byte

Tài liệu API

Llumi Cut là một dịch vụ HTTP. Bạn tải tư liệu lên, gửi timeline JSON và tải kết quả về. Trang này tóm tắt các trường; schema đầy đủ, đã được kiểm chứng, có tại /openapi.json trên mọi bản cài đặt.

Xác thực

Mỗi bản cài đặt có khóa riêng. Gửi khóa này trong mọi route /v1:

Authorization: Bearer <khoa-cua-ban>

Quy trình

  1. Tải lên từng tệp bằng POST /v1/assets?kind=image|video|audio với tệp là body nhị phân. Kết quả trả về là {"id": "…"}.
  2. Đưa vào hàng đợi bản dựng bằng POST /v1/renders với timeline dạng JSON. Dùng header Idempotency-Key để lần thử lại không tạo ra bản render thứ hai.
  3. Truy vấn GET /v1/renders/{id} cho đến khi status là completed, sau đó tải từng tệp trong result.files.

Endpoint

Phương thứcĐường dẫnChức năng
GET/healthTrạng thái dịch vụ
POST/v1/assets?kind=image|video|audioTải lên một tệp nhị phân và trả về ID của tệp
POST/v1/rendersKiểm tra timeline và đưa vào hàng đợi
GET/v1/renders100 bản render gần nhất
GET/v1/renders/{id}Trạng thái, tiến độ, sự kiện và lỗi
POST/v1/renders/{id}/cancelHủy một bản render đang chờ hoặc đang chạy
POST/v1/renders/{id}/retryChạy lại một bản render đã dừng
DELETE/v1/renders/{id}Xóa một bản render đã dừng và các tệp của nó
GET/v1/renders/{id}/files/{name}Tải một tệp đầu ra
POST/v1/maintenance/purge?older_than_days=NXóa các bản render đã dừng cũ hơn N ngày

Timeline

Chỉ title, duration và clips là bắt buộc. Tổng thời lượng các cảnh quay phải bằng duration.

TrườngGiá trị
duration3–600 s
width · aspect640, 1280 hoặc 1920 (cạnh dài) · 16:9, 9:16, 1:1
fps24 hoặc 30
backgroundMàu của các dải viền, #RRGGBB
transition · transition_durationcut, fade, fadeblack, fadewhite, dissolve, slideleft, slideright, wipeleft, wiperight, smoothleft, smoothright, circleopen, circleclose · 0,1–2 s
image_motionnone, zoom_in, zoom_out, pan_left, pan_right, auto
fade_in · fade_outHiệu ứng mờ dần cho toàn bộ video và âm thanh, 0–5 s
audio_asset_id · pausesBài hát chính tùy chọn và tối đa mười khoảng lặng kỹ thuật số

Cảnh quay (clips[])

TrườngGiá trị
asset_id · durationẢnh hoặc video · tối đa 60 s
trim_start · speedGiây bắt đầu trong tệp gốc · 0,25–4
volumeÂm thanh gốc của clip, 0–2 (0 là tắt tiếng)
fitcontain (có dải viền) hoặc cover (cắt để lấp đầy)
freeze · motionDừng ở khung hình đầu tiên · chuyển động Ken Burns
effectsTối đa sáu trong số grayscale, sepia, vintage, noir, warm, cool, blur, sharpen, vignette, invert, mirror, flip
brightness · contrast · saturation−0,5–0,5 · 0,3–2 · 0–3
transition · transition_durationChuyển cảnh từ cảnh quay trước

Âm thanh (audio_tracks[])

asset_id, start, trim_start, duration, volume (0–2), fade_in, fade_out, loop và duck. Một track có duck: true sẽ giảm khoảng 10 dB khi bài hát, giọng nói hoặc âm thanh của clip đang phát.

Tiêu đề (texts[])

text (tối đa năm dòng), start, end, position (chín vị trí) hoặc x/y tính theo tỷ lệ khung hình, size, color, outline_color, outline, box, box_color, box_opacity, font, bold, italic và animation (none, fade, slide_up, slide_left, pop, typewriter).

Lớp phủ (overlays[])

asset_id (ảnh hoặc video), start, end, position hoặc x/y, width, height (khi có cả hai, khung sẽ được lấp đầy: chia màn hình và lưới), margin, opacity, trim_start, volume, fade, border và border_color.

Phụ đề (captions[])

start, end và text. Phụ đề được xuất ra dạng SRT và WebVTT và, với burn_subtitles: true, được gắn cứng vào hình.

Đầu ra

video.mp4 (H.264 + AAC), audio.wav (nhạc nền hoàn chỉnh), song.wav (chỉ khi có bài hát chính), subtitles.srt, subtitles.vtt, qc.json (thời lượng, độ phân giải, nguồn âm thanh, cảnh báo) và manifest.json.

Giới hạn