0

最近、私は友人とPlay Framework 1.2.4のWebアプリケーションで作業しており、videojsプレーヤーを使用してプロジェクトの/publicディレクトリに保存されているビデオをストリーミングしようとしていました。このビデオは.mp4形式でしたが、これはこの質問には関係ないと思います。サーバーサイドスクリプトを使用せずに、ビデオに直接アクセスしていました。テスト中に発生した2つの問題を発見しました。

  1. ビデオは最後までバッファリングされませんでした。ほんの数秒先が常にバッファに保存されていました。

  2. ビデオを再生するときに、一時停止を押してから再生すると、ビデオの再生が完全に中断します。ビデオを永久にバッファリングする場合もあれば、ビデオの再生を継続しているように見える場合もありますが、黒い画面しか表示されず、音も表示されません。

Webアプリケーションに保存されていないが、他のサーバーから提供されたファイルで同じvideojsスクリプトを試したところ、問題なく機能しました。他のサーバーが同じコンピューター上で実行されているTomcatであったとしても。したがって、これは、サーバープレイがアプリケーションを実行するために使用する問題であるに違いないことをお勧めします。「playrun」コマンドを使用し、デフォルトの構成でアプリケーションを実行していました。誰かがこの奇妙な行動を説明できますか?構成に設定する必要があるものはありますか、それとも単なるバグですか?ありがとう。

4

1 に答える 1

1

これは、netty/パブリックフォルダを処理するプレイコントローラでの範囲サポートの問題だと思います。(http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35

これをcurlでテストできるはずです。たとえば、この投稿で説明されているように http://linuxandfriends.com/2008/11/01/curl-split-a-file-and-download-simultaneously-from-multiple-locations //

ただし、本番環境では、通常、lighttpd / nginx(ポート80をバインドできるようにするため)を使用して再生を開始するため、パブリックフォルダーのファイルは再生以外の方法で提供されます...問題はありません。

于 2012-04-22T09:26:18.367 に答える