serverless 上的 ffmpeg,
化為一套 API。
一次 API 呼叫,就能加浮水印、修剪、擷取音訊與產生縮圖。沒有 250MB 的打包體積上限,不需要 child_process,也不會撞上逾時那道牆——繁重的編碼工作完全不會落到你的函式上。
curl -X POST https://api.fotovid.co/v1/video/watermark \
-H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://cdn.yoursite.com/clip.mp4",
"params": {
"type": "image",
"watermark_image_url": "https://cdn.yoursite.com/logo.png",
"position": "bottom-right",
"opacity": 0.7,
"scale": 0.2
}
}'丟進任何 serverless 執行環境都能跑
Serverless 天生就不適合處理媒體
光是把 ffmpeg 和編解碼器打包進去,就直接撐爆 serverless 函式的體積上限——而你連一行邏輯都還沒寫。
Serverless 執行環境沒有 shell 可用,你沒辦法 spawn ffmpeg;WASM 版本又慢又吃記憶體。
就算跑得起來,編碼一支影片也會超過函式的逾時限制。Fotovid 把繁重的工作丟到平台之外執行,再直接把成品的 URL 回傳給你。
你會想用 ffmpeg 做的事,這裡全都有
在任何影片上疊加文字或 logo 圖片。位置、不透明度、縮放與邊距,全都能自己調。
POST /v1/video/watermark圖片浮水印同一套浮水印引擎也能用在圖片上。文字、圖片,或兩者混合疊加。
POST /v1/image/watermark擷取音訊從任何影片中抽出音軌,直接拿回一個 MP3。
POST /v1/video/extract-audio修剪影片在兩個時間點之間裁出畫格精準的片段。
POST /v1/video/trim修剪音訊依起訖時間切出音訊片段,輸出為 MP3。
POST /v1/audio/trim縮圖 / 封面擷取任意時間點的畫格,拿來當影片縮圖。
POST /v1/video/extract-cover在各種格式之間轉換(MP4、WebM、MOV、GIF)。
用兼顧品質的預設組合縮小檔案體積。
把多段影片串接成一支。
大家都用 Fotovid 做什麼
在使用者上傳的每支影片與每張圖片蓋上你的品牌或每位使用者專屬的標記——就在處理上傳的那個請求裡一併完成。
把冗長的錄影修剪成適合分享的片段,再抓一張縮圖當預覽卡片,全部在你的 API route 裡搞定。
從上傳的影片剝下音軌,把 MP3 直接交給你的語音轉文字或 AI 流程。
需要時才產生封面畫格,讓你的圖庫與動態牆載入快速,也不用把 ffmpeg 一起部署上去。
從第一個請求就為 serverless 而生
小型工作會在同一個請求裡同步回傳完成的檔案;耗時的工作則非同步執行,完成後呼叫你的 Webhook——不需要輪詢。
不必在打包檔裡塞 ffmpeg 執行檔,也不必額外部署冷啟動相依層。同一個 HTTPS 呼叫,在 Vercel、Cloudflare Workers、Lambda 或 Deno 上都能用。
每個工作都會回傳一個指向成品的預簽章 URL——你可以直接串流、存檔,或把檔案內容抓回來,完全不用寫進函式的唯讀磁碟。
