【问题标题】:Pausing sounds with SoundCloud API使用 SoundCloud API 暂停声音
【发布时间】:2015-01-28 00:33:19
【问题描述】:

我是 JS 的新手,我无法使用 SoundCloud JavaScript SDK 获取当前正在播放的音频以暂停或停止。我正在使用 MEAN 堆栈。

在“就绪”函数中,我初始化了 SC 播放器:

SC.initialize({
    client_id: "my_client_ID",
    redirect_uri: "http://example.com/callback.html",
});

...

$('#trackList table tbody').on('click', 'td a.linkplaytrack', playTrack);
$('#trackList table tbody').on('click', 'td a.linkpausetrack', pauseTrack);

playTrack 功能正常,音频开始播放:

function playTrack(event){
    event.preventDefault();

    SC.stream("/tracks/293", function(sound){
        sound.play();
    });
};

但由于某种原因 pauseTrack 功能不起作用:

function pauseTrack(event){
    event.preventDefault();

    SC.stream("/tracks/293", function(sound){
        sound.pause();
    });
};

我们将不胜感激任何帮助、见解或建议!

【问题讨论】:

    标签: javascript audio streaming soundcloud


    【解决方案1】:

    每次调用 SC.stream 时,都会创建一个新的声音对象。 pause() 正在工作,只是声音与播放的声音不同。您可以存储流以供以后使用:

    var stream;
    
    function playTrack(event) {
      e.preventDefault();
      if(!stream) {
        SC.stream("/tracks/293", function(sound){
            stream = sound;
            stream.play();
        });
      }
      else {
       stream.play();
      }
    }
    
    
    function pauseTrack(event) {
      if(stream) {
        stream.pause();
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多