阿里云 实现流媒体 直播 demo
来源:互联网 发布:edg淘宝店 编辑:程序博客网 时间:2024/06/08 20:00
原理图:
我们使用是h5 所以我们直播通过手机端进行访问
让我们一起开始奇妙的流媒体之旅吧!
1、下载nginx-rtmp-module:
nginx-rtmp-module的官方github地址:https://github.com/arut/nginx-rtmp-module
使用命令:
将nginx-rtmp-module下载到linux中。
2、安装nginx:
nginx的官方网站为:http://nginx.org/en/download.html
安装时候可能会报错没有安装openssl,需要执行命令:
3、修改nginx配置文件:
加入以下内容:hls_path需要可读可写的权限。
修改http中的server模块:当然了,root可以跟据自己的需求来改的。
然后启动nginx:
关于更多rtmp的参数可以参考:https://github.com/arut/nginx-rtmp-module/wiki
4、开始推流
做好以上的配置后,就可以开始推流了,我们可以使用obs来推流。
在设置->串流 中填写信息:URL为 rtmp://xxx:1935/hls,xxx为你的服务器的IP地址,hls是用来存放流媒体的。
秘钥可以随便填写一个,用来播放的时候识别播放哪个流媒体的,例如填写test等。
填写完毕后,点击开始串流,就说明我们的流媒体服务器搭建成功了。
5、观看直播(拉流)
观看直播就比较简单了,可以简单的使用h5的vedio标签就可以观看了。
可以访问http://xxx:81/hls/mystream.m3u8来观看直播,其中xxx为你的服务器IP地址,
或者使用
同上, xxx写的是你服务器IP地址。
然后使用手机访问这个网站就能够观看直播了。延迟大概在20S左右。
(在iOS的safari浏览器中可以正常观看)
写在最后
为什么延迟 那么高呢?这是因为服务器将视频流切断成一个个小的以.ts结尾的文件。
(hls文件夹内容。即推流到该文件夹了)
而我们访问的是.m3u8文件,这个文件内容是将一个个ts文件串联起来的,这就达到了一个播放的效果,所以看起来会有很大的延迟。
(m3u8文件内容)
如果降低延迟也不是没有方法,可以设置切片生成的大小以及访问的速度,但是这样大大增加了服务器的压力。
当然,我们也可以用rtmp拉流工具(VLC等)来看该直播,延迟大概在2-5S左右,拉流地址与推流地址一致。
- 阿里云 实现流媒体 直播 demo
- 阿里云 实现流媒体 直播 demo
- 阿里云 实现流媒体 直播 demo
- 阿里云 直播实现
- 阿里云直播服务 sdk demo php
- 阿里云Android直播demo流程
- 使用阿里云实现简单的直播
- 在安卓端实现阿里云直播
- 流媒体开发之--直播实现
- 流媒体开发之--直播实现
- 流媒体开发之--直播实现
- 阿里云直播
- 阿里云直播
- 阿里云视频直播
- 阿里云直播
- live555直播usb 摄像头实现流媒体服务
- nginx+obs搭建流媒体,实现直播
- Android流媒体开发之-直播实现
- Intellij IDEA 安装Scala 报 ‘plugin scala is incompatible‘ 解决方案
- 网络编程(50)—— 使用poll搭建回声服务端
- React-Native 填坑之ListView(item更新)
- Android自定义下拉刷新动画--仿百度外卖下拉刷新
- thinkphp 页面跳转不显示问题 data-ajax="false"
- 阿里云 实现流媒体 直播 demo
- 2-python图像处理之Matplotlib
- Spring 框架参考文档(六)-Integration之Remoting and web services using Spring
- 32位和64位操作系统的区别
- 一些Linux用到的C工具集常用函数实现
- Evaluation of Parsing 句法分析评测
- 移动函数rename
- node.js基本工作原理及流程
- 团灭Windows进程通信(七)——主导地位文件映射