Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RTMPClient.invoke() fails with parameters longer than 82 bytes #26

Closed
benjdavenport opened this issue Dec 16, 2015 · 2 comments
Closed
Assignees

Comments

@benjdavenport
Copy link

Hey everyone!

Seeing something very strange with RTMPClient.invoke...

If the parameter size is more than 82 bytes the message never arrives at the server. Not sure what could be the issue here, but somebody reported EXACTLY the same issue about 2 years ago here: https://groups.google.com/forum/#!topic/red5interest/SCJmUJnJGA4

final RTMPClient client = new RTMPClient();
        client.connect("localhost", 1935, "liveremote/0586e318-6277-11e3-adc2-22000a1d91fe", new IPendingServiceCallback() 
        {
            @Override
            public void resultReceived(IPendingServiceCall result) 
            {
                if (result.isSuccess())
                {
                    ArrayList<Object> list = new ArrayList<>();

                    list.add(new Object[]{ "fujifilm-x100s-video-test-1080p-full-hd-hdmp4_720.mp4" });
                    list.add(new Object[]{ "canon-500d-test-video-720-hd-30-fr-hdmp4_720.mp4" });

                    Object[] params = { "64", "cc-video-processed/", list };

                    client.invoke("loadPlaylist", params, new IPendingServiceCallback() 
                    {
                        @Override
                        public void resultReceived(IPendingServiceCall result)
                        {
                            //
                        }
                    });
                }
            }
        });
@benjdavenport
Copy link
Author

My logs:

17:42:20.979 [main] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Set handler: org.red5.client.net.rtmp.RTMPClient@68bbe345
17:42:20.985 [main] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - connect server: localhost port 1935 application liveremote/0586e318-6277-11e3-adc2-22000a1d91fe connectCallback ClientTest$1@d44fc21
17:42:20.990 [main] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - connect server: localhost port 1935 connect - params: {app=liveremote/0586e318-6277-11e3-adc2-22000a1d91fe, tcUrl=rtmp://localhost:1935/liveremote/0586e318-6277-11e3-adc2-22000a1d91fe, audioCodecs=3575, path=liveremote/0586e318-6277-11e3-adc2-22000a1d91fe, capabilities=15, videoFunction=1, swfUrl=null, flashVer=WIN 11,2,202,235, videoCodecs=252, pageUrl=null, objectEncoding=0, fpad=false} callback: ClientTest$1@d44fc21 args: null
17:42:20.990 [main] INFO o.r.c.net.rtmp.BaseRTMPClientHandler - rtmp://localhost:1935/liveremote/0586e318-6277-11e3-adc2-22000a1d91fe
17:42:21.065 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Session created
17:42:21.108 [NioProcessor-2] DEBUG org.red5.server.BaseConnection - New BaseConnection - type: persistent
17:42:21.110 [NioProcessor-2] DEBUG org.red5.server.BaseConnection - Generated session id: 8F7UFNRDHWQYO
17:42:21.123 [NioProcessor-2] INFO o.s.s.c.ThreadPoolTaskExecutor - Initializing ExecutorService
17:42:21.501 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Session opened
17:42:21.501 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Handshake - client phase 1
17:42:21.501 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - generateClientRequest1
17:42:21.501 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Creating client handshake part 1 with keys/hashes
17:42:21.513 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Public key: 110086571445671828300937835758784697290098381661018867559431454155960927582068120299045829895166484435105187065475881374069493706727477838257797276130568020015039961513024884442756202094648195677597396771183313574159176514155597716060093157441027950783793545225083733233808382274439588385033395534164402883915
17:42:21.519 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Public key as bytes - length [129]: 009cc4bb339c101feb026672c05ee6e6a6c344157a51264e69549161578204401b3b10fbf6162b4a27425854480b6e40dfe7f2d2bb2e28659165af6d9f3b36ada11e442705522f4e76b2df45267579c14776a72777ae25fd536fb9f65df940ff1c382ffe71391abbcbcda93ce433e2eeb03c7466f6fa52fe56f148acda9c47cd4b
17:42:21.519 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Truncated public key length to 128
17:42:21.519 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Client public key: 9cc4bb339c101feb026672c05ee6e6a6c344157a51264e69549161578204401b3b10fbf6162b4a27425854480b6e40dfe7f2d2bb2e28659165af6d9f3b36ada11e442705522f4e76b2df45267579c14776a72777ae25fd536fb9f65df940ff1c382ffe71391abbcbcda93ce433e2eeb03c7466f6fa52fe56f148acda9c47cd4b
17:42:21.525 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageSent
17:42:21.525 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.529 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.530 [NioProcessor-2] DEBUG o.a.m.f.codec.ProtocolCodecFilter - Processing a MESSAGE_RECEIVED for session 1
17:42:21.532 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.537 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: NioProcessor-2
17:42:21.538 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #256
17:42:21.538 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - decodeServerHandshake - buffer: HeapBuffer[pos=0 lim=2048 cap=2048: 03 05 C5 D0 84 03 00 01 01 42 46 5B B4 E9 74 2B...]
17:42:21.539 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - Handshake init too small, buffering. remaining: 2048
17:42:21.539 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: NioProcessor-2
17:42:21.540 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #275
17:42:21.540 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.540 [NioProcessor-2] DEBUG o.a.m.f.codec.ProtocolCodecFilter - Processing a MESSAGE_RECEIVED for session 1
17:42:21.540 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.540 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: NioProcessor-2
17:42:21.540 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #256
17:42:21.540 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - decodeServerHandshake - buffer: HeapBuffer[pos=0 lim=3073 cap=4096: 03 05 C5 D0 84 03 00 01 01 42 46 5B B4 E9 74 2B...]
17:42:21.541 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: NioProcessor-2
17:42:21.541 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #275
17:42:21.541 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.541 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - rawBufferRecieved: HeapBuffer[pos=0 lim=3072 cap=3072: 05 C5 D0 84 03 00 01 01 42 46 5B B4 E9 74 2B 65...]
17:42:21.541 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.541 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Handshake - client phase 2 - size: 3072
17:42:21.541 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - decodeServerResponse: HeapBuffer[pos=0 lim=3072 cap=3072: 05 C5 D0 84 03 00 01 01 42 46 5B B4 E9 74 2B 65...]
17:42:21.541 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Server response part 1: HeapBuffer[pos=0 lim=1536 cap=1536: 05 C5 D0 84 03 00 01 01 42 46 5B B4 E9 74 2B 65...]
17:42:21.542 [NioProcessor-2] INFO o.red5.server.net.rtmp.RTMPHandshake - Processing server response for encryption
17:42:21.542 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Server time: 05c5d084
17:42:21.542 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Server version: 03000101
17:42:21.542 [NioProcessor-2] INFO o.red5.server.net.rtmp.RTMPHandshake - Type 0 digest comparison success
17:42:21.542 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - server public key: 50684f9fcc1a6bf6a5e029f13213d3690a83f40fe3b652a5545243e25199d1df091133c9a0a0ba5b5a7ad5eac16694b8c6bc47351f395d2184db7205594d1b5f44290130aafc0f42e607aa3adbb1a2a7d787943467efff079d95fbd968f2bbe96f3e5e02ce042d63efaf3ba4bb1063114f87d4ced06b20b603c9663aa6335e33
17:42:21.546 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Shared secret [128]: 8679948f28ce87eb6a2f5c1baa8416b7d324a17d86d1e05d0cd2d7bf3452eccf22a166406258778872abd2e9b991fe721622029570729d4efb78a1ca7161d46f32ef6b4c68a7dcac7773eacc0a33007e52b328f5e8ad84fd516a6fa19103aea9a4339ab827ec1da210ced42d73c8ffe9305d1eca3eaff5229b19717838e3e78a
17:42:21.546 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - shared secret: 8679948f28ce87eb6a2f5c1baa8416b7d324a17d86d1e05d0cd2d7bf3452eccf22a166406258778872abd2e9b991fe721622029570729d4efb78a1ca7161d46f32ef6b4c68a7dcac7773eacc0a33007e52b328f5e8ad84fd516a6fa19103aea9a4339ab827ec1da210ced42d73c8ffe9305d1eca3eaff5229b19717838e3e78a
17:42:21.554 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - Server response part 2: HeapBuffer[pos=0 lim=1536 cap=1536: 7B 7B 8C BF 92 44 A4 0F 47 90 DF 49 B2 47 9C 95...]
17:42:21.554 [NioProcessor-2] INFO o.red5.server.net.rtmp.RTMPHandshake - server response part 2 validation success, is Flash Player v9 handshake
17:42:21.554 [NioProcessor-2] DEBUG o.red5.server.net.rtmp.RTMPHandshake - generateClientRequest2
17:42:21.554 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - Output: HeapBuffer[pos=0 lim=1536 cap=1536: B1 6C A2 71 D1 41 9C 30 AD 89 21 C4 7F 3F 88 A5...]
17:42:21.554 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageSent
17:42:21.554 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.558 [NioProcessor-2] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - Writing 'connect' invoke: Invoke #1: Service: null Method: connect No params, invokeId: 1
17:42:21.565 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.566 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: NioProcessor-2
17:42:21.566 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #290
17:42:21.566 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Service: null Method: connect No params
17:42:21.566 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - encodeCommand - command: Invoke #1: Service: null Method: connect No params
17:42:21.567 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: NioProcessor-2
17:42:21.569 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Call: Service: null Method: connect No params pending: true
17:42:21.569 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - This is a pending call, send request
17:42:21.588 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationFactory - Configuring ehcache from ehcache.xml found in the classpath: jar:file:/Users/ben/.m2/repository/org/red5/red5-client/1.0.6-RELEASE/red5-client-1.0.6-RELEASE.jar!/ehcache.xml
17:42:21.588 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationFactory - Configuring ehcache from URL: jar:file:/Users/ben/.m2/repository/org/red5/red5-client/1.0.6-RELEASE/red5-client-1.0.6-RELEASE.jar!/ehcache.xml
17:42:21.588 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationFactory - Configuring ehcache from InputStream
17:42:21.685 [NioProcessor-2] DEBUG net.sf.ehcache.config.BeanHandler - Ignoring ehcache attribute xmlns:xsi
17:42:21.685 [NioProcessor-2] DEBUG net.sf.ehcache.config.BeanHandler - Ignoring ehcache attribute xsi:noNamespaceSchemaLocation
17:42:21.688 [NioProcessor-2] DEBUG n.s.e.config.DiskStoreConfiguration - Disk Store Path: /var/folders/xg/f54w_fzs27n0s0qc5m_8smkr0000gn/T/red5
17:42:21.701 [NioProcessor-2] DEBUG net.sf.ehcache.CacheManager - Creating new CacheManager with default config
17:42:21.704 [NioProcessor-2] DEBUG net.sf.ehcache.util.PropertyUtil - propertiesString is null.
17:42:21.712 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheManagerEventListenerFactory class specified. Skipping...
17:42:21.730 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - No BootstrapCacheLoaderFactory class specified. Skipping...
17:42:21.730 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - CacheWriter factory not configured. Skipping...
17:42:21.730 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheExceptionHandlerFactory class specified. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - No BootstrapCacheLoaderFactory class specified. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - CacheWriter factory not configured. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheExceptionHandlerFactory class specified. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - No BootstrapCacheLoaderFactory class specified. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - CacheWriter factory not configured. Skipping...
17:42:21.732 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheExceptionHandlerFactory class specified. Skipping...
17:42:21.733 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - No BootstrapCacheLoaderFactory class specified. Skipping...
17:42:21.735 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - CacheWriter factory not configured. Skipping...
17:42:21.735 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheExceptionHandlerFactory class specified. Skipping...
17:42:21.735 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - No BootstrapCacheLoaderFactory class specified. Skipping...
17:42:21.735 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - CacheWriter factory not configured. Skipping...
17:42:21.735 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - No CacheExceptionHandlerFactory class specified. Skipping...
17:42:21.755 [NioProcessor-2] DEBUG net.sf.ehcache.store.MemoryStore - Initialized net.sf.ehcache.store.NotifyingMemoryStore for org.red5.io.amf.Output.getterCache
17:42:21.759 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - Initialised cache: org.red5.io.amf.Output.getterCache
17:42:21.759 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured. Skipping for 'org.red5.io.amf.Output.getterCache'.
17:42:21.759 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured for defaultCache. Skipping for 'org.red5.io.amf.Output.getterCache'.
17:42:21.760 [NioProcessor-2] DEBUG net.sf.ehcache.store.MemoryStore - Initialized net.sf.ehcache.store.NotifyingMemoryStore for org.red5.io.amf.Output.fieldCache
17:42:21.760 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - Initialised cache: org.red5.io.amf.Output.fieldCache
17:42:21.760 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured. Skipping for 'org.red5.io.amf.Output.fieldCache'.
17:42:21.760 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured for defaultCache. Skipping for 'org.red5.io.amf.Output.fieldCache'.
17:42:21.760 [NioProcessor-2] DEBUG net.sf.ehcache.store.MemoryStore - Initialized net.sf.ehcache.store.NotifyingMemoryStore for org.red5.io.amf.Output.stringCache
17:42:21.761 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - Initialised cache: org.red5.io.amf.Output.stringCache
17:42:21.761 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured. Skipping for 'org.red5.io.amf.Output.stringCache'.
17:42:21.761 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured for defaultCache. Skipping for 'org.red5.io.amf.Output.stringCache'.
17:42:21.761 [NioProcessor-2] DEBUG net.sf.ehcache.store.MemoryStore - Initialized net.sf.ehcache.store.NotifyingMemoryStore for org.red5.io.amf.Output.serializeCache
17:42:21.761 [NioProcessor-2] DEBUG net.sf.ehcache.Cache - Initialised cache: org.red5.io.amf.Output.serializeCache
17:42:21.761 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured. Skipping for 'org.red5.io.amf.Output.serializeCache'.
17:42:21.761 [NioProcessor-2] DEBUG n.s.e.config.ConfigurationHelper - CacheDecoratorFactory not configured for defaultCache. Skipping for 'org.red5.io.amf.Output.serializeCache'.
17:42:21.768 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Writing params
17:42:21.768 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: NioProcessor-2
17:42:21.769 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: NioProcessor-2
17:42:21.770 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: NioProcessor-2
17:42:21.770 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #310
17:42:21.770 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageSent
17:42:21.770 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.774 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.774 [NioProcessor-2] DEBUG o.r.client.net.rtmpe.RTMPEIoFilter - In connected state
17:42:21.774 [NioProcessor-2] DEBUG o.r.client.net.rtmpe.RTMPEIoFilter - Using non-encrypted communications
17:42:21.774 [NioProcessor-2] DEBUG o.a.m.f.codec.ProtocolCodecFilter - Processing a MESSAGE_RECEIVED for session 1
17:42:21.774 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.774 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: NioProcessor-2
17:42:21.775 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #256
17:42:21.777 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - Decoded chunk size: 4096
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 3 limit: 10
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: _result
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Number
17:42:21.779 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Object
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - readObject: null
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - read map
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 6
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 22 limit: 28
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: fmsVer
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: fmsVer
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 31 limit: 45
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: FMS/3,5,7,7009
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: FMS/3,5,7,7009
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 12
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 47 limit: 59
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: capabilities
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: capabilities
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Number
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: 31
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.780 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 4
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 70 limit: 74
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: mode
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: mode
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Number
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: 1
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? true
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? true
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Object
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - readObject: null
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - read map
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 5
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 89 limit: 94
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: level
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: level
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 97 limit: 103
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: status
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: status
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 4
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 105 limit: 109
17:42:21.781 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: code
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: code
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 112 limit: 141
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: NetConnection.Connect.Success
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: NetConnection.Connect.Success
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 11
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 143 limit: 154
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: description
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: description
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 157 limit: 178
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: Connection succeeded.
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: Connection succeeded.
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 4
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 180 limit: 184
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: data
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: data
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: List
17:42:21.782 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Read start mixed array: 0
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 7
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 191 limit: 198
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: version
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - key: version
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - key version is causing non normal array
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: String
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 201 limit: 211
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: 3,5,7,7009
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - item: 3,5,7,7009
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? true
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: {version=3,5,7,7009}
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 8
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 216 limit: 224
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: clientid
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: clientid
17:42:21.783 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Number
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: 1671615609
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? false
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Length: 14
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - Limit: 261
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String buf - position: 235 limit: 249
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - String: objectEncoding
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - property: objectEncoding
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.object.Deserializer - Datatype: Number
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - val: 0
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? true
17:42:21.784 [NioProcessor-2] DEBUG org.red5.io.amf.Input - End of object: ? true
17:42:21.784 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - Num params: 1
17:42:21.784 [NioProcessor-2] DEBUG o.r.s.n.r.codec.RTMPProtocolDecoder - > 0: {code=NetConnection.Connect.Success, clientid=1671615609, data={version=3,5,7,7009}, level=status, description=Connection succeeded., objectEncoding=0}
17:42:21.784 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: NioProcessor-2
17:42:21.784 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$1.decode #275
17:42:21.784 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.784 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.785 [NioProcessor-2] DEBUG o.r.server.net.rtmp.BaseRTMPHandler - Server bandwidth: ServerBW: 2500000
17:42:21.785 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.785 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.785 [NioProcessor-2] DEBUG o.r.server.net.rtmp.BaseRTMPHandler - Client bandwidth: ClientBW: 2500000 limitType: 2
17:42:21.785 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.785 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.785 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.785 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: NioProcessor-2
17:42:21.786 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #290
17:42:21.786 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: NioProcessor-2
17:42:21.786 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: NioProcessor-2
17:42:21.786 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: NioProcessor-2
17:42:21.786 [NioProcessor-2] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #310
17:42:21.786 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.786 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.786 [NioProcessor-2] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - onChunkSize
17:42:21.786 [NioProcessor-2] INFO o.r.c.net.rtmp.BaseRTMPClientHandler - ChunkSize is not fully implemented: ChunkSize: 4096
17:42:21.786 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageReceived
17:42:21.786 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.789 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: ThreadPoolTaskExecutor-1
17:42:21.789 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Caller: org.red5.server.net.rtmp.ReceivedMessageTask.call #45
17:42:21.789 [ThreadPoolTaskExecutor-1] ERROR o.r.s.net.rtmp.ReceivedMessageTask - Deadlock guard is null for 8F7UFNRDHWQYO
17:42:21.789 [ThreadPoolTaskExecutor-1] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - Service name: _result args[0]: {code=NetConnection.Connect.Success, clientid=1671615609, data={version=3,5,7,7009}, level=status, description=Connection succeeded., objectEncoding=0}
17:42:21.789 [ThreadPoolTaskExecutor-1] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - Received result for pending call - Service: null Method: connect No params
17:42:21.790 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageSent
17:42:21.790 [ThreadPoolTaskExecutor-1] DEBUG o.r.c.net.rtmp.BaseRTMPClientHandler - invoke method: loadPlaylist params [64, cc-video-processed/, [[Ljava.lang.Object;@706a206c, [Ljava.lang.Object;@3568b005]] callback ClientTest$1$1@5d4ac71f
17:42:21.790 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.790 [ThreadPoolTaskExecutor-1] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.791 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Set connection: 8F7UFNRDHWQYO with thread: ThreadPoolTaskExecutor-1
17:42:21.791 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #290
17:42:21.791 [ThreadPoolTaskExecutor-1] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Service: null Method: loadPlaylist Num Params: 3 0: 64 1: cc-video-processed/ 2: [[Ljava.lang.Object;@706a206c, [Ljava.lang.Object;@3568b005]
17:42:21.792 [ThreadPoolTaskExecutor-1] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - encodeCommand - command: Invoke #2: Service: null Method: loadPlaylist Num Params: 3 0: 64 1: cc-video-processed/ 2: [[Ljava.lang.Object;@706a206c, [Ljava.lang.Object;@3568b005]
17:42:21.792 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: ThreadPoolTaskExecutor-1
17:42:21.792 [ThreadPoolTaskExecutor-1] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Call: Service: null Method: loadPlaylist Num Params: 3 0: 64 1: cc-video-processed/ 2: [[Ljava.lang.Object;@706a206c, [Ljava.lang.Object;@3568b005] pending: true
17:42:21.792 [ThreadPoolTaskExecutor-1] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - This is a pending call, send request
17:42:21.792 [ThreadPoolTaskExecutor-1] DEBUG o.r.s.n.r.codec.RTMPProtocolEncoder - Writing params
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.io.amf.Output - writeArray - array: fujifilm-x100s-video-test-1080p-full-hd-hdmp4_720.mp4
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.io.amf.Output - writeArray - array: canon-500d-test-video-720-hd-30-fr-hdmp4_720.mp4
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: ThreadPoolTaskExecutor-1
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Get connection: 8F7UFNRDHWQYO on thread: ThreadPoolTaskExecutor-1
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: ThreadPoolTaskExecutor-1
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Caller: org.red5.client.net.rtmp.RTMPMinaIoHandler$RTMPMinaCodecFactory$2.encode #310
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Set connection: null with thread: ThreadPoolTaskExecutor-1
17:42:21.793 [ThreadPoolTaskExecutor-1] DEBUG org.red5.server.api.Red5 - Caller: org.red5.server.net.rtmp.ReceivedMessageTask.call #69
17:42:21.794 [NioProcessor-2] DEBUG o.r.c.net.rtmp.RTMPMinaIoHandler - messageSent
17:42:21.794 [NioProcessor-2] DEBUG o.r.client.net.rtmp.RTMPConnManager - Getting connection by session id: 8F7UFNRDHWQYO
17:42:21.794 [ThreadPoolTaskExecutor-1] DEBUG o.r.server.net.rtmp.RTMPConnection - onSuccess - session: 8F7UFNRDHWQYO, msgType: TYPE_INVOKE, processingTime: 7, packetNum: 1

@mondain mondain self-assigned this Dec 17, 2015
@mondain
Copy link
Member

mondain commented May 26, 2016

Cant reproduce this with 1.0.8-M1; check-out RTMPClientTest.test26() and see if you can repro with this version.

@mondain mondain closed this as completed May 26, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants