2016-12-07 3 views
0

SoundCloud APIを使用して曲をストリーミングしていますが、次のような問題が発生しています。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(); 
}); 

ストリームを一時停止した後、もう一度再生をクリックしない限り、これは問題なく動作します。それは再生されるので、私はストリームを停止することはできません。私はもう一度再生ボタンをクリックしなければならない、そして私はそれを停止することができます。

私が何か間違ったことをしているか、それともバグなのか考えてみましょうか?それ以外に、どのようにしてこれを正しく動作させることができますか?

答えて

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 
    }); 
}); 

だから、これはまた、イベントリスナーが配置されている場所です。

関連する問題