javascript - TS 文件不播放 hls.js

标签 javascript ffmpeg

需要一些帮助。视频在浏览器中加载,但从未开始播放。我正在使用 hls.js 将 m3u8 播放列表流式传输到浏览器。我使用 FFmpeg 创建 ts 和 m3u8 文件。

对于 FFmpeg:

./ffmpeg -rtsp_transport tcp -i rtsp://user:password@ipaddress/axis-media/media.amp -vcodec copy -hls_time 4 -hls_list_size 4 -hls_wrap 4 -start_number 1 -y test.m3u8

HTML 代码:
<!DOCTYPE html>
<html>
  <head>
     <script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
  </head>

  <body>
     <video id="video" height="800px" width="1200px"></video>
  <body>

  <script>
     var video = document.getElementById('video');
     if(Hls.isSupported()){
        var hls = new Hls();
        hls.loadSource('/images/live/test.m3u8');
        hls.attachMedia(video);
        hls.on(Hls.Events.MANIFEST_PARSED,function() {
              video.play();
         });
      }
      else if (video.canPlayType('application/vnd.apple.mpegurl')){
         video.src = '/images/live/test.m3u8';
         video.addEventListener('loadedmetadata',function() {
              video.play();
         });
      }
   </script>
</html>

最佳答案

只需将 ffmpeg 命令行更改为:
ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip_address/axis-media/media.amp -y -s 854x480 -codec:v libx264 -b:v 800000 -hls_time 4 -hls_list_size 4 -hls_wrap 4 start_number 0 test .m3u8

关于javascript - TS 文件不播放 hls.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57602466/

相关文章:

javascript - BX-Slider 和 div 上的高度相等

php - 如何使用 xampp 安装 ffmpeg

tcp - 强制 FFMPEG 在读取 RTSP 流时使用 TCP 协议(protocol)

c++ - 在 C++ 中从 execve 调用时,ffmpeg 产生错误的输出

现有 onclick 事件的 Javascript IE8 包装器

javascript - 如何比较一个数字加上或减去另一个数字

javascript - 在 javascript 中创建图像的缩略图方 block (不丢失纵横比)

javascript - 如何抓取闭路电视 DVR 的广播以进行自定义应用

php - FFMPEG 无法在 PHP 中使用 exec() 或 shell_exec() 运行

php - 使用 FFMPEG 将图像和音频文件转换为视频