video.js - 如何使用videojs播放rtmp直播?

标签 video.js live-streaming

我正在使用 OBS 将实时流推送到我的本地 rtmp 服务器(node-rtsp-rtmp-server),
它适用于 VLC 媒体播放器。
我只是想把它放到一个网页上,然后我找到了 videojs。
它没有工作并返回 不支持指定的“类型”属性“rtmp/mp4”。
似乎我的 rtmp 服务器没有收到来自此网页的任何请求。
那我错过了什么?
这是我的代码:

<head>
    <meta charset="utf-8">
    <link href="./video-js-6.0.0/video-js.css" rel="stylesheet">
    <script src="./video-js-6.0.0/video.js"></script>
    <script src="./video-js-6.0.0/videojs-flash.min.js"></script>
    <script>
        videojs.options.flash.swf = "./video-js-6.0.0/video-js.swf"
    </script>
</head>
<body>
   <video  id='vid' class='video-js' controls height=300 width=600>
      <source src="rtmp://127.0.0.1:1935/live/pokemon" type="rtmp/mp4"/>
    </video>
    <script>
        var player = videojs('vid');
    </script>
</body>

最佳答案

要将流从 RTMP 服务器发布到网页,您有 2 个选项:

  • 将 RTMP 流嵌入 Flash 播放器(Strobe、JwPlayer、FlowPlayer)
  • 使用支持 Wowza Streaming Engine 之类的流媒体服务器以 HTML5 格式(HLS 或 MPEG DASH)传输流;如果您的流尚未使用 H264 和 AAC 进行编码,这也可能需要转码
  • 关于video.js - 如何使用videojs播放rtmp直播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43271187/

    相关文章:

    javascript - jquery 获取 <video> 标签的子元素

    javascript - 在 video.js 中扩展进度控制,重复进度条

    graph - 有没有办法将图形转换为数据?

    ffmpeg - 使用 FFMPEG 将实时流编码为 IIS 媒体服务(或 Azure 实时媒体服务)的提示?

    ffmpeg - 使用 Red5 和 H.265 原始即将到来的视频进行实时流式传输

    audio - 使用 ffmpeg 直播包含两种语言的视频

    Video.js - 播放使用 createObjectURL 创建的 blob(本地文件@客户端)

    html - 是否可以从 CDN 提供 html 5 视频及其字幕?

    video.js - 浏览器自动播放策略。 Netflix 中的自动播放是如何工作的?

    android - 从 VideoView 录制视频