2011-04-27 71 views
2

我目前正在使用C++实现一个简单的RTMP服务器,并且我已经阅读了Adobe RTMP规范。我发现这个规范写得不太好,留下了太多的实现细节。有关RTMP的更详细的规范

我还使用WireShark和crtmpserver来检查客户端/服务器发送/接收的数据包,我发现很难确定服务器应该在来自客户端的“play”命令时作出响应。

Adob​​e的规范只使用4个TEXT页面来解释'play'命令,并且服务器部分描述绝对不清楚,因为我监视了使用WireShark和crtmpserver时发送的很多数据包。

谢谢。彼得

+0

订阅认真得到更多的信息,这是荒谬的,我的工作是推动RTMP客户端上,我不知道服务器的响应意味着在所有。 – 2014-11-26 18:16:28

回答

0

我想你跟着里面http://wiki.rtmpd.com/documentation

书面指令可以拖动或通过编辑crtmpserver.lua

例如,拉流推流,下externalStreams添加块

{ 
    uri="rtmp://<address of external server>", 
    localStreamName="mytest", 
    forceTcp=true,  --if true=TCP false=UDP 
    keepAlive=true, --if stream will continuously playback again when it ends 
}, 

然后推流到其他服务器,下targetServers,添加块

{ 
    targetUri="rtmp://<ip/folder of target server>", 
    targetStreamType="live", -- (live, record or append) 
    targetStreamName="mytest", 
    localStreamName="local", 
    keepAlive=true, 
}, 

您还可以通过在www.evostream.com