MUI音乐播放html5+audio模块

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

权限

"Audio": { "description": "访问音频设备"}

录音

// 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { r = plus.audio.getRecorder(); }function startRecord() { if ( r == null ) { alert( "Device not ready!" ); return; } r.record( {filename:"_doc/audio/xx.amr"}, function () {//真机测试文件在/sdcard/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc下面(.HBuilder是隐藏的,要查看隐藏的文件) alert( "Audio record success!" ); }, function ( e ) { alert( "Audio record failed: " + e.message ); } );}

这样录音就被保存下来了

播放录音

function player(){//播放音乐 s = plus.audio.createPlayer( "_doc/audio/gg.mp3" ); var num = s.getDuration();//获取音频总长度number setTimeout(function(){//延时获取,否则可能没有返回长度 var num = s.getDuration(); alert(num) },100) s.play( function () {//播放完成回调 alert( "Audio play success!" ); }, function ( e ) {//失败回调 alert( "Audio play error: " + e.message ); } ); }

暂停播放:

function pause(){//暂停播放 s.pause();}

恢复播放:

function resume() {//恢复播放 s.resume();}

跳到指定位置播放(快进):

function seekTo(){ s.seekTo(100);}

完整测试代码:

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>Audio Example</title> <script type="text/javascript">// 扩展API加载完毕后调用onPlusReady回调函数 document.addEventListener( "plusready", onPlusReady, false );var r = null; // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { r = plus.audio.getRecorder(); }function startRecord() { if ( r == null ) { alert( "Device not ready!" ); return; } r.record( {filename:"_doc/audio/xx.amr"}, function () {//真机测试文件在/sdcard/Android/data/io.dcloud.HBuilder/.HBuilder/apps/HBuilder/doc下面(.HBuilder是隐藏的,要查看隐藏的文件) alert( "Audio record success!" ); }, function ( e ) { alert( "Audio record failed: " + e.message ); } );}function stopRecord() { r.stop(); }function player(){//播放音乐 s = plus.audio.createPlayer( "_doc/audio/gg.mp3" ); var num = s.getDuration();//获取音频总长度number setTimeout(function(){//延时获取,否则可能没有返回长度 var num = s.getDuration(); alert(num) },100) s.play( function () { alert( "Audio play success!" ); }, function ( e ) { alert( "Audio play error: " + e.message ); } ); }function pause(){//暂停播放 s.pause();}function resume() {//恢复播放 s.resume();}function seekTo(){ s.seekTo(100);} </script> </head> <body> <input type="button" value="Start Record" onclick="startRecord();"/> <br/> <input type="button" value="Stop Record" onclick="stopRecord();"/> <br /> <input type="button" value="player" onclick="player();"/> <br /> <input type="button" value="暂停" onclick="pause();"/> <br /> <input type="button" value="恢复" onclick="resume();"/> <br /> <input type="button" value="跳到指定位置" onclick="seekTo();"/> </body></html>

 

相关文章