2012-03-28 7 views
2

ストリーミングビデオを通じて継続的な教育コースを提供するウェブサイトを設計しています。要件の1つは、出席を追跡する必要があることです。つまり、実際に最初の動画セグメントを視聴するまで、次の動画セグメントに移動することはできません。私は、ページのロードをタイムスタンプし、データベーステーブルに保存し、タイムスタンプが期限切れになるまで次のビデオセグメントを表示するのを防ぐPHPプログラムを作成しました。しかし、これは扱いにくいものであり、ビデオが実際に完全に再生されたことを保証するものではありません。ビデオオブジェクトと何らかの形でインターフェースを取って、実際に再生が終了したときを知ることができればいいと思います。誰かがこれを達成するための最善の方法に関する提案をしていますか?ビデオを見たことを確認する方法

動画は.wmv形式です。

+0

ビデオの再生中に、彼らが部屋にいたことをどうやって確認していますか? – stark

+0

出欠を追跡することは、愚かな政府のルールです。私は同じことを考えました - そのビデオは一定の時間再生されていることを知っていますが、実際にそれを見たことをどのように知っていますか?しかし、幸いにも、その部分は私の問題ではありません。私の要求は、今度は変更のために実際にはかなり明確です。 – Tom

答えて

1

html5ビデオタグを使用している場合、利用可能なイベントにフックすることができます。

あなたにはJavaScriptが使用できますが、イベントは「終了」「再生中」などあります。

イベントがトリガーされた場合は、外部機能(おそらくajax経由)を呼び出すことができます。

+0

私はそれも考えましたが、HTML5ビデオはwmvファイルで動作するとは思いません。 – bfavaretto

+0

OBJECTタグとEMBEDタグを使用していました。私はVIDEOタグで利用可能なイベントを調べただけで、それが非常に多くサポートされているとは思いませんでした。私はこれが私の問題を解決すると思う。あなたの答えをありがとう。必要に応じていつでもファイル形式を変更できます。 – Tom

+0

@bfavarettoあなたは正しいです。私は彼が自由なMiroビデオコンバータを使用して、彼が必要とするどのようなフォーマットにも変換できると思います。 mp4、webmなど。 – scartag

1

Flashビデオを使用してこれまでこれと同様のアプリケーションを作成しました。私はあなたが.wmvを使っていると言ったことを知っていますが、私はあなたに何かアイデアを与えるかもしれないので、私たちがしたことを分かち合います。

基本的に、Adobe Flexを使用してビデオを再生するカスタムビデオプレーヤーを作成しました。ビデオプレーヤーは、再生が特定のマイルストーンを通過するたびにWebサービスにpingを実行するように設定されていました。私たちの場合、総再生時間を10に分け、再生がWebサービス(PHP)と呼ばれる10%のチャンクのそれぞれに合格し、視聴率と実際の時間をビデオに送りました。例えば、2分のビデオは最初に10%と12秒のコールを送信し、2番目のコールは20%と24秒となります。これを行うことで、ユーザーの進行状況を把握し、ビデオの終わりまでスクラビングし、サービスコールがなかったので、他の9つのマイルストーンに合格しなかったと言えるので、ビデオを終了してください。

これもFlashビデオを使用していましたが、ビデオプレーヤーでイベントやAPIをタップしてビデオの現在の位置を検出できる場合は、同様のことを達成できます。完璧ではありませんが、私たちのニーズには十分です。

+0

実際、私の最初の考えは、あなたのやり方に似た何かをしたActiveXコントロールでした。しかし、私はActiveXを使うことができないと言われました。私はフラッシュに変換する場合、私が持っているオプションを調べます。ご回答有難うございます。 – Tom

+0

問題ありません - Flashビデオルートを利用する場合は、OSMF(www.osmf.org)とStrobeメディアプレーヤーを見てみることをお勧めします - 私たちはそれらを大きな踏み台として使用し、数日。 – TheOx

関連する問題