ブラウザで。h264ファイルを再生しようとしています。htmlビデオタグを使用してこれを達成しようとしています。結果は常に空のフレームになります。
私はウェブ上のいくつかのリンクをチェックしました、彼らは。mp4コンテナでビデオを再生することを勧めます。
誰かがこれを達成するのを手伝ってくれる?
更新されたコード:
<video width="560" height="340" preload controls>
<source src="hh.h264" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
<!--<source src="hh.mov" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
<source src="hh.ogv" type='video/ogg; codecs="theora, vorbis"' />
<source src="hh.webm" type='video/webm; codecs="vp8, vorbis"' />-->
</video>
参照:
http://www.htmlgoodies.com/html5/client/how-to-embed-video-using-html5.html#fbid=6u-u00TH7Je
HTMLコードにh.264を含める必要はありません。動画ファイルへのパスと動画ファイル名のみを含める必要があります。たとえば、動画ファイルが.mp4で、ファイル名がmyvideo.mp4
そしてあなたの myvideo.mp4
はvideos
という名前のフォルダーにあり、htmlファイルはプロジェクトフォルダー内のvideos
フォルダーのすぐ外にあるため、次のようにします。
<video width="560" controls>
<source src="videos/myvideo.mp4" type="video/mp4">
</video>
これは、ビデオがmp4形式でエンコードされている場合に機能します。 h264はコーデックであり、この状況ではまったく関係ありません。
最初にオンラインでmp4エンコーダーを見つけます。無料のエンコーダーが多数あり、ビデオを.mp4にエンコードしてから、上記のhtmlコードを使用すると、ビデオが正常に再生されます。
すべてのブラウザー(デスクトップ、iOSなど)でライブ(遅延なし)h264ビデオを再生できるブロードウェイh264コーデック(emscripten)を中心にHTML5ビデオプレーヤーを作成しました。
ビデオストリームは、websocketを介してクライアントに送信され、フレームごとにデコードされたフレームでカンバに表示されます(加速にはwebglを使用)
Githubで https://github.com/131/h264-live-player を確認してください。
。h264ファイルには、ブラウザで直接サポートされていない生のH.264ストリームが含まれています。 FFmpeg
のようなツールを使用して、推奨される他の回答のようにコンテナに配置できます。
ffmpeg -f h264 -i test.h264 -c:v copy test.mp4
編集:
生のH.264バイトストリームを再生する必要がある場合、ブラウザプラグインが必要です。 VLC Webプラグインの例:
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" target="test.h264" />