rtmpdump参数详解
rtmpdump是用来处理RTMP流媒体的工具包,支持rtmp://、rtmpt://、rtmpe://、rtmpte://、rtmps://等协议,有Windows、Linux等版本;
一、rtmpdump用法:
二、参数详解:
三、退出状态:
四、参考:
rtmpdump官网:http://rtmpdump.mplayerhq.hu/(官网上有各个版本下载链接)
一、rtmpdump用法:
rtmpdump -r url [-n hostname] [-c port] [-l protocol] [-S host:port] [-a app] [-t tcUrl] [-p pageUrl] [-s swfUrl] [-f flashVer] [-u auth] [-C conndata] [-y playpath] [-Y] [-v] [-d subscription] [-e] [-k skip] [-A start] [-B stop] [-b buffer] [-m timeout] [-T key] [-w swfHash] [-x swfSize] [-W swfUrl] [-X swfAge] [-o output] [-#] [-q] [-V] [-z]
二、参数详解:
参数组 | 参数 | 描述 |
---|---|---|
网 络 参 数 | 这些选项定义如何连接到RTMP流媒体服务器: | |
--rtmp url -r url | RTMP流内容的URL; | |
--host hostname -n hostname | 覆盖RTMP流内容URL的主机地址; | |
--port port -c port | 覆盖RTMP流内容URL的端口号; | |
--protocol num -l num | 覆盖RTMP流内容URL的协议;支持一下值: 0 = rtmp 1 = rtmpt 2 = rtmpe 3 = rtmpte 4 = rtmps 5 = rtmpts | |
--socks host:port -S host:port | 使用指定SOCKS4代理服务器; | |
连 接 参 数 | 这些选项定义RTMP内容连接请求包。如果没有提供正确的值,媒体服务器将拒绝连接尝试: | |
--app app -a app | 连接到RTMP服务器的应用名称,会覆盖RTMP URL中的app; 有时rtmpdump URL无法正确自动解析app名称,这时必须使用该选项; | |
--tcUrl url -t url | 目标流的URL;默认为自定根据参数拼接为: rtmp[e]://host[:port]/app/playpath; | |
--pageUrl url -p url | 媒体嵌入网页的URL; 默认情况下没有被发送的价值; | |
--swfUrl url -s url | 该媒体swf播放器的URL; 默认情况下没有被发送的价值; | |
--flashVer ver -f ver | swf播放器使用的Flash版本; 默认是"LNX 10,0,32,18"; | |
--auth string -u string | 将要添加到连接的身份验证字符串; 使用此选项将添加一个布尔值,然后将指定的字符串; 此选项仅用于特定服务,已过时,请使用“--conn”选项来代替; | |
--conn type:data -C type:data | 在连接参数添加任意AMF数据; 类型必须为: B:布尔值,使用0、1分别表示FLASE、TRUE; N:数字; S:字符串; O:对象,使用1、0分别作为对象的开始、结束标记;对象的子数据、在数据类型前加“N”、并指定值的名称,如:“NB:myFlag:1”;完整对象例子: -C O:1 -C NS:name:爱E族 -C NS:site:aiezu.com -C O:0 Z:“null”; 这选项可以多次使用,构造任意AMF序列。例如: -C B:1 -C S:authMe -C O:1 -C NN:code:1.23 -C NS:flag:ok -C O:0 | |
会 话 参 数 | 这些选项在连接请求成功后生效: | |
--playpath path -y path | 覆盖RTMP URL解析的playpath(播放路径); rtmpdump有时不能正确解析playpath,通过该选项明确指定; | |
--playlist -Y | 在play命令之前发送set_playlist命令; 否则播放列表将会值包含playpath; | |
--live -v | 指定媒体是一个直播流; 直播流没有resuming或seeking的可能; | |
--subscribe stream -d stream | 订阅的实时流名称,默认playpath; | |
--resume -e | 恢复一个不完整的rtmp流下载; | |
--skip num -k num | 恢复时寻找最后一个关键帧跳过的关键帧数; 如果经常尝试恢复失败,这可能有用,默认0; | |
--start num -A num | 流起始点秒数,实时流无效; | |
--stop num -B num | 该流停止点秒数; | |
--buffer num -b num | 设置缓冲时间数毫秒; 默认为36000000; | |
--timeout num -m num | num秒后没有收到任何数据会话超时,默认值120; | |
安 全 参 数 | 这些选项处理额外的身份验证,来自服务器的要求: | |
--token key -T key | 输入安全令牌响应,如果服务器需要使用安全令牌验证; | |
--swfhash hex -w hex | swf文件的SHA256 hash 数值. 如果服务器使用swf验证,该选项会被用到, 看下面“--swfVfy”选项;该哈希值是32字节,并且必须以十六进制表示;始终与“--swfsize” 选项一起使用; | |
--swfsize num -x num | 解压后SWF文件大小,服务器swf验证时可能需要此选项;看下面“--swfVfy”选项;始终与“--swfhash”选项一起使用; | |
--swfVfy url -W url | swf播放器的URL,此选项将替换所以三个“--swfUrl”、“--swfhash”和“--swfsize选项”;使用此选项时,swf播放器将从指定URL检索,并自动计算哈希和大小;此外信息缓存在一个swfinfo文件在用户主目录,所以它在每次rtmpdump运行时,并不需要检索和重新计算;swfinfo记录URL,生成时间,修改SWF文件时间,它的大小,它的哈希,默认情况下,缓冲信息用于30天,然后重新检测; | |
--swfAge days -X days | 指定使用缓存的swf信息天数,然后重新检查,使用0为经常检查,如果检查显示swf具有相同的修改时间戳,它不会被再次检索; | |
其 他 | --flv output -o output | 指定输出文件名; 如果名字是“-”或被省略,流写入到stdout; |
--hashes -# | 显示流百分比进度条; | |
--quiet -q | 制止所以命令的输出; | |
--verbose -V | 详细输出; | |
--debug -z | debug输出级,最详细可输出所有分组数据; | |
--help -h | 查看帮助; |
三、退出状态:
- 0:程序执行完成;
- 1:不可恢复的错误;
- 2:不完全转移,可能会得到进一步恢复;
四、参考:
rtmpdump官网:http://rtmpdump.mplayerhq.hu/(官网上有各个版本下载链接)