音频的录制和播放功能(audio) ---- HTML5+
模块:audio
Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件。通过plus.audio获取音频管理对象。
应用场景:音频录制,语言聊天,语言留言,音频播放;
对象应该有两个:录音(AndioRecorder)和播放(AudioPlayer ):
录音:一个成功回调,一个失败回调;option有三个参数,有用的是filename这个音频存放的位置;
播放:一个成功回调,一个失败的回调;
play(successCB,errorCB);
pause();暂停;
resume();重来;
stop();停止;
seekTo(position);position传递的参数是多少,一秒为单位,跳转到多少秒;
getDuration(position);音频播放之前需要去取的值,如果视频是1分30秒播放完,那么返回的值就是90秒;
getPosition:我这个视频播放到哪里了;如果要实时调用播放到哪里,就用定时器去调用;
setRoute(route);这个方法不是必须的,有默认值;(默认是扬声器,不可能在听筒里面播放音乐,但是微信是有这个的)
方法:
getRecorder();// 获取录音设备; plus.audio.getRecorder();
createPlayer();//创建播放器;plus.audio.createPlayer(path);
示例:
<header class="mui-bar mui-bar-nav">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<h1 class="mui-title">音频录音</h1>
</header>
<div class="mui-content mui-content-padded">
<button type="button" class="mui-btn mui-btn-blue mui-btn-block" id="btnStartRecord">开始录音</button>
<button type="button" class="mui-btn mui-btn-blue mui-btn-block" id="btnEndRecord">结束录音</button>
<div id="time"></div>
<ul class="mui-table-view" id="mList"></ul>
</div>
<script src='http://libs.baidu.com/jquery/1.8.3/jquery.min.js'></script>
<script src="js/mui.min.js"></script>
<script type="text/javascript">
mui.plusReady(function(){
var recorder = null;
var recorderTimer = null;
var time = 0;
$("#btnStartRecord").bind('tap',function(){
startRecord();
});
$("#btnEndRecord").bind('tap',function(){
endRecord();
});
function startRecord(){
recorderTimer = setInterval(function(){
time++;
$("#time").html(time);
},1000);
// 1.创建recorder
recorder = plus.audio.getRecorder();
// 2.录音
recorder.record({filename:"_doc/audio/"},function(filePath){
plus.io.resolveLocalFileSystemURL(filePath,function(entry){
console.log(filePath);
console.log(entry);
var listStr = "<li class='mui-table-view-cell'><a class='mui-navigate-right recordItem'>"+filePath+"</a></li>";
$("#mList").append(listStr);
$(".recordItem").bind('tap',function(){
var oName = $(this).text();
alert(oName);
var path = "";
var player = plus.audio.createPlayer(oName);
player.play(function(){
console.log('play ended');
},function(e){
console.log("message:"+e.message);
});
});
},function(e){
console.log("读取录音失败:"+e.message);
});
}); }
function endRecord(){
// 3.停止录音
clearInterval(recorderTimer);
recorder.stop();
};
});
</script>
音频的录制和播放功能(audio) ---- HTML5+的更多相关文章
- linux音频 DAPM之二:audio paths与dapm kcontrol
转:https://blog.csdn.net/wh_19910525/article/details/12749293 在用alsa_amixer controls时,除了我们之前提到的snd_so ...
- 11.4、Libgdx的音频之录制PCM音效
(官网:www.libgdx.cn) 可以通过AudioRecorder接口访问PCM数据.通过如下方式创建一个接口实例: AudioRecorder recorder = Gdx.audio.new ...
- Python3.7在win10下安装PyAudio库以及实现音频的录制与播放
Python3.7 无法安装pyaudio 度娘的结果基本都是这个,pip install pyaudio.....然而十有八九你的电脑不买账,会报错. 报错信息: running install r ...
- Android使用MediaRecorder和Camera实现视频录制及播放功能整理
转载请注明出处:http://blog.csdn.net/woshizisezise/article/details/51878566 这两天产品经理向我丢来一个新需求,需要在项目里添加一个视频录制的 ...
- 提取.bank音频包。 Extract .bank audio files
转载请注明出处! 首先我们需要提取的文件是 .bank 的音频文件包,里面包含很条音频. 这是我们会用到工具 step1: 运行 quickbms.exe, 它会自动打开选择文件窗口,我们直接选择下 ...
- MUI音乐播放html5+audio模块
html5+ audio 模块MUI播放音频 Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理 ...
- HTML5+ API 学习
HTML5+ API 模块整理 API Reference 模块 中文 模块介绍 Accelerometer 加速计 管理设备加速度传感器,用于获取设备加速度信息,包括x(屏幕水平方向).y(垂直屏幕 ...
- Html 5+
audio Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理对象. http://www.ht ...
- python 全栈开发,Day127(app端内容播放,web端的玩具,app通过websocket远程遥控玩具播放内容,玩具管理页面)
昨日内容回顾 1. 小爬爬 内容采集 XMLY 的 儿童频道 requests 2. 登陆 注册 自动登陆 退出 mui.post("请求地址",{数据},function(){} ...
随机推荐
- EMS快递单号生成算法
<?php function emsnum($ems, $num) { $fri = substr($ems, 2, 8); $head = substr($ems, 0, 2); $tail ...
- jQuery EasyUI教程之datagrid应用-2
二.DataGrid的扩展应用 上一份教程我们创建的一个CRUD应用是使用对话框组件来增加或编辑用户信息.本教程将教你如何创建一个CRUD 数据表格(datagrid). 为了让这些CRUD功能正常工 ...
- 将DataFrame数据如何写入到Hive表中
1.将DataFrame数据如何写入到Hive表中?2.通过那个API实现创建spark临时表?3.如何将DataFrame数据写入hive指定数据表的分区中? 从spark1.2 到spark1.3 ...
- Eclipse使用技巧收集
因为学习Java相关,对Eclipse这个开发工具用的不习惯,许多操作以及快捷键在百度得到解决后下次又忘记了.有时使用VS又混淆了它的快捷键操作.所以写个备忘录持续更新收集平时遇到的操作. 导入项目, ...
- 第三百零一节,python操作redis缓存-管道、发布订阅
python操作redis缓存-管道.发布订阅 一.管道 redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pi ...
- IOC关注服务(或应用程序部件)是如何定义的以及他们应该如何定位他们依赖的其它服务
IOC关注服务(或应用程序部件)是如何定义的以及他们应该如何定位他们依赖的其它服务.通常,通过一个容器或定位框架来获得定义和定位的分离,容器或定位框架负责: 保存可用服务的集合 提供一种方式将各种部件 ...
- e661. 确定图像中是否有透明像素
// This method returns true if the specified image has transparent pixels public static boolean hasA ...
- Linux基础回想(1)——Linux系统概述
1. 什么是操作系统?它与硬件以及其它软件之间的关系是如何的? 操作系统是控制和管理计算机系统内各种硬件和软件资源.有效组织多道程序执行的系统软件(或程序集合),是用户和计算机之间的接口.详细的说: ...
- dirname(__FILE__) 介绍
简单地说: __FILE__ 返回当前 路径+文件名 dirname(__FILE__) 返回当前文件路径的 路径部分 (后面没有“\”号) dirname(di ...
- SpringMVC-Controller
接上: web.xml Spring-servlet.xml Controller层是控制层,在其类上添加@Controller注解,会被Spring-servlet.xml中的<context ...