使用 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'/>
我正在寻找一种使用 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'/>