ffmpeg-explorer/public/examples/scale_overlay.json

649 lines
16 KiB
JSON

{
"nodes": [
{
"id": "9406a455-7e77-49bb-9cd8-381b54d47d31",
"type": "ffmpeg",
"data": {
"name": "punch.mp4",
"url": "/punch.mp4",
"ext": "mp4",
"outputs": [
"v",
"a"
],
"inputs": [],
"nodeType": "input"
},
"nodeType": "input",
"position": {
"x": 0,
"y": 0
},
"positionAbsolute": {
"x": 0,
"y": 0
},
"width": 109,
"height": 54
},
{
"id": "eb32733d-28ad-4a38-9db7-50a98db5f309",
"type": "ffmpeg",
"data": {
"name": "out.mp4",
"ext": "mp4",
"inputs": [
"v",
"a"
],
"outputs": [],
"nodeType": "output"
},
"nodeType": "output",
"position": {
"x": 439,
"y": 0
},
"positionAbsolute": {
"x": 439,
"y": 0
},
"width": 90,
"height": 54,
"selected": false,
"dragging": false
},
{
"id": "1623b321-0d2b-42a1-99af-bad37a146b07",
"type": "ffmpeg",
"data": {
"id": 305,
"meta": "TSC",
"name": "overlay",
"type": "VV->V",
"description": "Overlay a video source on top of the input.",
"params": [
{
"name": "x",
"type": "string",
"desc": "set the x expression (default \"0\")",
"min": null,
"max": null,
"default": "0",
"value": "290"
},
{
"name": "y",
"type": "string",
"desc": "set the y expression (default \"0\")",
"min": null,
"max": null,
"default": "0",
"value": "50"
},
{
"name": "eof_action",
"type": "int",
"desc": "Action to take when encountering EOF from secondary input (from 0 to 2) (default repeat)",
"min": 0,
"max": 2,
"default": "repeat",
"options": [
{
"value": "repeat",
"desc": "Repeat the previous frame."
},
{
"value": "endall",
"desc": "End both streams."
},
{
"value": "pass",
"desc": "Pass through the main input."
}
],
"value": "repeat"
},
{
"name": "eval",
"type": "int",
"desc": "specify when to evaluate expressions (from 0 to 1) (default frame)",
"min": 0,
"max": 1,
"default": "frame",
"options": [
{
"value": "init",
"desc": "eval expressions once during initialization"
},
{
"value": "frame",
"desc": "eval expressions per-frame"
}
],
"value": "frame"
},
{
"name": "shortest",
"type": "boolean",
"desc": "force termination when the shortest input terminates (default false)",
"min": null,
"max": null,
"default": "false",
"value": "false"
},
{
"name": "format",
"type": "int",
"desc": "set output format (from 0 to 7) (default yuv420)",
"min": 0,
"max": 7,
"default": "yuv420",
"options": [
{
"value": "yuv420",
"desc": ""
},
{
"value": "yuv420p10",
"desc": ""
},
{
"value": "yuv422",
"desc": ""
},
{
"value": "yuv422p10",
"desc": ""
},
{
"value": "yuv444",
"desc": ""
},
{
"value": "rgb",
"desc": ""
},
{
"value": "gbrp",
"desc": ""
},
{
"value": "auto",
"desc": ""
}
],
"value": "yuv420"
},
{
"name": "repeatlast",
"type": "boolean",
"desc": "repeat overlay of the last overlay frame (default true)",
"min": null,
"max": null,
"default": "true",
"value": "true"
},
{
"name": "alpha",
"type": "int",
"desc": "alpha format (from 0 to 1) (default straight)",
"min": 0,
"max": 1,
"default": "straight",
"options": [
{
"value": "straight",
"desc": ""
},
{
"value": "premultiplied",
"desc": ""
}
],
"value": "straight"
}
],
"nodeType": "filter",
"inputs": [
"v",
"v"
],
"outputs": [
"v"
]
},
"nodeType": "filter",
"position": {
"x": 290,
"y": 70
},
"positionAbsolute": {
"x": 290,
"y": 70
},
"width": 60,
"height": 50,
"dragging": false
},
{
"id": "a0798490-6c5b-4a14-82a3-a5e7da6d223b",
"type": "ffmpeg",
"data": {
"name": "shoe.mp4",
"url": "/shoe.mp4",
"ext": "mp4",
"outputs": [
"v",
"a"
],
"inputs": [],
"nodeType": "input"
},
"nodeType": "input",
"position": {
"x": 0,
"y": 100
},
"positionAbsolute": {
"x": 0,
"y": 100
},
"width": 109,
"height": 54
},
{
"id": "a6796a9d-7fb6-494c-9545-bde5d4628eea",
"type": "ffmpeg",
"data": {
"id": 338,
"meta": "..C",
"name": "scale",
"type": "V->V",
"description": "Scale the input video size and/or convert the image format.",
"params": [
{
"name": "w",
"type": "string",
"desc": "Output video width",
"min": null,
"max": null,
"default": null,
"value": "120"
},
{
"name": "width",
"type": "string",
"desc": "Output video width",
"min": null,
"max": null,
"default": null,
"value": null
},
{
"name": "h",
"type": "string",
"desc": "Output video height",
"min": null,
"max": null,
"default": null,
"value": "120"
},
{
"name": "height",
"type": "string",
"desc": "Output video height",
"min": null,
"max": null,
"default": null,
"value": null
},
{
"name": "flags",
"type": "string",
"desc": "Flags to pass to libswscale (default \"\")",
"min": null,
"max": null,
"default": "",
"value": ""
},
{
"name": "interl",
"type": "boolean",
"desc": "set interlacing (default false)",
"min": null,
"max": null,
"default": "false",
"value": "false"
},
{
"name": "in_color_matrix",
"type": "string",
"desc": "set input YCbCr type (default \"auto\")",
"min": null,
"max": null,
"default": "auto",
"options": [
{
"value": "auto",
"desc": ""
},
{
"value": "bt601",
"desc": ""
},
{
"value": "bt470",
"desc": ""
},
{
"value": "smpte170m",
"desc": ""
},
{
"value": "bt709",
"desc": ""
},
{
"value": "fcc",
"desc": ""
},
{
"value": "smpte240m",
"desc": ""
},
{
"value": "bt2020",
"desc": ""
}
],
"value": "auto"
},
{
"name": "out_color_matrix",
"type": "string",
"desc": "set output YCbCr type",
"min": null,
"max": null,
"default": null,
"options": [
{
"value": "auto",
"desc": ""
},
{
"value": "bt601",
"desc": ""
},
{
"value": "bt470",
"desc": ""
},
{
"value": "smpte170m",
"desc": ""
},
{
"value": "bt709",
"desc": ""
},
{
"value": "fcc",
"desc": ""
},
{
"value": "smpte240m",
"desc": ""
},
{
"value": "bt2020",
"desc": ""
}
],
"value": null
},
{
"name": "in_range",
"type": "int",
"desc": "set input color range (from 0 to 2) (default auto)",
"min": 0,
"max": 2,
"default": "auto",
"options": [
{
"value": "auto",
"desc": ""
},
{
"value": "unknown",
"desc": ""
},
{
"value": "full",
"desc": ""
},
{
"value": "limited",
"desc": ""
},
{
"value": "jpeg",
"desc": ""
},
{
"value": "mpeg",
"desc": ""
},
{
"value": "tv",
"desc": ""
},
{
"value": "pc",
"desc": ""
}
],
"value": "auto"
},
{
"name": "out_range",
"type": "int",
"desc": "set output color range (from 0 to 2) (default auto)",
"min": 0,
"max": 2,
"default": "auto",
"options": [
{
"value": "auto",
"desc": ""
},
{
"value": "unknown",
"desc": ""
},
{
"value": "full",
"desc": ""
},
{
"value": "limited",
"desc": ""
},
{
"value": "jpeg",
"desc": ""
},
{
"value": "mpeg",
"desc": ""
},
{
"value": "tv",
"desc": ""
},
{
"value": "pc",
"desc": ""
}
],
"value": "auto"
},
{
"name": "in_v_chr_pos",
"type": "int",
"desc": "input vertical chroma position in luma grid/256 (from -513 to 512) (default -513)",
"min": -513,
"max": 512,
"default": -513,
"value": -513
},
{
"name": "in_h_chr_pos",
"type": "int",
"desc": "input horizontal chroma position in luma grid/256 (from -513 to 512) (default -513)",
"min": -513,
"max": 512,
"default": -513,
"value": -513
},
{
"name": "out_v_chr_pos",
"type": "int",
"desc": "output vertical chroma position in luma grid/256 (from -513 to 512) (default -513)",
"min": -513,
"max": 512,
"default": -513,
"value": -513
},
{
"name": "out_h_chr_pos",
"type": "int",
"desc": "output horizontal chroma position in luma grid/256 (from -513 to 512) (default -513)",
"min": -513,
"max": 512,
"default": -513,
"value": -513
},
{
"name": "force_original_aspect_ratio",
"type": "int",
"desc": "decrease or increase w/h if necessary to keep the original AR (from 0 to 2) (default disable)",
"min": 0,
"max": 2,
"default": "disable",
"options": [
{
"value": "disable",
"desc": ""
},
{
"value": "decrease",
"desc": ""
},
{
"value": "increase",
"desc": ""
}
],
"value": "increase"
},
{
"name": "force_divisible_by",
"type": "int",
"desc": "enforce that the output resolution is divisible by a defined integer when force_original_aspect_ratio is used (from 1 to 256) (default 1)",
"min": 1,
"max": 256,
"default": 1,
"value": 1
},
{
"name": "param0",
"type": "double",
"desc": "Scaler param 0 (from -DBL_MAX to DBL_MAX) (default DBL_MAX)",
"min": -2000,
"max": 2000,
"default": 2000,
"value": 2000
},
{
"name": "param1",
"type": "double",
"desc": "Scaler param 1 (from -DBL_MAX to DBL_MAX) (default DBL_MAX)",
"min": -2000,
"max": 2000,
"default": 2000,
"value": 2000
},
{
"name": "eval",
"type": "int",
"desc": "specify when to evaluate expressions (from 0 to 1) (default init)",
"min": 0,
"max": 1,
"default": "init",
"options": [
{
"value": "init",
"desc": "eval expressions once during initialization"
},
{
"value": "frame",
"desc": "eval expressions during initialization and per-frame"
}
],
"value": "init"
}
],
"nodeType": "filter",
"inputs": [
"v"
],
"outputs": [
"v"
]
},
"nodeType": "filter",
"position": {
"x": 180,
"y": -10
},
"positionAbsolute": {
"x": 180,
"y": -10
},
"width": 59,
"height": 50,
"dragging": false
}
],
"edges": [
{
"source": "9406a455-7e77-49bb-9cd8-381b54d47d31",
"sourceHandle": "v_0",
"target": "a6796a9d-7fb6-494c-9545-bde5d4628eea",
"targetHandle": "v_0",
"id": "xyflow__edge-9406a455-7e77-49bb-9cd8-381b54d47d31v_0-a6796a9d-7fb6-494c-9545-bde5d4628eeav_0"
},
{
"source": "a0798490-6c5b-4a14-82a3-a5e7da6d223b",
"sourceHandle": "v_0",
"target": "1623b321-0d2b-42a1-99af-bad37a146b07",
"targetHandle": "v_1",
"id": "xyflow__edge-a0798490-6c5b-4a14-82a3-a5e7da6d223bv_0-1623b321-0d2b-42a1-99af-bad37a146b07v_1"
},
{
"source": "a6796a9d-7fb6-494c-9545-bde5d4628eea",
"sourceHandle": "v_0",
"target": "1623b321-0d2b-42a1-99af-bad37a146b07",
"targetHandle": "v_0",
"id": "xyflow__edge-a6796a9d-7fb6-494c-9545-bde5d4628eeav_0-1623b321-0d2b-42a1-99af-bad37a146b07v_0"
},
{
"source": "1623b321-0d2b-42a1-99af-bad37a146b07",
"sourceHandle": "v_0",
"target": "eb32733d-28ad-4a38-9db7-50a98db5f309",
"targetHandle": "v_0",
"id": "xyflow__edge-1623b321-0d2b-42a1-99af-bad37a146b07v_0-eb32733d-28ad-4a38-9db7-50a98db5f309v_0"
}
]
}