SoundCloud API流媒体错误

时间:2016-12-07 14:19:49

标签: api streaming soundcloud

我正在使用SoundCloud API来播放歌曲,但我遇到了以下(我认为是)的错误。

单击按钮时,流式播放并播放曲目,当我单击其他曲目时,播放将暂停。这基本上是用这段代码完成的:

var playerVar;
SC.initialize({ client_id: 'sorryCantPublishThat' });

$('#play').click(function(){
  SC.stream('/tracks/' + trackID ).then(function(player){
    player.play();
    playerVar = player;
  });
});

$('#pause').click(function(){
  playerVar.pause();
});

这个工作正常,只要在暂停流后我没有再次点击播放。因为它播放,但我无法阻止流。我必须再次点击播放按钮,然后我可以阻止它。

任何想法,如果我做错了什么或者它是一个错误?除此之外,我怎样才能正常工作?

1 个答案:

答案 0 :(得分:0)

我想我发现了如何使这个工作。 我现在在页面加载后立即流式传输所有曲目,而不仅仅是在点击播放按钮时。每个曲目都有自己的变量:

SC.initialize({ client_id: '' });

SC.stream('/tracks/' + track.id ).then(function(player){

    player.on('time', function () {
        // update 
    });

    soundCloudPlayers[ track.id ] = player;

});

然后,当点击播放按钮时:

$('.play').click(function() {

    var player = soundCloudPlayers[ $(this).attr('data-trackid') ];
    player.play();

    player.on('time', function () {
        // update the current playback position indicator
    });
});

所以这也是放置事件监听器的地方。