Combine scrolling screenshot + audio + subtitle

Hi,

This is cross posted to StackOverflow as I wasn’t sure which one was more active.

I’m attempting to use Zapier with Transloadit to take scrolling screenshot video and then combine said video with elevenlabs audio and burned in subtitles.

I’ve gotten it to work with scrolling video + elevenlabs audio but the moment I tried to burn in subtitles audio and subtitles won’t get added and all I get is a scrolling video.

What am I doing wrong?

Screenshot of relevant part of Zap:

Assembly code:

{
  "steps": {
    "screenshot": {
      "robot": "/html/convert",
      "result": false,
      "format": "png",
      "fullpage": false,
      "width": 720,
      "height": 1280,
      "url": "${fields.screenshot_url}"
    },
    "scroll": {
      "use": {
        "steps": [
          {
            "name": "screenshot",
            "as": "image"
          }
        ]
      },
      "robot": "/video/merge",
      "result": true,
      "duration": 30,
      "ffmpeg": {
        "vf": "scroll=vertical=0.001",
        "f": "mp4",
        "pix_fmt": "yuv420p"
      },
      "ffmpeg_stack": "v6.0.0",
      "framerate": 30,
      "preset": "empty"
    },
    ":original": {
      "robot": "/upload/handle",
      "result": false
    },
    "video_filtered": {
      "use": ":original",
      "robot": "/file/filter",
      "result": true,
      "accepts": [
        [
          "${file.mime}",
          "regex",
          "video"
        ]
      ],
      "error_on_decline": false
    },
    "subtitle_filtered": {
      "use": ":original",
      "robot": "/file/filter",
      "result": true,
      "accepts": [
        [
          "${file.mime}",
          "regex",
          "application/x-subrip"
        ]
      ],
      "error_on_decline": false
    },
    "add_subtitles": {
      "robot": "/video/subtitle",
      "use": {
        "steps": [
          {
            "name": "scroll",
            "as": "video"
          },
          {
            "name": "subtitle_filtered",
            "as": "subtitles"
          }
        ]
      },
      "preset": "ipad-high",
      "ffmpeg_stack": "v6.0.0",
      "subtitles_type": "burned",
      "font": "Arial",
      "border_color": "00000000",
      "font_color": "FFFFFF",
      "border_style": "box"
    },
    "add_audio": {
      "robot": "/video/encode",
      "use": {
        "steps": [
          {
            "name": "add_subtitles",
            "as": "video"
          },
          {
            "name": ":original",
            "as": "audio"
          }
        ]
      },
      "preset": "ipad-high",
      "ffmpeg_stack": "v6.0.0",
      "ffmpeg": {
        "c:v": "copy",
        "c:a": "aac",
        "strict": "experimental"
      }
    },
    "store_video": {
      "use": [
        "add_audio"
      ],
      "robot": "/s3/store",
      "credentials": "raf",
      "path": "final_output/${file.url_name}"
    },
    "store_original": {
      "use": [
        ":original"
      ],
      "robot": "/s3/store",
      "credentials": "raf",
      "path": "originals/${file.url_name}"
    }
  }
}

Here’s the assembly output

Hi,

I can see you received some help from the team at StackOverflow already.

Did you get this up and running or is your issue still persisting ?

Yukesh Shrestha did a fantastic job and helped me out over a Google meet. Very impressed by him.

1 Like

Hey that’s really great to hear! I will let him know your positive feedback!