咚咚技术团队
  • 首页
  • 文章
    • 前端
      • 0.1 + 0.2 精度丢失深究
      • IOS H5 视频无法播放
      • H5 播放 amr 音频文件
      • IOS 10.x 版本在 Taro 中的兼容性问题
      • 百度 UEditor 引发的 cross-iframe 问题解决方案
      • 访问 www.banchengyun.com 时发生了什么
      • decodeURIComponent 与特殊符号
      • 前端埋点
    • 后端
      • Swoole 相关
        • MAC 本地环境执行 GuzzleHttp 时导致 Swoole 进程异常退出
      • Hyperf 相关
        • 在 phpstorm 中调试 hyperf 代码
        • Hyperf 1.x Proxy 缓存失效问题
      • K8s 相关
        • 搭建 k8s 集群
        • 使用 docker-compose 快速搭建 Hyperf + Redis 开发环境
        • Kubernetes Autoscaler
      • 其它
        • 幂等性和原子性
    • 测试
    • 效能提升
      • 优秀开发者的第一步:始于需求分析
      • 优秀开发者的第二步:如何阅读他人的代码
  • 活动
  • 课堂
  • 知识库
    • 公共
      • 什么是流程型组织
      • 半城云集成产品开发流程
      • 阿⾥云 Codeup 代码平台使⽤ & 迁移指南
      • git 使用规范
      • 关于第三方与服务号授权的问题
      • 收不到消息的排查方法
      • 系统安全
      • 前端编码规范
      • 后端编码规范
      • 测试规范
    • 前端
      • 规范
        • 前端编码规范
        • 咚咚技术栈
        • code-review 规范
        • git 工作流
        • Tapd 文档
      • 复盘经验
        • 2021.01 效能、规范、技术债讨论会
      • Code Review
        • SCRM 2020-07
    • 后端
      • 复盘经验
        • SCRM 2020 年 8 月
      • Code Review
        • SCRM 2020-07
    • 测试
      • 复盘经验
        • SCRM 2020 年 8 月
  • 项目文档
    • 前端
    • 后端:小程序
    • 后端:企业微信
  • 接口文档
  • 兴趣小组
    • golang 小组
    • 增长小组
    • 前端小组
  • 书单推荐
  • 生产环境 分析会
    • NO.2022.01
  • 生产环境 可用性
  • 团队活动
    • OpenTalk
      • NO.2021.Q3
      • NO.2020.Q2
    • WalkTogether
  • 关于我们
  • GitBook 使用说明
由 GitBook 提供支持
在本页

这有帮助吗?

  1. 文章
  2. 前端

H5 播放 amr 音频文件

上一页IOS H5 视频无法播放下一页IOS 10.x 版本在 Taro 中的兼容性问题

最后更新于3年前

这有帮助吗?

H5 播放 amr 文件音频

网页不支持播放 amr 格式的音频文件,有条件的同学可以在后台使用 ffmpeg 转码后再在前端使用 audio 标签进行播放(MP3 或 wav),如果非要在网页播放 amr,请继续阅读

支持浏览器范围:

(1) IE9+、Edge、Chrome 49+、Firefox 52+、Safari 等主流桌面版浏览器
​(2) Android 4.4+ 系统的默认浏览器以及微信浏览器
​(3) iOS Safari 浏览器以及微信浏览器

引用:

// http或者https
// 注意:源码中引入的外部库是根据http与https决定的,但ios中有一个问题就是当用户处于https环境下,无法获取到http的内容,导致加载失败。
<script src="https://cdn.ronghub.com/Libamr-2.2.5.min.js"></script>
<script src="https://cdn.ronghub.com/RongIMVoice-2.2.6.js"></script>

初始化:

RongIMLib.RongIMVoice.init();

播放:

/*
音频格式: base64 格式的 AMR
完整示例音频: https://cdn.ronghub.com/voice-amr-base64.json
*/
var audioFile = "IyFBTVIKLNEafAAeef/hgmeAH8AD...";
// 音频文件长度
var duration = audioFile.length / 1024;
// 预加载
RongIMLib.RongIMVoice.preLoaded(audioFile, function () {
  // 播放声音
  RongIMLib.RongIMVoice.play(audioFile, duration);
});

停止播放:

RongIMLib.RongIMVoice.stop(audioFile);
rongcloud 即时通讯的复制插件 IMLib SDK