AutomationFlowsGeneral › Hls Streaming Prep (convert → Hls Segments)

Hls Streaming Prep (convert → Hls Segments)

HLS Streaming Prep (Convert → HLS Segments). Uses n8n-nodes-ffmpeg-studio, readBinaryFiles. Event-driven trigger; 4 nodes.

Event trigger★★☆☆☆ complexity4 nodesN8N Nodes Ffmpeg StudioRead Binary Files
General Trigger: Event Nodes: 4 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": "HLS Streaming Prep (Convert \u2192 HLS Segments)",
  "nodes": [
    {
      "parameters": {},
      "id": "trigger-001",
      "name": "Start",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        100,
        300
      ]
    },
    {
      "parameters": {
        "operation": "convert",
        "inputFile": "/path/to/source.mp4",
        "outputFormat": "mp4",
        "videoCodec": "libx264",
        "audioCodec": "aac",
        "crf": 23,
        "preset": "fast"
      },
      "id": "transcode-001",
      "name": "Transcode to H.264/AAC",
      "type": "n8n-nodes-ffmpeg-studio.ffmpegVideo",
      "typeVersion": 1,
      "position": [
        340,
        300
      ]
    },
    {
      "parameters": {
        "operation": "hls",
        "inputFile": "={{ $json.filePath }}",
        "hlsTime": 6,
        "hlsPlaylistType": "vod",
        "outputDir": "/output/hls/",
        "playlistName": "stream.m3u8"
      },
      "id": "hls-001",
      "name": "Generate HLS Segments",
      "type": "n8n-nodes-ffmpeg-studio.ffmpegAdvanced",
      "typeVersion": 1,
      "position": [
        580,
        300
      ]
    },
    {
      "parameters": {
        "resource": "file",
        "operation": "list",
        "path": "/output/hls/"
      },
      "id": "list-001",
      "name": "List HLS Files",
      "type": "n8n-nodes-base.readBinaryFiles",
      "typeVersion": 1,
      "position": [
        820,
        300
      ]
    }
  ],
  "connections": {
    "Start": {
      "main": [
        [
          {
            "node": "Transcode to H.264/AAC",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transcode to H.264/AAC": {
      "main": [
        [
          {
            "node": "Generate HLS Segments",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate HLS Segments": {
      "main": [
        [
          {
            "node": "List HLS Files",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {},
  "meta": {
    "description": "Prepare a video for HTTP Live Streaming (HLS): transcode to web-compatible H.264/AAC, then segment into 6-second HLS chunks with an M3U8 playlist.",
    "tags": [
      "hls",
      "streaming",
      "vod",
      "m3u8",
      "cdn",
      "video-delivery"
    ]
  }
}
Pro

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

About this workflow

HLS Streaming Prep (Convert → HLS Segments). Uses n8n-nodes-ffmpeg-studio, readBinaryFiles. Event-driven trigger; 4 nodes.

Source: https://github.com/ArielleTolome/n8n-nodes-ffmpeg/blob/196f489f8ad79c6f1f70ef8d88b582b5d0f8f10b/examples/hls-streaming-prep.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

Manual Executecommand. Uses executeCommand, manualTrigger, readBinaryFiles. Event-driven trigger; 4 nodes.

Execute Command, Read Binary Files
General

Read Multiple Files From Disk. Uses manualTrigger, readBinaryFiles. Event-driven trigger; 2 nodes.

Read Binary Files
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

Http-Handle. Uses httpRequest. Event-driven trigger; 13 nodes.

HTTP Request
General

Absen Otomatis. Uses ssh, executeWorkflowTrigger, scheduleTrigger, httpRequest. Event-driven trigger; 12 nodes.

Ssh, Execute Workflow Trigger, HTTP Request