mp4 動画の再生テスト
2019-11-07
このページは
mp4 動画のインライン再生を各種デバイスで表示テストするためのページ
- Web 上の技術記事でグラフィカルな説明を行う場合に短いループ動画を使うことがある
- ループ動画はいまだに、なじみのある GIF 動画が使われることが多い
- GIF 動画は最大 256 色で容量も大きくなりがちなので、写実的な映像には向かない
- Google が開発した WebP という形式があるが、Safari が対応していない関係でいまいち普及しきっていない
- 一方で、mp4 動画(H.264 コーデック)は現代の多くのブラウザでサポートされている:
- 実際に各種デバイスで動作するか、UI の見た目や挙動に差異がないかを確認するために
video
タグで mp4 動画を埋め込んでテストしてみる
インラインのループ再生のテスト
コード
<video src="mp4-test.mp4" width="720" autoplay muted loop playsinline></video>
コントロールつきのテスト
コード
<video src="mp4-test.mp4" width="720" controls></video>
動画ファイルの詳細
- 画面キャプチャした動画を、iMovie 10.1.10 にて最も低品質な設定で書き出したもの:
- 646 KB と軽い。見た目の品質も実用に耐える水準だと思う
- ちなみに
ffmpeg
で動画ファイルの情報を出力した結果は以下:
$ ffmpeg -i mp4-test.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'mp4-test.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp41mp42isom
creation_time : 2019-11-07T04:33:07.000000Z
Duration: 00:00:03.99, start: 0.000000, bitrate: 2498 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive),
960x540 [SAR 1:1 DAR 16:9], 2369 kb/s, 59.94 fps, 59.94 tbr, 60k tbn, 120k tbc (default)
Metadata:
creation_time : 2019-11-07T04:33:07.000000Z
handler_name : Core Media Video
動作確認結果
現代的なデバイスでは概ね動作した:
- Mac (Mojave 10.14.5)
- Chrome 77 / Safari 12 / Firefox 70 で動作
- Windows 10
- Chrome 77 / IE 11 / Edge 44 で動作
- Android 8.0.0 の Chrome 78 で動作
- iPadOS 13.1.2 の Safari で動作
- (※ コントロールありのものはプレビュー画像が表示されなかった)
所感
わりと動くことが確認できたので、いちエンジニアとしては以下のような運用でよいかと思う:
- 本気の動画(長め or 高品質の動画):
- YouTube にアップロードして埋め込み
- 短いループ動画のインライン再生:
- 色数 / コマ数の少ないシンプルなものなら GIF アニメ
- 複雑なものなら mp4/H.264 動画