test.html 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>M3U8 视频播放示例</title>
  7. <link href="https://vjs.zencdn.net/7.20.3/video-js.css" rel="stylesheet" />
  8. <script src="https://vjs.zencdn.net/7.20.3/video.min.js"></script>
  9. <script src="https://cdnjs.cloudflare.com/ajax/libs/videojs-contrib-hls/5.15.0/videojs-contrib-hls.min.js"></script>
  10. </head>
  11. <body>
  12. <h1>M3U8 视频播放示例</h1>
  13. <div>
  14. <video id="hlsVideo" class="video-js vjs-default-skin vjs-big-play-centered" controls preload="auto"
  15. width="100%" height="100%">
  16. <source id="source" src="/gear1/prog_index.m3u8" type="application/x-mpegURL" />
  17. </video>
  18. </div>
  19. <script>
  20. document.addEventListener("DOMContentLoaded", function () {
  21. var videoElement = document.getElementById('hlsVideo');
  22. var player = videojs(videoElement, {
  23. bigPlayButton: true,
  24. textTrackDisplay: false,
  25. posterImage: false,
  26. errorDisplay: false,
  27. autoplay: true
  28. });
  29. player.src({
  30. src: videoElement.querySelector('#source').getAttribute('src'),
  31. type: 'application/x-mpegURL'
  32. });
  33. // 将播放器实例存储在全局变量中以便将来可以访问它
  34. window.hlsPlayer = player;
  35. });
  36. // 清理工作,例如卸载播放器
  37. window.onunload = function () {
  38. if (window.hlsPlayer) {
  39. window.hlsPlayer.dispose();
  40. }
  41. };
  42. </script>
  43. </body>
  44. </html>