视频tags的组成: //————————————————————————— tag类型 0×09
tag数据大小 3个字节的视频数据大小
tag时间戳 3个字节tag数据应用的时间(毫秒)
tag时间戳扩展 1个字节的时间戳扩展,让时间戳变成4字节,本字节作为时间戳的高位.
streamID 3个字节的类id,总是0
视频tags的数据
//———————————————————————————————————– 视频tags的数据:
视频tags数据和swf文件格式中的VideoFrame是相似的.他们的数据是一样的
视频格式的数据的组成如下:
帧类型 4bit
1: 关键帧keyframe(视频中的关键帧,数据存储的是整个画面完整的数据,可以提取它来生成图片) 2: 中间帧inter frame(关键帧之间的状态,不完整的画面数据,需要依靠前面帧的数据生成) 3: 可任意使用的中间帧disposable inter frame(H.263 only)
视频编码id 4bit
2: Sorenson H.263(mencoder转换所使用的视频编码) 3: Screen video 4: On2 VP6 5: On2 VP6 with alpha channel 6: Screen video version 2
//—————
视频数据
If CodecID = 2 H263VIDEOPACKET If CodecID = 3 SCREENVIDEOPACKET If CodecID = 4 VP6FLVVIDEOPACKET If CodecID = 5 VP6FLVALPHAVIDEOPAC KET If CodecID = 6 SCREENV2VIDEOPACKET
//——————————————————————————————–
这里说一下Sorenson H.263视频编码以及其数据包:
从swf6开始,flash使用被称作Sorenson H.263的视频编码格式,这种格式基于h.263,一个公开视频编码标准由ITU(国际电信联盟) 提出的.想了解h.263编码格式的朋友可以看 /index.php?_content&task=view&id=123&Itemid=0
但是Sorenson H.263编码和H.263是有差别的: 下面的特性不存在Sorenson H.263中: ■ GOB (group of blocks) layer ■ Split-screen indicator ■ Document camera indicator ■ Picture freeze release ■ Syntax-based arithmetic coding ■ PB frames ■ Continuous-presence multipoint ■ Overlapped pensation 下面的特性是Sorenson H.263增加的: ■ Disposable frames (difference frames with no future dependencies) ■ Arbitrary picture width and height up to 65535 pixels ■ Unrestricted motion vector support is always on ■ A deblocking flag is available to suggest the use of a deblocking filter
//——————————————————————————— H263VIDEOPACKET数据结构:
PictureStartCode UB[17] 和H.263 5.1.1相似 0000 0000 0000 0000 1
Version UB[5] 视频格式版本 Flash Player 6 supports 0 and 1 TemporalReference UB[8] 察看 H.263 5.1.2
PictureSize UB[3] 图像尺寸: 000: custom, 1 byte 001: custom, 2 bytes 010: CIF (352×288) 011: QCIF (176×144) 100: SQCIF (128×96) 101: 320×240 110: 160×120 111: 保留
CustomWidth If PictureSize = 000 UB[8] If PictureSize = 001 UB[16] 否则不存在 注意:UB[16]不一样UI16,这里不是字节交换的 单位是像素
CustomHeight If PictureSize = 000 UB[8] If PictureSize = 001 UB[16] 否则不存在 注意:UB[16]不一样UI16,这里不是字节交换的 单位是像素
PictureType UB[2] 00: intra frame 01: inter frame 10: disposable inter frame 11: reserved DeblockingFlag UB[1] Requests use of deblocking filter (advisory only, Flash Player may ignore) Quantizer UB[5] See H.263 5.1.4 ExtraInformationFlag UB[1] See H.263 5.1.9 ExtraInformation If ExtraInformationFlag = 1 UB[8] Otherwise absent See H.263 5.1.10
The ExtraInformationFlag- ExtraInformation sequence repeats until an ExtraInformationFlag of 0 is encountered
Macroblock MACROBLOCK See following PictureStuffing varies See H.263 5.1.13
//—————————————————————————— 下面的这些数据是视频图像的具体数据,如果想提取图片的话可以研究一下,但我的目的是从中提取视频的舞台大小. 那么CustomWidth和CustomHeight就够了…
至于其它的数据,常用的就是o2 vp6和带alpha通道的o2 vp6格式了.这里就不多提了,我的目的是从flv中提取meta信息,大多的o2 vp6格式的flv已经有了meta信息了…
FLV是一个二进制文件,由文件头(FLV header)和很多tag组成。
tag又可以分成三类:audio,video,script,分别代表音频流,视频流,脚本流(关键字或者文件信息之类)。
详细资料:
/post/flv_format.html
请笑纳...
昨天,有在"阿里云秋季促销活动 轻量云服务器2G5M配置新购年60元"文章中记录到阿里云轻量服务器2GB内存、5M带宽一年60元的活动,当然这个也是国内机房的。我们很多人都清楚备案是需要接入的,如果我们在其他服务商的域名备案的,那是不能解析的。除非我们不是用来建站,而是用来云端的,是可以用的。这不看到其对手腾讯云也有推出两款轻量服务器活动。其中一款是4GB内存、8M带宽,这个比阿里云还要狠。这个真...
Contabo是一家运营了20多年的欧洲老牌主机商,之前主要是运营德国数据中心,Contabo在今年4月份增设新加坡数据中心,近期同时新增了美国纽约和西雅图数据中心。全球布局基本完成,目前可选的数据中心包括:德国本土、美国东部(纽约)、美国西部(西雅图)、美国中部(圣路易斯)和亚洲的新加坡数据中心。Contabo的之前国外主机测评网站有多次介绍,他们家的特点就是性价比高,而且这个高不是一般的高,是...
炭云怎么样?炭云(之前的碳云),国人商家,正规公司(哈尔滨桓林信息技术有限公司),主机之家测评介绍过多次。现在上海CN2共享IP的VPS有一款特价,上海cn2 vps,2核/384MB内存/8GB空间/800GB流量/77Mbps端口/共享IP/Hyper-v,188元/年,特别适合电信网络。有需要的可以关注一下。点击进入:炭云官方网站地址炭云vps套餐:套餐cpu内存硬盘流量/带宽ip价格购买上...