【问题标题】:Telegram API SendVoice method sends voice as fileTelegram API SendVoice 方法将语音作为文件发送
【发布时间】:2018-05-19 21:09:07
【问题描述】:

我正在尝试通过 SendVoice 方法发送语音消息,但它将语音作为简单的 ogg 文件(不可播放)发送。

https://api.telegram.org/bot<token>/sendVoice?chat_id=x&voice=http://majidamiri.com/up/5.ogg

Telegram API SendVoice 中指出该文件应为 .ogg opus 格式,因此我使用以下代码通过 ffmpeg 将 mp3 文件转换为 opus ogg:

&lt;?php $myConvert = exec('ffmpeg.exe -i 1.mp3 -acodec libopus -b:a 64k -vbr off -compression_level 10 5.ogg'); ?&gt;

再次像以前一样将其作为文件发送。

我的 ogg 链接:https://majidamiri.com/up/5.ogg

你能帮我解决这个问题吗?

谢谢大家。

【问题讨论】:

  • 你最后解决了吗?我尝试了各种选择,但我遇到了同样的问题。
  • @mbrt 不,不幸的是我无法解决问题,所以我放弃了

标签: telegram-bot


【解决方案1】:

在 Telegram 支持的帮助下,我终于完成了这项工作。这是一个包含所有所需标志的示例:

ffmpeg -i test.mp3 -ac 1 -map 0:a -codec:a opus -b:a 128k -vbr off -ar 24000 test.ogg

在 Android 和 Telegram 网络上测试。

【讨论】:

  • 我也有类似的问题。通过使用您的命令,我收到以下错误 Unrecognized option 'vbr'
  • 已解决,对我来说正确的命令是 ffmpeg -i audio.mp3 -ac 1 -map 0:a -strict -2 -acodec opus -b:a 128k -ar 24000 audio。 ogg
  • -ar 24k不支持指定的采样率 24000
猜你喜欢
  • 1970-01-01
  • 2022-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
  • 2019-02-16
  • 1970-01-01
相关资源
最近更新 更多