VOOZH about

URL: https://apify.com/rover-omniscraper/media-downloader-actor

⇱ YouTube, TikTok, Instagram & 21+ Platforms video downloader Β· Apify


πŸ‘ Ultra-Fast Social Media Downloader – 21+ Platforms! avatar

Ultra-Fast Social Media Downloader – 21+ Platforms!

Pricing

from $4.00 / 1,000 results

Go to Apify Store

Ultra-Fast Social Media Downloader – 21+ Platforms!

Download videos, audio, and photos from 21+ social media platforms including YouTube, TikTok, Instagram, Twitter/X, Reddit, Facebook, Snapchat, Pinterest & more. Supports 144p to 4K quality, MP4/MP3/WebM formats, and up to 50 concurrent downloads for blazing-fast bulk media scraping.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

πŸ‘ Rover Omniscraper

Rover Omniscraper

Maintained by Community

Actor stats

0

Bookmarked

35

Total users

7

Monthly active users

2 months ago

Last modified

Share

Social Media Video Downloader - Apify Actor

Download videos from 21+ social media platforms with configurable quality, format, and concurrent processing.

πŸš€ Quick Start

Local Testing

# Install dependencies (already done if you see node_modules/)
npminstall
# Test with Instagram URLs (creates ./downloads/)
node test-runner.js
# Or test with custom URLs
echo'{"url":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","quality":"720"}'> test.json
# Edit src/main.js to read test.json instead of Apify input
node src/main.js

Run with Apify CLI

# Install Apify CLI globally
npminstall-g apify-cli
# Run locally with Apify storage
npx apify run
# Configure input in: apify_storage/key_value_stores/default/INPUT.json

πŸ“‹ Features

  • 21 Platforms: YouTube, TikTok, Instagram, Twitter/X, Reddit, Facebook, Bilibili, Vimeo, Twitch, Pinterest, SoundCloud, Snapchat, VK, OK.ru, Rutube, Tumblr, DailyMotion, Bluesky, Streamable, Loom, Newgrounds
  • Concurrent Downloads: 1-50 parallel downloads (default: 10)
  • Quality Options: 144p to 4K (2160p)
  • Format Support: MP4, WebM, MKV, MP3, OGG, WAV, Opus, GIF
  • FFmpeg Processing: Video+audio merging, remuxing, audio extraction, GIF conversion
  • Retry Logic: 3 attempts with exponential backoff
  • No External APIs: Embedded Cobalt server on localhost

🎯 Input Parameters

{
"url":"https://www.youtube.com/watch?v=...",
"urls":["https://...","https://..."],
"quality":"1080",
"downloadMode":"auto",
"audioFormat":"mp3",
"audioBitrate":"128",
"videoCodec":"h264",
"filenameStyle":"basic",
"concurrency":10,
"tiktokFullAudio":true,
"tiktokH265":false,
"twitterGif":true,
"youtubeHLS":false,
"youtubeDubLang":"en",
"disableMetadata":false,
"cookies":{},
"proxyConfiguration":{}
}

Single or Multiple URLs: Use either url (string) or urls (array), not both.

Quality Options

  • 144, 240, 360, 480, 720, 1080, 1440, 2160

Download Modes

  • auto - Video + audio (default)
  • audio - Audio only
  • mute - Video without audio

Audio Formats

  • best, mp3, ogg, wav, opus

Video Codecs (mainly YouTube)

  • h264 - Best compatibility (default)
  • av1 - Best quality
  • vp9 - Good balance

Filename Styles

  • classic - service_id_res.ext
  • basic - Title (res, service).ext (default)
  • pretty - Title (res, service).ext
  • nerdy - Title (res, service, id).ext

πŸ“¦ Output

Apify Run

  • Files: Stored in Apify Key-Value Store
  • Metadata: Pushed to Apify Dataset with:
    • Direct download URLs to Apify storage (not social media links)
    • File metadata (title, author, album, copyright, date, etc.)
    • File size, content type, status
    • Download timestamp

Local Run (test-runner.js)

  • Files: Saved to ./downloads/
  • Metadata: Appended to ./downloads/metadata.jsonl

Metadata Format

{
"url":"https://www.youtube.com/watch?v=...",
"service":"youtube",
"filename":"Rick Astley - Never Gonna Give You Up.mp4",
"fileSize":11839321,
"contentType":"video/mp4",
"kvStoreKey":"Rick_Astley_Never_Gonna_Give_You_Up.mp4",
"downloadUrl":"https://api.apify.com/v2/key-value-stores/abc123/records/Rick_Astley_Never_Gonna_Give_You_Up.mp4",
"status":"success",
"error":null,
"downloadedAt":"2026-04-08T18:12:27.743Z",
"metadata":{
"title":"Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
"artist":"Rick Astley",
"album":"Whenever You Need Somebody",
"copyright":"Β© 1987 PWL",
"date":"2009-10-25",
"sublanguage":"en"
}
}

Note: The downloadUrl field provides a direct link to download the file from Apify storage, making it easy for users to access their downloaded content without navigating through the platform.

πŸ§ͺ Test Results

Instagram (2026-04-08)

βœ… 3/3 downloads succeeded in 5.0 seconds

URLTypeSizeStatus
reel/DWyB-FxAY1pVideo2.59 MBβœ… Success
p/DWmtt6SkVALPhoto0.06 MBβœ… Success
reel/DTdLffwjkN-Video0.43 MBβœ… Success

YouTube (2026-04-08)

βœ… Download verified - 5.25 MB MP4 at 144p

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Apify Actor β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ src/main.js(Actor Entry) β”‚ β”‚
β”‚ β”‚ β€’ Initialize Apify β”‚ β”‚
β”‚ β”‚ β€’ Parse & validate input β”‚ β”‚
β”‚ β”‚ β€’ Configure proxy β”‚ β”‚
β”‚ β”‚ β€’ Start Cobalt server(localhost) β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ β”‚ β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ Cobalt APIServer(Embedded on 127.0.0.1) β”‚ β”‚
β”‚ β”‚ β€’ Express server on random port β”‚ β”‚
β”‚ β”‚ β€’ 21 service handlers β”‚ β”‚
β”‚ β”‚ β€’ FFmpeg processing β”‚ β”‚
β”‚ β”‚ β€’ Stream encryption & tunneling β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ β”‚ β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ Orchestrator(p-limit concurrency) β”‚ β”‚
β”‚ β”‚ β€’ Queue URLs β”‚ β”‚
β”‚ β”‚ β€’ Parallel downloads β”‚ β”‚
β”‚ β”‚ β€’ Progress tracking β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ β”‚ β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ Downloader(per URL) β”‚ β”‚
β”‚ β”‚ β€’ POST to Cobalt API β”‚ β”‚
β”‚ β”‚ β€’ Handle tunnel/redirect/picker β”‚ β”‚
β”‚ β”‚ β€’ Retry withbackoff(3 attempts) β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ β”‚ β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ Storage β”‚ β”‚
β”‚ β”‚ β€’ Save file to KVStore(Buffer) β”‚ β”‚
β”‚ β”‚ β€’ Push metadata to Dataset β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ”§ Development

Project Structure

/
β”œβ”€β”€ src/
β”‚ β”œβ”€β”€ main.js # Actor entry point
β”‚ β”œβ”€β”€ cobalt-server.js # Embedded Cobalt launcher
β”‚ β”œβ”€β”€ downloader.js # Single URL download
β”‚ β”œβ”€β”€ orchestrator.js # Parallel execution
β”‚ └── storage.js # Apify KV Store + Dataset
β”œβ”€β”€ cobalt-api/ # Embedded Cobalt source
β”‚ └── src/
β”‚ β”œβ”€β”€ processing/services/ # 21 platform handlers
β”‚ └── stream/ # FFmpeg,HLS, proxy
β”œβ”€β”€ packages/
β”‚ └── version-info/ # Version utilities(patched)
β”œβ”€β”€ .actor/
β”‚ β”œβ”€β”€ actor.json # Apify manifest
β”‚ └── INPUT_SCHEMA.json # Input schema
β”œβ”€β”€ Dockerfile # Node 20+ FFmpeg
β”œβ”€β”€ package.json
β”œβ”€β”€ test-runner.js # Local testing(no Apify)
β”œβ”€β”€ test-instagram.json # Sample input
β”œβ”€β”€ context.md # Full documentation
└── README.md # This file

Local Development Workflow

  1. Modify source files in src/
  2. Test locally: node test-runner.js
  3. Update context.md with changes
  4. Run with Apify: npx apify run
  5. Deploy: npx apify push

Adding New Features

  1. Read context.md to understand architecture
  2. Make changes in appropriate module
  3. Test with test-runner.js first
  4. Verify with full npx apify run
  5. Update context.md with what you changed

πŸ“ Configuration

Cookies for Authentication

Some platforms require cookies for private/restricted content:

{
"cookies":{
"youtube":[
{"name":"CONSENT","value":"YES+..."},
{"name":"VISITOR_INFO1_LIVE","value":"..."}
],
"instagram":[
{"name":"sessionid","value":"..."}
],
"tiktok":[
{"name":"sessionid","value":"..."}
]
}
}

Proxy Configuration

Use Apify's built-in proxy:

{
"proxyConfiguration":{
"useApifyProxy":true,
"apifyProxyGroups":["RESIDENTIAL"]
}
}

You might also like

YouTube Video Downloader

lurkapi/youtube-video-downloader

Download YouTube videos and audio. Supports quality selection (up to 4K), multiple formats (MP4, WebM, MP3, M4A), and returns the file with thumbnail and metadata.

All Social Media Video Downloader

wilcode/all-social-media-video-downloader

All Social Media Video Downloader API allows easy extraction of video links from platforms like Facebook, Instagram, Twitter, TikTok, YouTube, etc.

Best Video Downloader

truefetch/best-video-downloader

Bulk-download from 1,000+ platforms β€” TikTok, YouTube, Instagram, X β€” in 4K with no watermark. Returns title, thumbnail, top comments, and media file. $0.25 per video.

179

5.0

Video Downloader

ruly_freedom/video-downloader

Download public videos and audio from the most popular social platforms. Supports, TikTok, Instagram, and Facebook. Choose between video quality (480p, 720p, 1080p) or extract audio as MP3. Simple, fast, and reliable.

πŸ‘ User avatar

Eduardo Aquino

16

TikTok Video Downloader

easyapi/tiktok-video-downloader

The TikTok Video Downloader allows you to download TikTok videos without watermarks, preserving original quality. With support for MP3 and MP4 formats, free unlimited downloads, and no need for account logins, this tool is perfect for content creators and social media enthusiasts! πŸŽ‰

All Video Downloader

andryerica/all-video-downloader

πŸš€ Universal Video Extractor – Download in 1 click from YouTube, TikTok, Instagram, Facebook, X, and more. Full metadata, direct HD/audio links, private video support. Perfect for devs, marketers, and API automation. πŸ”₯

280

1.0

All-in-One Media Downloader

easyapi/all-in-one-media-downloader

Save and download videos, images, or audio from a wide array of platforms, including TikTok, Instagram, YouTube, Facebook, Reddit, Spotify, and many more! With support for both popular and niche sites, you can gather all your favorite media in one place.

Instagram video downloader

pocesar/download-instagram-video

Download Instagram videos in bulk

1.3K

1.0

All-in-One Media Downloader (Pro)

datapilot/all-in-one-media-downloader-pro

"Ultra-fast extractor for direct video links from YouTube, FB, TikTok, and more. Uses and Residential Proxies to skip heavy manifests and find the fastest 360p .mp4 link in 10-15s. Optimized for low resource usage and instant browser playback with direct download support. No browser needed."

10

5.0