图9. AVB信号的解包过程
图八的AVB数据包合成过程中,本地晶振相对时钟和IEEE1588绝对时钟之间做时基比较和校正,确保时钟上升和下降沿的准确。由这两个时钟运算形成AVB时间戳,用来和流媒体数据进行绑定。那么图八中的模拟流媒体信号为什么还要和晶振时钟相乘呢?这是因为模拟信号在进行AD转换的时候,要必须和采样时钟进行卷积,如果另外再为这个流媒体模拟信号再建一个晶振,那么当这个模数转换后的信号又必须重新和时间戳进行相互校正,反而变得复杂了。所以此处巧妙的利用了生成时间戳的本地晶振信号,直接发出AD卷积所需的采样频率(例如AVB传输音频信号时,会按照IEEE1394格式的48kHz,24bit音频格式进行量化,那么采样频率就直接将AVB时间戳的晶振信号转换到48kHz),这样在数据流信号AD变换以后就可以无缝地和时间戳合并发送了。 图九的过程基本上是和图八相反的过程,接收端接收到的数据和本地晶振时钟做反变换,就可以通过DA变化输出模拟媒体流信号了。 在流媒体时钟的管理上,一个接收点可以接收多达256个独立的媒体时钟。这就意味着一个网络中可以同时存在多达256个完全不同的流媒体文件,例如可以同时存在:48kHz音频采
样数据、44.1kHz音频采样数据以及同步锁相的视频数据流甚至压缩MPEG2视频数据流等等。尽管它们之间采用完全不同的AVB时间戳,但是由于每种不同的AVB数据包可以采用不同的本地晶振进行解包,使得不同数据类型的数据在相同的网络中交叉传递称为了现实。这是二层数据传输时代(如Cobranet,EtherSound技术)所无法超越的。一般地来说,不同采样的音频数据源在进行AD变化的时候,采用不同的采样频率或者转换采样频率不是很困难的事情,但是在很多的实际工程中,视频信号的传递格式确实是五花八门,有压缩的,不压缩的,有高清的,标清的,摄像机以及监控系统等等,所以一个大型传输控制系统能同时兼容不同格式的数据确实显得十分重要。 延时控制上,如果一个流媒体源的接收端横跨在不同的hop上面(也就是不同接收点在网络的不同位置,经过的电缆长度和交换机数量都不相同),那么在接受一个广播的同源信号在会放上能否保持同步呢?这个也是AVB在设计之初已经考虑过的事情了,由于网络的最长容忍延时是2毫秒,所以第一个接收端在收到信号以后不会立刻转换解包,而是要等到网络中所有接收端都在时钟上确认了同步,才会一起向外发送流媒体数据。
关于多播地址配置协议。要求媒体流地址必须是唯一的;其次就是多播流媒体地址必须是2层以上的地址,例如IP、RTP、UDP等;在AVB上可以支持IPv4或者IPv6两种不同的多播地址,以适应未来的需要。
本期我们主要讲述了AVB发送和接受数据流的数据包结构,通过这些包结构和之前的二层传输技术相比,主要区别在:
·系统的延时大大降低至2毫秒以下
·系统的传输质量有QoS保证,包括软件和硬件均支持
·AVB作为流媒体的一个载体,可以传送包括压缩和非压缩等多种音视频流媒体,并能保证同步传输,突破以往的瓶颈
·多达256种不同格式的音视频数据流(包括采样频率)可以在同一个网络中共存传输,而互不干扰
·支持其它3层协议的高级功能
这些特点都表明它将是下一代流媒体文件传输的标准之一,无论是专业还是民用领域,都将展现出它的强大魅力。