专利名称:一种基于IEEE 1394b协议和光纤的视频传输控制方法
技术领域:
本发明涉及一种对视频传输信息进行控制的处理方法,更特别地说,是指一种基于IEEE1394b协议和光纤的视频传输控制方法。
背景技术:
IEEE1394-1995协议的前身是苹果公司的火线(FireWire),1995年12月,电气与电子工程师协会(IEEE)正式通过了IEEE-1394串行总线标准。诞生以来,就得到了业界各大公司的大力支持,之后相继推出了IEEE1394-2000和IEEE1394-2002(1394b),尤其是1394b中提出了对光纤传输的支持,这使得1394协议与光纤网络结合在一起,从而使得他的传输速率和范围大大增加,应用领域也因此得到拓展。由于1394协议本身的高速率,支持等时和异步传输模式,支持热插拔等特性,使得它成为最理想的多媒体设备接口,目前在多媒体设备上得到了广泛的应用。1394协议支持等时传输模式可以保证所传输数据的实时性,但是由于等时传输模式的固有特性,它不会对丢失数据包有任何的反应,所以导致视频传输的图像进行重组时可能出现画面的错乱和跳动。
光纤网络具备革新航空电子系统的潜力,可提供高带宽和高水平的综合。其光学器件的无源特性使得网络连接更简单和健壮。另外,商用光纤通信技术由于受到广泛的软、硬件支持且升级快,被逐渐应用到航空航天领域中。光纤网络有潜能构建大容量、抗干扰、配置灵活的新型车辆电子综合系统。跟随航空领域的发展,车辆电子系统的数据传输介质正从铜升级到光纤。
目前,主流的视频设备之间一般采用电缆连接,其传输带宽低于200Mbps,延时达到5s左右,传输距离为10m以内,视频数据易受电磁干扰。视频设备之间的接口采用USB、或者直接模拟信号输出,造成延时高、带宽低的缺陷。
为了获得高实时性高清晰的视频数据,本发明提出一种基于IEEE1394b协议和光纤的视频传输控制方法。
发明内容
本发明的目的是提出一种基于IEEE1394b协议和光纤的视频传输控制方法,该视频传输控制方法利用了IEEE1394b协议的等时传输模式高实时性、以及异步传输模式的高可靠性的特点,结合光纤通讯技术使视频传输的质量和距离得到了较大的提高。
本发明是一种基于IEEE1394b协议和光纤的视频传输控制方法,包括有在光纤总线上实现视频采集的视频发送节点NS,和在光纤总线上实现视频显示的视频接收节点NR;所述视频接收节点NR向所述视频发送节点NS发送等时传输请求信息IR,用于请求所述视频发送节点NS发送视频数据到光纤总线上;所述视频发送节点NS收到请求后,发送视频数据信息D1到光纤总线上,并向所述视频接收节点NR返回响应信息IA,用于通知所述视频接收节点NR自身的运行状态和参数,所述视频数据信息D1的传输采用IEEE1394b协议的等时传输方式。
目前广泛使用的文件传输方法主要是基于TCP/IP协议或者UDP/IP协议,对于网络支持很完善的系统,这是一个不错的选择,但是他需要全面的网络支持,对系统要求相对较高,对于简单的无网络支持或者网络支持不完善的嵌入式系统中,基于上述协议的传输就显得力不从心了。本发明是基于1394b的光线总线的视频传输控制方法建立了一种基于1394b协议的基于请求/响应模型的可靠的视频传输控制方法。该方法不是基于TCP/IP协议或者UDP/IP协议的,而是建立在物理层和链路层之上的。,不需要系统对网络支持。这样使得系统的结构可以大大的简化。由于该方法使用了请求响应模式,所以保证了传输控制的高可靠性。本发明传输控制方法充分利用了1394b协议的等时传输模式,传输视频数据能构保证数据的实时特性,同时1394b协议支持的800M的带宽使得视频图像十分流畅。但是由于1394b等时传输可能丢包,造成图像的错乱,所以本发明方法通过对视频数据信息D1以帧为单位进行编码或解码处理,解决了丢包现象,使视频画面保持流畅。
图1是本发明视频传输控制结构框图。
图2A是一对一互联模式示意图。
图2B是一对多互联模式示意图。
图2C是多对一互联模式示意图。
图2D是多对多互联模式示意图。
图3A是视频接收节点的等时接收控制流程图。
图3B是解析传输响应包PA的流程图。
图4是视频发送节点的等时发送控制流程图。
具体实施例方式
下面将结合附图对本发明作进一步的详细说明。
请参见图1所示,本发明是一种基于光纤总线和IEEE1394b协议的视频传输控制方法,包括有在光纤总线上实现视频采集的视频发送节点NS,和在光纤总线上实现视频显示的视频接收节点NR;所述视频发送节点NS,用于将采集的视频数据信息D1在光纤总线上共享,以及将所述视频数据信息D1进行存储;所述视频接收节点NR,用于从光纤总线上获得所述视频发送节点NS的视频数据信息D1,并将所述视频数据信息D1显示出。
本发明基于光纤总线和IEEE1394b协议的视频传输具体为所述视频接收节点NR向所述视频发送节点NS发送等时传输请求信息IR,用于请求所述视频发送节点NS发送视频数据到光纤总线上;所述视频发送节点NS收到请求后,发送视频数据信息D1到光纤总线上,并向所述视频接收节点NR返回响应信息IA,用于通知所述视频接收节点NR自身的运行状态和参数。
在光纤总线上所述视频发送节点NS与所述视频接收节点NR一般包括有四种互联模式,即一对一、一对多、多对一、多对多,请参见图2A、图2B、图2C和图2D所示。这些互联模式为常规的组网模式,在本发明中无特别之处。
在本发明中,所述视频数据信息D1的传输采用IEEE1394b协议的等时传输模式。所述视频数据信息D1以帧为单位进行编码和解码,其中,一帧视频数据的数据量为BufSize,1394b等时数据包PD的大小为nSize,每一帧视频数据被分割成1394b等时数据包的数量PacCount=BufSize/(nSize-4);其视频编码步骤有(A)打包,根据1394b等时数据包大小nSize对采集的一帧视频数据PD进行分割打包,将有效视频数据nSize-4字节的数据分割成一个数据块;(B)计数,在所述数据块前加上4字节的1394b等时数据包计数,则所述有效视频数据与包计数共占nSize字节。所述1394b等时数据包计数由1开始,每次加一,直到包的数量PacCount,停止计数;然后重复(A)、(B)步骤。其视频解码步骤有(A)在视频接收节点将接收到的视频数据包PD经解码,取出数据包中的前4字节的1394b等时数据包计数,并判断该计数是否连续;若计数连续,则说明没有丢包,直接取出1394b等时数据包中的有效视频数据,将取出的有效视频数据块拼合成整帧,准备显示;若计数不连续,则说明发生了丢包现象,此时根据1394b等时数据包计数可以确定丢包的个数,然后将丢包的位置用0填充,然后再将接收的有效视频数据依次填充,然后准备显示。
在本发明中,所述视频数据信息D1的传输采用IEEE1394b协议的等时传输模式,传输过程以IEEE1394b协议的异步传输模式为基础通过请求响应方式进行控制;所述传输过程的请求开始传输视频数据采用的请求响应方式为步骤A(参见图3A所示)由所述视频接收节点NR发送等时传输请求信息IR,该等时传输请求信息IR通过发送等时传输请求包PR来实现;步骤B(参见图4所示)由所述视频发送节点NS接收到所述等时传输请求包PR,并对所述等时传输请求包PR进行解析请求处理获得请求信息IR;然后根据所述请求信息IR进行自身执行状态判断获得执行状态SE。
所述执行状态SE包括有视频采集发送程序已经运行状态SA和视频采集发送程序未运行状态SB,对应所述视频采集发送程序已经运行状态SA执行操作A,对应未运行状态SB执行操作B;所述A操作为获得当前视频采集发送程序的运行参数,发送出等时传输响应包PA;所述B操作为启动视频采集程序、然后启动等时发送进程,返回等时传输响应包PA;步骤C(参见图3A、3B所示)由所述视频接收节点NR接收到所述等时传输响应包PA,并对所述等时传输响应包PA进行解析响应处理获得响应信息IA,该响应信息IA包括有所述视频发送节点NA的视频数据信息D1已发送状态SSA、所述视频发送节点NS启动视频采集程序、启动等时传输进程成功状态SSB和所述视频发送节点NS启动视频采集程序、启动等时传输进程失败状态SSC三种状态;对应SSA状态,所述视频接收节点NR从所述等时传输响应包PA中获得所述视频发送节点NS的运行状态参数,然后用所述运行状态参数配置所述视频接收节点NR的等时接收进程参数,启动等时接收进程,若启动接收进程成功,则显示视频;若启动接收进程失败,则向所述视频发送节点NS发送停止视频传输的命令,该命令通过发送等时传输命令包PC来实现;对应SSB状态,所述视频接收节点NR启动等时接收进程,若启动接收进程成功,则显示视频;若启动接收进程失败,则向所述视频发送节点NS发送停止等时传输命令,该命令通过发送等时传输命令包PC来实现;对应SSC状态,所述视频接收节点NR向终端设备(可以是显示器)输出错误信息,然后结束程序执行。
等时传输请求包PR的格式为
参数说明PacType包类型。
PacSize包大小。
SrcNodeNum视频接收节点NR的节点标志。
DesNodeNum视频发送节点NS的节点标志。
UID本次操作对应的唯一操作编号,一次操作只对应一个UID。
ChannelNum等时传输通道号,1394b协议规定的等时传输的通道号码。
bTag是否使用Tag标志。
TagTag参数的值。
bSY是否使用SY标志。
SYSY参数的值。
bSync是否使用SyncTime标志。
SyncTime等对传输开始需要等待的时间。
Speed等时传输的速度,1394b协议规定的等时传输的速度。
Format视频数据的格式。
DType数据类型,包中为视频数据。
rsv保留。
注Tag和SY为1394b协议中定义的等时传输参数。
等时传输响应包PA的格式为
参数说明SrcNodeNum视频发送节点NS的节点标志。
DesNodeNum视频接收节点NR的节点标志。
Status视频发送节点NS的执行状态,为SSA,SSB,或者SSC。
未说明的参数意义与等时传输请求包PR相同。
等时传输命令包PC的格式为
参数说明Command命令代码未说明的参数意义与等时传输请求包PR相同。
图3A的说明视频接收节点NR发送等时传输请求包PR,并将包中的UID加入传输队列,之后等待接收视频发送节点NS的等时传输响应包PA,若等待超时,则认为请求失败,将UID从传输队列中清除,输出错误信息,结束本次请求;若没有超时,则将收到查看响应信息的通知,所述通知包含有视频发送节点NS接收到等时传输请求包PR之后的执行状态;所述执行状态包括进程运行SSA,进程成功SSB和进程失败SSC。
若执行状态为进程运行SSA,则视频接收节点NR从等时传输响应包PA中取出所需参数(具体参数参考等时传输响应包PA的格式),并用所述参数配置视频接收程序的参数,然后启动视频接收程序,若启动视频接收程序成功,则结束本次请求,若启动视频接收程序失败,则向视频发送节点NS发送等时传输命令包PC,输出错误信息,并结束本次请求;
若执行状态为进程成功SSB,则启动视频接收程序,若启动视频接收程序成功,则结束本次请求,若启动视频接收程序失败,则向视频发送节点NS发送等时传输命令包PC,输出错误信息,并结束本次请求;若执行状态为进程失败SSC,则输出错误信息,并结束本次请求;图3B的说明视频接收节点NR收到视频发送节点NS发送的等时传输响应包PA,判断所述等时传输响应包PA中的UID是否在传输队列中,若UID在传输队列中,则从传输队列中清除UID,然后判断视频发送节点NS接收到等时传输请求包PR之后的执行状态,并通知等时接收流程查看响应信息IA;若UID不在传输队列中,则说明等时接收流程已经等待超时,此时判断视频发送节点NS接收到等时传输请求包PR之后的执行状态,若执行状态为进程失败SSC,则结束解析过程;若执行状态不是进程失败SSC,则发送等时传输命令包PC,通知视频发送节点NS停止视频发送,然后结束解析过程。
图4的说明视频发送节点NS收到等时传输请求包PR之后更新连接计数,使连接计数加1,然后判断视频发送程序是否已经运行,若程序已经运行,则设置执行状态为进程运行SSA;并将当前视频发送程序的运行参数通过等时传输响应包PA返回给发出请求的视频接收节点NR,然后结束等时传输响应过程;若程序没有运行,则执行启动视频采集设备操作S1,然后执行启动视频发送进程操作S2,上述两种操作S1,S2中任何一个操作失败都设置执行状态为进程失败SSC,否则设置执行状态为进程成功SSB,然后向发出请求的视频接收节点NR发送等时传输响应包PA,然后结束等时传输响应过程。
在本发明中,所述视频数据信息D1的传输采用IEEE1394b协议的等时传输模式,传输过程以IEEE1394b协议的异步传输模式为基础通过请求响应方式进行控制;则所述传输过程的请求结束传输视频数据采用的方式为由所述视频接收节点NR结束视频接收进程,并发送等时传输命令信息IC,该等时传输请求信息IC通过发送等时传输请求包PC来实现;由所述视频发送节点NS接收到所述等时传输命令包PC,并对所述等时传输命令包PC进行解析命令处理获得命令信息IC;
该命令信息是指结束视频传输命令。所述视频发送节点NS获得命令信息后,更新连接计数(计数-1),若连接计数为0,则停止视频发送程序,然后结束命令解析程序;若连接计数不为0,则直接结束命令解析程序。
视频采集节点收到请求包后做响应的处理,并向视频接收节点返回响应状态(成功或者失败),若成功,返回视频发送节点等时传输的配置参数;若失败,返回错误代码。若是由于视频采集节点传输程序已经启动而导致传输失败,则同时返回等时传输的配置参数。视频接收节点根据收到的返回状态确定相应的应对措施。同时基于请求响应方式还可以对视频采集节点进行各种操作控制,但不是本专利申请的范围。
本发明中的符号表示的物理意义为
权利要求
1.一种基于IEEE 1394b协议和光纤的视频传输控制方法,其特征在于包括有在光纤总线上实现视频采集的视频发送节点NS,和在光纤总线上实现视频显示的视频接收节点NR;所述视频接收节点NR向所述视频发送节点NS发送等时传输请求信息IR,用于请求所述视频发送节点NS发送视频数据到光纤总线上;所述视频发送节点NS收到请求后,发送视频数据信息D1到光纤总线上,并向所述视频接收节点NR返回响应信息IA,用于通知所述视频接收节点NR自身的运行状态和参数,所述视频数据信息D1的传输采用IEEE1394b协议的等时传输方式。
2.根据权利要求1所述的视频传输控制方法,其特征在于所述视频数据信息D1以帧为单位进行编码或解码,其中,一帧视频数据的数据量BufSize,包PD的大小nSize,每一帧视频数据被分割成包的数量PacCount=BufSize/(nSize-4);其视频编码步骤有(A)打包,根据包大小nSize对采集的一帧视频数据BufSize进行分割打包,将有效视频数据nSize-4字节的数据分割成一个数据块;(B)计数,根据在所述数据块前加上4字节的数据包计数,所述数据包计数由1开始,每次加一,直到包的数量PacCount,停止计数;然后重复(A)、(B)步骤。其视频解码步骤有(A)在视频接收节点将接收到的视频数据包PD经解码,取出数据包中的前4字节的包计数,并判断该计数是否连续;若计数连续,则说明没有丢包,直接将取出包计数的数据块拼合,准备显示;若计数不连续,则说明发生了丢包现象,此时根据包计数可以确定丢包的个数,然后将丢包的位置用O填充,然后再将接收的数据包去掉前4字节之后依次填充,然后准备显示。
3.根据权利要求1所述的视频传输控制方法,其特征在于所述视频数据信息D1的传输控制过程采用IEEE1394b协议的异步传输方式;所述传输控制过程中的请求开始传输视频数据采用的请求响应方式为步骤A由所述视频接收节点NR发送等时传输请求信息IR,该等时传输请求信息IR通过发送等时传输请求包PR来实现;步骤B由所述视频发送节点NS接收到所述等时传输请求包PR,并对所述等时传输请求包PR进行解析请求处理获得请求信息IR;然后根据所述请求信息IR进行自身执行状态判断获得执行状态SE。所述执行状态SE包括有视频采集发送程序已经运行状态SA和视频采集发送程序未运行状态SB,对应所述视频采集发送程序已经运行状态SA执行操作A,对应未运行状态SB执行操作B;所述A操作为获得当前视频采集发送程序的运行参数,发送出等时传输响应包PA;所述B操作为启动视频采集程序、然后启动等时发送进程,返回等时传输响应包PA;步骤C由所述视频接收节点NR接收到所述等时传输响应包PA,并对所述等时传输响应包PA进行解析响应处理获得响应信息IA,该响应信息IA包括有所述视频发送节点NS的视频数据信息D1已发送状态SSA、所述视频发送节点NS启动视频采集程序、启动等时传输进程成功状态SSB和所述视频发送节点NS启动视频采集程序、启动等时传输进程失败状态SSC三种状态;对应SSA状态,所述视频接收节点NR从所述等时传输响应包PA中获得所述视频发送节点NS的运行状态参数,然后用所述运行状态参数配置所述视频接收节点NR的等时接收进程参数,启动等时接收进程,若启动接收进程成功,则显示视频;若启动接收进程失败,则向所述视频发送节点NS发送停止视频传输的命令,该命令通过发送等时传输命令包PC来实现;对应SSB状态,所述视频接收节点NR启动等时接收进程,若启动接收进程成功,则显示视频;若启动接收进程失败,则向所述视频发送节点NS发送停止等时传输命令,该命令通过发送等时传输命令包PC来实现;对应SSC状态,所述视频接收节点NR向终端设备输出错误信息,然后结束程序执行。
4.根据权利要求3所述的视频传输控制方法,其特征在于等时传输请求包PR的格式为
5.根据权利要求3所述的视频传输控制方法,其特征在于等时传输响应包PA的格式为
6.根据权利要求3所述的视频传输控制方法,其特征在于等时传输命令包PC的格式为
7.根据权利要求1所述的视频传输控制方法,其特征在于所述视频发送节点NS与所述视频接收节点NR包括有一对一、一对多、多对一和多对多四种互联模式。
全文摘要
本发明公开了一种基于IEEE 1394b协议和光纤的视频传输控制方法,包括有在光纤总线上实现视频采集的视频发送节点N
文档编号H04L29/06GK101014121SQ20071006372
公开日2007年8月8日 申请日期2007年2月8日 优先权日2007年2月8日
发明者张春熹, 史洁琴, 杨玉生, 段靖远, 文怀涛 申请人:北京航空航天大学