mirror of
https://github.com/CompeyDev/fxtwitter-docker.git
synced 2025-04-14 17:04:02 +01:00
Once again whitelist HEVC for Telegram
This commit is contained in:
parent
0b68161e68
commit
05c75567be
2 changed files with 7 additions and 5 deletions
|
@ -1,5 +1,7 @@
|
||||||
|
import { Context } from "hono";
|
||||||
|
|
||||||
/* Help populate API response for media */
|
/* Help populate API response for media */
|
||||||
export const processMedia = (media: TweetMedia): APIPhoto | APIVideo | null => {
|
export const processMedia = (c: Context, media: TweetMedia): APIPhoto | APIVideo | null => {
|
||||||
if (media.type === 'photo') {
|
if (media.type === 'photo') {
|
||||||
return {
|
return {
|
||||||
type: 'photo',
|
type: 'photo',
|
||||||
|
@ -11,7 +13,7 @@ export const processMedia = (media: TweetMedia): APIPhoto | APIVideo | null => {
|
||||||
} else if (media.type === 'video' || media.type === 'animated_gif') {
|
} else if (media.type === 'video' || media.type === 'animated_gif') {
|
||||||
/* Find the variant with the highest bitrate */
|
/* Find the variant with the highest bitrate */
|
||||||
const bestVariant = media.video_info?.variants?.filter?.((format) => {
|
const bestVariant = media.video_info?.variants?.filter?.((format) => {
|
||||||
return !format.url.includes('hevc')
|
return c.req.header('user-agent')?.includes('Telegram') || !format.url.includes('hevc')
|
||||||
}).reduce?.((a, b) =>
|
}).reduce?.((a, b) =>
|
||||||
(a.bitrate ?? 0) > (b.bitrate ?? 0) ? a : b
|
(a.bitrate ?? 0) > (b.bitrate ?? 0) ? a : b
|
||||||
);
|
);
|
||||||
|
|
|
@ -171,7 +171,7 @@ export const buildAPITwitterStatus = async (
|
||||||
|
|
||||||
/* Populate status media */
|
/* Populate status media */
|
||||||
mediaList.forEach(media => {
|
mediaList.forEach(media => {
|
||||||
const mediaObject = processMedia(media);
|
const mediaObject = processMedia(c, media);
|
||||||
if (mediaObject) {
|
if (mediaObject) {
|
||||||
apiStatus.media.all = apiStatus.media?.all ?? [];
|
apiStatus.media.all = apiStatus.media?.all ?? [];
|
||||||
apiStatus.media?.all?.push(mediaObject);
|
apiStatus.media?.all?.push(mediaObject);
|
||||||
|
@ -234,7 +234,7 @@ export const buildAPITwitterStatus = async (
|
||||||
if (card.media) {
|
if (card.media) {
|
||||||
if (card.media.videos) {
|
if (card.media.videos) {
|
||||||
card.media.videos.forEach(video => {
|
card.media.videos.forEach(video => {
|
||||||
const mediaObject = processMedia(video) as APIVideo;
|
const mediaObject = processMedia(c, video) as APIVideo;
|
||||||
if (mediaObject) {
|
if (mediaObject) {
|
||||||
apiStatus.media.all = apiStatus.media?.all ?? [];
|
apiStatus.media.all = apiStatus.media?.all ?? [];
|
||||||
apiStatus.media?.all?.push(mediaObject);
|
apiStatus.media?.all?.push(mediaObject);
|
||||||
|
@ -245,7 +245,7 @@ export const buildAPITwitterStatus = async (
|
||||||
}
|
}
|
||||||
if (card.media.photos) {
|
if (card.media.photos) {
|
||||||
card.media.photos.forEach(photo => {
|
card.media.photos.forEach(photo => {
|
||||||
const mediaObject = processMedia(photo) as APIPhoto;
|
const mediaObject = processMedia(c, photo) as APIPhoto;
|
||||||
if (mediaObject) {
|
if (mediaObject) {
|
||||||
apiStatus.media.all = apiStatus.media?.all ?? [];
|
apiStatus.media.all = apiStatus.media?.all ?? [];
|
||||||
apiStatus.media?.all?.push(mediaObject);
|
apiStatus.media?.all?.push(mediaObject);
|
||||||
|
|
Loading…
Add table
Reference in a new issue