potplayer直播_国庆在家玩直播

准备工作

推流工具:OBS(Open Broadcaster Software),软件下载地址:https://obsproject.com/download

8b39e33d3243c9ae6c5bcc48024244f1.png

播放工具:
PotPlayer(windows),下载地址:https://daumpotplayer.com/download/

IINA(macOS),下载地址:https://iina.io/download/

VLC(跨平台),下载地址:https://www.videolan.org/vlc/

安装

在 docker 注册表中搜索 livego ,选择第二个 gwuhaolin/livego,应该就只有一个版本,所以双击直接下载。

02ad80525b848ffcc955fb1f398518fb.png

端口

本地端口容器端口说明
19351935RTMP协议,用于主播推流
70017001HTTP-FLV协议,用于播放
70027002HLS协议 ,用于播放
80908090HTTP-API

74575be1553e6fe0ef48866d14cc3abf.png

直播

PotPlayer设置

用 PotPlayer 播放《007:女王密使》作为 OBS 的视频源,因为后面还要用 PotPlayer 来播放,所以一定要修改 多重处理方式

e3cb8c51d577695c254552f96157049b.png

OBS的设置

在 OBS --> 来源 --> 窗口捕捉 设置捕捉画面

81829d8d799c1c5bfe9ce173dc482979.png

当然也也可以选择摄像头(视频捕获设备)或者本地媒体文件

d949e3fabb9cf25baa425c0333ce16c5.png

当然如果你愿意,你也可以叠加显示

4e533be61059f98da179a209ad62ca2a.png

用OBS推流

第一步、在浏览器中输入 http://群晖IP:8090/control/get?room=movie, 获取一个房间的 channelkey 用于推流。

ce9d3d3e47fdb4a27b7f124608c4b7a0.png

第二步、使用OBS来推流。

按官网的介绍,通过 RTMP 协议推送视频流的地址是: rtmp://server ip:1935/{appname}/{channelkey}
其中 appname 默认是 live,所以在 OBS 的推流设置中的 服务器 地址填 rtmp://群晖IP:1935/live串流秘钥 填第一步获取到的 channelkey

960b34669d7e1ca6cf5dcd553a3a25fa.png

用客户端播放

第三步、播放,其中 RTMP 的播放地址如下: rtmp://server ip:1935/{appname}/movie,所以我们在 PotPlayer 中 打开链接 中输入 rtmp://群晖IP:1935/live/movie

23f5208aac14168ce03d194c1286d6d5.png

如果没什么意外,你应该能看到直播画面了。左边是 OBS 推流的界面,右边是 PotPlayer 播放的界面。

14a08c65a5c5ec4bd30118573f5edd20.png

如果是在 macOS 上播放,可以用 IINA,我尝试着用远程推流和远程播放,受限于带宽和无 CDN 支持,常常会需要缓冲,不过这一切都在情理之中。

7020891ab6a125b043347d212f42eef9.png

所以如果要投入实用,当然还是要用大厂的云服务才行。

用网页播放

除了播放器外,我们还可以用网页播放,因为 LiveGo 除了 RTMP 外还支持 HTTP-FLV 和 HLS播放协议。

我把网页播放器打包到了webplayer.zip 中,webplayer.zip 下载地址:

https://laosu.ml/uploads/webplayer.zip

或者

百度分享链接: https://pan.baidu.com/s/1SUTuWfpQTm48gzj0I9zsLQ 提取码: xbj1

webplayer.zip 里有三个文件,源代码来源自『使用flv.js与video.js实现播放视频直播(简教程)』,对作者表示感谢!

其中 flv.htm 引用了 flv.js 库,而 hls.htm 则引用了 video.js 库,这两个库都是开源的,有兴趣的可以自己研究。

FLV协议

用记事本打开 flv.htm,找到下图中的部分

5c260ee22135ed8fbe60a5e1a632ceca.png

LiveGo 采用 HTTP-FLV 协议的播放地址为: http://127.0.0.1:7001/{appname}/movie.flv,所以根据 OSB 推流的地址,这里要修改为 http://群晖IP:7001/live/movie.flv,保存文件后,双击 flv.htm 文件,用默认浏览器打开,点播放按钮,如果没意外的话,图像就应该出来了

c0a82ba2f173328b6c7eceda50862f18.png

这个地址输入到 PotPlayer 中,也是可以播放的

9f8a73d40ed9b23c60a99f4c01f56846.png

如果 OBS 没有推流,flv.htm 中会一直转圈

8ae66ef13e3a9dcab26edfab8578b9e0.png

HLS协议

同样的,用记事本打开 hls.htm,找到下图中的部分

d49480a08cc0c8c8ad2fbdbc65b70096.png

LiveGo 采用 HLS 协议的播放地址为: http://127.0.0.1:7002/{appname}/movie.m3u8,所以根据 OSB 的推流地址,这里要修改为 http://群晖IP:7002/live/movie.m3u8,保存文件后,双击 hls.htm 文件,用默认浏览器打开,点播放按钮,如果没意外的话,图像也应该会出来

fed58546e14151b79d9e57d20d161d19.png

这个地址输入到 PotPlayer 中,同样也是可以播放的

d02c4b92ce656572c273fe16746c301c.png

如果 OBS 还没开始推流,hls.htm 会直接报错

3b360b5237c6e7a869e5c75b8d54f74d.png

空间占用

直播会在 docker 容器中生成临时文件,占用大量的空间,这个需要定期进行清理,不然很容易爆了,因为我存放 docker 的系统盘比较小

5758f33ac1424c63dfcb90bedaa602a5.png

每次推流都会产生一个 flv 文件,文件的大小取决于直播的时间。

528b042286a8d30fef73b9880923dc64.png

写在最后

直播的用途很多,直播讲课,直播带货等等,用在家里的话,可以试试直播监控摄像头。

RTMP协议

对于支持 rtmp 协议的摄像头比较好办,可以像 OBS 一样直接推流到 LiveGo 服务。

mjpeg协议

对于支持 mjpeg 协议的摄像头,需要用 OBS 来推流。在 OBS 的 来源 中新建 浏览器,在 浏览器 属性中的 URL 中输入摄像机的 mjpeg url 访问地址

7a339b35f8cf3b459b4e6c345a2651c4.png

RTSP协议

OBS 本身并不支持 RTSP 协议,所以还需要 VLC 或者 PotPlayer 来做中转。

首先在 PotPlayer 中打开 rtsp 地址

6f89013292e76582552c4bbe55f9cd41.png

然后在 OBS 的 来源 中新建 窗口捕获

1b09379df7ab1897607fd6c7f3f3bf29.png

当然你熟悉 ffmpeg 的话,也可以用 ffmpeg 将 rtsp 流转为 rtmp 流并推给 LiveGo 服务器,只是我还没试过。

我承认这个过程确实有点折腾,但也挺好玩的不是么?

参考文档

livego/README_cn.md at master · gwuhaolin/livego · GitHub
地址:https://github.com/gwuhaolin/livego/blob/master/README_cn.md

livego介绍以及最全使用方法介绍 | 码农家园
地址:https://www.codenong.com/cs106683184/

使用flv.js做直播 · Issue #3 · gwuhaolin/blog · GitHub
地址:https://github.com/gwuhaolin/blog/issues/3

使用flv.js做直播 - 浩麟的博客
地址:https://wuhaolin.cn/2017/05/17/%E4%BD%BF%E7%94%A8flv.js%E5%81%9A%E7%9B%B4%E6%92%AD/

使用flv.js与video.js实现播放视频直播(简教程) - 简书
地址:https://www.jianshu.com/p/d9c66d7d1653

livego+obs+flv.js 搭建视频直播 - sentangle - 博客园
地址:https://www.cnblogs.com/sentangle/p/12238836.html

flv + livego + obs 实现简易直播平台(windows版+Linux版)_qq_38556217的博客-CSDN博客
地址:https://blog.csdn.net/qq_38556217/article/details/104622875

rtsp视频流转rtmp在网页上直播_banjing_1993的博客-CSDN博客
地址:https://blog.csdn.net/banjing_1993/article/details/105221506

有建议或者疑问,欢迎留言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值