1

私たちのアプリはこのマークアップを生成しています:

<video id='player' width='512' preload='none' controls='controls'>
  <source src='http://unpredictablesite.com/notfound.mp4' type='video/mp4' />
  <source src='http://predictablesite.com/exists.mp4' type='video/mp4' />
</video>

MediaElement.js (ver 2.10.0) を使用しており、最初に unpredicatablesite.com からのソースを再生してから、最初のソースが見つからない場合は predicatablesite.com からのソースにロールオーバーしてもらいたいと考えています。

興味深いことに、次のソースへのロールオーバーは、HTML5 ビデオ タグのみを使用した場合は機能するようですが、MediaElement.js を使用した場合は機能しません。これを機能させるには、どのようなオプションが必要ですか? エラー: プレーヤーのインスタンス化に関する function(){} がソース 404 エラーでトリガーされないように見えるため、その計画は機能しませんでした。

4

1 に答える 1

0

最初のソースのステータスを確認し、200 の場合 (つまり、サーバー上にファイルが存在することを意味します)、ビデオ ソースをすべて動的に割り当てることができます。ビデオが存在しない場合は、ビデオを 2 番目のソースに割り当てます。

    var http = jQuery.ajax({
        type:"HEAD",
        url: $('source:first').attr('src'),
        async: false
      });


  var vidsrc;

  if ( http.status == 200 ) vidsrc = $('source:first').attr('src');
  else $('source:eq(1)').attr('src'); 


  var myvid = new MediaElementPlayer('#player', {
     translationSelector: true,
     success: function (mediaElement) {

        var sources = [{ src: vidsrc, type: 'video/mp3' }];

        mediaElement.setSrc(sources);
        mediaElement.pause();
        mediaElement.load(); }
     });
于 2013-02-12T22:38:29.390 に答える