本文介绍基于HaaS JS轻应用,AudioPlayer-音频播放组件提供的相关充电接口说明。
硬件平台
产品型号 | 是否支持 | 硬件类型 |
HaaS600Kit | 否 | 开发板 |
HaaS510 | 否 | DTU |
HaaS520 | 否 | DTU |
HaaS530 | 否 | DTU |
HaaS531 | 否 | DTU |
HaaS632-LT32V | 是 | 模组 |
HaaS600-EC600S | 是 | 模组 |
HaaS600-EC600N | 否 | 模组 |
HaaS600-EC600U | 否 | 模组 |
HaaS600-N715 | 是 | 模组 |
audioPlayer
播放实例,通过new
来进行创建一个播放器实例
入参
无。
返回
实例类型,播放器实例。
play(String path, function cb)
开始播放指定的音频。
入参
属性 | 类型 | 是否必填 | 描述 |
path | String | 是 | 音频文件绝对路径或者音频URL。 支持的音频格式: |
cb | Function | 是 | 播放完成通知回调。 |
返回
Number类型。
0:成功。
其他:失败。
pause()
暂停播放。
入参
无。
返回
Number类型。
0:成功。
其他:失败。
resume()
继续播放。
入参
无。
返回
Number类型。
0:成功。
其他:失败。
stop()
停止播放。
入参
无。
返回
Number类型。
0:成功。
其他:失败。
listPlay(Array paths,Function callback)
播放器实例,依次播放列表中的音频文件。
入参
属性 | 类型 | 是否必填 | 描述 |
path | Array | 是 | 音频文件绝对路径或者音频URL数组。 说明 一个播放列表中只支持一种音频格式的播放,不允许1个音频列表中存在多种音频格式。 例如:播放列表中的音频文件格式必须都是 |
cb | Function | 是 | 播放完成通知回调。 |
返回
Number类型。
0:成功。
其他:失败。
setVolume(Number volume)
设置播放音量。
入参
属性 | 类型 | 是否必填 | 描述 |
volume | Number | 是 | 音量大小。 |
返回
Number类型。
0:成功。
其他:失败。
getVolume()
获取当前音量。
入参
无。
返回
Number类型,当前音量大小。
getState()
获取当前播放器状态。
入参
无。
返回
Number类型,当前播放器状态。
0:播放停止。
1:播放暂停。
2:播放开始。
3:列表播放开始。
4:列表播放结束。
5:播放器错误。
seekto(Number seconds)
从指定位置处开始播放。
入参
属性 | 类型 | 是否必填 | 描述 |
seconds | Number | 是 | 播放位置,单位为秒。 |
返回
Number类型。
0:成功。
其他:失败。
getPosition()
获取当前播放进度。
入参
无。
返回
Number类型,当前播放进度,单位为秒。
getDuration()
获取当前音频文件时长。
入参
无。
返回
Number类型,当前播放音频文件时长,单位为秒。
on('stateChange', function cb)
当播放器状态变化时,触发'stateChange'
事件。
回调函数参数有:
属性 | 类型 | 描述 |
state | Number | 音频播放器当前状态。
|
示例代码
/* 加载audioplayer模块 */
import * as player from 'audioplayer';
/*创建一个charger实例 */
var audioPlayerIns = new player.audioPlayer();
/* 定义播放器状态描述 */
var audioplayerState = ['stop', 'paused', 'playing', 'listplay_begin', 'listplay_end', 'error'];
/* 监听播放器状态变化 */
audioPlayerIns.on('stateChange', function(state) {
console.log('audioplayer state: ' + audioplayerState[state]);
});
/* 设置音量等级8 */
audioPlayerIns.setVolume(8);
/* 播放本地音频test.mp3并设置播放完成回调 */
audioPlayerIns.play("/test.mp3", function(){console.log('playback complete');});
setTimeout(function() {
/* 5秒后播放暂停 */
console.log("playback pause");
audioPlayerIns.pause();
/* 获取播放进度 */
var position = audioPlayerIns.getPosition();
var duration = audioPlayerIns.getDuration();
console.log('playback progress: ' + position + '/' + duration);
}, 5000)
setTimeout(function() {
/* 暂停5秒后继续播放 */
console.log("playback resume");
audioPlayerIns.resume();
}, 10000)
setTimeout(function() {
/* 继续播放5秒后从1秒处开始播放 */
console.log("playback from 1s");
audioPlayerIns.seekto(1);
}, 15000)
setTimeout(function() {
/* 获取播放进度 */
var position = audioPlayerIns.getPosition();
var duration = audioPlayerIns.getDuration();
console.log('playback progress: ' + position + '/' + duration);
}, 16000)
setTimeout(function() {
/* 停止播放 */
console.log("playback stop");
audioPlayerIns.stop();
}, 30000)