twitter: fix gif encoding for multi-media tweets

This commit is contained in:
dumbmoron 2024-01-18 15:57:21 +00:00
parent dcb3cf3673
commit 558e466478
No known key found for this signature in database
GPG key ID: C59997C76C6A8E5F
2 changed files with 10 additions and 9 deletions

View file

@ -39,7 +39,7 @@ export default async function(host, patternMatch, url, lang, obj) {
r = await twitter({
id: patternMatch.id,
index: patternMatch.index - 1,
toGif: obj.twitterGif
toGif: !!obj.twitterGif
});
break;
case "vk":

View file

@ -114,22 +114,23 @@ export default async function({ id, index, toGif }) {
isGif: media[0].type === "animated_gif"
};
default:
const picker = media.map((video, i) => {
let url = bestQuality(video.video_info.variants);
if (needsFixing(video)) {
const picker = media.map((content, i) => {
let url = bestQuality(content.video_info.variants);
const shouldRenderGif = content.type === 'animated_gif' && toGif;
if (needsFixing(content) || shouldRenderGif) {
url = createStream({
service: 'twitter',
type: 'remux',
type: shouldRenderGif ? 'gif' : 'remux',
u: url,
filename: `twitter_${id}_${i + 1}.mp4`,
isGif: media[0].type === "animated_gif",
toGif: toGif ?? false
filename: `twitter_${id}_${i + 1}.mp4`
})
}
return {
type: 'video',
url,
thumb: video.media_url_https,
thumb: content.media_url_https,
}
});
return { picker };