2011-05-12 24 views
59

HTML5ビデオ(VP8エンコード)を再生しようとしています。私が望むのは、それをある位置でプレイすることです。例えば、50秒後に言うとしましょう。読み込み時に特定の位置でHTML5動画を開始しますか?

私は試しましたが、問題があるようです。私が間違っていることがあればお勧めできますか?ここで

は、コードは次のとおりです。

<video id="vid1" width="640" height="360"> 
     <source src="file.webm" type="video/webm" /> 
     Your browser does not support the video tag. 
    </video> 
    <script> 
     document.getElementById('vid1').currentTime = 50; 
    </script> 

私が試してみましたが、それは動作しません。ビデオが読み込まれると、開始から再生が開始されます。しかし、再生中にこのように呼び出すと、ビデオが再生されている時間の後のようにうまく動作します。私が紛失しているものはありますか?

+2

でサポートされていませんか?電話を数ミリ秒遅らせてみましたか?ビデオ要素を完全にロードするのにもう少し時間がかかるかもしれません – Andre

答えて

89

特定の時間を探す前に、ブラウザーで動画の再生時間がわかるまで待つ必要があります。だから、私はあなたが「loadedmetadata」イベントのために、このような何かを待ちたいと思います:

document.getElementById('vid1').addEventListener('loadedmetadata', function() { 
    this.currentTime = 50; 
}, false); 
+0

ありがとうございます。クロームでうまくいきました。 – Johnydep

+0

NICE機能。オールインワン... –

+2

これはSafariでは動作しません。私は負荷データイベントも試してみました。何か案は? –

36

あなただけfile.webm#T = 50

にファイル名を変更、Media Fragments URIと直接リンクすることができますHere's an example

これはかなりクールです、あなたはあらゆることをすることができます。しかし、私はブラウザサポートの現在の状態を知らない。

+0

ブラウザサポートが良好です。 HTML5をサポートしているすべてのブラウザは、少なくとも基本的な一時的なメディア断片もサポートしていると思います。 –

+1

はIEではサポートされていません。大きな問題です。 –

+0

@michaelhanon、これを達成するためには、IE用のポリフィルを書くのはむしろ簡単です。サポートされていない場合は、ブラウザを検出し、URLを分割し、クエリパラメータを検索し、ビデオの時刻を変更するためにJavaScriptを使用してください...私がチャンスを得たらそれを行うかもしれない – gdgr

2

HLSソースのSafari Macでは、メタデータイベントの代わりにloadeddataイベントを使用する必要がありました。

+0

loadmetadataは正しいイベント私がデータロードを聞いていない限り、長さ0(OSXのSafariのみ)。ありがとう – Statuswoe

+1

なぜこれはダウン票ですか?おそらく、OPによって提供された例には直接関係していないかもしれませんが、問題の一般的な主題に事実上正確で関連しています。 – JayPea

25

html5でビデオタグを使用しているときにビデオの開始時間と終了時間を調整します。カンマの左

http://www.yoursite.com/yourfolder/yourfile.mp4#t=5,15

は時間を秒単位で開始され、カンマの右側には、秒単位の終了時間です。 カンマと終了時刻を削除して、開始時刻のみを有効にします。

+0

2桁目はビデオのどれくらいが読み込まれたのか終了していないようです...最初の桁が処理されました。何かご意見は? – Martian2049

3

#t=10,20フラグメントを使用すると、私のために働いた。ちょうどあなたのメディアのURLの末尾に#t=[(start_time), (end_time)]を追加JAVASCRIPT

を使用せずに

+1

IEではサポートされていません!!!!!! –

+0

2桁目はビデオのどれくらいが最初に読み込まれたのか終了していないようです...最初の桁が処理されました。何かご意見は? – Martian2049

25

。唯一の逆行(あなたがそれを見たい場合)は、ビデオが終了時間を示すための時間を知る必要があります。 例:

<video> 
    <source src="splash.mp4#t=10,20" type="video/mp4"> 
</video> 

注: IE

何ブラウザ
+1

IEではサポートされていません!!!!!! –

+1

IEで動作していないことが確認されました==問題のエクスプローラ –

+0

2桁目はビデオのどれくらいが読み込まれたのか終了していないようです。何かご意見は? – Martian2049

関連する問題