Red5学习日志一
来源:互联网 发布:足球球员数据 编辑:程序博客网 时间:2024/05/17 22:44
最近有项目需要用到流媒体播放,因为从来没有涉及过,所以调查之。
Google了一圈,发现一个JAVA开源的Flash流媒体服务器,名为Red5,于是动手下载相关包,开始搭建。
一、下载
Red5下载地址:http://www.red5.org/downloads/red5/
我下载的是red5-1.0.1.zip。
二、配置环境变量
下载完后,解压。
我解压到了D:\Program Files\red5-server-1.0,配置RED5_HOME环境变量到D:\Program Files\red5-server-1.0。
点击D:\Program Files\red5-server-1.0\red5.bat,应用可以正常启动,OK。
备注:如果你的不能启动,框是一闪而过,请用CMD去调试之,看看是不是TOMCAT的环境变量,或是JAVA的环境变量没有配置,也有可能是端口被占用,Red5的默认端口是5080。
如果你的TOMCAT可以点击BAT文件正常启动的话,那red5.bat应该可以启动成功。
三、着手第一个程序前的准备工作
首先你得有Eclipse或者其他的JAVA开发工具,然后下载Eclipse的Red5Plugin
Name: Red5Plugin 1.0.x (Eclipse 3.7+)
URL: http://www.red5.org/downloads/projects/red5plugin/update_1.0.x
四、码代码(这里是网上拷别人写得,后面我有补充及实际中遇到的问题,原文地址:http://blog.csdn.net/h407210874/article/details/22438835)
1. 在Server Runtime Environment里添加一个Red5 Server Runtime,
添加过程和添加Tomcat服务器类似,这里略。
注意点:Red5 1.0.1版本在Red5的安装目录下有个red5-server-1.0.jar。
而之前的版本在安装目录是red5.jar,实际上他们两个没什么多大的区别,
但是因为截止到现在,官方给出的Red5Pulgin最新版本是针对Red5 1.0版本的。
所以我要把red5-server-1.0.jar再复制一份,记住,是“复制”,且将名字改为red5.jar,
否则Eclipse里不识别Red5,或者不要安装Red5 1.0.1版本,而安装Red5 1.0版本。
2. 新建一个Dynamic Web Project项目,其中将Target runtime指定为Red5 Server Runtime。
3. 将Red5安装目录下的lib和plugins文件夹下的jar包,
以及red5-server-1.0.jar都添加到新建项目的Java Build path的Libraries里。
4. 将Red5安装目录下webapps\live\WEB-INF文件夹下的web.xml,red5-web.xml,red5-web.properties
三个文件拷贝到新建项目的WEB-INF下。
5. 打开web.xml文件,将<display-name>节点的值改为新建项目的名字,
将<param-name>webAppRootKey</param-name>对应的<param-value>节点的值改为新建项目的名字。
6. 打开red5-web.properties文件,将webapp.contextPath的值改为新建项目的名字。
7. 新建一个类,该类继承ApplicationAdapter,在这个类里可以编写我们的处理流程。
重写connect方法,在里面追加一句System.out.println("Hello World");
8. 打开red5-web.xml文件,将web.handler的class指向以上新建的类。
9. 打开http://localhost:5080/页面,点击Demo链接,然后点击Shared Ball目录下的View demo链接,
就会进入http://localhost:5080/demos/BallControl.html页面,
将rtmp://localhost/SOSample中的SOSample改为新建项目的名字,
然后点击Connect to Red5,也就是那个像链条的图标,如果那个5的图标颜色变成青色,
并且在控制台上输出了Hello World,就说明我们第一个Red5项目的Server端代码实现了。
问题来了:1、我没有成功,直接报错:
java.lang.RuntimeException: Failed to load webapplication context class. at org.red5.server.tomcat.TomcatLoader$1.run(TomcatLoader.java:579)
Caused by: java.lang.ClassCastException:
org.springframework.web.context.support.XmlWebApplicationContext cannot be cast to org.springframework.web.context.ConfigurableWebApplicationContext at org.red5.server.tomcat.TomcatLoader$1.run(TomcatLoader.java:577)
继续Google之,解决方法:到Red5安装路径的webapps目录下面,然后进入 你的项目的WEB-INF/lib目录,将里面的所有的jar包删除
再重启服务,按照9的步骤进行测试,发现可以正常打印出来“Hello World”。
但是会接着报
org.red5.server.net.rtmp.codec.RTMPProtocolDecoder - Action _error异常,这个暂时不知道是什么原因,有知道的麻烦说一下。
- Red5学习日志一
- red5学习日志二
- red5学习日志二
- 学习过程 : Red5(一)
- Red5 流媒体 学习(一)
- Red5学习笔记(二):使用日志
- Red5学习笔记(一)Red5应用创建与发布
- as3与red5通信---学习一
- Red5学习笔记(一):入门及配置
- RED5学习(一)--环境搭建与测试
- Red5源码研究一
- Red5源码研究一
- 转几篇Red5的日志配置
- Red5的使用--使用日志
- opcv学习日志一
- python学习日志<一>
- 【pyhton学习日志一】
- 学习日志一
- 使用Depends工具查看DLL接口
- shell 资源整理
- 上弦科技OA办公系统功能介绍共分为6大块个人工作、工作流、报表查询、知识文库、企业文化、移动办公OA系统
- 数字电路(2) 第二章 数字器件
- Java BigDecimal转换、除法“陷阱”
- Red5学习日志一
- Oracle中使用透明网关[gateways]数据链接到Sqlserver
- Web快速开发平台
- 牛顿法与共轭梯度法
- Remove Duplicates from Sorted List -- LeetCode
- java 字节流与字符流的区别
- android打印调用栈的方法
- php类中private属性继承问题
- maven(1)--环境搭建