我一直在创建一个瘦浏览器客户端(在Java上),该客户端将RTMP流发送到指定的red5实例。我还使用RTMP Researcher监视客户端和服务器之间发生的流量和事件。

我要注意的是:
显然,在red5实例和客户端之间正在交换带有选项的映射。
你可以在这里看到它:
 (直接链接:http://img716.imageshack.us/img716/661/newbitmapimagelb.png

我想知道的是是否有一种编程方式可以在客户端获取此地图,并可能更改某些参数或只是对其进行检查

编辑:

我这样连接

connect ( host, port, app, callback );

。我假设我正在发送一些默认参数,因为其他连接方法也有optionsMap作为参数。我想知道在这样的optionsMap中可以输入哪些可能的值,以及在哪里获取它们的列表?

最佳答案

嘿,
我也在red5上苦苦挣扎,找到了这篇文章。下载red5源代码并查看此源文件:src/org/red5/server/net/rtmp/BaseRTMPClientHandler.java

您应该知道connect()方法具有多个signatures

BaseRTMPClientHandler.java中的以下方法创建默认参数:

public Map<String, Object> makeDefaultConnectionParams(String server, int port, String application) {
    Map<String, Object> params = new ObjectMap<String, Object>();
    params.put("app", application);
    params.put("objectEncoding", Integer.valueOf(0));
    params.put("fpad", Boolean.FALSE);
    params.put("flashVer", "WIN 9,0,115,0");
    params.put("audioCodecs", Integer.valueOf(1639));
    params.put("videoFunction", Integer.valueOf(1));
    params.put("pageUrl", null);
    params.put("path", application);
    params.put("capabilities", Integer.valueOf(15));
    params.put("swfUrl", null);
    params.put("videoCodecs", Integer.valueOf(252));
    return params;
}

关于java - 如何使用JAVA协商red5连接参数以进行流传输,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4692793/

10-12 16:20