`
gongminrui
  • 浏览: 64561 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Red5 Client 连接 Red5Server

    博客分类:
  • Red5
阅读更多
import java.util.ArrayList;
import java.util.Map;

import org.red5.io.utils.ObjectMap;
import org.red5.server.api.event.IEvent;
import org.red5.server.api.event.IEventDispatcher;
import org.red5.server.api.service.IPendingServiceCall;
import org.red5.server.api.service.IPendingServiceCallback;
import org.red5.server.net.rtmp.INetStreamEventHandler;
import org.red5.server.net.rtmp.RTMPClient;
import org.red5.server.net.rtmp.RTMPConnection;
import org.red5.server.net.rtmp.codec.RTMP;
import org.red5.server.net.rtmp.event.Notify;

public class RtmpClientNew extends RTMPClient implements
  INetStreamEventHandler, IPendingServiceCallback, IEventDispatcher {

 String host = "111.92.237.33";
 String app = "chainGunSyncService";
 int port = 1935;

 public RtmpClientNew() {
  super();
  Map<String, Object> map = makeDefaultConnectionParams(host,
    1935, "chainGunSyncService");

  connect(host, 1935, map, this, new String[] { "admin", "",
    "111.92.237.33" });
 }

 @Override
 public void dispatchEvent(IEvent arg0) {
  // TODO Auto-generated method stub
 }

 @Override
 public void resultReceived(IPendingServiceCall call) {
  // TODO Auto-generated method stub
  Object result = call.getResult();

  if (result instanceof ObjectMap) {
   if ("connect".equals(call.getServiceMethodName())) {
    createStream(this);
   }
  } else {
   if ("createStream".equals(call.getServiceMethodName())) {
    if (result instanceof Integer) {
     Integer streamIdInt = (Integer) result;
     // int streamId = streamIdInt.intValue();
     // publish(streamId, "testgio2", "live", this);
     invoke("getRoomsInfo", this);
    } else {

     disconnect();
    }
   } else if ("getRoomsInfo".equals(call.getServiceMethodName())) {
    ArrayList<String> list = (ArrayList<String>) result;
    for (int i = 0; i < list.size(); i++) {
     System.out.println(list.get(i));
    }
   }
  }

 }

 @Override
 public void onStreamEvent(Notify arg0) {
  // TODO Auto-generated method stub
 }

 @Override
 public void connectionOpened(RTMPConnection conn, RTMP state) {
  // TODO Auto-generated method stub
  // System.out.println("connectionOpened");

  super.connectionOpened(conn, state);
 }

 public static void main(String[] args) {
  new RtmpClientNew();
 }
}

 

分享到:
评论
1 楼 jchenzeke 2016-01-13  
有源代码吗?

相关推荐

    flEX教程,与RED5连接

    Flex教程,特别是与RED5连接的相关知识,是Web开发领域中的一个重要主题,主要涉及Adobe Flex这一强大的富互联网应用程序(RIA)开发框架以及RED5这款开源流媒体服务器。在这篇文章中,我们将深入探讨Flex的基本概念...

    Eclipse里为Red5添加Debug模式的步骤

    `transport=dt_socket`定义了调试数据传输方式为套接字,`address=1044`指定了调试器监听的端口,`server=y`表示此JVM是一个debug server,`suspend=n`表示JVM启动时不暂停等待debug client连接。 完成red5.bat的...

    Android代码-red5-server

    red5-server - Red5 server core Red5 is an Open Source Flash Server written in Java that supports: Streaming Video (FLV, F4V, MP4, 3GP) Streaming Audio (MP3, F4A, M4A, AAC) Recording Client ...

    red5-server-1.2.10.zip

    Red5 is an Open Source Flash Server written in Java that supports: Streaming Video (FLV, F4V, MP4, 3GP) Streaming Audio (MP3, F4A, M4A, AAC) Recording Client Streams (FLV and AVC+AAC in FLV container...

    juv-rtmp-client-1.5.10.rar_android red5_red5 Android_rtmp androi

    《Android与Red5流媒体服务器连接的实现及JUV-RTMP-Client库的应用》 在移动应用开发中,尤其是在视频直播或者视频点播场景下,Android设备与流媒体服务器的交互是必不可少的一环。本篇文章将深入探讨如何利用...

    Red5技术帮助文档

    - **兼容性**:Red5支持使用Macromedia Flash Communication Server组件进行开发,增强了兼容性和灵活性。 - **开发者资源**: - **集成开发环境**:推荐使用Eclipse或IntelliJ IDEA作为开发环境。 - **交流平台*...

    最新Red5 1.0.6 web版 1.0.2-1.0.7M4通用版

    最新Red5 1.0.6 web版,1.0.2-1.0.7M4通用,替换以下jar包到对应版本即可。... red5-client-1.0.6-RELEASE.jar red5-io-1.0.6-RELEASE.jar red5-server.jar red5-server-common-1.0.6-RELEASE.jar red5-service.jar

    RED5直播包括Flex和Java全部源代码

    通过这些源代码,你可以了解到RED5服务器的工作原理,包括如何接收和分发流,以及如何处理客户端的连接请求。如果你对服务器编程感兴趣,这是一个深入了解流媒体服务器实现的好机会。 最后,`red5Server`可能包含的...

    基于Red5的录音录像方法和代码

    在Flash客户端中,需要使用`NetConnection`和`NetStream`对象与Red5服务器建立连接并控制录音录像流程: ```actionscript var nc:NetConnection = new NetConnection(); nc.objectEncoding = ObjectEncoding.AMF0; ...

    多人视频会议RED5+FLEX

    import org.red5.server.adapter.ApplicationAdapter; import org.red5.server.api.IConnection; import org.red5.server.api.IClient; import org.red5.server.api.IScope; import org.red5.server.api.Red5; ...

    AS3与RED5 播放视频

    在AS3中,我们可以使用Flash Player提供的NetConnection和NetStream类来连接到RED5服务器并播放视频。首先,你需要建立一个NetConnection对象,指定服务器地址和端口,这样客户端就可以与RED5服务器建立连接: ```...

    Red5 0.9框架介绍(FMS的替代教程)

    ### Red5 0.9框架介绍(FMS的替代教程) #### 一、Red5框架概述 Red5是一款开源的媒体服务器,它基于Java技术,能够支持多种流媒体格式和服务,如RTMP、HLS等。该框架可以作为Adobe Flash Media Server (FMS)的一...

    ServerClient_RedServer_inPCS7V6.1.zip

    ServerClient_RedServer_inPCS7V6.1zip,ServerClient_RedServer_inPCS7V6.1

    KEPServerEX IoT Gateway REST and MQTT Client Agent Demo with Node-RED.docx

    KEPServerEX IoT Gateway REST and MQTT Client Agent Demo with Node-RED KEPServerEX IoT Gateway 是一个强大的工业物联网网关,能够将工业设备连接到云端和企业系统。这个网关支持多种工业协议和数据格式,能够...

    red5oflaDemo.zip

    1. **Application Server**: Red5服务器本身,负责处理流媒体的接收、存储和分发。 2. **Client Players**: 可能包括HTML页面、Flash Player或其他类型的客户端播放器,用于连接到服务器并接收流媒体内容。 3. **...

    red5流媒体资料

    Red5是一款基于Java开发的开源流媒体服务器,其主要功能是提供与Adobe的Flash Media Server (FMS)相类似的基于Flash的流媒体服务。Red5使用Real-Time Messaging Protocol (RTMP)作为传输协议,与FMS完全兼容,支持流...

    red5流媒体服务器入门基础归类.pdf

    Red5流媒体服务器是一款基于Java开发的开源流媒体服务软件,它的主要功能与Macromedia公司的FMS(Flash Media Server)相似。Red5支持RTMP(Real Time Messaging Protocol)协议,能够与Adobe Flash Player无缝协作...

    Linux下mysql server &client;

    本资源包含Linux下的MySQL Server、Client及Devel组件,使得用户能够在Linux系统上搭建和管理MySQL数据库。 MySQL Server是整个数据库系统的核心,它负责处理来自客户端的SQL请求,执行数据查询、更新和存储操作。...

    RED5调用客户端方法原代码

    综上所述,RED5调用客户端方法涉及到的主要步骤包括建立RTMP连接、客户端注册可调用对象、服务器通过`IClient`接口调用方法以及处理返回结果。理解这些原理和原代码可以帮助开发者更好地利用RED5实现服务器与客户端...

    Red Hat Enterprise Linux (RHEL) 5.5 正式版 BT 高速下载

    最近,Red Hat 对旗下面向企业用户的 Linux 系统 Red Hat Enterprise Linux (RHEL) 进行了更新,推出了 5.5 版本。RHEL 5.5 支持新的硬件平台,升级了既有的软件包,以及对虚拟化方面进行了增强。  根据 RHEL 5.5...

Global site tag (gtag.js) - Google Analytics