直播流技术大杂烩

栏目: 服务器 · 发布时间: 6年前

内容简介:RTMP(Real-Time Messaging Protocol),实时消息协议,Macromedia公司开发,后Macromedia被Adobe收购。RTMP被设计用来在Flash插件中使用,因此如果用在浏览器端,必须安装Flash插件其他端也可使用相关解码器解码RTMP流

RTMP(Real-Time Messaging Protocol),实时消息协议,Macromedia公司开发,后Macromedia被Adobe收购。

RTMP被设计用来在Flash插件中使用,因此如果用在浏览器端,必须安装Flash插件

其他端也可使用相关解码器解码RTMP流

RTMP实时性较强,一般在3秒左右

HLS(HTTP Live Streaming),是一个由苹果公司提出的基于HTTP的流媒体网络传输协议。

HLS只请求HTTP报文,因此可以在浏览器端不依赖任何插件直接使用

HLS实时性较差,一般在10秒左右

HLS使用示例

Web端

Web端可以使用 videojsvideojs-http-streaming 播放HLS直播流

示例代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>HLS Sample</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/video.js@7.3.0/dist/video-js.min.css">
    <script src="https://cdn.jsdelivr.net/npm/video.js@7.3.0/dist/video.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@videojs/http-streaming@1.5.0/dist/videojs-http-streaming.js"></script>
</head>
<body>
<video-js id="video" width="600" height="400" class="vjs-default-skin" controls>
    <source src="http://hls.open.ys7.com/openlive/f01018a141094b7fa138b9d0b856507b.hd.m3u8"
            type="application/x-mpegURL">
</video-js>
<script>
    videojs('video').play();
</script>
</body>
</html>

其他公开视频流:

  • https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8

RTMP使用示例

Web端

Web端可以使用 videojsvideojs-flashFlash 插件播放RTMP直播流

示例代码

理论上以下代码可以工作,然而实际上播放不了视频。官方没有完整的使用示例,栈爆网搜到的代码也播放不了。。。//TODO

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/video.js@7.3.0/dist/video-js.min.css">
    <script src="https://cdn.jsdelivr.net/npm/video.js@7.3.0/dist/video.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/videojs-flash@2.1.2/dist/videojs-flash.min.js"></script>
</head>
<body>

<video width="600"
       height="400"
       id="example"
       class="video-js vjs-default-skin vjs-big-play-centered"
       controls
       autoplay
       preload="auto"
       data-setup='{"techorder" : ["flash","html5"] }'>
    <source src="rtmp://rtmp.open.ys7.com/openlive/f01018a141094b7fa138b9d0b856507b.hd" type="rtmp/mp4">
</video>

</body>
<script>
    var player = videojs('example');
    player.play();
</script>
</html>

文章首发: https://baijifeilong.github.io


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Servlet和JSP学习指南

Servlet和JSP学习指南

Budi Kurniawan / 崔毅、俞哲皆、俞黎敏 / 机械工业出版社华章公司 / 2013-4-14 / 59.00元

本书是系统学习Servlet和JSP的必读之作。由全球知名的Java技术专家(《How Tomcat Works》作者)亲自执笔,不仅全面解读Servlet 和JSP 的最新技术,重点阐述Java Web开发的重要编程概念和设计模型,而且包含大量可操作性极强的案例。 本书共18章:第1章介绍Servlet API和几个简单的Servlet;第2章讨论Session追踪,以及保持状态的4种技术......一起来看看 《Servlet和JSP学习指南》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具