Как повторить песню с помощью Soundcloud API

Я делаю собственный музыкальный проигрыватель на основе SoundCloud API. Я хочу иметь кнопку повтора, чтобы при ее нажатии повторялась текущая песня. Насколько я знаю, SoundCloud не предоставляет никакого метода повтора, но у него есть несколько методов position(), которые получают правильную позицию песни. Я не мог заставить этот метод работать. Но есть ли у вас какие-либо предложения по повторению песни текущего потока?

мой код до сих пор:

function playIt(){
var sound = SC.stream("/tracks/293", function(sound){
    sound.play();
    
});
}
function repeat(){
    var sound = SC.stream("/tracks/293", function(sound){
    console.log(sound.position);
    });
}

Демонстрация: http://jsfiddle.net/danials/zcN7G/23/

Есть идеи? заранее спасибо


person Daniel JJ    schedule 28.06.2014    source источник
comment
Пожалуйста, предоставьте гораздо более короткий трек в вашем jsfiddle.   -  person Wayne Ellery    schedule 28.06.2014


Ответы (1)


var repeatSong = function() {
    this.play({onfinish: repeat});
};

var sound = SC.stream("/tracks/293", function(sound){
    sound.play({onfinish: repeatSong});        
});

http://jsfiddle.net/G5RdX/1/

person Wayne Ellery    schedule 28.06.2014
comment
Спасибо за ответ, попробовал запустить, но не получилось. Можете ли вы показать это на JSFiddle, пожалуйста. Спасибо - person Daniel JJ; 28.06.2014
comment
Вау идеально. У меня просто вопрос, является ли эта опция onfinish функцией SoundCloud? Я просто пытаюсь понять, что ты сделал. - person Daniel JJ; 28.06.2014
comment
да. onFinish — это событие для API воспроизведения SoundManager2. Взгляните на это: developers.soundcloud.com/docs/api/sdks#javascript schillmania.com/projects/soundmanager2/doc. Это событие срабатывает, когда игра заканчивается. Я просто заскриптовал его, чтобы продолжать вызывать игру каждый раз, когда игра заканчивается. - person Wayne Ellery; 28.06.2014