织梦CMS - 轻松建站从此开始!

罗索

轻松学习 red5 教程 像视频一样很详细还有代码直接可Copy

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

最近要做一个流媒体服务器,在网上逗留了好久决定选择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.下一步就可以了。

第九步:新建flash文件在第一针处动作面板里添加action代码如下图:

nc = new NetConnection();

nc.connect("rtmp://localhost/HelloWorld");

nc.onResult = function(obj){

trace(obj);

}

nc.call("login",nc);

好了,这就是我们整个的过程了,每一步我都记录在了这里,确实有点啰嗦,但是希望能帮助那些刚入门的朋友,如果还有什么疑问的地方我们再一起学习;现在已经是凌晨2点多了明天还要上班,就到此吧,祝大家一切顺利!

第十步:启动Red5服务

第十一步:测试影片,这时在“输出”标签里可看到我们打出的信息。

 

 

(hongdianking)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201108/14817.html]
本文出处:blog.csdn.net/hongdianking 作者:hongdianking
顶一下
(5)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容