[rtmpdump] please help

NhJm nhjm449 at gmail.com
Thu May 1 17:03:32 CEST 2014


Adding in --realtime (-R) should help.

Without it, rtmpdump tries to pause/unpause the stream when it sees an
empty buffer, and the server doesn't seem to like that.


On Sun, Apr 20, 2014 at 2:43 PM, Zeev Tarantov <zeev.tarantov at gmail.com>wrote:

> This page plays a video stream:
>
> http://www.imeche.org/video-pay/reaction-engines
>
> I've used rtmpsrv to generate this command:
>
> rtmpdump -r "rtmp://lbw.flash.streamuk.com:1935/StreamConnectOnDemand" -a
> "StreamConnectOnDemand" -f "LNX 11,2,202,350" -W "
> http://scpro.streamuk.com/flash/main.swf?wId=f1993e8ab2520fbf0000482f41f21d8421c94cb187a250564457af39000000660000000053547ff241f2&wowLoad=true&updateTime=3000&playerroot=http://scpro.streamuk.com/flash/skins/&baseUrl=http://api.scpro.streamuk.com/&skinName=playerWhite_wide"
> -p "http://scpro.streamuk.com" -y
> "mp4:102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4"
> -o
> 20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.flv
>
> To which I've appended "-e -V".
>
> When invoked, rtmpdump begins to download the stream but it stops and
> starts downloading from many seconds before, and it never progresses much
> into the stream while it keeps appending sections it has downloaded already
> to the output file.
>
> Compiling from git does not change this behavior.
>
> Sample output:
>
> 72128.094 kB / 107.52 sec (2.3%)
> DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
> DEBUG: HandleCtrl, Stream BufferEmpty 1
> DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
> DEBUG: HandleCtrl, Stream BufferReady 1
> DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
> DEBUG: HandleCtrl, Stream BufferEmpty 1
> DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
> DEBUG: HandleCtrl, Stream BufferReady 1
> DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
> DEBUG: HandleCtrl, Stream BufferEmpty 1
> DEBUG: HandleCtrl, received ctrl. type: 1, len: 6
> DEBUG: HandleCtrl, Stream EOF 1
> DEBUG: RTMP_ClientPacket, received: invoke 302 bytes
> DEBUG: (object begin)
> DEBUG: Property: NULL
> DEBUG: (object begin)
> DEBUG: Property: <Name:              level, STRING:    status>
> DEBUG: Property: <Name:               code, STRING:
> NetStream.Pause.Notify>
> DEBUG: Property: <Name:        description, STRING:    Pausing
> 102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4.>
> DEBUG: Property: <Name:            details, STRING:
> 102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4>
> DEBUG: Property: <Name:           clientid, NUMBER:    1656645808.00>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: HandleInvoke, server invoking <onStatus>
> DEBUG: HandleInvoke, onStatus: NetStream.Pause.Notify
> DEBUG: RTMP_SendPause, 0, pauseTime=15948
> DEBUG: Invoking pause
> DEBUG: HandleCtrl, received ctrl. type: 4, len: 6
> DEBUG: HandleCtrl, Stream IsRecorded 1
> DEBUG: HandleCtrl, received ctrl. type: 0, len: 6
> DEBUG: HandleCtrl, Stream Begin 1
> DEBUG: RTMP_ClientPacket, received: invoke 306 bytes
> DEBUG: (object begin)
> DEBUG: Property: NULL
> DEBUG: (object begin)
> DEBUG: Property: <Name:              level, STRING:    status>
> DEBUG: Property: <Name:               code, STRING:
> NetStream.Unpause.Notify>
> DEBUG: Property: <Name:        description, STRING:    Unpausing
> 102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4.>
> DEBUG: Property: <Name:            details, STRING:
> 102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4>
> DEBUG: Property: <Name:           clientid, NUMBER:    1656645808.00>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: HandleInvoke, server invoking <onStatus>
> DEBUG: HandleInvoke, onStatus: NetStream.Unpause.Notify
> DEBUG: RTMP_ClientPacket, received: invoke 223 bytes
> DEBUG: (object begin)
> DEBUG: Property: NULL
> DEBUG: (object begin)
> DEBUG: Property: <Name:              level, STRING:    status>
> DEBUG: Property: <Name:               code, STRING:
> NetStream.Play.Start>
> DEBUG: Property: <Name:        description, STRING:    Started playing
> 102/18479/20f15b96-3a0e-4f72-bfcc-67b5b58c4839_f2099c8a-150d-4c88-b26a-0c18f25214e5.mp4.>
> DEBUG: Property: <Name:           clientid, NUMBER:    1656645808.00>
> DEBUG: Property: <Name:         isFastPlay, BOOLEAN:    FALSE>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: HandleInvoke, server invoking <onStatus>
> DEBUG: HandleInvoke, onStatus: NetStream.Play.Start
> DEBUG: RTMP_ClientPacket, received: notify 24 bytes
> DEBUG: (object begin)
> DEBUG: (object end)
> DEBUG: ignoring too small audio packet: size: 0
> DEBUG: RTMP_ClientPacket, received: notify 44 bytes
> DEBUG: (object begin)
> DEBUG: (object begin)
> DEBUG: Property: <Name:               code, STRING:
> NetStream.Data.Start>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: RTMP_ClientPacket, received: notify 604 bytes
> DEBUG: (object begin)
> DEBUG: (object begin)
> DEBUG: Property: <Name:          trackinfo, OBJECT>
> DEBUG: (object begin)
> DEBUG: (object begin)
> DEBUG: Property: <Name:           language, STRING:    eng>
> DEBUG: Property: <Name:          timescale, NUMBER:    25.00>
> DEBUG: Property: <Name:             length, NUMBER:    114110.00>
> DEBUG: Property: <Name:  sampledescription, OBJECT>
> DEBUG: (object begin)
> DEBUG: (object begin)
> DEBUG: Property: <Name:         sampletype, STRING:    avc1>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: (object begin)
> DEBUG: Property: <Name:           language, STRING:    eng>
> DEBUG: Property: <Name:          timescale, NUMBER:    22050.00>
> DEBUG: Property: <Name:             length, NUMBER:    100640768.00>
> DEBUG: Property: <Name:  sampledescription, OBJECT>
> DEBUG: (object begin)
> DEBUG: (object begin)
> DEBUG: Property: <Name:         sampletype, STRING:    mp4a>
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: (object end)
> DEBUG: Property: <Name:      audiochannels, NUMBER:    2.00>
> DEBUG: Property: <Name:    audiosamplerate, NUMBER:    22050.00>
> DEBUG: Property: <Name:     videoframerate, NUMBER:    25.00>
> DEBUG: Property: <Name:             aacaot, NUMBER:    2.00>
> DEBUG: Property: <Name:           avclevel, NUMBER:    30.00>
> DEBUG: Property: <Name:         avcprofile, NUMBER:    100.00>
> DEBUG: Property: <Name:       audiocodecid, STRING:    mp4a>
> DEBUG: Property: <Name:       videocodecid, STRING:    avc1>
> DEBUG: Property: <Name:              width, NUMBER:    640.00>
> DEBUG: Property: <Name:             height, NUMBER:    360.00>
> DEBUG: Property: <Name:         frameWidth, NUMBER:    640.00>
> DEBUG: Property: <Name:        frameHeight, NUMBER:    360.00>
> DEBUG: Property: <Name:       displayWidth, NUMBER:    640.00>
> DEBUG: Property: <Name:      displayHeight, NUMBER:    360.00>
> DEBUG: Property: <Name:          framerate, NUMBER:    25.00>
> DEBUG: Property: <Name:       moovposition, NUMBER:    1170677745.00>
> DEBUG: Property: <Name:           duration, NUMBER:    4564.40>
> DEBUG: (object end)
> DEBUG: (object end)
> INFO: Metadata:
> INFO: trackinfo:
> INFO:   language              eng
> INFO:   timescale             25.00
> INFO:   length                114110.00
> INFO: sampledescription:
> INFO:   sampletype            avc1
> INFO:   language              eng
> INFO:   timescale             22050.00
> INFO:   length                100640768.00
> INFO: sampledescription:
> INFO:   sampletype            mp4a
> INFO:   audiochannels         2.00
> INFO:   audiosamplerate       22050.00
> INFO:   videoframerate        25.00
> INFO:   aacaot                2.00
> INFO:   avclevel              30.00
> INFO:   avcprofile            100.00
> INFO:   audiocodecid          mp4a
> INFO:   videocodecid          avc1
> INFO:   width                 640.00
> INFO:   height                360.00
> INFO:   frameWidth            640.00
> INFO:   frameHeight           360.00
> INFO:   displayWidth          640.00
> INFO:   displayHeight         360.00
> INFO:   framerate             25.00
> INFO:   moovposition          1170677745.00
> INFO:   duration              4564.40
> 72168.526 kB / 43.48 sec (0.9%)
> DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
> DEBUG: HandleCtrl, Stream BufferReady 1
> DEBUG: ignoring too small video packet: size: 2
> 74525.246 kB / 43.48 sec (0.9%)
> DEBUG: ignoring too small video packet: size: 2
> DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
> DEBUG: HandleCtrl, Stream BufferEmpty 1
> DEBUG: RTMP_SendPause, 1, pauseTime=15960
> DEBUG: Invoking pause
> DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
> DEBUG: HandleCtrl, Stream BufferReady 1
> 74632.546 kB / 43.76 sec (0.9%)^C
>
> See, it reached 107.52 sec into the stream and then it began to download
> from 43.76 sec into the stream.
>
> The stream plays fine in Firefox using the flash player. It skips a bit,
> but it is progressing. I hoped rtmpdump would be able to wait for packets
> that take too long to arrive and to ask for lost packets to e transmitted
> again, enabling me to download a complete copy. But as-is, rtmpdump is
> useless.
>
> Instead of asking for my money back, can anybody help? Are there arguments
> I can try? Are there patches I can try?
>
> _______________________________________________
> rtmpdump mailing list
> rtmpdump at mplayerhq.hu
> https://lists.mplayerhq.hu/mailman/listinfo/rtmpdump
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20140501/f5418684/attachment-0001.html>


More information about the rtmpdump mailing list