red5first demo----------- hello world

环境:

系统:centos 6.1

flex:Adobe Flash Builder 4.6

red5 : red5-0.9.1 tar.gz      (地址:http://trac.red5.org/downloads/0_9/red5-0.9.1.tar.gz)

eclipse:   eclipse-jee-juno-linux-gtk (1).tar.gz(http://download.actuatechina.com/eclipse/technology/epp/downloads/release/juno/R/eclipse-jee-juno-linux-gtk.tar.gzr.g)z)



RED5是什么就不说了。
RED5的安装也不说了。
RED5在FreeBSD 8.2上的安装过程的确是很多坎坷,没事儿,坎坷多,经验才丰富,总算是熬过来了。看到了久违的系统DEMO,那还是挺开心的。
好了,系统DEMO成功的,那就说明一切都装好,那就万事具备,只欠DIY了。
要想找一个好点的RED5帮助文档,那可真叫一个字“难”。为了大家,为了自己,现奖完整的步骤,一步一步记录下来,方便日后学习。
 
目录结构:

red5first demo----------- hello world_第1张图片

第一步:JAVA(服务端)

1、将red5.jar下载回本机,将/webapps/SOSample也下载到本机,进行本机操作。并将的SOSample目录改名为HelloWorld。HelloWorld目录下包含有两个目录,分别为WEB-INF和META-INF。进入WEB-INF目录,如下图所示:

red5first demo----------- hello world_第2张图片

2个目录和3个文件

2、修改red5-web.properties

原第一行:webapp.contextPath=/SOSample
修改为:webapp.contextPath=/HelloWorld

3、修改red5-web.xml

原第23行:     class="org.red5.server.adapter.ApplicationAdapter" 
修改为:     class="org.d5.sayHello.Application"

4、修改web.xml

原第8行: <display-name>SOSample</display-name>
修改为:<display-name>HelloWorld</display-name>

原第12行:  <param-value>/SOSample</param-value>
修改为:  <param-value>/HelloWorld</param-value>

前期准备工作结束,现进入JAVA代码部份。

5、打开Flash Builder,(Flash Builder IDE是用Eclipse定制的,实际上也本身就是Eclipse),在第二排图形工具栏的最右边,选中Java开发模式。

 6、新建一个Java项目,文件->新建->Java 项目

点击“Java 项目”后,出现“新建Java项目”窗口

red5first demo----------- hello world_第3张图片

取消“使用默认位置”的勾,点“浏览”,出现了“浏览文件夹”的小窗口,在此,选中“HelloWorld”目录后点“确定”

red5first demo----------- hello world_第4张图片

点“确定”后,目录配置完成,点“完成”。

7、接下来,“包资源管理器”里已出现了刚刚新建的项目

red5first demo----------- hello world_第5张图片

点“+”展开所有文件夹,删除根目录下的“src”文件夹,在WEB-INF目录下新建一个“src”文件夹

red5first demo----------- hello world_第6张图片

鼠标右击“src”文件夹->构建路径->用作源文件夹

右击“src”后的效果

右击项目名“HelloWorld” ->属性

red5first demo----------- hello world_第7张图片

点击“属性”后的效果

点击“Java构建路径”->源代码

打勾选中“允许将输出文件夹用作源文件夹”,点击“浏览”,在弹出的框中选择Class文件夹作为存储class文件,然后点“确定”。

red5first demo----------- hello world_第8张图片

点击“确定”后的效果。

点击“库”->“添加外部JAR”->出现一个“选择JAR”的框,选中事先准备好的red5.jar,点击“打开”

添加外部JAR后的效果,点“确定”后完成。至此,环境设定完毕。

red5first demo----------- hello world_第9张图片

8、进行编码环节,右击“WEB-INF/src”->新建->包

red5first demo----------- hello world_第10张图片
单击“包”后,出现“新建Java包”框,源文件已填好,在名称框里填入:org.d5.sayHello ,填完后点“完成”

red5first demo----------- hello world_第11张图片

右击“org.d5.sayHello”->新建->文件

弹出一个“新建文件”对话框,填入文件名:Application.java ,然后点“完成”

red5first demo----------- hello world_第12张图片

点击“完成”后,会有一个生成文件的过程,这是生成文件后的效果

red5first demo----------- hello world_第13张图片

Application.java文件内容如下:

package org.d5.sayHello;
import org.red5.server.adapter.ApplicationAdapter;
public class Application extends ApplicationAdapter {
 public String Helloworld() {
  return "Helloworld";
 }
}

编辑完后,保存。

red5first demo----------- hello world_第14张图片

9、导出Jar文件。右击项目“HelloWorld”->导出

red5first demo----------- hello world_第15张图片

弹出导出对话框,选中“JAR文件”->下一步

red5first demo----------- hello world_第16张图片

点击“下一步”后,出现“JAR导出”框,根据图示,勾上“WEB-INF/src”文件夹,其他的文件夹取消勾,勾上两个功能“导出生成的类文件和资源”,“导出Java源文件和资源”。勾上一个选项“压缩JAR文件的内容”,选择导出的目标: JAR文件,位于“WEB-INF\lib”文件夹,文件名为HelloWorld.jar,这里,我填入的是:HelloWorld\WEB-INF\lib\HelloWorld.jar,最后点击“完成”。

red5first demo----------- hello world_第17张图片


第二步:Flash Builder(客户端)

FB的操作就不在此多说了,打开FB,建一个FLEX项目,MXML内容如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
 <fx:Declarations>
  <!-- 将非可视元素(例如服务、值对象)放在此处 -->
 </fx:Declarations>

 <fx:Script>
  
  <![CDATA[
  private var nc:NetConnection;
  private var ns:NetStream;

  public function openConn():void {
   nc=new NetConnection();
   nc.objectEncoding=ObjectEncoding.AMF3;
   nc.addEventListener(NetStatusEvent.NET_STATUS,netStatus);
   nc.connect("rtmp://192.168.1.66/HelloWorld",true); //默认端口1935,说明192.168.1.66是我的流媒体服务器IP,这个要改成你自己的地址。
  }

  public function startRecord():void {
   openConn();
  }
  
  public  function netStatus(event:NetStatusEvent):void {
  
   if (event.info.code == "NetConnection.Connect.Success") {
    showtx.text = "连接成功"+event.info.code;
    var response:Responder=new Responder(result,status);
    nc.call("Helloworld",response);  //Helloworl是JAVA里的一个函数
   } else {
    showtx.text += "连接失败:"+event.info.code;
   }
  }
  
  private function result(returnObj:Object):void {
   showtx.text += returnObj;
  }
  
  private function status(error:Object):void {
   showtx.text += error;
  }
  ]]>
  
 </fx:Script>

 <mx:Text id="showtx" x="118" y="113" text="准备就续"/>
 <mx:Button x="109" y="246" label="开始测试" click="startRecord()"/>

</s:Application>



参考:http://www.jhtsw.cn/home.php?mod=space&uid=35560&do=blog&id=19666 


你可能感兴趣的:(red5first demo----------- hello world)