0

我已经安装了Red5 1.0.1。我正在用 Java 编写一个客户端来连接到Red5 server using RTMPT. 我已经开发了一个应用程序,它运行良好。从我的客户那里,我有这条线要连接:

public class MyRTMPTClient extends RTMPTClient {

    public void start() {
        connect(host, port, app);
    }
    public static void main(String[] args) {
        MyRTMPTClient obj = new MyRTMPTClient();
        obj.start();
    }
}

这是控制台中打印的内容:

16:00:11.963 [main] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - connect server: 10.81.144.180 port 8088 application installer 16:00:11.970 [main] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - connect server: 10.81.144.180 port 8088 application installer connectCallback null 16:00:11.971 [main] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - connect server: 10.81.144.180 port 8088 connect - params: {objectEncoding=0, app=installer, flashVer=WIN 11,2,202,235, fpad=false, tcUrl=rtmpt://10.81.144.180:8088/installer, audioCodecs=3575, videoFunction=1, pageUrl=null, path=installer, capabilities=15, swfUrl=null, videoCodecs=252} callback: null args: null 16:00:11.981 [main] INFO o.r.c.net.rtmp.BaseRTMPClientHandler - rtmp://10.81.144.180:8088/installer 16:00:12.262 [main] DEBUG o.red5.client.net.rtmpt.RTMPTClient - Created connector Thread[Thread-0,5,main] 16:00:12.354 [Thread-0] DEBUG o.a.h.i.c.t.ThreadSafeClientConnManager - Get connection: {}->http://10.81.144.180:8088, timeout = 0 16:00:12.356 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - [{}->http://10.81.144.180:8088] total kept alive: 0, total issued: 0, total allocated: 0 out of 40 16:00:12.357 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - No free connections [{}->http://10.81.144.180:8088][null] 16:00:12.357 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - Available capacity: 2 out of 2 [{}->http://10.81.144.180:8088][null] 16:00:12.357 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - Creating new connection [{}->http://10.81.144.180:8088] 16:00:12.379 [Thread-0] DEBUG o.a.h.i.c.DefaultClientConnectionOperator - Connecting to 10.81.144.180:8088 16:00:12.420 [Thread-0] DEBUG o.a.h.c.protocol.RequestAddCookies - CookieSpec selected: best-match 16:00:12.442 [Thread-0] DEBUG o.a.h.c.protocol.RequestAuthCache - Auth cache not set in the context 16:00:12.442 [Thread-0] DEBUG o.a.h.c.p.RequestTargetAuthentication - Target auth state: UNCHALLENGED 16:00:12.443 [Thread-0] DEBUG o.a.h.c.p.RequestProxyAuthentication - Proxy auth state: UNCHALLENGED 16:00:12.443 [Thread-0] DEBUG o.a.h.impl.client.DefaultHttpClient - Attempt 1 to execute request 16:00:12.443 [Thread-0] DEBUG o.a.h.i.conn.DefaultClientConnection - Sending request: POST /open/1 HTTP/1.1 16:00:12.445 [Thread-0] DEBUG org.apache.http.wire - >> "POST /open/1 HTTP/1.1[\r][\n]" 16:00:12.446 [Thread-0] DEBUG org.apache.http.wire - >> "Connection: Keep-Alive[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.wire - >> "Cache-Control: no-cache[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.wire - >> "Content-Length: 1[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.wire - >> "Host: 10.81.144.180:8088[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.wire - >> "User-Agent: Mozilla/4.0 (compatible; Red5 Server)[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.wire - >> "[\r][\n]" 16:00:12.447 [Thread-0] DEBUG org.apache.http.headers - >> POST /open/1 HTTP/1.1 16:00:12.447 [Thread-0] DEBUG org.apache.http.headers - >> Connection: Keep-Alive 16:00:12.448 [Thread-0] DEBUG org.apache.http.headers - >> Cache-Control: no-cache 16:00:12.448 [Thread-0] DEBUG org.apache.http.headers - >> Content-Length: 1 16:00:12.448 [Thread-0] DEBUG org.apache.http.headers - >> Host: 10.81.144.180:8088 16:00:12.448 [Thread-0] DEBUG org.apache.http.headers - >> User-Agent: Mozilla/4.0 (compatible; Red5 Server) 16:00:12.448 [Thread-0] DEBUG org.apache.http.wire - >> "[0x0]" 16:00:12.462 [Thread-0] DEBUG org.apache.http.wire - << "HTTP/1.1 200 OK[\r][\n]" 16:00:12.466 [Thread-0] DEBUG org.apache.http.wire - << "Server: Apache-Coyote/1.1[\r][\n]" 16:00:12.467 [Thread-0] DEBUG org.apache.http.wire - << "Connection: Keep-Alive[\r][\n]" 16:00:12.467 [Thread-0] DEBUG org.apache.http.wire - << "Cache-Control: no-cache[\r][\n]" 16:00:12.467 [Thread-0] DEBUG org.apache.http.wire - << "Content-Type: application/x-fcs[\r][\n]" 16:00:12.467 [Thread-0] DEBUG org.apache.http.wire - << "Content-Length: 14[\r][\n]" 16:00:12.467 [Thread-0] DEBUG org.apache.http.wire - << "Date: Thu, 11 Jul 2013 10:30:12 GMT[\r][\n]" 16:00:12.468 [Thread-0] DEBUG org.apache.http.wire - << "[\r][\n]" 16:00:12.469 [Thread-0] DEBUG o.a.h.i.conn.DefaultClientConnection - Receiving response: HTTP/1.1 200 OK 16:00:12.469 [Thread-0] DEBUG org.apache.http.headers - << HTTP/1.1 200 OK 16:00:12.469 [Thread-0] DEBUG org.apache.http.headers - << Server: Apache-Coyote/1.1 16:00:12.469 [Thread-0] DEBUG org.apache.http.headers - << Connection: Keep-Alive 16:00:12.469 [Thread-0] DEBUG org.apache.http.headers - << Cache-Control: no-cache 16:00:12.470 [Thread-0] DEBUG org.apache.http.headers - << Content-Type: application/x-fcs 16:00:12.470 [Thread-0] DEBUG org.apache.http.headers - << Content-Length: 14 16:00:12.470 [Thread-0] DEBUG org.apache.http.headers - << Date: Thu, 11 Jul 2013 10:30:12 GMT 16:00:12.479 [Thread-0] DEBUG o.a.h.impl.client.DefaultHttpClient - Connection can be kept alive indefinitely 16:00:12.490 [Thread-0] DEBUG org.apache.http.wire - << "MJVBMAV5ABPSW[\n]" 16:00:12.490 [Thread-0] DEBUG o.a.h.i.c.t.ThreadSafeClientConnManager - Released connection is reusable. 16:00:12.490 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - Releasing connection [{}->http://10.81.144.180:8088][null] 16:00:12.491 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - Pooling connection [{}->http://10.81.144.180:8088][null]; keep alive indefinitely 16:00:12.491 [Thread-0] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute - Notifying no-one, there are no waiting threads 16:00:12.501 [Thread-0] DEBUG o.r.c.net.rtmpt.RTMPTClientConnector - RTMPT handling exception java.lang.NumberFormatException: For input string: "MJVBMAV5ABPSW" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) ~[na:1.6.0_07] at java.lang.Integer.parseInt(Integer.java:447) ~[na:1.6.0_07] at java.lang.Integer.parseInt(Integer.java:497) ~[na:1.6.0_07] at org.red5.client.net.rtmpt.RTMPTClientConnector.openConnection(RTMPTClientConnector.java:161) ~[red5-client-1.0.jar:1.0] at org.red5.client.net.rtmpt.RTMPTClientConnector.run(RTMPTClientConnector.java:92) ~[red5-client-1.0.jar:1.0]

https://code.google.com/p/red5/source/browse/java/client/trunk/src/main/java/org/red5/client/net/rtmpt/RTMPTClientConnector 中的异常和源代码。 java,看起来 Red5 服务器正在返回 aString作为客户端 ID,而RTMPTClientConnector预期是integer. 我在这里想念什么?如果有一个简单的教程来展示如何使用 RTMPTClient,那将会很有帮助。我是初学者。

请让我知道我可以对这个异常做些什么,因为它来自red5-client.jar

4

1 回答 1

0

会话或客户端 ID 的字符串返回是正确的,应该在所有较新版本的 Red5 服务器和客户端中都可以看到。

于 2013-07-14T05:51:45.600 回答