var r = null;
function onPlusReady() {
r = plus.audio.getRecorder();
}
function dianji() {
if (r == null) {
alert("Device not ready!");
return;
}
r.record({
filename: "_doc/audio/"
}, function(recordFile) {
var player = plus.audio.createPlayer(recordFile);
var num = 0;
//player.play(function() {}, function() {});//当开始播放的方法执行后才能获取到音频流的总长度
setTimeout(function() {
num = player.getDuration();
alert(num);
},400)
}, function(e) {
alert(e);
});
};
如上代码,无法获取到音频流的总长度显示为NaN,如果执行播放的方法后就可以获取到了,这是bug还是设计如此?
5 个回复
DCloud_App_Array
5+ API规范没有规定需要播放后才能获取长度,可能各平台实现缺陷导致的问题
@DCloud_IOS_XTY @DCloud_Android_磊子 确认如何支持播放前可获取
Android_磊子
目前5+安卓平台确实需要在play之后才能获取时长。
春华秋实
做游戏使用,想解决流式播放
春华秋实
做游戏使用,想解决流式播放,实现语音消息的高效推送,怎么处理?
Android_磊子
Android平台可以尝试使用网络音频地址。
2016-12-19 20:04
春华秋实
问题是游戏需要ios和android互通,痛苦中
2016-12-24 09:48
小黄鸭 - IT宅
现在ios平台也是播放后才能获取到长度