[rtmpdump] Having some issues downloading a stream using rtmpdump

Menachem menachem.shapiro at gmail.com
Sun Sep 18 22:07:37 CEST 2011


B"H
Hello

I'm running lubuntu 11.04

I'm using the latest rtmpdump from git (commit
c58cfb3e9208c6e6bc1aa18f1b1d650d799084e5 - although the date `git log` gives
is off - it says Aug 11. for the latest commit.)

I'm trying to download the stream on this page:
http://www.chabad.org/therebbe/article_cdo/aid/551143/jewish/14-Adar-5724.htm

This works when playing it through the browser.

rtmpsrv gave me the following command:
---
/usr/local/bin/rtmpdump -r "rtmp://rtmp01.hddn.com/play" -a "play" -f "LNX
10,3,183,7" -W "
http://www.chabad.org/images/multimedia/mediaplayer/player.swf?v=3.0.1.6" -p
"
http://www.chabad.org/therebbe/article_cdo/aid/551143/jewish/14-Adar-5724.htm"
-C B:0 -y
"mp3:vod/vod.chabadorg1/JEM/SichosKodesh/5724/1536563_JEMSK0766_-_14_Adar_5724_Sicha_3"
-o 1536563_JEMSK0766_-_14_Adar_5724_Sicha_3.flv
---

However, that didn't work. When I run that (with debug) I get a " Connection
failed: Application rejected connection" error:
--
DEBUG: RTMP_ClientPacket, received: invoke 231 bytes
DEBUG: (object begin)
DEBUG: Property: <Name:           no-name., STRING:    _error>
DEBUG: Property: <Name:           no-name., NUMBER:    1.00>
DEBUG: Property: NULL
DEBUG: Property: <Name:           no-name., OBJECT>
DEBUG: (object begin)
DEBUG: Property: <Name:              level, STRING:    error>
DEBUG: Property: <Name:               code, STRING:
NetConnection.Connect.Rejected>
DEBUG: Property: <Name:        description, STRING:    Connection failed:
Application rejected connection.>
DEBUG: Property: <Name:                 ex, OBJECT>
DEBUG: (object begin)
DEBUG: Property: <Name:           redirect, STRING:    rtmp://
173.208.109.173:1935/play>
DEBUG: Property: <Name:               code, NUMBER:    302.00>
DEBUG: (object end)
DEBUG: Property: <Name:           clientid, NUMBER:    1483116424.00>
DEBUG: (object end)
DEBUG: (object end)
DEBUG: HandleInvoke, server invoking <_error>
ERROR: rtmp server sent error
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  03 00 00 00 00 00 12 14  00 00 00 00
............
DEBUG2:   0000:  02 00 05 63 6c 6f 73 65  00 00 00 00 00 00 00 00
...close........
DEBUG2:   0010:  00 05
..
DEBUG: RTMP_ClientPacket, received: invoke 18 bytes
DEBUG: (object begin)
DEBUG: Property: <Name:           no-name., STRING:    close>
DEBUG: Property: <Name:           no-name., NUMBER:    0.00>
DEBUG: Property: NULL
DEBUG: (object end)
DEBUG: HandleInvoke, server invoking <close>
ERROR: rtmp server requested close
DEBUG: Closing connection.
--

It offers a redirect, which rtmpdump does not follow (I don't know if this
is a bug or intended behavior).

So I switched the rtmpdump command to use the redirect link:
--
/usr/local/bin/rtmpdump --debug -r "rtmp://173.208.109.173:1935/play" -a
"play" -f "LNX 10,3,183,7" -W "
http://www.chabad.org/images/multimedia/mediaplayer/player.swf?v=3.0.1.6" -p
"
http://www.chabad.org/therebbe/article_cdo/aid/551143/jewish/14-Adar-5724.htm"
-C B:0 -y
"mp3:vod/vod.chabadorg1/JEM/SichosKodesh/5724/1536563_JEMSK0766_-_14_Adar_5724_Sicha_3"
-o 1536563_JEMSK0766_-_14_Adar_5724_Sicha_3.flv
--

This time it seems to start, but goes very slow and seems to give the same
command, "DEBUG2: RTMP_ReadPacket: fd=5" and then freeze for several
seconds, spit out a couple lines and then repeat itself. Here is some of
that output:
---
DEBUG: RTMP_ClientPacket, received: invoke 201 bytes
DEBUG: (object begin)
DEBUG: Property: <Name:           no-name., STRING:    onStatus>
DEBUG: Property: <Name:           no-name., NUMBER:    0.00>
DEBUG: Property: NULL
DEBUG: Property: <Name:           no-name., OBJECT>
DEBUG: (object begin)
DEBUG: Property: <Name:              level, STRING:    status>
DEBUG: Property: <Name:               code, STRING:
NetStream.Publish.Start>
DEBUG: Property: <Name:        description, STRING:    Publishing
vod/vod.chabadorg1/JEM/SichosKodesh/5724/1536563_JEMSK0766_-_14_Adar_5724_Sicha_3.>
DEBUG: Property: <Name:           clientid, NUMBER:    961863286.00>
DEBUG: (object end)
DEBUG: (object end)
DEBUG: HandleInvoke, server invoking <onStatus>
DEBUG: HandleInvoke, onStatus: NetStream.Publish.Start
Starting download at: 0.000 kB
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............
DEBUG2:   0000:  00 06 00 00 50 a1
....P.
DEBUG: HandleCtrl, received ctrl. type: 6, len: 6
DEBUG: HandleCtrl, Ping 20641
DEBUG: sending ctrl. type: 0x0007
DEBUG2: RTMP_SendPacket: fd=5, size=6
DEBUG2:   0000:  42 00 00 00 00 00 06 04
B.......
DEBUG2:   0000:  00 07 00 00 50 a1
....P.
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............
DEBUG2:   0000:  00 06 00 00 9f b8
......
DEBUG: HandleCtrl, received ctrl. type: 6, len: 6
DEBUG: HandleCtrl, Ping 40888
DEBUG: sending ctrl. type: 0x0007
DEBUG2: RTMP_SendPacket: fd=5, size=6
DEBUG2:   0000:  c2
.
DEBUG2:   0000:  00 07 00 00 9f b8
......
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............
DEBUG2:   0000:  00 06 00 00 ee 73
.....s
DEBUG: HandleCtrl, received ctrl. type: 6, len: 6
DEBUG: HandleCtrl, Ping 61043
DEBUG: sending ctrl. type: 0x0007
DEBUG2: RTMP_SendPacket: fd=5, size=6
DEBUG2:   0000:  c2
.
DEBUG2:   0000:  00 07 00 00 ee 73
.....s
DEBUG2: RTMP_ReadPacket: fd=5

---

Most of the time it just kept on going, spitting out new lines every 5-10
seconds. When I wanted to exit I had to kill it from the command line:
Once, after a while, it errored out like this, but this only happened once:
---
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2: RTMP_SendPacket: fd=5, size=112
DEBUG2:   0000:  43 00 00 00 00 00 70 14
C.....p.
DEBUG2:   0000:  02 00 0b 46 43 55 6e 70  75 62 6c 69 73 68 00 40
...FCUnpublish.@
DEBUG2:   0010:  1c 00 00 00 00 00 00 05  02 00 55 6d 70 33 3a 76
..........Ump3:v
DEBUG2:   0020:  6f 64 2f 76 6f 64 2e 63  68 61 62 61 64 6f 72 67
od/vod.chabadorg
DEBUG2:   0030:  31 2f 4a 45 4d 2f 53 69  63 68 6f 73 4b 6f 64 65
1/JEM/SichosKode
DEBUG2:   0040:  73 68 2f 35 37 32 34 2f  31 35 33 36 35 36 33 5f
sh/5724/1536563_
DEBUG2:   0050:  4a 45 4d 53 4b 30 37 36  36 5f 2d 5f 31 34 5f 41
JEMSK0766_-_14_A
DEBUG2:   0060:  64 61 72 5f 35 37 32 34  5f 53 69 63 68 61 5f 33
dar_5724_Sicha_3
DEBUG: Invoking FCUnpublish
DEBUG2: RTMP_SendPacket: fd=5, size=34
DEBUG2:   0000:  43 00 00 00 00 00 22 14
C.....".
DEBUG2:   0000:  02 00 0c 64 65 6c 65 74  65 53 74 72 65 61 6d 00
...deleteStream.
DEBUG2:   0010:  40 20 00 00 00 00 00 00  05 00 3f f0 00 00 00 00   @
........?.....
DEBUG2:   0020:  00 00
..
DEBUG: Invoking deleteStream
ERROR: RTMP_ReadPacket, failed to read RTMP packet header
0.000 kB / 0.00 sec
DEBUG: RTMP_Read returned: 0
Download complete
DEBUG: Closing connection.
---

I then tried to switch to a live stream, to see if that would work any
better.
---
/usr/local/bin/rtmpdump --debug -v -r "rtmp://173.208.109.173:1935/play" -a
"play" -f "LNX 10,3,183,7" -W "
http://www.chabad.org/images/multimedia/mediaplayer/player.swf?v=3.0.1.6" -p
"
http://www.chabad.org/therebbe/article_cdo/aid/551143/jewish/14-Adar-5724.htm"
-C B:0 -y
"mp3:vod/vod.chabadorg1/JEM/SichosKodesh/5724/1536563_JEMSK0766_-_14_Adar_5724_Sicha_3"
-o 1536563_JEMSK0766_-_14_Adar_5724_Sicha_3.flv
---

It did start downloading the file, but consistently failed at around 5%
(just about a minute of audio. Here's the error message it gave:
----
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  46 00 00 1a 00 00 69 08
F.....i.
DEBUG2:   0000:  2e ff f3 40 c0 b6 16 39  22 b1 98 d6 b0 92 6c b4
... at ...9".....l.
DEBUG2:   0010:  a6 00 99 f1 39 1b 71 51  ec 89 89 95 2c 89 b1 58
....9.qQ....,..X
DEBUG2:   0020:  7d 5f 1b 02 bc 22 b0 42  ec 56 a8 76 17 18 db 21
}_...".B.V.v...!
DEBUG2:   0030:  6e aa 4d 7f 32 07 fe 05  59 2c b1 4b 0a 83 61 cc
n.M.2...Y,.K..a.
DEBUG2:   0040:  98 d6 a5 32 49 55 2c 77  b2 b5 29 9e a5 79 64 73
...2IU,w..)..yds
DEBUG2:   0050:  1b a9 cf ab 62 d6 b3 bb  57 0a a0 0c 3a 95 a6 be
....b...W...:...
DEBUG2:   0060:  50 03 15 82 de d1 09 13  5f
P......._
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG2:   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............
DEBUG2:   0000:  00 1f 00 00 00 01
......
DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
DEBUG: HandleCtrl, Stream BufferEmpty 1
DEBUG2: RTMP_ReadPacket: fd=5
DEBUG: RTMPSockBuf_Fill, recv returned -1. GetSockError(): 11 (Resource
temporarily unavailable)
ERROR: RTMP_ReadPacket, failed to read RTMP packet header
307.405 kB / 68.20 sec (5.3%)
DEBUG: RTMP_Read returned: 0
Download may be incomplete (downloaded about 5.30%), try resuming
DEBUG: Closing connection.

DEBUG2: RTMP_SendPacket: fd=5, size=34
DEBUG2:   0000:  43 00 00 00 00 00 22 14
C.....".
DEBUG2:   0000:  02 00 0c 64 65 6c 65 74  65 53 74 72 65 61 6d 00
...deleteStream.
DEBUG2:   0010:  40 14 00 00 00 00 00 00  05 00 3f f0 00 00 00 00
@.........?.....
DEBUG2:   0020:  00 00
..
DEBUG: Invoking deleteStream
----

this is where I'm stuck. Changing the buffer size doesn't seem to make any
difference.

Any ideas? Any information I should have included but didn't? Should
rtmpdump have automatically followed the redirect?

Thanks,
Menachem
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20110918/0ac2bbdb/attachment.html>


More information about the rtmpdump mailing list