2013-08-07 13 views
8

サーバーでビデオファイルを表示しようとするたびに、Safari、ChromeのiOSでこのエラーが発生します。リソースをロードできませんでした。iOSでのプラグイン処理負荷

私はブロブサーバーとそれからApacheサーバーを使用しているため、問題の内容がわかりません。しかし、Apacheだけを使用すると、このエラーが発生しますが、ビデオレンダリングもあります。

しかし、これを私のサーバーを使ってレンダリングすると、これは機能しません。誰がなぜこれが分かっていますか?ビデオは他のデバイスでも正常に動作し、ブラウザでもApache経由でのみアクセスすると正常に動作します。

+1

あなたはこれを理解しましたか?私は同じ問題を抱えています! – deweydb

答えて

13

この問題の解決策は単なる回避策でした。その理由は、BLOBサーバーがストリーミングサーバーではないからです。 iOSデバイスは、動画が小さなチャンクで到着することを期待しています。たとえば、ストリーミングサーバーがこれを行うことができます。しかし、BLOBサーバーは、iOSデバイスが期待していないBLOBとしてビデオを渡すだけです。一部のブラウザはこれを処理するのに十分スマートですが、他のブラウザは処理できません。

私がこれを解決したのは、ビデオファイルをプロジェクト内のフォルダ内のBlobサーバーの外に追加してから、実際に使用していたBlobサーバーを介して提供するのではなく、Apacheサーバー経由でレンダリングすることでした。私はこれが役立つことを願っています

+0

うわー - この答えに感謝します! Webサーバーがストリーミングを処理できない可能性があると私は思いました。私の場合、Umbraco CMSはそれを処理できませんでした。いったん別のサーバーにビデオを移動すると、すべて正常に動作しました。これらのシステムはとても脆弱です。 – sean2078

+0

この回答は絶対的な金です!私は、ビデオ/オーディオフォーマット/解像度などのさまざまな組み合わせを試して無駄に過ごしました。Apacheの応答には、最小限のヘッダーセット(Server、Connection、Date、ETag、Keep-Alive)が含まれているため、Springコードのどこかに問題があります。このソリューションはiOSでも動作しますが、SafariをOSXで修正しました。 – Alex

0

ここでは、BLOBアセットのURLパターンを作成し、そのURLパターン定義ページにヘッダーを設定し、MIMEタイプ「video/mp4」を送り返しました。これはバイナリストリームをチャンクとして処理するようにブラウザに指示するはずです。そのため、再生を開始する前にすべてをダウンロードする必要はありませんでした。