Audio/video stream recording forums (http://stream-recorder.com/forum/index.php)
-   rtmpdump (http://stream-recorder.com/forum/forumdisplay.php?f=54)
-   -  

Problematic RTMP Server - Tinychat [[DYNAMIC]]?

(http://stream-recorder.com/forum/showthread.php?t=10333)

rtmpdumpuser 10-30-2011 06:04 PM

Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
I was previously able to download streams from tinychat.com using rtmpdump, but they recently made some adjustments to their server and now I cannot.

Here are typical headers flash sends to tinychat's rtmp server:

Code:

rtmp://174.122.202.2:80/tinyconf/5010
app: tinyconf
flashVer: WIN 11,0,1,152
pageUrl: http://tinychat.com/testroom
swfUrl: http://tinychat.com/embed/Tinychat-1...on=1.0.0.0301/[[DYNAMIC]]/8
tcUrl: rtmp://174.122.202.2:80/tinyconf
playPath: 5010


From this I invoked rtmpdump with the following arguments

Code:

rtmpdump -r "rtmp://174.122.202.2:80/tinyconf/5010" --app tinyconf --flashVer "WIN 11,0,1,152" --pageUrl "http://tinychat.com/testroom" --swfUrl "http://tinychat.com/embed/Tinychat-10.3-1.0.0.0301.swf?version=1.0.0.0301/[[DYNAMIC]]/8" --tcUrl "rtmp://174.122.202.2:80/tinyconf" --playpath "5010" -W "http://tinychat.com/embed/Tinychat-10.3-1.0.0.0301.swf?version=1.0.0.0301/[[DYNAMIC]]/8"
but rtmpdump fails with

WARNING: HandShake: client signature does not match!
INFO: Connected...
ERROR: Closing connection: NetStream.Play.Failed

There are also some additional headers which I cannot replicate using rtmpdump:

Code:

DEBUG: Property: <Name:    objectEncoding, NUMBER:    0.00>
DEBUG: (object end)
DEBUG: Property: <Name:          no-name., STRING:    testroom>
DEBUG: Property: <Name:          no-name., STRING:    none>
DEBUG: Property: <Name:          no-name., STRING:    default>
DEBUG: Property: <Name:          no-name., STRING:    tinychat>
DEBUG: Property: <Name:          no-name., STRING:    >

Is anyone able to download tinychat streams through rtmpdump? I think the problem may be related to the [[DYNAMIC]]. What could [[DYNAMIC]] represent/mean?

KSV 10-31-2011 12:53 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
[[DYNAMIC]] in swf url has nothing to do with the ability to connect and record the stream. you need to append custom AMF data to connect packet with (-C | --conn) switch to successfully connect to the server.

Code:

rtmpdump -r "rtmp://174.122.202.74:443/tinyconf" -a "tinyconf" -W "http://tinychat.com/embed/Tinychat-10.3-1.0.0.0301.swf" -C S:hollywoodempire -C S:none -C S:show -C S:tinychat -C S: -y "122253" --live -o Test.flv
Code:

RTMPDump v2.4 GIT-2011-09-30 (Compiled by KSV)
(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
Connecting ...
WARNING: HandShake: client signature does not match!
INFO: Connected...
Starting Live Stream
1175.362 kB / 50.24 sec


chap 10-31-2011 01:10 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
KSV
you have decoded?
-C S:hollywoodempire -C S:none -C S:show -C S:tinychat -C S:

KSV 10-31-2011 01:17 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
yeah it's the custom AMF data that needs to be appended to connect packet.

chap 10-31-2011 01:31 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
Quote:

Originally Posted by KSV (Post 34002)
yeah it's the custom AMF data that needs to be appended to connect packet.

Where to find them?

KSV 10-31-2011 01:33 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
i have used wireshark.

rtmpdumpuser 10-31-2011 10:13 AM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
Thanks for the help, KSV. I tried appending AMF data earlier, but I was missing the null string.

Do you know what the proper syntax is for the NB:name:boolean, NS:name:string, and NN:name:number parameters?

I tried -C NS:name:value but rtmpdump says "ERROR: Invalid AMF parameter: NS:name:value"

I know it's not needed in this particular instance, but it may be needed in the future.

Also, out of curiosity, do you have any idea why [[DYNAMIC]] often appears in RTMP swfUrls?

KSV 10-31-2011 12:03 PM

Re: Problematic RTMP Server - Tinychat [[DYNAMIC]]?


 
Quote:

Originally Posted by rtmpdumpuser (Post 34015)
Do you know what the proper syntax is for the NB:name:boolean, NS:name:string, and NN:name:number parameters?

I tried -C NS:name:value but rtmpdump says "ERROR: Invalid AMF parameter: NS:name:value"

I know it's not needed in this particular instance, but it may be needed in the future.

rtmpdump only allows named variables inside an object. so you must put them inside AMF object. e.g.
Code:

-C O:1 -C NS:name:value -C O:0
Quote:

Originally Posted by rtmpdumpuser (Post 34015)
Also, out of curiosity, do you have any idea why [[DYNAMIC]] often appears in RTMP swfUrls?

not sure but AFAIK [[DYNAMIC]] and [[IMPORT]] are used to control which flex app can import or load that swf file. nothing a user should care about.


All times are GMT -6. The time now is 11:48 AM.