我正在尝试用videojs播放直播电视频道。我已经尝试了各种方法,但总是得到“没有兼容的来源被发现为这个媒体。”错误。其他视频播放正常。
url在VLC中播放良好,编解码器将流显示为“MPEG-H Part2/HEVC(H.265)(hevc)”。
我也试过各种浏览器,chrome,firefox,safari和edge。
这是代码的基本部分。有办法玩吗?
<link href="https://vjs.zencdn.net/7.17.0/video-js.css" rel="stylesheet" />
<script src="https://vjs.zencdn.net/7.17.0/video.min.js"></script>
<script src="https://unpkg.com/videojs-contrib-dash/dist/videojs-dash.js"></script>
<script src="https://unpkg.com/videojs-contrib-hls/dist/videojs-contrib-hls.js"></script>
<video id='live-video' class='video-js vjs-default-skin' controls>
</video>
<script>
var player = videojs('live-video');
player.src({ src:'https://www.example.com/play.php?OTUxE2NDUN', type:'application/x-mpegurl'});
player.play();
</script>
2条答案
按热度按时间s3fp2yjn1#
我的结论是,你在基本帖子(问题)中显示的编码没有任何问题。我推测你使用的实际源URL不是一个有效的HLS流,因此导致了你所说的错误。(它可能是一个有效的DASH流,但我有理由肯定你的代码不能使用DASH流。
下面是一些与您的代码等效的工作代码,除了它使用了Video.js live教程中提到的较新(推荐)的UI / API。下面的代码为什么能工作的关键是它引用了一个有效的HLS流...(我在互联网上偶然发现的URL)。
jpfvwuh42#
这里有一个在网页中播放流视频的简单方法。您可以通过添加video.js网站指南中的参数和代码来自定义它。