-4

Soundcloud は、カスタム プレーヤーのバグを認めていません。多くのサイトが影響を受けています。ここに私の以前の質問へのリンクがあります

https://stackoverflow.com/questions/16993681/soundcloud-custom-player-skin-not-playing-next-tracks

4

3 に答える 3

4

バグの存在も確認できました。彼らの github ページで問題を作成し、サポートにメールも送信しました。過去 2 日間、彼らのコードを何らかの方法で変更することで解決できるかどうかを確認しようとしましたが、JavaScript 側ではなく、API を介して配信される実際のフラッシュ ペイロードにバグが存在することは間違いありません。物事の。

編集: わかりました、soundcloud のバグを回避するための一時的な解決策を思いつきました。

sc-player.js の 209 行付近に次のように表示されます。

    load: function(track) {
      var url = track.uri;
      if(player){
       player.api_load(url);
      }else{
        // create a container for the flash engine (IE needs this to operate properly)
        $('<div class="sc-player-engine-container"></div>').appendTo(document.body).html(flashHtml(url));
      }

これは、api_load 呼び出しを使用して新しいトラックを Flash Player に挿入する呼び出しです。問題は、それが現在まったく機能していないことです。その API を使用する代わりに、既存のオーディオ エンジンを破棄し、次のように新しいものに置き換えます。

    load: function(track) {
      var url = track.uri;
      if(player){
       // player.api_load(url);
       $('.sc-player-engine-container').html(flashHtml(url));
      }else{
        // create a container for the flash engine (IE needs this to operate properly)
        $('<div class="sc-player-engine-container"></div>').appendTo(document.body).html(flashHtml(url));
      }

これで、最初のトラックが終了した後、またはユーザーがトラックを切り替えたときにトラックが再生されます。これは、soundcloud から余分なリソースをロードし続けなければならないため、最適ではありませんが、soundcloud は私たちを立ち往生させてしまいました。現時点では、他に実行可能な解決策はありません。

于 2013-06-12T10:40:13.697 に答える
2

実際、数日前からカスタム プレーヤーが正常に動作しないことに気付きました。HTML5 オーディオのみをサポートする Webkit ブラウザー向けのソリューションを見つけました。次のようにスクリプトを含める必要があります (ソースからコピー):

  1. ウィジェット js API: https://w.soundcloud.com/player/api.js
  2. soundcloud.player.api.js (github soundcloud カスタム プレーヤーから取得)
  3. sc-player.js (github soundcloud カスタム プレーヤーから取得)

これは、html5 オーディオをサポートするブラウザーでのみ問題を解決するはずですが、それでも flashplayer フォールバックでは機能しません。Firefox 21 Mac バージョンはまだ mp3 をサポートしておらず、ストリーミング オーディオにフラッシュを使用しています...

この点については、soundcloud dev サポートからの回答を待っています。

乾杯。

于 2013-06-11T10:55:21.533 に答える