AutomationFlowsGeneral › Thumbnail Generation (extract Frame → Add Watermark → Png)

Thumbnail Generation (extract Frame → Add Watermark → Png)

Thumbnail Generation (Extract Frame → Add Watermark → PNG). Uses n8n-nodes-ffmpeg-studio, writeBinaryFile. Event-driven trigger; 5 nodes.

Event trigger★★★★☆ complexity5 nodesN8N Nodes Ffmpeg StudioWrite Binary File
General Trigger: Event Nodes: 5 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Thumbnail Generation (Extract Frame \u2192 Add Watermark \u2192 PNG)",
  "nodes": [
    {
      "parameters": {},
      "id": "trigger-001",
      "name": "Start",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        100,
        300
      ]
    },
    {
      "parameters": {
        "operation": "thumbnail",
        "inputFile": "/path/to/video.mp4",
        "timestamp": "30",
        "outputFormat": "png",
        "width": 1280,
        "height": 720
      },
      "id": "thumb-001",
      "name": "Extract Frame at 0:30",
      "type": "n8n-nodes-ffmpeg-studio.ffmpegAnalyze",
      "typeVersion": 1,
      "position": [
        340,
        300
      ]
    },
    {
      "parameters": {
        "operation": "overlay",
        "inputFile": "={{ $json.filePath }}",
        "overlayFile": "/path/to/watermark.png",
        "x": "W-w-20",
        "y": "H-h-20",
        "opacity": 0.8
      },
      "id": "watermark-001",
      "name": "Add Watermark (Bottom Right)",
      "type": "n8n-nodes-ffmpeg-studio.ffmpegVideo",
      "typeVersion": 1,
      "position": [
        580,
        300
      ]
    },
    {
      "parameters": {
        "operation": "scale",
        "inputFile": "={{ $json.filePath }}",
        "width": 1280,
        "height": 720,
        "scalingMode": "exact"
      },
      "id": "scale-001",
      "name": "Ensure 1280x720",
      "type": "n8n-nodes-ffmpeg-studio.ffmpegVideo",
      "typeVersion": 1,
      "position": [
        820,
        300
      ]
    },
    {
      "parameters": {
        "fileName": "thumbnail.png"
      },
      "id": "write-001",
      "name": "Save Thumbnail PNG",
      "type": "n8n-nodes-base.writeBinaryFile",
      "typeVersion": 1,
      "position": [
        1060,
        300
      ]
    }
  ],
  "connections": {
    "Start": {
      "main": [
        [
          {
            "node": "Extract Frame at 0:30",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Frame at 0:30": {
      "main": [
        [
          {
            "node": "Add Watermark (Bottom Right)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add Watermark (Bottom Right)": {
      "main": [
        [
          {
            "node": "Ensure 1280x720",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ensure 1280x720": {
      "main": [
        [
          {
            "node": "Save Thumbnail PNG",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {},
  "meta": {
    "description": "Extract a specific frame from a video, add a watermark logo in the bottom-right corner, and save as a 1280x720 PNG thumbnail.",
    "tags": [
      "thumbnail",
      "watermark",
      "image",
      "youtube",
      "extract-frame"
    ]
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Thumbnail Generation (Extract Frame → Add Watermark → PNG). Uses n8n-nodes-ffmpeg-studio, writeBinaryFile. Event-driven trigger; 5 nodes.

Source: https://github.com/ArielleTolome/n8n-nodes-ffmpeg/blob/main/examples/thumbnail-generation.json — original creator credit. Request a take-down →

More General workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

General

Social Media Video Pipeline (Trim → Scale → Burn Text → MP4). Uses n8n-nodes-ffmpeg-studio, writeBinaryFile. Event-driven trigger; 6 nodes.

N8N Nodes Ffmpeg Studio, Write Binary File
General

Create 2 Xml Files With And Without Xml Attributes. Uses manualTrigger, mySql, itemLists, xml. Event-driven trigger; 13 nodes.

MySQL, Item Lists, XML +2
General

Simple File Based Key Value Store Writekey. Uses manualTrigger, writeBinaryFile, functionItem, readBinaryFiles. Event-driven trigger; 10 nodes.

Write Binary File, Function Item, Read Binary Files +1
General

Standup Bot 1 4 Initialize. Uses manualTrigger, writeBinaryFile, moveBinaryData. Event-driven trigger; 4 nodes.

Write Binary File, Move Binary Data
General

Standup Bot - Initialize. Uses manualTrigger, writeBinaryFile, moveBinaryData. Event-driven trigger; 4 nodes.

Write Binary File, Move Binary Data