【前端】rtsp 与 rtmp 视频流的播放方法

在这里插入图片描述

OK,现在,我们已经学会制作 rtsp 视频流,也能用 vlc 工具来播放 rtsp 视频流了,那么下一步,就是在网页上如何播放 rtsp 视频流

前端如何在网页上播放 rtsp 视频流

==================================================================================

方法一 、浏览器安装插件


【这是一个不推荐的方案】

因为,IE浏览器需要安装插件,火狐需要安装插件,谷歌浏览器需要安装插件,所有的的浏览器都需要安装插件才能在浏览器上直接播放 rtsp 视频流;而且插件都不一样,而且插件只有很旧版本的谷歌、火狐浏览器才可以支持使用;较新一点的浏览器都不支持这种方法了。

举个例子、谷歌浏览器需要安装 vlc 插件,依靠这个插件才能让 RTSP 协议在网页上能播放,但是目前高版本的 Chrome 浏览器不支持 NPAPI 插件,也就是说高版本的 Chrome 浏览器还是不能播放(46以上的版本都不行)。

所以、这种方案极其不推荐,建议你也别去试了!

方法二、转 rtmp


rtsprtmp;这种方案,后端将 rtsp 视频流转换成 rtmp 视频流。

RTMPMacromedia 开发的一套视频直播协议,属于 Adobe。想要在浏览器中实现 rtmp 推流,就必须借助 flash 的帮助。而且 HTML5 规范里面并没有针对 RTMP 的实现。毕竟这个协议标准是 Adobe 公司指定的。

但是现在是 2021 年了,谷歌浏览器不再支持 Flash 了,Flash 也不再更新,建议用户卸载了;所以浏览器直播播放 rtmp 的方式也不推荐。

方法三、转码推流


抛开上面两种思路以后,借助后端转码推流将是必要的操作

常见的包括但不限于以下几种:

  • 转 flv

  • 转 websocket

  • 转 http-flv

  • 转 m3u8

  • 转 hls

1、 rtsp 转 flv 源码教学;这个很详细了,然后关于 ffmpeg 的安装与使用:ffmpeg的安装与使用 ;ffmpeg 安装包我已经下载好并上传了,自取 => ffmpeg 安装包

2、 rtsp 转 websocket 源码教学

这里其实有一个思考就是是:【jsmpeg提供了一种播放ws协议视频流的直接方案】

Document

3、rtsp 转 hls/m3u8 源码教学

hls 流出来,缺点是 hls 流延迟更大。

4、将 RTSP/ RTMP 视频流转流,然后分发到 RTMP 服务器,然后服务器转 http-flv 出来,浏览器直接播放 http-flv 流;

参考资料

===================================================================

ffmpeg的安装与使用

总结

  • 框架原理真的深入某一部分具体的代码和实现方式时,要多注意到细节,不要只能写出一个框架。

  • 算法方面很薄弱的,最好多刷一刷,不然影响你的工资和成功率😯

  • 在投递简历之前,最好通过各种渠道找到公司内部的人,先提前了解业务,也可以帮助后期优秀 offer 的决策。

  • 要勇于说不,对于某些 offer 待遇不满意、业务不喜欢,应该相信自己,不要因为当下没有更好的 offer 而投降,一份工作短则一年长则 N 年,为了幸福生活要慎重选择!!!

喜欢这篇文章文章的小伙伴们点赞+转发支持,你们的支持是我最大的动力!

  • 21
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要将RTSP转换为RTMP以在网页上播放,可以借助媒体服务器进行转换。媒体服务器可以将RTSP接收并转发为RTMP,以便在网页上通过RTMP协议进行播放。 首先,需要建立一个媒体服务器,例如使用常用的开源媒体服务器软件,如Nginx-rtmp模块、Wowza Streaming Engine等。在这个服务器上进行配置和设置。 然后,需要将RTSP的地址发送给媒体服务器。可以在服务器的配置文件中指定RTSP的URL,并设置其作为输入源,接收RTSP。 接下来,媒体服务器会将接收到的RTSP转发为RTMP。可以设置转发规则,将RTSP的数据转发到指定的RTMP地址上。 最后,在网页上使用RTMP播放器,如JWPlayer、VideoJS等,通过指定RTMP的地址进行播放。可以在网页上插入播放器并设置其相关参数,包括RTMP地址,以实现RTMP转换后在网页上的播放。 通过以上步骤,RTSP可以成功转换为RTMP,并通过网页播放器在网页上进行播放。这样便实现了在网页上播放RTSP的需求。 ### 回答2: RTSP是实时传输协议,而RTMP是实时消息传输协议。在将RTSP转为RTMP以供网页播放时,可以通过以下步骤实现。 首先,使用一个中间服务器软件,例如Nginx或FFmpeg,来接收RTSP。这个服务器将充当RTSPRTMP之间的转换器。 其次,配置服务器软件以接收RTSP,并将其转换为RTMP。可以通过在配置文件中设置RTSP地址、端口号和转换方法来完成。 然后,将转换后的RTMP传送到网页播放器上。可以使用开源播放器,如JW Player或Video.js,在网页上嵌入播放器,并将RTMP作为播放源。 最后,通过将网页嵌入到网站的页面中,即可实现通过网页播放RTSP转换后的RTMP。这样,用户可以通过访问该网页,使用具有RTMP支持的网页播放器来观看RTSP。 总结来说,将RTSP转为RTMP以供网页播放需要一个中间服务器软件来完成转换,并使用开源播放器嵌入到网页上来播放转换后的RTMP。这样,用户可以通过访问网页来观看RTSP转换后的视频内容。 ### 回答3: 要将 RTSP 转为 RTMP 进行网页播放,可以通过以下步骤实现: 1. 安装媒体服务器:首先,需要安装一个支持 RTMP 协议的媒体服务器,如 Nginx、Wowza、Adobe Media Server 等。 2. 配置 RTMP 模块:在媒体服务器上,需要配置 RTMP 模块,以允许接收 RTMP 。 3. 获取 RTSP :从摄像头或其他 RTSP 源获取 RTSP 的 URL。 4. 转码 RTSP :使用转码工具(如FFmpeg)将 RTSP 转为 RTMP 。可以通过以下命令将 RTSP 转为 RTMP : ``` ffmpeg -i rtsp://ip_address:port/stream_name -c copy -f flv rtmp://ip_address:port/application/stream_name ``` 其中,`ip_address` 是服务器 IP 地址,`port` 是服务器端口号,`stream_name` 是的名称。 5. 链接 RTMP :将转码后的 RTMP 链接到媒体服务器上。例如,如果使用 Nginx 作为媒体服务器,可以在 Nginx 的配置文件中添加以下代码: ``` rtmp { server { listen 1935; application myapp { live on; push rtmp://ip_address:port/live/stream_name; } } } ``` 其中,`ip_address` 是服务器 IP 地址,`port` 是服务器端口号,`stream_name` 是的名称。 6. 网页播放:最后,在网页上使用支持 RTMP 协议的播放器来播放转码后的 RTMP 。你可以使用开源的播放器库,如 JWPlayer、Video.js 或 Flowplayer,通过将播放器配置为连接到 RTMP 的 URL 来实现播放。 通过以上步骤,可以将 RTSP 转为 RTMP ,并在网页上进行播放

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值