转载自:http://blog.csdn.net/hongdianking/archive/2009/11/12/4804339.aspx

最近要做一个流媒体服务器,在网上逗留了好久决定选择 red5 。但是网上中文资料很少视频资料更是不敢奢望,只有啃一些英文文档了, http://hi.baidu.com/qjchina/blog/item/acf860594516542e2934f076.html 是我的学习入口,在此表示对这位兄台的感谢。

废话少说直奔主题 >>>

我用到的软件有:

1.  Jdkv1.6.0.5forWindows;

2.  setup-Red5-0.7.0.exe( 这个从官网下载 http://osflash.org/red5/070final 速度比较慢 );

3.  eclipse( 英文版 --www.gougou.com 下载原名是 eclipse-jee-galileo-SR1-win32.zip)

4. Flash8-chs.exe(这个很好下,到www.gougou.com 就可找到)

操作流程:

第一步 > 安装 jdk :

我的 jdk 安装目录是 C:/Java/jdk1.6.0_05 安装时手动改的, jre 的目录是默认的 C:/Program Files/Java/jre1.6.0_05 。

第二步 > 配置 jdk 的环境变量:

环境变量的配置,网上到处都有,我在这里就不啰嗦了只是把配置的参数贴这里: JAVA_HOME >>“C:/Java/jdk1.6.0_05” ;

CLASSPATH>>“.;%JAVA_HOME%/lib;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar;” ;

Path>>“;%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;” ;

第三步 > 安装 red5 :

red5 的安装其实很简单,一直默认就好了, C:/Program Files/Red5 ;

第四步 > 解压 eclipse :

把 eclipse 解压到任意的目录都没关系;

第五步 > 配置 red5 :

a>> 在 /Red5/doc/templates 下有一个 myapp 的文件夹,把 myapp 拷贝到 ed5/webapps 下,然后重命名 myapp我把它重命名为 HelloWorld 这就是过会要在 eclipse 里建的项目的名字;

b>> 接下来在 HelloWorld 文件夹下建一个空夹 demos 用来放 flash 导出的文件 ( 其实不建也没关系,只是为了好管理项目文件 ) ;

c>> 在 Red5/webapps/HelloWorld/WEB-INF 下建三个空夹 src 和 class,lib 。 src 用来放 java 源文件, class 用来放编译好的 class 文件, lib 用来放导出的 jar 文件;

d>> 在 Red5/webapps/HelloWorld/WEB-INF 下有四个文件需要修改:文件 log4j.properties 直接删掉就可以了,文件 red5-web.properties 修改后的文件是 ”webapp.contextPath=/HelloWorld
webapp.virtualHosts=*,localhost,localhost:5080,127.0.0.1:5080“ ,

文件 red5-web.xml 需要改动两个地方第一把 class="the.path.to.my.Application" 改成class="org.d5.sayHello.Application" 其实 org.d5.sayHello 就是我们将要在 eclipse 中建的包名,第二把id="myhandler.service" 这个 bean 删掉,修改后的文件为:“ <?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

<bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="location" value="/WEB-INF/red5-web.properties" />

</bean>

<bean id="web.context" class="org.red5.server.Context"

autowire="byType" />

<bean id="web.scope" class="org.red5.server.WebScope"

init-method="register">

<property name="server" ref="red5.server" />

<property name="parent" ref="global.scope" />

<property name="context" ref="web.context" />

<property name="handler" ref="web.handler" />

<property name="contextPath" value="${webapp.contextPath}" />

<property name="virtualHosts" value="${webapp.virtualHosts}" />

</bean>

<bean id="web.handler"

class="org.d5.sayHello.Application"

singleton="true" />

</beans> ”

文件 web.xml 需要删除

<context-param>

<param-name>log4jConfigLocation</param-name>

<param-value>/WEB-INF/log4j.properties</param-value>

</context-param>

<listener>

<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>

</listener>

然后把

<context-param>

<param-name>webAppRootKey</param-name>

<param-value>/myapp</param-value>

</context-param> 中的 myapp 改称 HelloWorld

修改后的文件是:“ <?xml version="1.0" encoding="ISO-8859-1"?>

<web-app

xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4">

<display-name>My sample Red5 application</display-name>

<context-param>

<param-name>globalScope</param-name>

<param-value>default</param-value>

</context-param>

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>/WEB-INF/red5-*.xml</param-value>

</context-param>

<context-param>

<param-name>locatorFactorySelector</param-name>

<param-value>red5.xml</param-value>

</context-param>

<context-param>

<param-name>parentContextKey</param-name>

<param-value>default.context</param-value>

</context-param>

<context-param>

<param-name>webAppRootKey</param-name>

<param-value>/HelloWorld</param-value>

</context-param>

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

<!-- remove the following servlet tags if you want to disable remoting for this application -->

<servlet>

<servlet-name>gateway</servlet-name>

<servlet-class>org.red5.server.net.servlet.AMFGatewayServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>gateway</servlet-name>

<url-pattern>/gateway</url-pattern>

</servlet-mapping>

<security-constraint>

<web-resource-collection>

<web-resource-name>Forbidden</web-resource-name>

<url-pattern>/streams/*</url-pattern>

</web-resource-collection>

<auth-constraint/>

</security-constraint>

</web-app> ”

第六步 > 创建 java 程序:

第一:打开 eclipse, 把 WorkSpace 设置到 /Red5/webapps ;

第二:新建 javaProject ,命名为 HelloWorld, 在 Contents 标签里选择“ Create project from existing source ” , 然后点击“ Browse ”找到我们先前建好的“ HelloWorld ”项目点击确定,完成。如下图:

接下来你会在项目里发现我们建好的所有文件如下图:

第三步:把 HelloWorld 根目录下的 src 从项目里删除,然后鼠标右击 WEB-INF 下的 src: buildpath à use as source folder这样就把 src 设置成 source 的根目录,如下图:

第四步:鼠标右击项目,选择 Property, 进入属性配置。选择 Java Build Path ,选择“ Source 标签”选上 Allow output folders for source folders 复选框,然后点击“ Browse ”在弹出的框中选择我们的 Class 文件夹作为存储 class 文件。

第五步:选择“ Librarise ”标签 — 〉“ Add External JARs ”把我们 Red5 下边的 red5.jar 加载进去。 OK 下一步可以建我们的 java 文件了。

第六步:建 Application.java 文件如下图:

第七步:导出 jar 文件到 lib 下:注意

第八步:安装 flash8. 下一步就可以了。

轻松学习 red5 教程 像视频一样很详细还有代码直接可Copy的更多相关文章

  1. L轻松学习inux教程5 知识与学习bash

    本系列文章由@超人爱因斯坦出品,转载请注明出处.          文章链接:          http://hpw123.net/a/Linux/Linuxjichu/2014/1031/101. ...

  2. 测试开发学习进阶教程 视频&PDF

    测试开发学习进阶教程 视频&PDF,7天后失效,更多学习资料加Q群 https://pan.baidu.com/s/196KEo791NeZKyfV_E-36Uw 提取码: 41vu     ...

  3. 轻松学习LINUX系列教程推出

    本系列多媒体教程已完成的博文: 1.轻松学习Linux之入门篇 http://chenguang.blog.51cto.com/350944/449214 2.轻松学习Linux之本地安装系统 (分区 ...

  4. 很详细的SpringBoot整合UEditor教程

    很详细的SpringBoot整合UEditor教程 2017年04月10日 20:27:21 小宝2333 阅读数:21529    版权声明:本文为博主原创文章,未经博主允许不得转载. https: ...

  5. Creator开源游戏、插件、教程、视频汇总

    Creator开源游戏.插件.教程.视频汇总 来源 http://forum.cocos.com/t/creator/44782 王哲首席客服   17-03-17    4   史上最全,没有之一. ...

  6. 轻松学习Linux之用户账户管理及实例

    Linux用户管理基础 (下载清晰视频:http://down.51cto.com/data/158699) 轻松学习Linux之用户账户管理的实例-跨硬盘移动数据 (此处视频不清楚下按下面地址下载清 ...

  7. Deep Learning 13_深度学习UFLDL教程:Independent Component Analysis_Exercise(斯坦福大学深度学习教程)

    前言 理论知识:UFLDL教程.Deep learning:三十三(ICA模型).Deep learning:三十九(ICA模型练习) 实验环境:win7, matlab2015b,16G内存,2T机 ...

  8. Deep Learning 12_深度学习UFLDL教程:Sparse Coding_exercise(斯坦福大学深度学习教程)

    前言 理论知识:UFLDL教程.Deep learning:二十六(Sparse coding简单理解).Deep learning:二十七(Sparse coding中关于矩阵的范数求导).Deep ...

  9. Deep Learning 11_深度学习UFLDL教程:数据预处理(斯坦福大学深度学习教程)

    理论知识:UFLDL数据预处理和http://www.cnblogs.com/tornadomeet/archive/2013/04/20/3033149.html 数据预处理是深度学习中非常重要的一 ...

随机推荐

  1. Android开发之关于ListView中adapter调用notifyDataSetChanged无效的原因

    1.数据源没有更新,调用notifyDataSetChanged无效. 2.数据源更新了,但是它指向新的引用,调用notifyDataSetChanged无效. 3.数据源更新了,但是adpter没有 ...

  2. Hibernate4.2.2使用Annotation配置

    1.在hibernate官网下载hibernate-release-4.2.2.Final.zip并解压 2.新建一个java project工程(20130619_Hibernate4.2.2_An ...

  3. Java Socket(1): 入门

    前言:在最近一个即将结束的项目中使用到了Socket编程,用于调用另一系统进行处理并返回数据.故把Socket的基础知识总结梳理一遍. 一.TCP/IP协议 既然是网络编程,涉及几个系统之间的交互,那 ...

  4. (1)java设计模式之简单工厂模式

    一:简单工厂模式的优点          --->在阎宏博士的<JAVA与模式>一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Fa ...

  5. android view的setVisibility方法值的意思

    android view的setVisibility方法值的意思 有三个值 visibility  One of VISIBLE, INVISIBLE, or GONE. 常量值为0,意思是可见的 常 ...

  6. Android-AnimationDrawable(一)

    大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它.它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame ...

  7. 【转】使用NetBeans和Eclipse开发PHP应用程序

    [51CTO独家特稿]各位用户如果单独看NetBeans和Eclipse的市场占有率,你可能会认为使用其中任何一种IDE开发PHP应用程序都没有 问题,例如: 1.NetBeans:一款开源的集成开发 ...

  8. matlab 学习

    http://blog.sina.com.cn/s/blog_7086379501012pc5.html <a href = "http://blog.sina.com.cn/s/bl ...

  9. 2016计蒜之道复赛 百度地图的实时路况 floyd+cdq分治

    链接:https://nanti.jisuanke.com/t/11217 奉上官方题解: 枚举 d(x , y , z) 中的 y,把 y 从这个图中删去,再求这时的全源最短路即可,使用 Floyd ...

  10. Authentication with SignalR and OAuth Bearer Token

    Authentication with SignalR and OAuth Bearer Token Authenticating connections to SignalR is not as e ...