added support for tumblr

- support for tumblr is back! (i tried all types of links in clear sight and everything seems to work, lmk if something doesn't)
- increased stream lifespan up to 1 hour
- made youtube audios download without additional conversion, speed should be a bit better but not by much cause youtube limits the audio download speed :(
This commit is contained in:
wukko
2022-08-01 23:53:44 +06:00
parent 6afa8448f8
commit 20798685c2
9 changed files with 49 additions and 12 deletions

View File

@@ -8,6 +8,7 @@ import youtube from "./services/youtube.js";
import vk from "./services/vk.js";
import tiktok from "./services/tiktok.js";
import douyin from "./services/douyin.js";
import tumblr from "./services/tumblr.js";
export default async function (host, patternMatch, url, ip, lang, format, quality) {
try {
@@ -113,6 +114,16 @@ export default async function (host, patternMatch, url, ip, lang, format, qualit
filename: r.filename, salt: process.env.streamSalt
}) : apiJSON(0, { t: r.error });
} else throw Error()
case "tumblr":
if ((patternMatch["id"] && patternMatch["id"].length < 21) ||
(patternMatch["id"] && patternMatch["id"].length < 21 &&
patternMatch["user"] && patternMatch["user"].length <= 32)) {
let r = await tumblr({
id: patternMatch["id"], url: url, user: patternMatch["user"] ? patternMatch["user"] : false,
lang: lang
});
return (!r.error) ? apiJSON(1, { u: r.split('?')[0] }) : apiJSON(0, { t: r.error })
} else throw Error()
default:
return apiJSON(0, { t: errorUnsupported(lang) })
}