使用 rtmp 和 videojs 流式传输视频

Stream video with rtmp and videojs

我正在寻找一种使用 rtmp 流式播放视频的方法。我使用 video-js 但它不起作用。 Firebug return 一个错误:

L'attribut « type » spécifié sur « video/flash » n'est pas géré. Le chargement de la ressource média rtmp://server.com/vod/mp4:foo/bar/my_video.mp4 a échoué.
VIDEOJS: ERROR: (CODE:4 MEDIA_ERR_SRC_NOT_SUPPORTED) No compatible source was found for this video. MediaError { code=4,  message="No compatible source was found for this video."

HTML代码:

<!doctype html>
<html lang="fr" class="no-js">
<head>
   <meta charset="UTF-8">
   <meta http-equiv="X-UA-Compatible" content="IE=edge" />
   <link rel="stylesheet" href="css/reset.css"> <!-- CSS reset -->
   <link rel="stylesheet" href="css/video-js.css"> <!-- Video.js -->
   <link rel="stylesheet" href="css/style.css"> <!-- Resource style -->
   <script src="js/modernizr.js"></script> <!-- Modernizr -->
   <title>Title</title>
</head>
<body class="sous-menu">
  <video id="example_video_1" class="video-js vjs-default-skin vjs-big-play-centered"
    controls preload="auto" width="640" height="264"
    data-setup='{"techOrder": ["flash", "html5"]}'>
    <source src="rtmp://server.com/vod/mp4:foo/bar/my_video.mp4" type='rtmp/mp4' />
  </video>
   <script src="js/jquery-2.1.4.min.js"></script> <!-- jQuery -->
   <script src="js/video-js.js"></script> <!-- Videojs.js -->
</body>
</html>

我做错了什么?

编辑: 我添加了 type='rtmp/mp4' 但它仍然不起作用......在 FF 中测试,Chrome & IE11。在 VLC 中尝试了 link,它起作用了。

您可能希望确保在服务器上返回正确的内容类型。参见:https://github.com/videojs/video.js/issues/1994

在源代码中使用类型 rtmp/mp4。此外,video.js 使用符号分隔服务器 URL 和流名称。当然,RTMP 只能在 Flash 可用的情况下使用。

<source src='rtmp://server.com/vod/&mp4:foo/bar/my_video.mp4' type='rtmp/mp4'/>