3

私の質問はここでの質問と同じですが質問は解決されず、PeeHaaに個人的にメッセージを送って答えを尋ねることはできないため、ここでもう一度質問します。

私はsoundcloudapiのクエリに成功し、各トラックのstream_urlを取得して、360プレーヤーのすべてのhrefに追加しました(デモはこちら)。要素のコードは次のようになります。

<div class="ui360">
 <a href="/path/to/an.mp3" data-title="Track title">play "an.mp3"</a>
</div>

このスクリプトを使用して、data-title属性を持つすべてのタグを検索し、stream_urlに基づいて正しいhrefを指定しますが、ブラウザーのサウンドマネージャーアイコンをクリックしてトラックを再生しようとすると、にリダイレクトされます。 mp3url。

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

SC.get('/playlists/2450655', 'allow_redirects=False', function(playlist) {

  var titles = $('.audio .ui360 a').each(function(index){
    this.index = index;
  });

  for (var i = 0; i < playlist.tracks.length; i++) {    
    var id = '?client_id=MY_CLIENT_ID'    
    for (var j = 0; j < titles.length; j++) {      
      if (playlist.tracks[i].title === $(titles[j]).attr('data-title')) {
        $(titles[j]).attr('href', playlist.tracks[i].stream_url+id)
      }            
    }    
  }

});

この方法でsoundcloudでホストされているトラックを再生するための正しいURLを取得する方法を知っている人はいますか?

4

2 に答える 2

5

これは古い質問であることは知っていますが、問題が私を壁に押し上げていたので、最終的にそれを理解したので、他の人への私の答えは次のとおりです。

リンクで mp3 mimetype を指定すると、Soundmanager が機能します。

<div class="ui360">
    <a type="audio/mp3" href="https://api.soundcloud.com/tracks/49349198/stream?client_id=YOUR_CLIENT_ID" data-title="Track title">play "an.mp3"</a>
</div>
于 2013-06-26T18:59:30.050 に答える
1

SoundCloud JavaScript SDK を使用してトラックをストリーミングしないのはなぜですか? 何かのようなもの:

SC.get('/playlists/2450655', function(playlist) {
  $(playlist.tracks).each(function(index, track) {
    $('a[href="' + track.stream_url + '"]').click(function(e) {
       e.preventDefault();
       SC.stream('/tracks/' + track.id, function(sound) {
         sound.play();
       });
    });
  });
});

それで問題は解決しますか、それとも URL を解決する必要がある特定の理由がありますか?

于 2012-10-18T05:38:23.070 に答える