ActionScript 3:Socket、amf、NetConnection、rtmp……越来越清楚
Posted
技术标签:
【中文标题】ActionScript 3:Socket、amf、NetConnection、rtmp……越来越清楚【英文标题】:ActionScript 3 : Socket, amf, NetConnection, rtmp... Getting clear 【发布时间】:2011-02-22 19:53:29 【问题描述】:谁能帮我理解闪存客户端和服务器之间的二进制数据传输? rtmp 服务器如何工作?服务器和客户端之间如何传输视频?使用 Socket 和 NetConnection 有什么区别? rtmp-server只是支持amf序列化的socket服务器吗?
如果有人向我解释这些方面,我会非常高兴。谢谢!
【问题讨论】:
【参考方案1】:Socket 访问网络会话的低级类,创建 TCP 连接,可以发送原始字节或序列化对象。
AMF flash 对象编码为二进制数据,可以通过网络传输或保存到SharedObject
。只有实现IExternalizable
的公共字段或类被序列化。用元标记[RemoteClass(alias="com.foo.Bar")]
标记它们。
NetConnection 多种协议连接(RTMP、RTMPT、RTMPE 和基于 UDP 的 RTMPF),可以通过远程过程调用发送序列化对象
rtmp-server 是如何工作的?取决于...打开端口并监听来自客户端的 RTMP/TCP 连接。
RTMP服务器提供远程SharedObject,录制从客户端发布的音频/视频NetStream并接收远程过程调用(netConnection.call(handler, ...params))和可以将您的 NetStream 直接重定向到正在播放它的其他客户端/订阅者。
参考:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/Socket.html http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetConnection.html http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStream.html http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/SharedObject.html http://livedocs.adobe.com/flex/3/html/help.html?content=metadata_3.html 或 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/package.html#registerClassAlias()【讨论】:
以上是关于ActionScript 3:Socket、amf、NetConnection、rtmp……越来越清楚的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Actionscript 3 中接收来自 Socket 的命令?
使用 mxml 脚本代码连接 ActionScript 类(Socket)
在actionscript服务器和java客户端之间通过socket发送对象
actionscript socket readBytes() <- java app write() write() write()