使用node-telegram-bot-api的Telegram bot发送视频时如何指定宽高参数
node-telegram-bot-api 发送视频指定宽高问题解答
传参规则说明
node-telegram-bot-api的sendVideo方法完全兼容Telegram官方API的宽高参数,你将height、width放在第三个options参数中的写法是正确的,不存在参数不支持传入的问题。
参数未生效的核心原因
Telegram官方接口定义中,width、height仅为备用元信息提示参数,不具备修改视频实际分辨率的能力:
- 当服务端可以正常解析上传视频自带的宽高元数据时,会直接使用解析得到的真实数值,完全忽略传入的自定义宽高参数
- 仅当服务端无法识别视频文件的宽高元数据时,才会将你传入的参数作为 fallback 值使用
你遇到的返回结果始终和源文件宽高一致的情况,属于服务端正常解析到源视频元数据的正常表现。
实现指定分辨率的方案
如果需要上传的视频最终显示为目标宽高,你需要在本地提前对视频进行转码处理,将分辨率调整到目标值后再上传。可以使用ffmpeg等工具完成本地转码,转码后的文件上传后,服务端解析到的宽高就会是你需要的数值。
内容的提问来源于stack exchange,提问作者vasya
相关产品推荐
相关产品推荐

