All models
Media utilitiesv1.0.0
Extract Frame
Capture a still image from a video at a timestamp (ffmpeg)
4 inputsIMAGE

Frame grabbed at t = 1s
Output
Fill in the inputs and run the node to see its output here.
Run it from your code
The same node, called by id from any surface. Every tab pins extract-frame and passes the ports below. Full guide.
import { BlitClient } from "@blitflow/sdk";
const { runNode } = new BlitClient({ apiKey: process.env.BLITFLOW_TOKEN });
const { outputs } = await runNode("extract-frame", {
video: { ref: "https://..." },
time: { value: 0 },
format: { value: "png" },
quality: { value: 90 },
});# Install once, then sign in
npm install -g blitflow
blitflow login
blitflow node extract-frame \
-i video=@https://... \
-i time=0 \
-i format="png" \
-i quality=90{
"name": "runs_node",
"arguments": {
"node": "extract-frame",
"inputs": {
"video": {
"ref": "https://..."
},
"time": {
"value": 0
},
"format": {
"value": "png"
},
"quality": {
"value": 90
}
}
}
}curl https://studio.blitflow.com/api/v1/runs/node \
-H "Authorization: Bearer $BLITFLOW_TOKEN" \
-H "Content-Type: application/json" \
-d '{"node":"extract-frame","inputs":{"video":{"ref":"https://..."},"time":{"value":0},"format":{"value":"png"},"quality":{"value":90}}}'Schema
Inputs
| video* | VIDEO | ||
| time | FLOAT | Time (s) | 0 |
| format | TEXT | png · jpeg | png |
| quality | INT | Quality (JPEG) | 90 |
Outputs
| image | IMAGE |