默认
发表评论 13
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
im中语音消息,音频文件用什么格式压缩大小,求好的解决方案
阅读(56626) | 评论(13 收藏 淘帖1
web开发中通过js获取短语音消息格式是wav,60s就将近2m,感觉有点大,求好的压缩解决方案。

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:求助 IM开发
上一篇:求教关于IM中离线消息获取方案,全量还是增量?拉取失败怎么办?下一篇:求助IM聊天软件中的新消息和历史消息有啥区别

本帖已收录至以下技术专辑

推荐方案
评论 13
wav是无损格式,数据量太大了,肯定要压缩。

RainbowChat-Web产品里是这样用的:

  • 1)app端im录制的amr音频文件到上传到服务端;
  • 2)web端im加载这个音频文件时,服务端会先通过ffmpeg转成.mp3;
  • 3)第2)步加载完成后,web端就直接在网页端播放就行了。

其实,mp3这种有损压缩格式数据量也不小,但相对wav无损格式肯定是要好多了。而且另一个好处是,mp3格式的浏览器端的兼容性好,几乎都支持,其它格式就不一定了。
引用:JackJiang 发表于 2021-06-04 11:39
wav是无损格式,数据量太大了,肯定要压缩。

我RainbowChat-Web产品里是这样用的:

谢谢大佬的思路,我去跑跑测试一下
8.6语音消息规则

1)最长可录制为 60 秒的语音消息;
2)语音文件格式为:AMR;
3)语音文件压缩比率:60秒语音文件约为45KB。

刚学习微信的规则的
引用:iim 发表于 2021-07-29 17:11
8.6语音消息规则

1)最长可录制为 60 秒的语音消息;

你说的是这一段是吧:《IM开发宝典:史上最全,微信各种功能参数和逻辑规则资料汇总:8.6语音消息规则》http://www.52im.net/thread-3008-1-1.html#37
引用:JackJiang 发表于 2021-07-29 21:33
你说的是这一段是吧:《IM开发宝典:史上最全,微信各种功能参数和逻辑规则资料汇总:8.6语音消息规则》h ...

是的。 iOS的avaudioplayer 无法播放amr格式  有好的解决方案吗?
引用:iim 发表于 2021-07-30 15:22
是的。 iOS的avaudioplayer 无法播放amr格式  有好的解决方案吗?

你在网上找一下,有开源的AMR的编解码库可以用
引用:JackJiang 发表于 2021-07-30 17:20
你在网上找一下,有开源的AMR的编解码库可以用

大神 请教一下  现在主流的im 语音消息 用的都是amr格式的吗?

引用:iim 发表于 2021-07-30 19:39
大神 请教一下  现在主流的im 语音消息 用的都是amr格式的吗?

一般来说是的,AMR本身就是传统电话网络的语音数据格式,除非追求音质,一般情况下情况下肯定是可以满足的
引用:JackJiang 发表于 2021-07-29 21:33
你说的是这一段是吧:《IM开发宝典:史上最全,微信各种功能参数和逻辑规则资料汇总:8.6语音消息规则》h ...

大佬这个帖子提到的压缩率,具体有实现方式吗
引用:mml 发表于 2021-11-03 13:39
大佬这个帖子提到的压缩率,具体有实现方式吗

你可以自已用系统默认的api进行录制采样,对于设置的具体参数在音质、录出的文件大小上作权衡,不说跟微信一样,只要能做到微信的2倍文件大小就很好了(微信的非常极致)。
引用:JackJiang 发表于 2021-06-04 11:39
wav是无损格式,数据量太大了,肯定要压缩。

我RainbowChat-Web产品里是这样用的:

服务端来转码,服务器开销是不有点大
引用:druphliu 发表于 2022-05-07 09:49
服务端来转码,服务器开销是不有点大

别忘了这是web网页端,你客户端又没有转码能力,不然还能怎么办
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部