DEV Community

Javid Jamae
Javid Jamae

Posted on Originally published at ffmpeg-micro.com

Repurpose a Podcast Episode into 10 Social Clips Automatically

Originally published at ffmpeg-micro.com

Podcast clipping SaaS tools like Opus Clip, Riverside, Podcastle, and Descript charge between $19 and $500 per month. If you're a solo creator, an agency, or an automation builder, there's a cheaper way: FFmpeg.

The Pipeline

  1. Start with one full podcast episode
  2. Trim clips with -ss and -t
  3. Resize for each platform (9:16 vertical, 1:1 square, 16:9 landscape)
  4. Add text overlays for muted autoplay
  5. Batch all 10 clips through a script or API

Trim a Clip

ffmpeg -i podcast.mp4 -ss 00:12:30 -t 00:00:45 -c copy clip1.mp4
Enter fullscreen mode Exit fullscreen mode

Or via the FFmpeg Micro API:

{
  "inputs": [{"url": "https://storage.example.com/podcast-ep42.mp4"}],
  "outputFormat": "mp4",
  "options": [
    {"option": "-ss", "argument": "00:12:30"},
    {"option": "-t", "argument": "00:00:45"},
    {"option": "-c:v", "argument": "libx264"},
    {"option": "-crf", "argument": "23"}
  ]
}
Enter fullscreen mode Exit fullscreen mode

Resize for Vertical (9:16)

ffmpeg -i clip1.mp4 -vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2" vertical-clip1.mp4
Enter fullscreen mode Exit fullscreen mode

Cost Comparison

Tool Monthly Cost
Opus Clip $19-$39/mo
Riverside $24/mo+
Descript $24-$33/mo
FFmpeg Micro Pay-per-minute, free tier

A 1-hour podcast split into 10 clips costs pennies with FFmpeg Micro. Not $24. Pennies.

Common Pitfalls

  • -c copy cuts on keyframes only (may start early)
  • Re-encode audio too (-c:a aac) to avoid drift
  • Add -pix_fmt yuv420p for social platform compatibility
  • Keep CRF at 23 or lower for mobile viewing

Read the full guide at ffmpeg-micro.com/blog/repurpose-podcast-social-clips-ffmpeg

Top comments (1)

Collapse
 
neusoftware profile image
Neu Software •

A few things we learned running our own server-side rendering pipeline for podcast clips, which map directly onto your pitfalls section:

  • -c copy is a trap for clip-per-moment workflows specifically. Keyframe spacing on phone and podcast-cam encodes is often 2-5 seconds, so "start the clip at the quote" silently drifts. We re-encode every cut; the render is slower but the in-point is honest.
  • For the 9:16 reframing, scale + pad only gets you a letterboxed talking head. If the speaker moves (stage talks, two-person interviews), you end up needing per-segment crop windows - which in our case comes from speaker-tracking data rather than ffmpeg filters, and that is the part that never fits in a one-liner.
  • Burned-in word-timed captions: drawtext works but gets painful at scale. Pipelines like ours eventually move to ASS subtitle files (-vf ass=...) because positioning and animation are far cheaper to manage per-clip than chained drawtext filters.
  • On cost: pay-per-minute is genuinely cheaper than $24/mo at low volume, but the hidden cost is failure handling - a batch where 3 of 10 jobs die mid-render still burns your input minutes. We handle this with automatic refunds on failed renders; whoever you sell to, people remember how failures are treated more than the per-minute rate.

Solid writeup - the -pix_fmt yuv420p reminder alone will save someone an hour of "why does this look fine locally but break on upload".

(We build Video To Reel, a mobile app that renders podcast clips server-side, so this pipeline is our day job. No link from us - just a good ffmpeg breakdown.)