flash as 3.0 AMF3编码分析

AMF3是一种紧凑型的二进制编码, 由于是二进制紧凑型的,所以在网络传输中它的效率很高. 但是AMF3它并不是一个压缩型的编码, 一个AMF3数据包其实有很大一部分是描述信息. 通过下面的分析,也许你能明白这一点.
在Socket通讯中,我是这样子做的:

它的解码过程是: 读取short型数据length,然后检测缓冲区数据是否大于length,如果大于length则读取length长个body,再将Body进行解 码,接下来再读取下一个length,再检测Body再将Body解码. 基本上通讯的解码过程都如此,不同的是,有些编解码是通过回车符或是特殊字符来处理. 其实AMF3的编码跟这个也有相似的地方,它的最细小的定义是:

这里的Type指的是一个AS3的数据类型, 如Number或是String等,而Value就是指这个type的数据内容,因为通常简单的数据类型的长度是可确定的,如int型是占四个字节,或是short只占两个字节.对于字符串类型,它的定义是:

这里的这个Length是一个short型,它占两个字节,最大可传输2的16乘方个字节的字符串. 基础的就这些了.

时间: 2025-01-31 09:16:59

flash as 3.0 AMF3编码分析的相关文章

(DirectX系列09)DirectShow EDS应用编码分析

(DirectX系列09)DirectShow EDS应用编码分析 DES (DirectShow Editing Services),是一套基于DirectShow核心框架的编程接口.DES的出现,简化了视频编辑任务,弥补了DirectShow对于媒体文件非线性编辑支持的先天性不足.但是,就技术本身而言,DES并没有超越DirectShow Filter架构,而只是DirectShow Filter的一种增强应用. 本章通过DirectX 下timelinetest为例子详细介绍Eds应用编码

(DirectX系列06)DirectShow 字符叠加Filter编码分析

(DirectX系列06)DirectShow 字符叠加Filter编码分析 在很多视频播放的软件当中,字幕的处理是免不了的,有些可能本身已经加载到图像当中未做处理,但大部分都是通过字符叠加来进行处理的.DirectShow 的字符叠加Filter在这些软件中都扮演这绝佳的作用.这一节来介绍DirectShow字符叠加Filter编码的实现,如下详细介绍: 这个Filter的大概作用是在视频流指定的一段时间内进行字符叠加,字符字体.大小.颜色都进行控制,普遍支持RGB 的各种编码格式,同时实现字

Flash Player v23.0.0.205发布:修复Google员工发现的零日漏洞

Adobe公司于今天推出Flash Player Version 23.0.0.205版本,修复了由两名Google工程师发现的"关键"级别安全漏洞,要求用户尽快完成升级.微软Edge和IE版本已经嵌入Flash,因此将会在下个Windows安全更新中自动修复这个问题,Chrome浏览器同样内嵌Flash,因此升级至最新版本能够修复这个问题.其他浏览器用户.Linux发行版本和Mac OS X用户推荐手动下载和安装最新Flash. 访问安装:Flash Player v23.0.0.2

《LINUX3.0内核源代码分析》第二章:中断和异常 【转】

转自:http://blog.chinaunix.net/uid-25845340-id-2982887.html 摘要:第二章主要讲述linux如何处理ARM cortex A9多核处理器的中断.异常.介绍了中断向量表的入口.通用的中断处理代码.中断和软中断.延迟处理.中断异常的返回过程. 第二章内容较多,会分几个部分讲述.本部分主要讲进入.退出中断的过程,这部分代码涉及的都是汇编部分.   法律声明:<LINUX3.0内核源代码分析>系列文章由谢宝友(scxby@163.com)发表于ht

Flash AtionScrip 3.0制作逼真的雪花飘飘的gif动画效果

  本例为用Flash AtionScrip 3.0制作逼真的雪花飘飘的gif动画效果教程,常常从网上的动画中看到大雪纷飞的场面,看到雪花从天空中拖曳而下,真有一种身临其境的感觉呢?但主要是用AtionScrip 2.0制作,现在我们用AtionScrip 3.0来制作雪景效果. 效果演示: 一.制作雪花元件 1.打开 Flash9.0,新建Flash文档选择AtionScrip 3.0.背景色为深蓝,舞台大小为 550×400.然后按下 Ctrl+F8,新建一个影片剪辑元件"雪花",

Flash lite 2.0 实战之一安装篇

新年新礼物 flash lite 2.0 盼星星盼月亮终于出来啦,具体得到flash lite 2.0程序的方法已经有很多我不再重温 申请连接 废话少说马上进入正题: 下面介绍的是 flash lite 2.0程序 在N机(3230) 上面的安装使用过程和实际测试执行效能 1. 这是已经下载的flash_355xxxxxxx.SIS 文件(flash lite2.0 for 3230文件体积492kb) 开发"> 2. copy flash_355xxxxxxx.SIS 文件 to 手机存

Flash 8中文版安装Flash Lite 2.0

中文 Flash Lite 2.0 for Flash Professional 8 最新更新今天发布了,下载地址. Flash Professional 8 中文版上能安装 Flash Lite 2.0 吗?当然可以,虽然目前只有Flash Lite 2.0英文版. 假设Flash 8安装在C盘默认目录下,找到下面两个的目录:C:\Documents and Settings\All Users\Application Data\Macromedia\Flash 8C:\Program Fil

Flash Lite 2.0的新功能和误会

因为Flash Lite 2.0已经开卖,所以可以讲一下Flash Lite 2.0一些我认为有意思的新功能,依照重要程度排列:     Unicode:动态文字可以展示中文,在我们华文地区来说,非常重要! Mobile Shared Object (MSO):即PC上LSO,可以储存资料到手机,不用再为游戏储存等问题寻求其他Fscommand Flash2File的解决方法. 可以LoadMovie载入图像档案,不用再寻求JPG2SWF等工具在Server先转换,由于Decode能力借助手机支

Flash Lite 2.0 新功能介绍

1,支持 ActionScript 2.0 该和Flash 4的AS语法(tellTarget)说再见了,现可用流行的点语法和OOP方法编程. 2,视频回放 Flash Lite 2 的视频回放是基于手机自身的视频渲染程序就是说只要是手机支持的视频格式(3gp,mpg),就都可以在Flash中播放,这点比PC上更好. 3,解析外部XML 可使用Flash 7(MX2004)的XML对象,访问和解析外部XML文件. 4,本地数据访问 可以在手机上保存文件了,即使用本地共享对象(SharedObje