Skip to Content
FeaturesShorts Extractor

Shorts Extractor

Shorts Extractor turns your long-form uploads into a batch of finished, publish-ready Shorts. Upload the source file, pick how many clips you want, and collect the MP4s a few minutes later — already trimmed, cropped to 9:16, and captioned.

What it is

An end-to-end pipeline that runs entirely in the cloud:

  1. Transcription — OpenAI Whisper transcribes the audio with word-level timestamps.
  2. Moment detection — GPT-4o-mini reads the full transcript and picks the segments most likely to go viral as Shorts.
  3. Auto-cut & crop — each pick is trimmed to a 20–90 second window and cropped to 9:16 with face tracking so the speaker stays in frame.
  4. Caption burn-in — captions are rendered directly into the MP4 in your chosen style. Non-Latin scripts (Hindi, etc.) are rewritten to natural Roman-script for readability.
  5. Publish — each clip ships with an AI-written title, description, and hashtag set. Publish to YouTube Shorts in one click, or download the MP4 for anywhere else.

The output is one MP4 per clip — no separate SRT files, no post-processing.

Who should use it

  • Long-form creators who want to fan out into Shorts without hiring an editor.
  • Podcast and interview channels sitting on hours of underclipped material.
  • Course and tutorial creators looking for top-of-funnel content that drives back to the main video.
  • Anyone reviving a back catalog of uploads that never went viral.

How to use it

Open Shorts Extractor

From your dashboard sidebar, click Shorts to open the extractor.

Upload your source video

Drop or select an MP4, MOV, WebM, or MKV file. The maximum source duration is 60 minutes. Uploads go directly to secure cloud storage — nothing routes through a slow proxy.

Direct-to-cloud uploads mean you can move files up to a few GB without hitting Vercel’s request-body limit. Progress is shown live in the modal.

Configure the extraction

Set:

  • Number of clips (1–8) — if the video doesn’t have that many strong moments, the AI returns fewer. Quality over quantity.
  • Aspect ratio — 9:16 (Shorts / Reels / TikTok) is the default. 1:1 and 4:5 are supported for Instagram feed posts.
  • Caption style — TikTok (bold, high-impact), Cinematic (subtle stroke), Clean (opaque box), or None.

Launch and wait

Click Extract. You’ll get a bell notification when the pipeline completes. Typical 10–15 minute sources finish in 2–4 minutes; 60-minute sources take 5–8 minutes.

Review, edit, publish

Each clip appears as a card with a preview player, AI-written title, hashtags, and buttons to Download or Publish to YouTube. Rename the extraction or individual clip titles inline. Copy titles and hashtags with one click.

How the AI picks moments

The segment detector reads your entire transcript, not just the intro. It scores every candidate window against known Shorts retention patterns and applies three coverage rules:

  • Spread across the runtime. For 2+ clips, the AI divides your video into buckets and tries to pick one clip per bucket instead of clustering them in the first 5 minutes.
  • Follow-through required. Clips are auto-extended toward a 30-second target so you get the setup AND the payoff, not a floating punchline.
  • No overlaps. Picks are deduped with a 10-second minimum gap so two clips can’t cover the same beat.

If the AI can only find one strong moment in a 20-minute video, it returns one clip. You never pay extra AI credits for the picks that didn’t happen.

Caption styles

Three preset burns and one opt-out:

  • TikTok — bold Impact font, hard black stroke, positioned mid-frame. Highest visual impact.
  • Cinematic — Inter with a subtle drop shadow, positioned near the bottom. Cleaner look for narrative content.
  • Clean — Inter on an opaque box near the bottom. Maximum readability, minimum style.
  • None — no captions. Useful when your source video has embedded captions or when you want to add your own later.

Face-tracked 9:16 crop

For vertical output, EnhanceTube runs face detection across a sample of frames and picks a horizontal crop centre that keeps the speaker locked in the vertical frame. If no face is detected the crop falls back to the geometric centre.

1:1 and 4:5 outputs skip the face detection step — those aspect ratios are close enough to square that a centred crop is virtually always correct, and skipping the detection saves about a second of pipeline time.

Language support

Whisper transcribes 90+ languages. English, Hindi, and Hinglish (Hindi written in Roman letters) are specifically tuned:

  • Latin scripts — captions render as-is with proper casing and punctuation.
  • Non-Latin scripts — before burning captions, an LLM rewrites the transcript to natural Hinglish. So a spoken “क्या हाल है” becomes an on-screen “kya haal hai”, not the mechanical ITRANS spelling “kyaa haala hai”.
  • Mixed content — English words in a Hindi transcript (“YouTube”, “algorithm”) stay in English. Only non-Latin characters are rewritten.

Publishing to YouTube

The Publish to YouTube button on each clip sends the MP4 straight to your connected YouTube channel using the YouTube Data API. You can set:

  • Visibility — public, unlisted, or private at publish time.
  • Title, description, hashtags — pre-filled by the AI, editable before publishing.
  • Category — defaults to your main channel category.

If you’d rather post to Instagram Reels, TikTok, or anywhere else, use Download to grab the raw MP4.

Editing after extraction

  • Rename the extraction — click the pencil next to the extraction title in the history list.
  • Edit clip titles and hashtags — each clip card has copy-to-clipboard buttons and an editable title/description field before publishing.
  • Re-extract — if you want different picks or a different caption style, start a new extraction on the same source (a new upload is required — source files are cleaned up after processing).

Deeper edits like trimming a clip’s exact start/end or replacing a caption line aren’t supported yet. That’s on the roadmap.

Limits and plans

  • Source duration — capped at 60 minutes per file across all plans.
  • File formats — MP4, MOV, WebM, MKV.
  • Concurrent extractions — one extraction runs at a time per workspace.
  • Monthly quota — number of extractions per month depends on your plan. See the pricing page for current allowances.
  • AI credits — extractions consume from your workspace’s shared AI credit pool. Cost scales with the source video’s duration — roughly 60 credits per minute of source audio. See AI Credits for details.

Retention

Rendered clips and their metadata stay in your dashboard for 7 days after completion, then are auto-deleted along with their S3 files. Download or publish anything you want to keep within that window. Deleting an extraction manually removes everything immediately — the raw upload, the rendered clips, and the transcript.

Troubleshooting

  • “This video isn’t publicly accessible” — only appears on the (mothballed) YouTube-URL path. Use the direct upload flow instead.
  • “Segment detector returned no clips” — the source may be too short or too repetitive for the AI to find a strong hook. Try a longer or more varied source.
  • “Whisper transcription failed” — usually a transient OpenAI outage. Retry the extraction; the AI credit for the failed Whisper call is refunded automatically.
  • “Your uploaded file couldn’t be read” — the file may be corrupt or in an unsupported container. Re-encode to MP4 (H.264) and re-upload.
  • Captions look wrong for Hindi/mixed content — the LLM rewrite is best-effort. If a specific clip is unreadable, try re-extracting with Caption style: None and add captions yourself in YouTube Studio.
  • Face is off-centre in the 9:16 output — if the speaker moves across the frame during the clip, the crop follows a smoothed centre. Very fast horizontal movement can look off. Extract at 1:1 or 4:5 if this is a problem for a specific clip.

FAQ

Does the AI ever make up dialogue in the captions?

No. Whisper transcribes what’s actually said, and the caption rewrite step only normalises spelling — it can’t add or change meaning. If a clip has weird spelling it’s a transcription miss, not fabrication.

Can I extract Shorts from a YouTube URL instead of uploading?

Not currently. The YouTube download path exists in the code but isn’t exposed in the UI — YouTube’s bot detection makes it unreliable for cloud servers. Upload the file directly for consistent results.

What happens if my extraction fails halfway through?

The workspace’s extraction quota is refunded automatically for any job that dies before the render step (which is where the real S3 work happens). AI credits for Whisper are also refunded if the transcription step itself failed. You’ll get a bell notification explaining what went wrong.

Can I run multiple extractions at once?

One extraction runs at a time per workspace — the pipeline is compute-heavy and running two concurrently would either slow both down or blow out the memory budget. Queue as many as you want; they process one after the other.

How long are my clips stored?

Seven days from completion. Download anything you want to keep. Publishing to YouTube also uploads to your YouTube library, which has its own retention policy.

Last updated on