video-ad-specs

作者: halt-catch-fire

We need to translate the given text from English to Traditional Chinese. The text describes a skill for video ad creation with platform-specific specs. We must preserve the name "video-ad-specs" but it's not in the text, so we don't include it. We translate the entire text inside <text> tags. No extra commentary, no labels. Just the translation. The text: "Video ad creation with exact platform-specific specs for TikTok, Instagram, YouTube, Facebook, LinkedIn. Covers dimensions, duration limits, AIDA framework, and caption requirements. Use for: video ads, social media ads, paid media creative, video marketing, ad production. Triggers: video ad, social media ad, tiktok ad, instagram ad, youtube ad, facebook ad, linkedin ad, video creative, ad specs, paid media, video marketing, ad production, reels ad, stories ad, pre roll, bumper ad" We need to translate platform names? They are proper nouns, but in Chinese they are often translated or kept as is. TikTok, Instagram, YouTube

npx skills add https://github.com/halt-catch-fire/skills --skill video-ad-specs

Install the belt CLI skill: npx skills add belt-sh/cli

Video Ad Specs

Create platform-specific video ads via inference.sh CLI.

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Generate a vertical video ad scene
belt app run bytedance/seedance-2-0 --input '{
  "prompt": "vertical video, person excitedly unboxing a product, clean modern room, bright natural lighting, social media ad style, authentic feeling",
  "ratio": "9:16",
  "generate_audio": true
}'

Platform Specifications

TikTok

SpecValue
Aspect ratio9:16 (vertical)
Resolution1080 x 1920 px
Duration5-60 seconds (15-30s recommended)
File sizeMax 500 MB
FormatMP4, MOV
SoundOn by default (design with sound)
Text safe zone150px from all edges
Hook window1 second — first frame must grab attention

Instagram Reels

SpecValue
Aspect ratio9:16 (vertical)
Resolution1080 x 1920 px
DurationUp to 90 seconds (15-30s for ads)
Cover imageSeparate upload, shows in grid
SoundOn by default
Caption areaBottom 20% reserved for text overlay

Instagram Stories

SpecValue
Aspect ratio9:16
Resolution1080 x 1920 px
DurationUp to 15 seconds per segment
Swipe-up/LinkAvailable for ads
Top/bottom14% top and 20% bottom = unsafe for key content

YouTube

FormatAspectDurationSkip
Bumper16:96 seconds exactlyNon-skippable
Non-skippable16:915 secondsNon-skippable
Skippable (TrueView)16:9Any lengthSkip after 5 seconds
Shorts9:16Up to 60 secondsN/A

Resolution: 1920 x 1080 (16:9) or 1080 x 1920 (Shorts)

Facebook Feed

SpecValue
Aspect ratio1:1 (square) or 4:5 (recommended for mobile)
Resolution1080 x 1080 or 1080 x 1350
DurationUp to 240 min (15-30s recommended)
AutoplaySilent — captions are essential
Sound85% of Facebook video is watched without sound

LinkedIn

SpecValue
Aspect ratio1:1 or 16:9
Resolution1080 x 1080 or 1920 x 1080
Duration3 seconds to 10 minutes (15-30s for ads)
ToneProfessional
AutoplaySilent in feed

AIDA Framework for Video Ads

PhaseTimeGoalTechnique
Attention0-3sStop the scrollPattern interrupt, bold visual, question
Interest3-10sKeep watchingState the problem, show relevance
Desire10-20sWant the solutionShow the product/outcome, social proof
ActionFinal 3-5sClick/buy/sign upClear CTA, urgency, offer

Hook Techniques (First 3 Seconds)

TechniqueExample
Bold statement"This tool replaced my entire marketing team"
Question"Why are you still doing this manually?"
Surprising visualUnexpected transformation, before/after reveal
Pattern interruptStart mid-action, unusual angle, bright color
Social proof"2 million people switched to this"
Pain point"If you hate [common frustration], watch this"

Creating Video Ads

Vertical (TikTok, Reels, Stories, Shorts)

# Hook scene (0-3s)
belt app run google/veo-3-1-fast --input '{
  "prompt": "vertical 9:16 video, close-up of hands struggling with tangled cables and messy desk, frustrated energy, shaky handheld camera, authentic social media style, bright lighting"
}'

# Solution reveal (3-15s)
belt app run bytedance/seedance-2-0 --input '{
  "prompt": "vertical video, smooth product reveal, clean wireless charging station on minimalist desk, satisfying organization transformation, bright modern room, social media ad aesthetic",
  "ratio": "9:16",
  "generate_audio": true
}'

# Add voiceover
belt app run falai/dia-tts --input '{
  "prompt": "[S1] Stop wasting time with this mess. This one product changed my entire setup. Everything charges. Everything is organized. Link in bio."
}'

# Merge video + audio
belt app run infsh/video-audio-merger --input '{
  "video": "solution-reveal.mp4",
  "audio": "voiceover.mp3"
}'

# Add captions (critical for silent autoplay)
belt app run infsh/caption-videos --input '{
  "video": "ad-with-audio.mp4",
  "caption_file": "captions.srt"
}'

Square (Facebook, LinkedIn Feed)

belt app run google/veo-3-1-fast --input '{
  "prompt": "square 1:1 video, professional person at desk discovering a new software tool, laptop screen showing clean dashboard, natural office lighting, corporate commercial style, satisfied expression"
}'

YouTube Bumper (6 Seconds)

# 6-second bumper: one message, one visual, one CTA
belt app run google/veo-3-1-fast --input '{
  "prompt": "6 second product ad, quick montage of a sleek app being used on phone, fast cuts, modern, energetic, brand logo reveal at end, punchy and dynamic, wide 16:9"
}'

# Keep it tight
belt app run falai/dia-tts --input '{
  "prompt": "[S1] Your reports. Automated. Try DataFlow free."
}'

Captions Are Mandatory

85% of Facebook and 40%+ of Instagram video is watched on mute.

Caption Best Practices

RuleReason
Always add captionsSilent viewing is the default on most platforms
Large, readable fontSmall text is invisible on mobile
High contrastWhite text with dark outline/background
Centered or bottom-thirdStandard viewing position
Max 2 lines at a timeMore text = can't be read fast enough
Key words in bold/colorDraws eye to important words
# Generate captions from audio
# (create SRT file from your script, then burn in)
belt app run infsh/caption-videos --input '{
  "video": "ad-video.mp4",
  "caption_file": "ad-captions.srt"
}'

Ad Structure Templates

Testimonial Ad (15-30s)

TimeContent
0-3sCustomer states the problem they had
3-15sHow they discovered and tried the product
15-25sThe specific result they achieved
25-30sProduct name + CTA

Demo Ad (15-30s)

TimeContent
0-3sThe problem (text or visual)
3-20sProduct demo showing the solution
20-25sKey result/benefit
25-30sCTA + offer

Before/After Ad (15s)

TimeContent
0-3s"Before" state (messy, slow, frustrating)
3-5sTransition / product introduction
5-12s"After" state (clean, fast, satisfying)
12-15sCTA

Common Mistakes

MistakeProblemFix
No hook in first 1-3sViewer scrolls pastOpen with pattern interrupt
Landscape video on TikTok/ReelsLetterboxed, looks amateurUse 9:16 for vertical platforms
No captionsMost viewers watch silentAlways add captions
CTA too lateViewers already leftClear CTA within last 5 seconds
Too long for platformForced skip or dropoutMatch platform duration norms
Same ad for all platformsWrong specs, wrong toneCreate platform-specific versions
Logo in first 3sFeels like a commercial, gets skippedSave branding for the end
Text in unsafe zonesCut off by platform UICheck safe zone per platform

Checklist

  • Correct aspect ratio for target platform
  • Hook in first 1-3 seconds
  • Captions added (readable, high contrast)
  • CTA clear and within final 5 seconds
  • Duration matches platform norms
  • Text outside platform unsafe zones
  • Audio designed for both sound-on and sound-off
  • Platform-specific version (not one-size-fits-all)

Related Skills

npx skills add inference-sh/skills@ai-video-generation
npx skills add inference-sh/skills@video-prompting-guide
npx skills add inference-sh/skills@text-to-speech
npx skills add inference-sh/skills@prompt-engineering

Browse all apps: belt app list

來自 halt-catch-fire 的更多技能

ai-image-generation
halt-catch-fire
透過 inference.sh CLI 使用 GPT-Image-2、FLUX、Gemini、Grok、Seedream、Reve 及 50 多種模型生成 AI 圖像。模型包括:GPT-Image-2、FLUX Dev LoRA、FLUX.2 Klein LoRA、Gemini 3 Pro Image、Grok Imagine、Seedream 4.5、Reve、ImagineArt。功能:文字轉圖像、圖像轉圖像、修補、LoRA、圖像編輯、放大、文字渲染。適用於:AI 藝術、產品模型、概念藝術、社交媒體圖形、行銷視覺、插圖。觸發詞:flux、圖像生成、AI 圖像、文字轉...
creativemediaimage
ai-video-generation
halt-catch-fire
We need to translate the given text from English to Traditional Chinese. The instruction says to preserve product names, protocol names, URLs, numbers, and technical terms. So names like Google Veo, Seedance 2.0, HappyHorse, Wan, Grok, inference.sh CLI, Veo 3.1, etc. should remain as is. Also preserve terms like text-to-video, image-to-video, etc. but translate the surrounding Chinese text. The text inside <text> is a description of an agent skill. We need to output only the translated text, no extra labels. Let's translate paragraph by paragraph: "Generate AI videos with Google Veo, Seedance 2.0, HappyHorse, Wan, Grok and 40+ models via inference.sh CLI." -> "通過 inference.sh CLI 使用 Google Veo、Seedance 2.0、HappyHorse、Wan、Grok 及 40 多個模型生成 AI 影片。" "Models: Veo 3.1, Veo 3,
creativevideomedia
twitter-automation
halt-catch-fire
We need to translate the given text from English to Traditional Chinese. The instruction says to preserve product names, protocol names, URLs, numbers, and technical terms. The name "twitter-automation" is to be preserved but not included unless it appears in the source text. The source text does not include that name, so we don't add it. We translate only the text inside <text>. No extra labels or commentary. The text: "Automate Twitter/X with posting, engagement, and user management via inference.sh CLI. Apps: x/post-tweet, x/post-create (with media), x/post-like, x/post-retweet, x/dm-send, x/user-follow. Capabilities: post tweets, schedule content, like posts, retweet, send DMs, follow users, get profiles. Use for: social media automation, content scheduling, engagement bots, audience growth, X API. Triggers: twitter api, x api, tweet automation, post to twitter, twitter bot, social media automation, x..." We need to translate terms like "Automate",
marketingapicommunication
ai-avatar-video
halt-catch-fire
透過 inference.sh CLI 建立 AI 虛擬角色與說話頭像影片。推薦:P-Video-Avatar(最快、最便宜、內建 TTS)。另可選:OmniHuman、Fabric、PixVerse。音訊:Inworld TTS-2(支援 100 多種語言、角色情感引導)、ElevenLabs、Kokoro。功能:音訊驅動虛擬角色、文字轉虛擬角色、唇形同步影片、說話頭像生成、虛擬主持人、UGC 內容。適用於:AI 主持人、解說影片、虛擬網紅、配音、行銷影片、UGC 廣告、遊戲虛擬角色等。
videocreativemedia
agent-browser
halt-catch-fire
透過 inference.sh 為 AI 代理提供瀏覽器自動化功能。可導覽網頁、使用 @e 參考與元素互動、擷取螢幕截圖、錄製影片。功能包括:網頁抓取、表單填寫、點擊、打字、拖放、檔案上傳、執行 JavaScript。適用於:網頁自動化、資料擷取、測試、代理瀏覽、研究。觸發詞:瀏覽器、網頁自動化、抓取、導覽、點擊、填寫表單、螢幕截圖、瀏覽網頁、playwright、無頭瀏覽器、網頁代理、上網、錄製影片
browser-automationweb-scrapingtesting
web-search
halt-catch-fire
透過 inference.sh CLI 使用 Tavily 和 Exa 進行網路搜尋與內容擷取。應用:Tavily 搜尋、Tavily 擷取、Exa 搜尋、Exa 回答、Exa 擷取。功能:AI 驅動搜尋、內容擷取、直接回答、研究。用途:研究、RAG 管線、事實查核、內容彙整、代理程式。觸發詞:網路搜尋、tavily、exa、搜尋 API、內容擷取、研究、網際網路搜尋、AI 搜尋、搜尋助理、網頁抓取、rag、perplexity 替代方案
researchweb-scrapingapi
infsh-cli
halt-catch-fire
透過 inference.sh CLI 執行 250 多個 AI 應用程式,包括圖片生成、影片創作、大型語言模型、搜尋、3D、Twitter 自動化。模型包含:FLUX、Veo、Gemini、Grok、Claude、Seedance、OmniHuman、Tavily、Exa、OpenRouter 等眾多選擇。適用於執行 AI 應用程式、生成圖片/影片、呼叫大型語言模型、網路搜尋或自動化 Twitter 時使用。觸發詞:inference.sh、infsh、ai model、run ai、serverless ai、ai api、flux、veo、claude api、image generation、video generation、openrouter、tavily、exa search、twitter api、grok
developmentapicreative
landing-page-design
halt-catch-fire
著陸頁轉換優化,包含佈局規則、英雄區塊設計與CTA心理學。涵蓋首屏公式、社會證明放置、行動設計與F型閱讀模式。適用於:新創著陸頁、產品頁面、SaaS行銷、轉換優化。觸發詞:著陸頁、英雄區塊、首屏、轉換優化、著陸頁設計、CTA按鈕、英雄圖片、著陸頁佈局、SaaS著陸頁、產品頁面設計、轉換率、著陸頁...