6

私はJavaScriptの学習を始めたばかりで、最初の試みとして、soundcloudのAPIを音楽のソースとして使用するカスタムオーディオプレーヤーを作成したいと思います。

これまでのところ、これは私が設定したものです:

<!DOCTYPE html>
<html>
<head>



<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://connect.soundcloud.com/sdk.js"></script>

<script>
window.onload = function() {
SC.initialize({
  client_id: '10e27db0dacd00954d7160b4c092a6e2' //Demo ID
});

SC.stream("/tracks/75868018", function(sound){
    $("audio-test").attr("src", sound.uri);
});
};
</script>



</head>
<body>

<audio id="audio-test" controls></audio>

</body>
</html>
4

2 に答える 2

8

わかりました、それを理解しました。問題は.stream()でした。これは、.play()関数によってデプロイされたパッケージ済みのプレーヤーを提供することを目的としています。

代わりに使用する場合SC.get()は、実際にトラックのプロパティにアクセスして、オーディオタグに埋め込むことができます。私のコードを参照してください:http://jsfiddle.net/LpzpK/6/

まだ問題があります。トラックは401禁止としてマークされているため、プレーヤーは「ロード中」のみです。再生したいトラックを公開する方法を見つける必要があります。

于 2013-03-04T21:06:49.293 に答える
2

一見すると、すべてのsoundcloud APIオブジェクトには、リソースに直接リンクするURIプロパティが付属しているように見えます。あなたの場合、それはですsound.uri

プレーヤーコードの上部に<audio>タグがありますsrc。これは、再生しているトラックのURI値に設定する必要があると思います。これを行うには、IDを添付して呼び出します

SC.stream("/tracks/293", function(sound){
    $("[audio_id]").attr("src", sound.uri);
});

[audio_id]タグに選択したIDに置き換えます。プレーヤーが変更されるたびに、プレーヤーを再初期化/再起動するために何かをする必要があるかもしれませんが、それでうまくいけば開始できます。それがどのように機能するか教えてください!

于 2013-03-04T19:48:21.123 に答える