简单red5+obs推流实现直播系统开发,具体设置介绍
前言:随便搞搞,先放一张效果图,
浏览器是客户端,obs是本屏幕,来源可以添加摄像头,这里我没有就不说了,
工具:windows7上面装的是obs + red5实在我的企鹅云学生机上面
obs安装这里就不一一描述了,很多,还有类似插件盒子,不过一般是主播门使用的
咱们只会推流就可以了
也就是设定,里面的广播设定,然后就是
其中url如果red5部署在本地的同学就写本地127.0.0.1,串码暂且abc后面要用到
red5装linux安装步骤,
1,这个需要java的jdk,我是直接通过yum命令装的
2,去github下载了red5
https://github.com/Red5/red5-server/releases
讲道理下载最新版的吧,我的jdk也是1.8的。(ps,我是php对这个不太懂)
【注意,之前我看很多说版本对照啥的,实在不懂,这一步我是这俩步就行了,很多人也装了很多插件我是不明白为啥 ..】
3,解压,一般解压目录都是在usr/local/red5/楼下图
4,设置为可执行
cd /usr/local/red5
chmod +x *.sh
red5.sh
6,编辑启动脚本
vi /etc/init.d/red5
7,把下面写进去,貌似都这样写的【这里建议用xsell写不然会造成windows多俩空格无法启动red5】,
1 #!/bin/bash
2 # For RedHat and cousins:
3 # chkconfig: 2345 85 85
4 # description: Red5 flash streaming server
5 # processname: red5
6 # Created By: Sohail Riaz (sohaileo@gmail.com)
7
8 PROG=red5
9 RED5_HOME=/usr/local/red5
10 DAEMON=$RED5_HOME/$PROG.sh
11 PIDFILE=/var/run/$PROG.pid
12
13 # Source function library
14 . /etc/rc.d/init.d/functions
15
16 [ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5
17
18 RETVAL=0
19
20 case "$1" in
21 start)
22 echo -n $"Starting $PROG: "
23 cd $RED5_HOME
24 $DAEMON >/dev/null 2>/dev/null &
25 RETVAL=$?
26 if [ $RETVAL -eq 0 ]; then
27 echo $! > $PIDFILE
28 touch /var/lock/subsys/$PROG
29 fi
30 [ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup"
31 echo
32 ;;
33 stop)
34 echo -n $"Shutting down $PROG: "
35 killproc -p $PIDFILE
36 RETVAL=$?
37 echo
38 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG
39 ;;
40 restart)
41 $0 stop
42 $0 start
43 ;;
44 status)
45 status $PROG -p $PIDFILE
46 RETVAL=$?
47 ;;
48 *)
49 echo $"Usage: $0 {start|stop|restart|status}"
50 RETVAL=1
51 esac
52
53 exit $RETVAL
8,设置为本地服务启动【这里你注意init.d路径,是否有快捷方式啥的】
chmod +x /etc/rc.d/init.d/red5
chkconfig --add red5
chkconfig red5 on
9,red5用的端口是5080下行,1935上行,确认打开
10,启动red5
/etc/init.d/red5 start
11,在浏览器输入
http://182.254.226.142:5080/ (注意182.254.226.142换成你的服务器ip)
出现这个界面说明安装成功,
12,这个时候你点install装demo也是没卵用,那没有demo就没法玩了,不是的你先发开这个页面
【因为已经被翻墙才能加载,我翻过去了也是没卵用】
13,打开
http://182.254.226.142:5080/demos/publisher.html(换成你的服务器ip)看到下图
14,这一步之前你需要这个文件夹,看好路径,因为无法装demo所以只有自己找demo,百度云链接:链接: http://pan.baidu.com/s/1hswR0kk 密码: 5ncy【川普赢了,,算了继续写】
15.【注意】
live下面有一个index.html 注意看一下播放源里面是不是已经改过来了 样式我简单调试了一下 可根据自己需求改
本文转载自网络,感谢原作者的分享,转载仅为分享干货知识,如有侵权欢迎联系作者进行删除处理。
- 哈希现金(Hashcash)与“工作量证明”
- 关于oracle中的sql数据类型(r3笔记第59天)
- 使用awr来分析sesson leak问题(r3笔记第78天)
- 弹窗层效果的实现(非jQuery实现)
- 简单的导航栏实现
- js实现css3的过渡,需要注意的一点(浏览器优化)
- 居中详解
- 通过pl/sql计算程序的运行时间(r3笔记第77天)
- 操作系统存储管理和oracle数据库(第一篇) (r3笔记第76天)
- 关于虚拟索引的学习(r3笔记第75天)
- python数据挖掘:能不能找出吃货最佳住宿点?
- 解决ajax跨域请求 (总结)
- Python+Selenium+PIL+Tesseract真正自动识别验证码进行一键登录
- 在深度学习TensorFlow 框架上使用 LSTM 进行情感分析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- RecyclerVIew实现悬浮吸顶效果
- 小程序地图学习之获取位置 获取经纬度 获取地名 获取地址
- 详解okhttp3 请求头不能为中文的坑
- Android为TextView添加字体库和设置描边的方法
- Android 解决WebView调用loadData()方法显示乱码的问题
- Android 自定义TextView去除paddingTop和paddingBottom
- Android MeasureSpec的理解和源码的解析
- Android 中自定义ContentProvider与ContentObserver的使用简单实例
- Android沉浸式状态栏的实现代码
- MyBatis源码解析之基础模块—DataSource
- Android中Activity和Fragment传递数据的两种方式
- Android MTU 值修改的实例详解
- Android ListView填充数据的方法
- AFURLSessionManager 上传下载使用代码说明
- Android APP之WebView校验SSL证书的方法