我正在使用SoundManager2通过RTMP传输mp3音频。问题是持续时间没有生成,始终为0
var sound = soundManager.createSound({
id: 'soundid',
serverURL: 'rtmp://server/',
url: 'file.mp3',
autoLoad: true,
autoPlay: false,
onload: function() {
console.log("DURATION: ", this.duration);
},
whileplaying: function() {
console.log(this.duration);
},
volume: 100
}).play();
使用RTMP获取持续时间吗?我也试过了durationEstimate
,这也显示了0。
答案 0 :(得分:0)
默认情况下,使用RTMP的Soundmanager2不会计算持续时间,相反,您应该提供它(以微秒为单位)作为参数,否则,您将无法搜索(SetPosition(value)):
var sound = soundManager.createSound({
id: 'soundid',
serverURL: 'rtmp://server/',
url: 'file.mp3',
duration: 300000,//example for a 5 minutes song
autoLoad: true,
autoPlay: false,
onload: function() {
console.log("DURATION: ", this.duration);
},
whileplaying: function() {
console.log(this.duration);
},
volume: 100
}).play();
如果您没有mp3音乐的持续时间,请尝试使用mp3的ID3元数据获取它(您可以使用javascript获取它们)。