mp3格式播放大家都知道,amr格式就陌生了,至少我之前没有做过

amr格式文件播放出来的声音音质比mp3差,主要应用于手机铃声和手机录音,目的是为了给手机用户节省流量。大部分主流的音视频播放器都支持amr格式,现在要实现网页播放有点问题(还要考虑兼容性)。百度一番,调试一番,终于听到声音了。

笔者采用的播放插件是QuickTime,不知道的可以百科一下,下面就是方法了:
1、下载QuickTime软件并安装,地址 http://www.apple.com/quicktime/download/index.html
2、在网页添加以下代码
//<//embed controller="true" bgcolor="black" target="myself" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/index.html" align="middle" height="10" width="1000">

3、效果,无图无真相,进度条会动的哦

[转载]网页开发之amr音频的播放(后台判断音频长度)

IE、FireFox、chrome测试通过。
另外附上后台得到amr音频的播放长度的java代码

public static long getAmrDuration(File file) throws IOException {  long duration = -1;  int[] packedSize = { 12, 13, 15, 17, 19, 20, 26, 31, 5, 0, 0, 0, 0, 0, 0, 0 };  RandomAccessFile randomAccessFile = null;  try {  randomAccessFile = new RandomAccessFile(file, "rw");  long length = file.length();//文件的长度  int pos = 6;//设置初始位置  int frameCount = 0;//初始帧数  int packedPos = -1;  byte[] datas = new byte[1];//初始数据值  while (pos <= length) {  randomAccessFile.seek(pos);  if (randomAccessFile.read(datas, 0, 1) != 1) {  duration = length > 0 ? ((length - 6) / 650) : 0;  break;  }  packedPos = (datas[0] >> 3) & 0x0F;  pos += packedSize[packedPos] + 1;  frameCount++;  }  duration += frameCount * 20;//帧数*20  } finally {  if (randomAccessFile != null) {  randomAccessFile.close();  }  }  return duration;  }

方法自己调用,亲测可用。

转载于:https://my.oschina.net/vdroid/blog/343086

网页开发之amr音频的播放相关推荐

  1. 微信网页开发之video标签[HTML5微信播放器video]

    先了解一下w3c video标签 大致主要的也就这么点,更详细的请去自己W3C去阅览: 先说为什么会写这篇文章,因为公司最近有个需求,就是微信页面上要有APP端录制的视频. 说白了就是微信网页要有视频 ...

  2. Android开发之PCM录音实时播放的实现方法 | 边录音边播放 |PCM录音播放无延迟 | 录音无杂音 | 录音无噪音

    先说下录音得开启录音权限 <uses-permission android:name="android.permission.RECORD_AUDIO" /> 然后录音 ...

  3. 【原】AMR音频解码插件开发总结

    近段时间一直在忙碌AMR音频解码插件的开发,由于对驱动开发和音频编解码知识了解不是很多,加之自身经验欠缺,致使开发过程中碰到太多棘手的问题.经过努力学习和领导的大力帮助下终于完成了插件的开发,现将开发 ...

  4. android语音播放工具类,Android开发之MediaPlayer多媒体(音频,视频)播放工具类

    本文实例讲述了Android开发之MediaPlayer多媒体(音频,视频)播放工具类.分享给大家供大家参考,具体如下: package com.android.imooc.chat; import ...

  5. Android NDK开发之旅31 FFmpeg音频解码

    ###前言 #####基于Android NDK开发之旅30--FFmpeg视频播放这篇文章,我们已经学会视频解码基本过程.这篇文章就对音频解码进行分析. #####音频解码和视频解码的套路基本是一样 ...

  6. SkeyeWebPlayer.js H5播放器开发之webpack编译flv.js实现基础播放器功能(二)

    SkeyeWebPlayer.js H5播放器是由成都视开信息科技开发和维护的一个完善的RTSP.FLV.HLS等多种流媒体协议播放,视频编码支持H.264,H.265,音频支持AAC,支持TCP/U ...

  7. vue 微信录音倒计时_vue的微信语音功能,录音+对接口返回amr音频播放-Go语言中文社区...

    vue的微信语音功能,录音+对接口返回amr音频播放 最近的新项目需要调用微信的录音功能,但是后台又不给音频转码,无奈之下就踏上了研究前端音频编码器这东西. 参考的GitHub仓库--Recorder ...

  8. 纯前端解码、播放、录音、编码 AMR 音频,无须服务器支持

    纯前端解码.播放.录音.编码 AMR 音频,无须服务器支持,基于amr.js 和 RecorderJs. 特性 方便的 API 实现解码.播放.录音.编码 AMR 文件. 支持 url 和 blob ...

  9. 使用servlet过滤器播放amr音频

    前话  怎样播放amr音频?这个问题让我好烦恼,在网上找了一些资料,quicktime插件虽然可以播放amr格式的音频,但是不满足项目的要求,html5也不能播放amr格式的音频.后来想到将amr音频 ...

最新文章

  1. JSX设置CSS样式详解
  2. cookie和session的讲解
  3. 构建基本的嵌入式Linux根文件系统
  4. Java操作MySQL的中文处理方法
  5. elasticsearch的rest搜索--- 查询
  6. 个推mastersecret_推送:个推
  7. Nopcommerce主要用到的技术及特点
  8. Delphi中destroy, free, freeAndNil, release用法和区别
  9. vue-cli 上传图片上传到OSS(阿里云)
  10. python办公ppt_最全总结 | 聊聊 Python 办公自动化之 PPT(中)
  11. STM32F030使用RTC周期性唤醒STOP模式
  12. 计算机管理系统功能模块,设备管理系统功能模块
  13. capsule系列之Dynamic Routing Between Capsules
  14. 【已更新】万能门店小程序独立版V5.1二开完整版 无限DIY+不限制小程序生成数量+数10款插件
  15. 魔兽时间 一键宏 输出的原理与笔记
  16. 小米 微信:无法连接服务器,微信出现大规模故障 多地无法登录
  17. mysql 数据库的编辑工具有哪些_常用的MySQL数据库管理工具有哪些
  18. RGBD三维重建——SeamlessTex运行环境配置(采坑指南)
  19. 中职专业课教师资格证计算机,中等职业教师资格证专业课有哪些
  20. 深拷贝和原型原型链和web api 和 this指向等(中初级前端面事题)持续更新中,建议收藏

热门文章

  1. turtlebot3 模型没有显示_Turtlebot3新手教程:Open-Manipulator机械臂
  2. vfp生成菜单时文件不存在_如何在VFP项目中创建菜单
  3. linux下隐藏root进程,宝塔面板隐藏彩蛋 – btkill.py:Linux异常进程专杀
  4. java mysql limit分页,MySQL limit使用方法以及超大分页问题解决
  5. qt5 传输 图片压缩_图片如何转换成pdf?免费教你几个宝藏方法,请低调使用!...
  6. ga设置迭代次数_种群进化+邻域搜索的混合算法(GA+TS)求解柔性作业车间调度问题(FJSP)算法介绍...
  7. 20200714:动态规划复习day05
  8. 20190907:(leetcode习题)打家劫舍
  9. VB键码常数(速查)
  10. 2018年ML/AI重大进展有哪些?LeCun推荐了这篇回答