0

ネットストリームとビデオ オブジェクトを使用して、フラッシュでビデオを再生しています。具体的には mp4 ビデオです。

私がやろうとしているのは、特定の位置 (例: 20 秒) からファイルの再生を開始することです。

ただし、netstreamObject.seek(20) では、ストリームが 20 秒以上読み込まれていない限り機能しません。20 秒でロードを開始するように指定する方法はありますか? またはこれを達成する他の方法はありますか?

4

4 に答える 4

2

20 秒から始まる新しいバージョンのファイルを作成する方が簡単ではないでしょうか。この方法では、ユーザーがダウンロードする必要が少なくなります。

ここを見てみてくださいhttp://www.winmend.com/file-splitter/

ジョシュ

于 2010-01-19T16:13:15.037 に答える
2

簡単に言えば、「プログレッシブ ビデオではダウンロード ポイントを超えてシークすることはできません」です。ただし、Akamai やその他の CDN (YouTube など) には、プログレッシブ ビデオをシークできる技術があります。これは独自のサーバー技術であるため、問題は解決しません。あなたの状況では、ファイルやストリーミング サーバーを制御せずにクライアント コードのみを使用すると、ファイルが読み込まれるまでシークする方法がありません。

于 2010-01-20T14:46:35.987 に答える
1

lighttpd をサポートするある種の CDN キャッシュ サーバー (実際のファイルはこのキャッシュ サーバー経由で提供される) を使用すると、ビデオを先にシークできます。

于 2010-01-20T04:14:31.103 に答える
0

はい、プログレッシブでもこれを行うことができます。これはhttp疑似ストリーミングとして知られており、調べてみると、この例がたくさん見つかります。基本的に、リクエストを受信するにはサーバー上にピースが必要です。最初のリクエストでは、httpヘッダーを介して開始点を追加し、サーバー側は自動的にそのオフセットに移動します。

しかし、今はもっと良い方法があります。私の意見では、RTMPはAdobe独自のものであり、非標準のポートで動作するため、多くのユーザーが問題を抱えています。あなたが真剣になりたいなら、それを正しくやりなさい。apache f4fモジュール、adobe httpダイナミックストリーミング、およびf4fpackagerを検索します。apacheオリジンモジュールに関するAdobeのドキュメントに従ってapacheサーバーをセットアップし、f4fpackagerを使用してビデオ/オーディオをセグメントにチャンク化します。次に、ネットストリームをf4mにポイントします。クレイジーな高速を求めるだけでなく、標準のhttpを超えて、単純な古いCDNを使用してリクエストをキャッシュおよびサーバー化できるだけでなく、アダプティブストリーミング用に複数のビットレートをサポートすることもできます。

于 2012-02-10T19:37:33.140 に答える