zoukankan      html  css  js  c++  java
  • 片(Slice)结构

        为了满足MTU大小的要求,在3G视频传输中对视频进行分片压显得尤其重要。经过分片压缩后的视频码流中通常每个RTP包中包含一个片(也可以对RTP进行分割或合并),一般每个片中包含一个或者几个宏块,以R11P包的大小满足MTU的要求为准。

        对视频流进行分片处理,除了满足通信要求之外,另外一个功能是提高视频流的容错能力。H.264/AVC标准规定,帧内编码块只能在同一片中进行帧内预测。
    这样如果由于传输错误一个片中的数据被丢失,所能影响到只是同一片中的宏块解码,不会影响到同一帧图像中其他片中的宏块解码。将图像划分为多个片,
    当某一片不能正常解码时的空间视觉影响就会大大降低,而且片的头部还提供了重同步点。

        JM参考软件提供了两种分片方式,如图4.2所示,分别是固定码率分片方式和固定宏块分片方式。在固定码率分片方式中,每片所占用的比特数是一定的,由于宏块编码时候的复杂度不一样,每个宏块所占用的比特数也不一样,所以这种编码方式中每片中的宏块数目是不固定的。在固定宏块分片方式,每片中的宏块数目是固定的,从而每片所占用的码率是不固定的。前者有利于减少由MTU太大而引起的分组损失,主要用于对片大小要求比较严格的环境中,如无线网络中;而后者能有效减小网络传输延迟,主要用于有线网络环境中。在EBR编码,对片的大小和其中的宏块数目都有要求,需要有更先进的分片方法。

        在无线信道传输中,片的长度严重影响到视频码流的容错性能。片的长度与RLC-PDU的长度是密切相关的。如果片的长度过大,每片数据需要多个RLC帧来传输。则当其中某一帧数据发生错误时,整片数据将无法恢复。但是,如果片过小,则增加了协议头的开销,不利于整个数据流的传输;另外如果片过小,不利于宏块间的预测,降低了压缩效率。因此,片的大小应当小于或等于RLC-PDU的大小,并且每帧图像至少有2到3片。

  • 相关阅读:
    使用 suspend 和 resume 暂停和恢复线程
    在 Go 语言中使用 Session(一)
    理解Cookie和Session
    Go Iris 中间件
    Go 通道(channel)与协程间通信
    Java终止线程的三种方式
    Go http包执行流程
    Java项目服务器跨域设置
    mysql5.7初始化密码报错 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before
    记录下在阿里云linux上安装与配置Mysql
  • 原文地址:https://www.cnblogs.com/jiangjh/p/2094756.html
Copyright © 2011-2022 走看看