twitter: fix parsing from /video/<index> links
error is no longer thrown if index is an unexpected value (such as 0 or negative)
This commit is contained in:
parent
678d6a56ca
commit
e1edecb859
1 changed files with 6 additions and 4 deletions
|
@ -96,20 +96,22 @@ export default async function({ id, index }) {
|
||||||
let media = (repostedTweet?.media || baseTweet.extended_entities.media);
|
let media = (repostedTweet?.media || baseTweet.extended_entities.media);
|
||||||
media = media?.filter(m => m.video_info?.variants?.length);
|
media = media?.filter(m => m.video_info?.variants?.length);
|
||||||
|
|
||||||
if (index < media?.length) {
|
// check if there's a video at given index (/video/<index>)
|
||||||
|
if ([0, 1, 2, 3].includes(index) && index < media?.length) {
|
||||||
media = [media[index]]
|
media = [media[index]]
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (media?.length) {
|
switch (media?.length) {
|
||||||
case undefined:
|
case undefined:
|
||||||
case 0:
|
case 0:
|
||||||
return { error: 'ErrorNoVideosInTweet' }
|
return { error: 'ErrorNoVideosInTweet' };
|
||||||
case 1:
|
case 1:
|
||||||
return {
|
return {
|
||||||
type: needsFixing(media[0]) ? "remux" : "normal",
|
type: needsFixing(media[0]) ? "remux" : "normal",
|
||||||
urls: bestQuality(media[0].video_info.variants),
|
urls: bestQuality(media[0].video_info.variants),
|
||||||
filename: `twitter_${id}.mp4`,
|
filename: `twitter_${id}.mp4`,
|
||||||
audioFilename: `twitter_${id}_audio`
|
audioFilename: `twitter_${id}_audio`
|
||||||
}
|
};
|
||||||
default:
|
default:
|
||||||
const picker = media.map((video, i) => {
|
const picker = media.map((video, i) => {
|
||||||
let url = bestQuality(video.video_info.variants);
|
let url = bestQuality(video.video_info.variants);
|
||||||
|
@ -127,6 +129,6 @@ export default async function({ id, index }) {
|
||||||
thumb: video.media_url_https,
|
thumb: video.media_url_https,
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return { picker }
|
return { picker };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue