2017-12-07 21 views
0

일부 Soundcloud 트랙에 대한 사용자 지정 플레이어를 만들려고합니다. 아이디어는 Iframe을 숨기고 다른 트랙을 재생할 몇 명의 플레이어를 만드는 것입니다. 로딩과 플레이 모두 정상적으로 작동하지만 두 가지 문제가 있습니다.사용자 지정 Soundcloud 위젯 (api) 플레이어

  1. 은 어떻게 진행 막대 (SC.Widget.Events.PLAY_PROGRESS)
  2. 는 어떻게 다운로드 링크를 만들려면 어떻게해야합니까를 만들려면 어떻게해야합니까?

방식에서 조각 나는이 코딩있어 다음 OPEN API가 닫혀 불량으로

(function(){ 
    var widgetIframe = document.getElementById('sc-widget'), 
     widget  = SC.Widget(widgetIframe); 

    widget.bind(SC.Widget.Events.READY, function() { 

    $('#play').click(function(){ 
     widget.play(); 
    }); 
}); }()); 

..

답변

1

사용자 정의 플레이어를 사용하여 트랙을 스트리밍하려는 경우, I 위젯을 전혀 사용하지 않는 것이 좋습니다. 오히려 streaming SDK directly을 사용하십시오. There are methods 거기에로드, 재생, 일시 정지, 탐색, 노래의 현재 시간 등을 얻기 위해 필요한 모든 것을 할 수 있습니다. 다음 (이 예와 같이 스트림 기능 내부

SC.initialize({ 
 
    client_id: "<client id>" 
 
}); 
 

 
SC.stream("/tracks/" + song_id).then(function (player) { 
 
    player.play(); 
 
}

실제 진행률 표시 줄을 구축하기 위해, 당신이 할 수있는 일 :

스트리밍 플레이어를 초기화하려면, 당신은 뭔가를 할 수 있습니다 JQuery와 사용하지만 당신은) 필요하지 않습니다

player.on("time", function() { 
    var current_time = player.currentTime(); 
    var current_duration = player.options.duration; 
    $(".scrubber .scrubber_fill").css("width", ((current_time/current_duration) * 100) + "%"); 
}); 
+0

큰 소리. API가 닫힌 이후로 위젯에갔습니다. 생각해 줘서 고마워. 사우스 캐롤라이나 : "SoundCloud의 수동 응용 프로그램 등록 프로세스가 현재 닫혀 있으므로 새 응용 프로그램을 등록 할 수 없습니다" – Ilja

+0

Aah, 이해했습니다. 글쎄, 잘하면 내 대답은 일단 그들은 API 등록을 다시 열면 누군가에게 도움이 될 것입니다. –