123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352 |
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
- <meta name="HandheldFriendly" content="true">
- <meta name="MobileOptimized" content="320">
- <title>Audio Document</title>
- <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8">
- <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8">
- <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script>
- </head>
- <body><div id="content" class="content">
- <h1><a name="plus.audio">audio</a></h1>
- <p>Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件。通过plus.audio获取音频管理对象。</p>
- <h2>常量:</h2>
- <ul>
- <li>
- <a href="#plus.audio.ROUTE_SPEAKER">ROUTE_SPEAKER</a>: 设备的扬声器音频输出线路</li>
- <li>
- <a href="#plus.audio.ROUTE_EARPIECE">ROUTE_EARPIECE</a>: 设备听筒音频输出线路</li>
- </ul>
- <h2>方法:</h2>
- <ul>
- <li>
- <a href="#plus.audio.getRecorder">getRecorder</a>: 获取当前设备的录音对象</li>
- <li>
- <a href="#plus.audio.createPlayer">createPlayer</a>: 创建音频播放器对象</li>
- </ul>
- <h2>对象:</h2>
- <ul>
- <li>
- <a href="#plus.audio.AudioRecorder">AudioRecorder</a>: 录音对象</li>
- <li>
- <a href="#plus.audio.AudioPlayer">AudioPlayer</a>: 音频播放对象</li>
- <li>
- <a href="#plus.audio.AudioPlayerEvent">AudioPlayerEvent</a>: 音频播放控件事件类型</li>
- <li>
- <a href="#plus.audio.AudioPlayerStyles">AudioPlayerStyles</a>: 音频播放对象的参数</li>
- <li>
- <a href="#plus.audio.AudioRecorderStyles">AudioRecorderStyles</a>: 音频录制的参数</li>
- </ul>
- <h2>回调方法:</h2>
- <ul>
- <li>
- <a href="#plus.audio.RecordSuccessCallback">RecordSuccessCallback</a>: 录音操作成功回调</li>
- <li>
- <a href="#plus.audio.PlaySuccessCallback">PlaySuccessCallback</a>: 播放音频文件操作成功回调</li>
- <li>
- <a href="#plus.audio.AudioErrorCallback">AudioErrorCallback</a>: 音频操作失败回调</li>
- </ul>
- <h2>权限:</h2>
- <p>5+功能模块(permissions)</p>
- <pre class="prettyprint linenums">
- {
- // ...
- "permissions":{
- // ...
- "Audio": {
- "description": "音频"
- }
- }
- }
- </pre>
- <h1><a name="plus.audio.AudioRecorder">AudioRecorder</a></h1>
- <p>录音对象</p>
- <pre class="prettyprint linenums">
- interface AudioRecorder {
- readonly attribute String[] supportedSamplerates;
- readonly attribute String[] supportedFormats;
- function record( option, successCB, errorCB );
- function stop();
- }
- </pre>
- <h2>属性:</h2>
- <ul>
- <li>
- <a href="#plus.audio.AudioRecorder.supportedSamplerates">supportedSamplerates</a>: 数组,设备录音支持的采用率</li>
- <li>
- <a href="#plus.audio.AudioRecorder.supportedFormats">supportedFormats</a>: 数组,设备录音支持的文件格式</li>
- </ul>
- <h2>方法:</h2>
- <ul>
- <li>
- <a href="#plus.audio.AudioRecorder.record">record</a>: 调用设备麦克风进行录音操作</li>
- <li>
- <a href="#plus.audio.AudioRecorder.stop">stop</a>: 结束录音操作</li>
- </ul>
- <h1><a name="plus.audio.AudioPlayer">AudioPlayer</a></h1>
- <p>音频播放对象</p>
- <pre class="prettyprint linenums">
- interface AudioPlayer {
- function void close();
- function Boolean isPaused();
- function void play(successCB, errorCB);
- function void pause();
- function void resume();
- function void stop();
- function void seekTo(position);
- function Number getBuffered();
- function Number getDuration();
- function Number getPosition();
- function void setRoute(route);
- function void setSessionCategory(category);
- }
- </pre>
- <h2>说明:</h2>
- <p class="des">
- 音频播放对象,用于音频文件的播放。不能通过new方法直接创建,只能通过audio.createPlayer方法创建。
- </p>
- <h2>方法:</h2>
- <ul>
- <li>
- <a href="#plus.audio.AudioPlayer.addEventListener">addEventListener</a>: 添加事件监听器</li>
- <li>
- <a href="#plus.audio.AudioPlayer.close">close</a>: 关闭音频播放对象</li>
- <li>
- <a href="#plus.audio.AudioPlayer.getBuffered">getBuffered</a>: 音频缓冲的时间点</li>
- <li>
- <a href="#plus.audio.AudioPlayer.getDuration">getDuration</a>: 获取音频的总长度</li>
- <li>
- <a href="#plus.audio.AudioPlayer.getPosition">getPosition</a>: 获取音频的当前播放位置</li>
- <li>
- <a href="#plus.audio.AudioPlayer.getStyles">getStyles</a>: 音频播放的参数</li>
- <li>
- <a href="#plus.audio.AudioPlayer.isPaused">isPaused</a>: 当前是否暂停或停止状态</li>
- <li>
- <a href="#plus.audio.AudioPlayer.play">play</a>: 播放音频</li>
- <li>
- <a href="#plus.audio.AudioPlayer.pause">pause</a>: 暂停播放</li>
- <li>
- <a href="#plus.audio.AudioPlayer.removeEventListener">removeEventListener</a>: 移除事件监听器</li>
- <li>
- <a href="#plus.audio.AudioPlayer.resume">resume</a>: 恢复播放</li>
- <li>
- <a href="#plus.audio.AudioPlayer.seekTo">seekTo</a>: 跳到指定位置</li>
- <li>
- <a href="#plus.audio.AudioPlayer.stop">stop</a>: 停止播放</li>
- <li>
- <a href="#plus.audio.AudioPlayer.setRoute">setRoute</a>: 音频输出线路</li>
- <li>
- <a href="#plus.audio.AudioPlayer.setSessionCategory">setSessionCategory</a>: 设置音频播放模式</li>
- <li>
- <a href="#plus.audio.AudioPlayer.setStyles">setStyles</a>: 设置音频播放的参数</li>
- </ul>
- <h1><a name="plus.audio.AudioPlayerEvent">AudioPlayerEvent</a></h1>
- <p>音频播放控件事件类型</p>
- <h2>常量:</h2>
- <ul>
- <li>"canplay": <em>(<font class="type">String</font>
- 类型
- )</em>音频可以播放事件<br>
- </li>
- <li>"play": <em>(<font class="type">String</font>
- 类型
- )</em>音频播放事件<br>
- </li>
- <li>"pause": <em>(<font class="type">String</font>
- 类型
- )</em>音频暂停事件<br>
- </li>
- <li>"stop": <em>(<font class="type">String</font>
- 类型
- )</em>音频停止事件<br>
- </li>
- <li>"ended": <em>(<font class="type">String</font>
- 类型
- )</em>音频自然播放结束事件<br>
- </li>
- <li>"error": <em>(<font class="type">String</font>
- 类型
- )</em>音频播放错误事件<br>
- </li>
- <li>"waiting": <em>(<font class="type">String</font>
- 类型
- )</em>音频加载中事件<br>
- </li>
- <li>"seeking": <em>(<font class="type">String</font>
- 类型
- )</em>音频进行seek操作事件<br>
- </li>
- <li>"seeked": <em>(<font class="type">String</font>
- 类型
- )</em>音频完成seek操作事件<br>
- </li>
- <li>"prev": <em>(<font class="type">String</font>
- 类型
- )</em>上一曲操作事件<br><p>
- 用户在后台播放控制器上点击上一曲按钮时触发,未开启后台控制器则不触发此事件。
- </p>
- </li>
- <li>"next": <em>(<font class="type">String</font>
- 类型
- )</em>下一曲操作事件<br><p>
- 用户在后台播放控制器上点击下一曲按钮时触发,未开启后台控制器则不触发此事件。
- </p>
- </li>
- </ul>
- <h1><a name="plus.audio.AudioPlayerStyles">AudioPlayerStyles</a></h1>
- <p>音频播放对象的参数</p>
- <h2>属性:</h2>
- <ul>
- <li>autoplay: <em>(<font class="type">Boolean</font>
- 类型
- )</em>是否自动开始播放<br><p>
- true - 自动开始播放;
- false - 不自动开始播放。
- 默认值为false。
- </p>
- </li>
- <li>backgroundControl: <em>(<font class="type">Boolean</font>
- 类型
- )</em>是否开启后台控制器<br><p>
- 开启后应用切换到后台可继续播放音频。
- iOS平台在系统锁屏界面显示播放控件;Android平台暂不支持。
- </p>
- </li>
- <li>coverImgUrl: <em>(<font class="type">String</font>
- 类型
- )</em>封面图地址<br><p>
- 在后台播放控制器上显示,未开启后台控制器则不显示。
- </p>
- </li>
- <li>epname: <em>(<font class="type">String</font>
- 类型
- )</em>专辑名<br><p>
- 在后台播放控制器上显示,未开启后台控制器则不显示。
- </p>
- </li>
- <li>loop: <em>(<font class="type">Boolean</font>
- 类型
- )</em>是否循环播放<br><p>
- true - 循环播放;
- false - 不循环播放。
- 默认值为false。
- </p>
- </li>
- <li>singer: <em>(<font class="type">String</font>
- 类型
- )</em>歌手名<br><p>
- 在后台播放控制器上显示,未开启后台控制器则不显示。
- </p>
- </li>
- <li>src: <em>(<font class="type">String</font>
- 类型
- )</em>音频资源的地址<br><p>
- 支持本地路径和网络路径。
- </p>
- </li>
- <li>startTime: <em>(<font class="type">Number</font>
- 类型
- )</em>开始播放的位置<br><p>
- 单位为秒(s),默认值为0。
- </p>
- </li>
- <li>title: <em>(<font class="type">String</font>
- 类型
- )</em>音频标题<br><p>
- 在后台播放控制器上显示,未开启后台控制器则不显示。
- </p>
- </li>
- <li>volume: <em>(<font class="type">Number</font>
- 类型
- )</em>音量<br><p>
- 取值范围为0-1,默认值为1。
- </p>
- </li>
- </ul>
- <h1><a name="plus.audio.AudioRecorderStyles">AudioRecorderStyles</a></h1>
- <p>音频录制的参数</p>
- <h2>属性:</h2>
- <ul>
- <li>channels: <em>(<font class="type">String</font>
- 类型
- )</em>录音声道<br><p>
- 可取值:
- "mono" - 单声道录音;
- "stereo" - 立体声道录音。
- 默认值为"mono"。
- </p>
- </li>
- <li>filename: <em>(<font class="type">String</font>
- 类型
- )</em>保存录音文件的路径<br><p>
- 可设置具体文件名,也可只设置路径,如果以“/”结尾则表明是路径,文件名由录音程序自动生成。
- 如未设置则使用默认目录生成随机文件名称,默认目录为应用%APPID%下的documents目录。
- </p>
- </li>
- <li>samplerate: <em>(<font class="type">String</font>
- 类型
- )</em>录音文件的采样率<br><p>
- 需通过supportedSamplerates属性获取设备支持的采样率,若设置无效的值,则使用系统默认的采样率。</p>
- </li>
- <li>format: <em>(<font class="type">String</font>
- 类型
- )</em>录音文件的格式<br><p>
- 需通过supportedFormats属性获取设备支持的录音格式,若设置无效的值,则使用系统默认的录音格式。
- </p>
- </li>
- </ul>
- <h1><a name="plus.audio.RecordSuccessCallback">RecordSuccessCallback</a></h1>
- <p>录音操作成功回调</p>
- <pre class="prettyprint linenums">
- void onSuccess( recordFile ) {
- // Get record file code.
- }
- </pre>
- <h2>说明:</h2>
- <p class="des">麦克风录音操作成功的回调函数,在录音操作完成调用stop()方法时调用。</p>
- <h2>参数:</h2>
- <ul><li>recordFile:
- <em>(
- <font class="type">String</font>
- )
- 必选 </em>录音操作保存的音频文件路径<br>
- </li></ul>
- <h2>返回值:</h2>
- <font class="type">void</font>
- : 无<h1><a name="plus.audio.PlaySuccessCallback">PlaySuccessCallback</a></h1>
- <p>播放音频文件操作成功回调</p>
- <pre class="prettyprint linenums">
- void onCompleted() {
- // Play audio file completed code.
- }
- </pre>
- <h2>说明:</h2>
- <p class="des">
- 音频播放操作成功的回调函数,在音频播放完成或调用stop()方法时触发。
- </p>
- <h2>参数:</h2>
- <p>无</p>
- <h2>返回值:</h2>
- <font class="type">void</font>
- : 无<h1><a name="plus.audio.AudioErrorCallback">AudioErrorCallback</a></h1>
- <p>音频操作失败回调</p>
- <pre class="prettyprint linenums">
- void onError( error ) {
- // Handle audio error
- }
- </pre>
- <h2>参数:</h2>
- <ul><li>error:
- <em>(
- <font class="type">DOMException</font>
- )
- 必选 </em>音频操作的错误信息<br>
- </li></ul>
- <h2>返回值:</h2>
- <font class="type">void</font>
- : 无<br><br>
- </div></body>
- </html>
|