多媒体概述ppt课件_第1页
多媒体概述ppt课件_第2页
多媒体概述ppt课件_第3页
多媒体概述ppt课件_第4页
多媒体概述ppt课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多媒体技术概述 目录 2 01 3 为什么需要使用流媒体 是指将一连串的媒体数据压缩后 经过网上分段发送数据 在网上即时传输影音以供观赏的一种技术与过程 此技术使得数据包得以像流水一样发送 如果不使用此技术 就必须在使用前下载整个媒体文件 在采用流式传输方式的系统中 用户不必像非流式播放那样等到整个文件全部下载完毕后才能看到当中的内容 4 要实现流式传输 就是要从降低延迟和恢复数据包时序入手 在发送端 为降低延迟 往往对传输数据进行预处理 降低质量和高效压缩 在接收端为了恢复时序 采用了接收缓冲 而为了实现媒体的流畅播放 则采用了播放缓冲 5 起源 1995年4月 位于西雅图的ProgressiveNetwork公司为吸引大量的上网人潮 在网页上放置了一款名为RealAudioSystem流式技术的试用软件 用户只要自备多媒体个人电脑 14 4kbps数据机 它最低只占用14 4kbps的网路频宽 和PPP拨接帐号 就可以在线上点播转播站或是聆听站台所提供的即时播音 流媒体开始正式在互联网上登场亮相 6 02 代表产品 7 8 9 03 10 11 Real timeTransportProtocol是用于Internet上针对多媒体数据流的一种传输层协议 RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式 RTP协议常用于流媒体系统 配合RTCP协议 视频会议和一键通 PushtoTalk 系统 配合H 323或SIP 使它成为IP电话产业的技术基础 RTP用来为IP网上的语音 图像 传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务 RTP为Internet上端到端的实时传输提供时间信息和流同步 但并不保证服务质量 服务质量由RTCP来提供 12 RTP用于在单播或多播网络中传送实时数据 它们典型的应用场合有如下几个 语音通信通过一个多播地址和一对端口来实现 一个用于音频数据 RTP 另一个用于控制包 RTCP 13 如果在一次会议中同时使用了音频和视频会议 这两种媒体将分别在不同的RTP会话中传送 每一个会话使用不同的传输地址 IP地址 端口 如果一个用户同时使用了两个会话 则每个会话对应的RTCP包都使用规范化名字CNAME CanonicalName 与会者可以根据RTCP包中的CNAME来获取相关联的音频和视频 然后根据RTCP包中的计时信息 Networktimeprotocol 来实现音频和视频的同步 14 翻译器用在通过IP多播不能直接到达的用户区 例如发送者和接收者之间存在防火墙 当与会者能接收的音频编码格式不一样 比如有一个与会者通过一条低速链路接入到高速会议 这时就要使用混合器 在进入音频数据格式需要变化的网络前 混合器将来自一个源或多个源的音频包进行重构 并把重构后的多个音频合并 采用另一种音频编码进行编码后 再转发这个新的RTP包 15 RTP的协议层次 从图中可以看出 RTP被划分在传输层 它建立在UDP上 同UDP协议一样 为了实现其实时传输功能 RTP也有固定的封装形式 RTP用来为端到端的实时传输提供时间信息和流同步 但并不保证服务质量 服务质量由RTCP来提供 16 不少人也把RTP归为应用层的一部分 这是从应用开发者的角度来说的 操作系统中的TCP IP等协议栈所提供的是我们最常用的服务 而RTP的实现还是要靠开发者自己 因此从开发的角度来说 RTP的实现和应用层协议的实现没不同 所以可将RTP看成应用层协议 RTP实现者在发送RTP数据时 需先将数据封装成RTP包 而在接收到RTP数据包 需要将数据从RTP包中提取出来 17 一个协议的封装是为了满足协议的功能需求的 从前面提出的功能需求 可以推测出RTP封装中应该有同步源和时戳等字段 更为完整的封装如下图所示 18 版本号 V 2比特 用来标志使用的RTP版本 填充位 P 1比特 如果该位置位 则该RTP包的尾部就包含附加的填充字节 扩展位 X 1比特 如果该位置位的话 RTP固定头部后面就跟有一个扩展头部 CSRC计数器 CC 4比特 含有固定头部后面跟着的CSRC的数目 标记位 M 1比特 该位的解释由配置文档 Profile 来承担 载荷类型 PT 7比特 标识了RTP载荷的类型 序列号 SN 16比特 发送方在每发送完一个RTP包后就将该域的值增加1 接收方可以由该域检测包的丢失及恢复包序列 序列号的初始值是随机的 时间戳 32比特 记录了该包中数据的第一个字节的采样时刻 在一次会话开始时 时间戳初始化成一个初始值 即使在没有信号发送时 时间戳的数值也要随时间而不断地增加 时间在流逝嘛 时间戳是去除抖动和实现同步不可缺少的 同步源标识符 SSRC 32比特 同步源就是指RTP包流的来源 在同一个RTP会话中不能有两个相同的SSRC值 该标识符是随机选取的RFC1889推荐了MD5随机算法 贡献源列表 CSRCList 0 15项 每项32比特 用来标志对一个RTP混合器产生的新包有贡献的所有RTP包的源 由混合器将这些有贡献的SSRC标识符插入表中 SSRC标识符都被列出来 以便接收端能正确指出交谈双方的身份 19 20 实时传输控制协议 Real timeControlProtocol RTCP 与RTP共同定义在1996年提出的RFC1889中 是和RTP一起工作的控制协议 RTCP单独运行在低层协议上 由低层协议提供数据与控制包的复用 在RTP会话期间 每个会话参与者周期性地向所有其他参与者发送RTCP控制信息包 对于RTP会话或者广播 通常使用单个多目标广播地址 属于这个会话的所有RTP和RTCP信息包都使用这个多目标广播地址 通过使用不同的端口号可把RTP信息包和RTCP信息包区分开来 21 1 为应用程序提供会话质量或者广播性能质量的信息RTCP的主要功能是为应用程序提供会话质量或者广播性能质量的信息 每个RTCP信息包不封装声音数据或者电视数据 而是封装发送端 和 或者 接收端的统计报表 这些信息包括发送的信息包数目 丢失的信息包数目和信息包的抖动等情况 这些反馈信息反映了当前的网络状况 对发送端 接收端或者网络管理员都非常有用 RTCP规格没有指定应用程序应该使用这些反馈信息做什么 这完全取决于应用程序开发人员 例如 发送端可以根据反馈信息来调整传输速率 接收端可以根据反馈信息判断问题是本地的 区域性的还是全球性的 网络管理员也可以使用RTCP信息包中的信息来评估网络用于多目标广播的性能 22 2 确定RTP用户源RTCP为每个RTP用户提供了一个全局唯一的规范名称 CanonicalName 标志符CNAME 接收者使用它来追踪一个RTP进程的参加者 当发现冲突或程序重新启动时 RTP中的同步源标识符SSRC可能发生改变 接收者可利用CNAME来跟踪参加者 同时 接收者也需要利用CNAME在相关RTP连接中的几个数据流之间建立联系 当RTP需要进行音视频同步的时候 接受者就需要使用CNAME来使得同一发送者的音视频数据相关联 然后根据RTCP包中的计时信息 Networktimeprotocol 来实现音频和视频的同步 23 3 控制RTCP传输间隔由于每个对话成员定期发送RTCP信息包 随着参加者不断增加 RTCP信息包频繁发送将占用过多的网络资源 为了防止拥塞 必须限制RTCP信息包的流量 控制信息所占带宽一般不超过可用带宽的5 因此就需要调整RTCP包的发送速率 由于任意两个RTP终端之间都互发RTCP包 因此终端的总数很容易估计出来 应用程序根据参加者总数就可以调整RTCP包的发送速率 24 4 传输最小进程控制信息这项功能对于参加者可以任意进入和离开的松散会话进程十分有用 参加者可以自由进入或离开 没有成员控制或参数协调 25 RTCP也是用UDP来传送的 但RTCP封装的仅仅是一些控制信息 因而分组很短 所以可以将多个RTCP分组封装在一个UDP包中 类似于RTP信息包 每个RTCP信息包以固定部分开始 紧接着的是可变长结构单元 最后以一个32位边界结束 根据所携带的控制信息不同RTCP信息包可分为RR 接收者报告包 SR 源报告包 SEDS 源描述包 BYE 离开申明 和APP 特殊应用包 五类5类 26 SR发送端报告包 用于发送和接收活动源的统计信息 发送端报告分组SR SenderReport 用来使发送端以多播方式向所有接收端报告发送情况 SR分组的主要内容有 相应的RTP流的SSRC RTP流中最新产生的RTP分组的时间戳和NTP RTP流包含的分组数 RTP流包含的字节数 27 2 RR 接收者报告包 用于接收非活动站的统计信息 3 SDES 源描述包 用于报告和站点相关的信息 包括CNAME 4 BYE 断开RTCP包 是站点离开系统的报告 表示结束 5 APP 应用特定函数 28 29 30 在SRTP中 发送方和接收方需要为每一个SRTP流维护一份加密状态信息 该信息称为加密环境 一个加密环境ID号由SSRC 目的网络地址和目的传输端口号唯一确定 ContextID 注意 如果不能找到某个加密上下文标识符对应的数据包的加密上下文 数据包必须丢 31 加密环境保存两类参数 分别为变换相关参数和变换无关参数 变换相关参数指与所使用具体加密变换方法和认证变换方法有关的参数 如密码组大小 会话密钥 初始化向量信息数据等 32 变换无关参数包括 1 一个32位的循环计数器 ROC 用来记录16bit的RTP序列号有多少次超过65535后被置位0 根据ROC来产生SRTP数据包索引index 其中index 2 16 ROC SEQ SEQ为RTP数据包序列号 从数据包中获取 2 一个16bit序列号保存接收方接收到的最高RTP序列号 3 加密算法的标识符 标识使用哪种加密算法 4 消息认证算法的标识符 标识使用的哪种认证算法 5 重放列表 若启用了消息认证则接收方需保存一张重放列表 记录最近收到并通过认证的SRTP数据包索引号 该列表长度不得低于256 6 MKI指示器 0 1 标识是否包中有MKI 7 MKI值 如果MKI指示器为1 则保存MKI字段长度 发送方当前使用的KMI值 8 主密钥 需要随机和保密 每个主密钥有以下相关参数 1 主salt 用来从主密钥推导会话秘钥 是个随机数 可以公开 2 密钥推导率 也是用来从主密钥推导会话密钥 是2的幂次方 3 对应的MKI值 4 定义主密钥的存活时间 From To是两个48bit的SRTP包索引号 5 一个计数器 记录用该主密钥处理的SRTP包数量 9 两个非负整数n e和n a来表示加密会话密钥和认证会话密钥的长度 33 SRTP使用两种密钥 主密钥 masterkey 和会话密钥 sessionkey 34 masterkey用来生成相应的sessionkey 一个加密环境可以有多个masterkey 处理某个SRTP包时决定使用哪个masterkey有两种方法 一是在数据包里加MKI字段直接指定 但是这样增加了数据包的长度 加重了网络负担 二是通过加密环境中值为每一个主密钥指定其处理的数据包索引号范围 超过该范围 该主密钥失效 但是此方法只能应用于单向或者双向通行中 在多方通信中不能采用 sessionkey是在加密传输中使用 用于加密变换或者消息认证变换 它由主密钥 主Salt 密钥推导率 会话密钥长度和SRTP索引号决定 35 由于实时传输协议和可以被用来控制实时传输协议的会话的实时传输控制协议 RTPControlProto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论