Video Effects (Virtual Options)
Video effects let you apply higher-level transformations—such as quote cards and text overlays—without crafting complex FFmpeg filter graphs. Each effect layers on top of your uploaded media and works alongside the standard options array.
@options array when you create a transcode job. You can mix and match effects with regular FFmpeg flags or presets—they are processed in the order provided.curl -X POST https://api.ffmpeg-micro.com/v1/transcodes \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"inputs": [
{ "url": "gs://your-bucket/video.mp4" }
],
"outputFormat": "mp4",
"options": [
{
"option": "@text-overlay",
"argument": {
"text": "Hello world!",
"style": { "position": "center", "fontSize": 60 }
}
}
]
}'text— overlay contents (string)
Provide a style object to fine-tune appearance.
Preset anchor (e.g. "center", "top-left", "bottom-right")
Custom X expression (e.g. "0.15*w") — overrides preset positioning
Custom Y expression
Number of points (defaults to 48)
Hex color or ASS formatted color
Stroke width in pixels
Margin in pixels applied to all sides
Max width in pixels before wrapping
{
"inputs": [
{ "url": "gs://your-bucket/clip.mp4" }
],
"outputFormat": "mp4",
"options": [
{
"option": "@text-overlay",
"argument": {
"text": "If you're seeing this, the universe is telling you to set constraints.",
"style": {
"position": "center",
"fontSize": 60,
"outlineThickness": 20,
"margin": 120
}
}
}
]
}quote— primary quote text (string)
Speaker name displayed beneath the quote
Social handle or subtitle
HTTPS URL of profile image to render in a circle
HTTPS URL of background image/video; defaults to a black 1080 canvas
Video length in seconds (default 5)
Font size for quote text
Font size for speaker name
Font size for handle text
Color for quote text
Color for speaker name
Color for handle text
ASS-compatible font family
Diameter of profile circle (px)
Left offset for profile circle
Top offset for profile circle
Left margin for quote text
Left inner margin for quote block
Right inner margin for quote block
{
"inputs": [
{ "url": "https://filesamples.com/samples/video/mp4/sample_640x360.mp4" }
],
"outputFormat": "mp4",
"options": [
{
"option": "@quote-card",
"argument": {
"quote": "Constraints create focus. Focus creates momentum.",
"name": "Javid Jamae",
"handle": "@deliveringgrowth",
"profileImageUrl": "https://your-cdn.com/profile.jpg",
"style": {
"duration": 6,
"profileSize": 180,
"textMarginLeft": 360
}
}
},
{ "option": "-crf", "argument": "28" },
{ "option": "-c:v", "argument": "libx264" },
{ "option": "-c:a", "argument": "copy" }
]
}- Prefer HTTPS URLs for profile and background assets, or use signed URLs with sufficient TTL.
- Combine effects with standard FFmpeg options like
-crfor-presetfor fine-grained encoding control. - Quote card defaults to a 1080×1080 canvas—square imagery avoids unintended cropping.
- Store frequently reused asset URLs in your own library so new jobs can reference them quickly.