priyansh-all-dl
Version:
A package to download videos from multiple platforms
36 lines (31 loc) • 1.34 kB
JavaScript
const { downloadFacebookVideo } = require("./src/facebook");
const { downloadInstagramVideo } = require("./src/instagram");
const { downloadTikTokVideo } = require("./src/tiktok");
const { downloadTwitterVideo } = require("./src/twitter");
const { downloadThreadsVideo } = require("./src/threads");
const { downloadYoutubeMp3 } = require("./src/youtubeMp3");
const { downloadYoutubeMp4 } = require("./src/youtubeMp4");
async function downloadVideo(url, options = {}) {
if (!url) throw new Error("URL is required");
const { format } = options;
if (url.includes("facebook.com")) {
return await downloadFacebookVideo(url);
} else if (url.includes("instagram.com")) {
return await downloadInstagramVideo(url);
} else if (url.includes("tiktok.com")) {
return await downloadTikTokVideo(url);
} else if (url.includes("twitter.com")) {
return await downloadTwitterVideo(url);
} else if (url.includes("threads.net")) {
return await downloadThreadsVideo(url);
} else if (url.includes("youtube.com") || url.includes("youtu.be")) {
if (format === "audio") {
return await downloadYoutubeMp3(url);
} else {
return await downloadYoutubeMp4(url); // Default to MP4 if no format specified
}
} else {
throw new Error("Unsupported platform");
}
}
module.exports = { downloadVideo };