面对问题,当我试图发送GIF到我的机器人,但机器人无法访问原始大小的图像。看起来就像电报服务器把它转换成mp4 (这是个好主意,看起来很好),当我试图下载它时,看起来总是像一个缩略图,最大的一面是320 of。
看起来,它是一个api bug,因为这里的例子如下:
它描述为600x473px,但实际下载的mp4大小是:
所以,试图理解-我错在这里,因为原始的gif大小需要我的项目需要.也许这里有什么解决办法?
ps。如果将gif手动转换为mp4,节省了质量和大小,然后提交给bot --它工作得很棒,没有任何额外的压缩等等,但是在使用bot之前要求使用它是不能接受的。
更新:
来复制(您需要bot/bot_token,并且能够使用json接收web钩子):
1)通过windows 10电报客户端(v2.1.10)将此gif (https://c2n.me/47Y3H37.gif)发送给bot。使用“发送没有压缩”。Gif大小: 600x473,3.35MB
2) Bot接收和电报发送网络钩子:
{
"update_id": 290360893,
"message": {
"message_id": 21,
"from": {
"id": 101483786,
"is_bot": false,
"first_name": "edited",
"last_name": "edited",
"username": "edited",
"language_code": "en"
},
"chat": {
"id": edited,
"first_name": "edited",
"last_name": "edited",
"username": "edited",
"type": "private"
},
"date": 1591962500,
"animation": {
"file_name": "9Ywn9p.gif.mp4",
"mime_type": "video/mp4",
"duration": 4,
"width": 600,
"height": 473,
"thumb": {
"file_id": "AAMCAgADGQEAAxVe42t2MTQQrFMyXbskwWiNkHjm3wACKwgAAtZ-GEtFrAh9bgzTOnpJm5QuAAMBAAdtAAMIgQACGgQ",
"file_unique_id": "AQADekmblC4AAwiBAAI",
"file_size": 15304,
"width": 320,
"height": 252
},
"file_id": "CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA",
"file_unique_id": "AgADKwgAAtZ-GEs",
"file_size": 68253
},
"document": {
"file_name": "9Ywn9p.gif.mp4",
"mime_type": "video/mp4",
"thumb": {
"file_id": "AAMCAgADGQEAAxVe42t2MTQQrFMyXbskwWiNkHjm3wACKwgAAtZ-GEtFrAh9bgzTOnpJm5QuAAMBAAdtAAMIgQACGgQ",
"file_unique_id": "AQADekmblC4AAwiBAAI",
"file_size": 15304,
"width": 320,
"height": 252
},
"file_id": "CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA",
"file_unique_id": "AgADKwgAAtZ-GEs",
"file_size": 68253
}
}
}
,所以您可以看到,这个大小是正确的,但重量-不,它只是68253字节= 66.65kb,而不是~3.35MB (一些更少,因为转换)
3)从这个web钩子获取CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA:"https://api.telegram.org/bot{your_bot_token}/getFile?file_id=CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA“,并通过调用Get”https://api.telegram.org/bot{your_bot_token}/getFile?file_id=CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA“尝试在api中使用它,您将收到:
{
"ok": true,
"result": {
"file_id": "CgACAgIAAxkBAAMVXuNrdjE0EKxTMl27JMFojZB45t8AAisIAALWfhhLRawIfW4M0zoaBA",
"file_unique_id": "AgADKwgAAtZ-GEs",
"file_size": 68253,
"file_path": "animations/file_12.mp4"
}
}
4)使用此"https://api.telegram.org/file/bot{your_bot_token}/animations/file_12.mp4“下载文件:获取file_path和.获取此mp4文件:https://c2n.me/47Y4oAv.mp4,具有质量、重量和大小(320x252)
但是当你试图从电报客户端下载它时--点击“另存为”--很好,mp4的大小/重量是合适的。所以看起来像是个api错误..。
update#2 :尝试通过tfs电报支持提交,但也不能用我的电话号码登录.(https://c2n.me/47Yqswl.png)。@pavel_durov,你能把它全部修好吗?)
发布于 2020-06-12 14:22:02
似乎唯一的解决办法是将gif转换为mp4 (是的,这是一种令人沮丧的体验),直到问题所在被修复。
https://stackoverflow.com/questions/62258196
复制相似问题