Add Captions to your Videos - Automate Tiktok Style Subtitles

Add Captions to your Videos - Automate Tiktok Style Subtitles

by prodmarkllc

Automatically add captions your videos - give a public video url and get the same video with TikTok-style captions. According to recent studies arou...

36 runs
4 users
Try This Actor

Opens on Apify.com

About Add Captions to your Videos - Automate Tiktok Style Subtitles

Automatically add captions your videos - give a public video url and get the same video with TikTok-style captions. According to recent studies around 70% of consumers watch videos with the sound off in public places. Make sure your videos have captions with this Actor and engage with more users.

What does this actor do?

Add Captions to your Videos - Automate Tiktok Style Subtitles is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.

Key Features

  • Cloud-based execution - no local setup required
  • Scalable infrastructure for large-scale operations
  • API access for integration with your applications
  • Built-in proxy rotation and anti-blocking measures
  • Scheduled runs and webhooks for automation

How to Use

  1. Click "Try This Actor" to open it on Apify
  2. Create a free Apify account if you don't have one
  3. Configure the input parameters as needed
  4. Run the actor and download your results

Documentation

Automatically transcribe and add animated TikTok-style captions. Perfect for creating engaging social media content with professional word-by-word animated captions. Stop paying $25/mon for services that add AI captions for social media videos. With this Apify actor you can pay less than $0.10 per short. This actor is designed for adding captions to your own videos. Just provide a publicly accessible video URL (from your own hosting, S3, CDN, etc.). # What types of captions can you add with Caption Maker? ## Presets Bounce Animation - Words bounce as they're spoken (ideal for engaging TikTok-style content) Highlight Color - Words highlight with a color as they're spoken (perfect for modern social media) Background Box - Captions appear in a colored background box (great for readability) ## How much will it cost to run? ### Actor Pricing Caption Maker has a startup cost and then $0.03 per 10 sec of video. - $0.07 startup fee (per run) - $0.03 per 10 seconds of video ## How to use Caption Maker? ### Step 1: Prepare your video Provide a publicly accessible video URL (MP4 or MOV). The video must be directly accessible - upload to your own hosting, S3, CDN, or any file hosting service that provides direct links. ### Step 2: Configure caption style Choose from three animation presets: - Bounce Animation: Energetic style where words bounce on emphasis - Highlight Color: Modern style where active words change color - Background Box: Classic style with text in a colored box ### Step 3: Customize colors or other settings (optional) Change the default highlightColor, aspectRatio or fontSize ### Step 4: Run the actor The actor will: 1. Download your video 2. Extract and transcribe the audio 3. Generate word-level timestamps 4. Render the video with animated captions 5. Save the captioned video, SRT, and JSON files to your Apify storage ## Caption Style Presets ### Bounce Animation Words bounce and scale up as they're spoken, creating an energetic, attention-grabbing effect. - Best for: High-energy content that needs to stand out - Customization: Uses highlightColor for the bounce effect - Use case: TikTok videos, promotional content, entertainment ### Highlight Color Words appear in white and change to your chosen highlight color as they're spoken. This creates a smooth, modern look perfect for social media content. - Best for: Modern, clean aesthetic - Customization: Set highlightColor to any hex color (default: #FFD700 gold) - Use case: Professional content, educational videos, brand content ### Background Box All caption words appear inside a colored background box for maximum readability against any video background. - Best for: Videos with busy backgrounds or varying lighting - Customization: Set backgroundColor to any hex color (default: #0a0a0a off-black) - Use case: Vlogs, outdoor videos, action content ## Input Parameters ### Required Parameters #### videoInput - Type: String - Description: Publicly accessible video URL (MP4/MOV) - Example: "https://example.com/my-video.mp4" ### Optional Parameters #### captionPreset - Type: String - Default: "bounce" - Options: "bounce", "highlightColor", "backgroundBox" - Description: Choose the animation style for captions #### highlightColor - Type: String (hex color) - Default: "#FFD700" - Description: Color for highlighting active words or bounce animation - Example: "#00FFFF" (cyan), "#FF1493" (pink) #### backgroundColor - Type: String (hex color) - Default: "#0a0a0a" - Description: Background box color (only applies to backgroundBox preset) - Example: "#000000" (black), "#FFFFFF" (white) #### fontSize - Type: Integer - Default: 48 - Range: 24-120 - Description: Base font size for captions in pixels #### captionPosition - Type: String - Default: "bottom" - Options: "very-top", "top", "top-middle", "middle", "bottom-middle", "bottom", "very-bottom" - Description: Vertical position for captions on the video #### aspectRatio - Type: String - Default: "original" - Options: - "original" - Preserve source dimensions - "16:9" - Landscape/YouTube - "9:16" - Vertical/TikTok/Reels - "1:1" - Square/Instagram - "4:5" - Instagram Portrait - Description: Output video aspect ratio #### outputSRT - Type: Boolean - Default: true - Description: Generate SRT subtitle file #### outputJSON - Type: Boolean - Default: true - Description: Generate JSON caption data file #### outputS3Url - Type: Boolean - Default: true - Description: Include direct S3 URL in output for fast video access. Note: S3 URLs expire after ~7 days. ## Input Examples ### Bounce Animation (Default) json { "videoInput": "https://example.com/my-video.mp4" } ### Highlight Color json { "videoInput": "https://example.com/my-video.mp4", "captionPreset": "highlightColor" } ### Background Box json { "videoInput": "https://example.com/my-video.mp4", "captionPreset": "backgroundBox" } ## API Usage Examples ### Using cURL Start an actor run via command line: bash curl -X POST https://api.apify.com/v2/acts/prodmarkllc~caption-maker/runs -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_APIFY_TOKEN" -d '{"videoInput": "https://example.com/my-video.mp4", "captionPreset": "highlightColor", "highlightColor": "#FFD700"}' ### Using JavaScript/Node.js (Apify Client) javascript import { ApifyClient } from 'apify-client'; const apifyClient = new ApifyClient({ token: 'YOUR_APIFY_TOKEN', }); // Start the actor const run = await apifyClient .actor('prodmarkllc~caption-maker') .call({ videoInput: 'https://example.com/my-video.mp4', captionPreset: 'highlightColor', highlightColor: '#FFD700' }); console.log('Run started:', run); // Wait for results const { items } = await apifyClient .dataset(run.defaultDatasetId) .listItems(); console.log('Captioned video data:', items); ### Using Fetch API (Browser/Node.js) javascript const myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); myHeaders.append("Authorization", "Bearer YOUR_APIFY_TOKEN"); const requestBody = JSON.stringify({ videoInput: "https://example.com/my-video.mp4", captionPreset: "highlightColor", highlightColor: "#FFD700" }); const requestOptions = { method: "POST", headers: myHeaders, body: requestBody, redirect: "follow" }; fetch("https://api.apify.com/v2/acts/prodmarkllc~caption-maker/runs", requestOptions) .then((response) => response.json()) .then((run) => { console.log("Run started:", run); // Poll for completion or use webhooks }) .catch((error) => console.error("Error:", error)); ### Using Python python from apify_client import ApifyClient client = ApifyClient('YOUR_APIFY_TOKEN') # Start the actor run = client.actor('prodmarkllc~caption-maker').call( run_input={ 'videoInput': 'https://example.com/my-video.mp4', 'captionPreset': 'highlightColor', 'highlightColor': '#FFD700' } ) # Fetch results from the dataset dataset_items = client.dataset(run['defaultDatasetId']).list_items().items print('Captioned video data:', dataset_items) ### Get Actor Run Status bash curl https://api.apify.com/v2/actor-runs/RUN_ID -H "Authorization: Bearer YOUR_APIFY_TOKEN" Replace RUN_ID with the ID from the start response. ### Get Dataset Results bash curl https://api.apify.com/v2/datasets/DATASET_ID/items -H "Authorization: Bearer YOUR_APIFY_TOKEN" Replace DATASET_ID with defaultDatasetId from the run response. ## Results Caption Maker saves all outputs to your Apify Key-Value Store and Dataset. Here's what you'll receive: ### Key-Value Store - output.mp4 - Your video with animated captions - captions.srt - Standard SRT subtitle file (if outputSRT is true) - captions.json - Detailed caption data with timestamps (if outputJSON is true) ### Dataset Each run adds a record with: json { "videoUrl": "https://example.com/my-video.mp4", "outputVideo": "output.mp4", "captionsSrt": "captions.srt", "captionsJson": "captions.json", "s3VideoUrl": "https://s3.us-east-1.amazonaws.com/remotionlambda-.../output.mp4", "duration": 120.5, "wordCount": 245, "preset": "highlightColor", "status": "success" } > Note: The s3VideoUrl provides direct S3 access for fast downloads but expires after ~7 days. For permanent storage, use the Apify Key-Value Store URLs. ### Caption JSON Format The JSON file contains detailed word-level timing data: json { "segments": [ { "start": 0.5, "end": 2.3, "text": "Hello everyone", "words": [ { "word": "Hello", "start": 0.5, "end": 1.0 }, { "word": "everyone", "start": 1.1, "end": 2.3 } ] } ] } ### What are the video size and duration limits? - Duration: Videos must be under 15 minutes (hard limit) - Audio extraction: Videos are converted to MP3 audio (~15-20 minutes fits in OpenAI Whisper's 25MB limit) - Resolution: Works best with standard resolutions (1080p, 720p, 480p) ## Support and Issues Need help or found a bug? Report issues for runs on Apify --- Version: 0.3.0 --- Made with care for content creators who want to make their videos more accessible and engaging. (AI wrote this README, that last line was definitely AI)

Common Use Cases

Market Research

Gather competitive intelligence and market data

Lead Generation

Extract contact information for sales outreach

Price Monitoring

Track competitor pricing and product changes

Content Aggregation

Collect and organize content from multiple sources

Ready to Get Started?

Try Add Captions to your Videos - Automate Tiktok Style Subtitles now on Apify. Free tier available with no credit card required.

Start Free Trial

Actor Information

Developer
prodmarkllc
Pricing
Paid
Total Runs
36
Active Users
4
Apify Platform

Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.

Learn more about Apify

Need Professional Help?

Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.

Find a Specialist

Trusted by millions | Money-back guarantee | 24/7 Support