模块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+的更多相关文章

  1. linux音频 DAPM之二:audio paths与dapm kcontrol

    转:https://blog.csdn.net/wh_19910525/article/details/12749293 在用alsa_amixer controls时,除了我们之前提到的snd_so ...

  2. 11.4、Libgdx的音频之录制PCM音效

    (官网:www.libgdx.cn) 可以通过AudioRecorder接口访问PCM数据.通过如下方式创建一个接口实例: AudioRecorder recorder = Gdx.audio.new ...

  3. Python3.7在win10下安装PyAudio库以及实现音频的录制与播放

    Python3.7 无法安装pyaudio 度娘的结果基本都是这个,pip install pyaudio.....然而十有八九你的电脑不买账,会报错. 报错信息: running install r ...

  4. Android使用MediaRecorder和Camera实现视频录制及播放功能整理

    转载请注明出处:http://blog.csdn.net/woshizisezise/article/details/51878566 这两天产品经理向我丢来一个新需求,需要在项目里添加一个视频录制的 ...

  5. 提取.bank音频包。 Extract .bank audio files

    转载请注明出处! 首先我们需要提取的文件是 .bank 的音频文件包,里面包含很条音频. 这是我们会用到工具 step1: 运行  quickbms.exe, 它会自动打开选择文件窗口,我们直接选择下 ...

  6. MUI音乐播放html5+audio模块

    html5+ audio 模块MUI播放音频 Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理 ...

  7. HTML5+ API 学习

    HTML5+ API 模块整理 API Reference 模块 中文 模块介绍 Accelerometer 加速计 管理设备加速度传感器,用于获取设备加速度信息,包括x(屏幕水平方向).y(垂直屏幕 ...

  8. Html 5+

    audio Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理对象. http://www.ht ...

  9. python 全栈开发,Day127(app端内容播放,web端的玩具,app通过websocket远程遥控玩具播放内容,玩具管理页面)

    昨日内容回顾 1. 小爬爬 内容采集 XMLY 的 儿童频道 requests 2. 登陆 注册 自动登陆 退出 mui.post("请求地址",{数据},function(){} ...

随机推荐

  1. powerdesigner与mysql数据库的连接

    (1).在桌面新建一个mysql.dpc文件,里面可以什么内容也没有. (2).打开powerdesigner,操作如下: (3).把mysql.dcp文件选中: (4).建立连接属性: (5).测试 ...

  2. 二叉树的java实现

    一.分析 一个二叉树节点有三个部分,一个是指向左子树的部分,一个是指向右子树的部分,另外一个是数据部分.可以把这个节点抽象成一个节点对象,给对象有两个节点对象属性和一个数据属性.如下图: 一个二叉树有 ...

  3. python将数据写入mysql乱码的解决办法

    1.错误为:插入乱码 报错: Python模块MySQLdb操作mysql出现2019错误:Can't initialize character set utf-8 解决: 写入数据语句为: cnn ...

  4. C++对析构函数的误解

    C++析构前言 析构函数在什么时候会自动被调用,在什么时候需要手动来调用,真不好意思说偶学过C++…今日特此拨乱反正. C++析构误解正文 对象在构造的时候系统会分配内存资源,对一些数据成员进行初始化 ...

  5. Qt 事件处理的五个层次

    看了这篇文章(见http://devbean.blog.51cto.com/448512/231861),然后经过自己的思考,把Qt事件处理的五个层次.同时也是Qt时间处理的流程画了出来.若有不对请批 ...

  6. R语言低级绘图函数-text

    text函数用来在一张图表上添加文字,只需要指定对应的x和y坐标,以及需要添加的文字内容就可以了 基本用法: plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), ...

  7. 前台的js对象数组传到后台处理。在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>

    前台的js对象数组传到后台处理.在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>

  8. postman从入门到精通

    今天总监让我给测试同事们培训postman,使用过postman的朋友应该知道,这个简直就是前后端接口调试神器.根据平时的经验以及自己到网上看了相关的帖子,对于postman又有了新的认识. post ...

  9. C#获取并修改文件扩展名的方法

    本文实例讲述了C#获取并修改文件扩展名的方法.分享给大家供大家参考.具体分析如下: 这里使用C#编程的方法改变文件扩展名的文件,必须使用Path类. Path类用来解析文件系统路径的各个部分.静态方法 ...

  10. 修改php上传文件尺寸、响应时间、时区时间等设置

    修改php上传文件尺寸.响应时间 1.修改php.ini 1.post_max_size 指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值,默认为8M(改为150M),看你自己需要进行 ...