RM文件格式分析续
来源:互联网 发布:netgear 网络延迟检测 编辑:程序博客网 时间:2024/05/16 17:10
前面一章中介绍了RM文件的头。由于是初步理解所以文章比较凌乱。
这一章节介绍RM文件的数据单元。
RM文件的数据单元包括一个数据单元头。数据单元头描述数据单元的内容。
接着就是一系列交叉存取的媒体信息包。
Data Chunk Header
标记数据块的开始位置。一般的RM文件通常只有一个数据块。很大的文件,可能由多个数据块。
Data_Chunk_Header
{
UINT32 object_id;
UINT32 size;
UINT16 object_version;
if (object_version == 0)
{
UINT32 num_packets;
UINT32 next_data_header;
}
}
object_id: 数据块头的唯一ID(DATA)。
size: 数据块的大小。
object_version:数据块头对象的版本.
num_packets: 数据块中包的数量。
next_data_header:下一个数据块的开始位置。
Data Packet Header
Media_Packet_Header
{
UINT16 object_version;
if ((object_version == 0) || (object_version == 1))
{
UINT16 length;
UINT16 stream_number;
UINT32 timestamp;
if (object_version == 0)
{
UINT8 packet_group;
UINT8 flags;
}
else if (object_version == 1)
{
UINT16 asm_rule;
UINT8 asm_flags;
}
UINT8[length] data;
}
else
{
StreamDone();
}
这一章节介绍RM文件的数据单元。
RM文件的数据单元包括一个数据单元头。数据单元头描述数据单元的内容。
接着就是一系列交叉存取的媒体信息包。
Data Chunk Header
标记数据块的开始位置。一般的RM文件通常只有一个数据块。很大的文件,可能由多个数据块。
Data_Chunk_Header
{
UINT32 object_id;
UINT32 size;
UINT16 object_version;
if (object_version == 0)
{
UINT32 num_packets;
UINT32 next_data_header;
}
}
object_id: 数据块头的唯一ID(DATA)。
size: 数据块的大小。
object_version:数据块头对象的版本.
num_packets: 数据块中包的数量。
next_data_header:下一个数据块的开始位置。
Data Packet Header
Media_Packet_Header
{
UINT16 object_version;
if ((object_version == 0) || (object_version == 1))
{
UINT16 length;
UINT16 stream_number;
UINT32 timestamp;
if (object_version == 0)
{
UINT8 packet_group;
UINT8 flags;
}
else if (object_version == 1)
{
UINT16 asm_rule;
UINT8 asm_flags;
}
UINT8[length] data;
}
else
{
StreamDone();
}
}
object_version : 媒体数据包头对象的版本号。
length: 数据包的字节数。
stream_number: 用于连接数据包和与之有关的媒体属性头。
timeStamp: 时间戳。
packet_group: 属于哪个组。
flags: 描述这个数据包的属性。
asm_rule: 将ASM rule赋值给这个数据包。
asm_flags: 包含HX_flags.指定流交换指针。
data: 程序指定的媒体数据。
- RM文件格式分析续
- RM RMVB文件格式分析
- RM 文件格式简析
- RM/RMVB文件格式总结
- RM/RMVB文件格式总结
- [rm]realmedia文件格式解析
- RM/RMVB文件格式总结
- RM文件解析之RM文件格式
- RM文件格式之引导单元
- PE文件格式分析及修改(续)
- rm删除命令源码分析
- [翻译]RM文件格式——之一
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- RGB888和565相互转换
- 什么是Struts2
- VB与SQL语句
- zoj 3179 - Calculate With Abacus
- C++ Programming/Optimization
- RM文件格式分析续
- hdu 3835 - R(N)
- 打仗与数数
- HUD 1033
- 修改是否生成领料分录记录:needPicking
- Optimizing C++
- 归档技术的平台支持
- Windows Phone7开发系列视频地址
- 301转向代码合集