CN103780345A - System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication - Google Patents
System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication Download PDFInfo
- Publication number
- CN103780345A CN103780345A CN201410027567.8A CN201410027567A CN103780345A CN 103780345 A CN103780345 A CN 103780345A CN 201410027567 A CN201410027567 A CN 201410027567A CN 103780345 A CN103780345 A CN 103780345A
- Authority
- CN
- China
- Prior art keywords
- encoding
- decoding
- buffer
- information
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
技术领域technical field
本发明涉及无线通信技术领域,尤其涉及一种密集通信中实时业务的多缓冲非恒速码传输系统和方法。The invention relates to the technical field of wireless communication, in particular to a multi-buffer non-constant-speed code transmission system and method for real-time services in intensive communication.
背景技术Background technique
移动通信是信息社会的重要基础构架,发展宽带无线移动通信是我国的基本战略需求。同时,随着我国人民在信息社会中文化生活的极大丰富,以及智能手机、平板、笔记本电脑的普及,移动数据业务量几乎呈指数型海量增长。另一方面,随着我国城市化进程的加快,城市人口密集化程度不断升级,而由于土地资源的限制,现代城市的发展正在由平面延伸转向立体延伸,这也使得单位面积上的移动用户数量随楼层和地形高度线性增长,显现出前所未有的密集化趋势,因而对移动通信在单位面积上的频谱效率提出了极大挑战。因此面向移动用户的三维立体化密集覆盖网络成为未来大都市无线通信网络的发展趋势。Mobile communication is an important infrastructure of the information society, and the development of broadband wireless mobile communication is the basic strategic demand of our country. At the same time, with the great enrichment of cultural life of our people in the information society and the popularization of smart phones, tablets, and laptops, the mobile data business volume has almost exponentially increased. On the other hand, with the acceleration of urbanization in our country, the degree of urban population density is constantly upgrading, and due to the limitation of land resources, the development of modern cities is shifting from flat extension to three-dimensional extension, which also makes the number of mobile users per unit area With the linear increase of floor and terrain height, it shows an unprecedented densification trend, which poses a great challenge to the spectral efficiency of mobile communication per unit area. Therefore, the three-dimensional dense coverage network for mobile users has become the development trend of the future metropolitan wireless communication network.
在三维立体化密集覆盖的无线网络环境下,移动多媒体应用将会不断增加,这将对无线实时数据业务如实时视频传输质量提出了更高的要求。然而,国内外文献和专利中大多只考虑理想反馈信道下非恒速编码设计和研究,所以,亟需一种有效抵抗反馈信道非理想性的实时业务传输的系统。In the wireless network environment with three-dimensional dense coverage, mobile multimedia applications will continue to increase, which will put forward higher requirements for wireless real-time data services such as real-time video transmission quality. However, most of the literature and patents at home and abroad only consider the design and research of non-constant-rate coding under ideal feedback channels. Therefore, there is an urgent need for a real-time service transmission system that can effectively resist the feedback channel non-ideality.
发明内容Contents of the invention
本发明所要解决的技术问题之一是需要提供一种密集通信中实时业务的多缓冲非恒速码传输系统,其可有效抵抗反馈信道的非理想性。此外,还提供了一种实时业务的多缓冲非恒速码传输方法。One of the technical problems to be solved by the present invention is to provide a multi-buffer non-constant-speed code transmission system for real-time services in intensive communication, which can effectively resist the non-ideality of the feedback channel. In addition, a multi-buffer non-constant-speed code transmission method for real-time services is also provided.
为了解决上述技术问题,本发明提供了一种密集通信中实时业务的多缓冲非恒速码传输系统,包括:编码端,其设置有多个编码缓冲区,利用多个编码缓冲区对视频流所划分的若干信息组依次进行LT码编码得到多组多缓冲LT码,将所得到的各组多缓冲LT码依次发送,并结合解码反馈信息更新其所对应的编码缓冲区中的信息组;传输介质,包括至少两条通信链路,用于实时传输各组多缓冲LT码;解码端,其设置有多个解码缓冲区,利用各个解码缓冲区对其中累计接收到的每组多缓冲LT码进行LT码解码从而得到对应的信息组,发送关于该组多缓冲LT码的解码反馈信息反馈至所述编码端,并清空对应的解码缓冲区,其中,在一通信链路出现问题时,则切换至其他通信链路进行数据传输,或者选择其他通信链路与该通信链路同时进行数据传输。In order to solve the above-mentioned technical problems, the present invention provides a multi-buffer non-constant-speed code transmission system for real-time services in intensive communication, including: a coding end, which is provided with a plurality of coding buffers, and utilizes a plurality of coding buffers to process video streams The divided information groups are sequentially encoded with LT codes to obtain multiple groups of multi-buffer LT codes, and the obtained groups of multi-buffer LT codes are sent sequentially, and the information groups in the corresponding coding buffers are updated in combination with the decoding feedback information; The transmission medium includes at least two communication links for real-time transmission of each group of multi-buffered LT codes; the decoding end is provided with multiple decoding buffers, and each group of multi-buffered LT codes accumulated and received by each decoding buffer is used. code to perform LT code decoding so as to obtain the corresponding information group, send the decoding feedback information about the group of multi-buffered LT codes back to the encoding end, and clear the corresponding decoding buffer, wherein, when a communication link has a problem, Then switch to another communication link for data transmission, or select another communication link to perform data transmission simultaneously with the communication link.
在一个实施例中,所述通信链路通过面向非链接的可靠传输协议进行通信,其中,所述面向非链接的可靠传输协议基于UDP包和CRC校验构成的删除信道以及多缓冲LT码的编码和解码方法得到。In one embodiment, the communication link communicates through a non-link-oriented reliable transmission protocol, wherein the non-link-oriented reliable transmission protocol is based on an erasure channel composed of UDP packets and CRC checks and multi-buffered LT codes. The encoding and decoding methods are obtained.
在一个实施例中,所述编码端进一步包括:划分单元,其用于将视频流分成若干个相等长度的信息组,并将各个信息组依次排序形成一编码队列,将前设定数量的信息组依次放入各个编码缓冲区中,其中,所述设定数量的信息组个数与编码缓冲区的个数相同,每个信息组被分为K个长度相等的LT数据包;LT码编码单元,其对编码指针当前所指向的编码缓冲区中的K个LT数据包进行LT码编码得到p个编码包,并依次发送所得到的p个编码包,然后,将编码指针指向下一个编码缓冲区,如果当前编码指针指向最后一个编码缓冲区,则将编码指针指向第一个编码缓冲区,其中,编码包的个数p小于LT数据包的个数K;判断单元,其在LT码编码过程中,用于判断是否收到来自所述解码端的解码反馈信息,若接收到所述解码反馈信息,则将未放入编码缓冲区中的且位于编码队列队首的第一组信息组放入与所述解码反馈信息对应的编码缓冲区中,否则返回LT码编码单元继续对编码指针当前指向的编码缓冲区进行LT码编码。In one embodiment, the encoding end further includes: a division unit, which is used to divide the video stream into several information groups of equal length, and sort each information group in turn to form an encoding queue, and divide the previously set number of information Groups are put into each encoding buffer in turn, wherein, the number of information groups of the set number is the same as the number of encoding buffers, and each information group is divided into K LT packets of equal length; LT code encoding unit, which performs LT code encoding on the K LT data packets in the encoding buffer currently pointed to by the encoding pointer to obtain p encoding packets, and sends the obtained p encoding packets in sequence, and then points the encoding pointer to the next encoding Buffer, if the current encoding pointer points to the last encoding buffer, then the encoding pointer points to the first encoding buffer, wherein the number p of encoded packets is less than the number K of LT data packets; During the encoding process, it is used to judge whether the decoding feedback information from the decoding end is received. If the decoding feedback information is received, the first group of information that is not placed in the encoding buffer and is located at the head of the encoding queue Put it into the encoding buffer corresponding to the decoding feedback information, otherwise return to the LT code encoding unit to continue to perform LT code encoding on the encoding buffer currently pointed to by the encoding pointer.
在一个实施例中,所述解码端进一步包括:接收单元,其用于在接收到编码包时,依据从该编码包的包头信息中获取的编码缓冲区信息,将其放入相应的解码缓冲区中;LT码解码单元,其在某个解码缓冲区中的累计接收的编码包的总数大于K时,对该解码缓冲区中的编码包进行LT码解码,如果解码成功,则将解码得到的信息组放入解码队列的队尾并向所述编码端发送解码反馈信息,否则该解码缓冲区继续接收对应的编码缓冲区发送的p个编码包,并对其累计接收的全部编码包进行LT码解码,直至解码成功。In one embodiment, the decoding end further includes: a receiving unit, configured to, when receiving an encoded packet, put it into a corresponding decoding buffer according to the encoding buffer information obtained from the header information of the encoded packet In the area; LT code decoding unit, when the total number of the encoded packets received by it in a certain decoding buffer is greater than K, the encoded packets in the decoding buffer are decoded by LT code, if the decoding is successful, then the decoding will be obtained Put the information group into the tail of the decoding queue and send decoding feedback information to the encoding end, otherwise the decoding buffer will continue to receive p encoding packets sent by the corresponding encoding buffer, and perform The LT code is decoded until the decoding is successful.
根据本发明的另一方面,还提供了一种密集通信中实时业务的多缓冲非恒速码传输方法,包括:编码步骤,设置多个编码缓冲区,利用多个编码缓冲区对视频流所划分的若干信息组依次进行LT码编码得到多组多缓冲LT码,将所得到的各组多缓冲LT码依次发送,并结合解码反馈信息更新其所对应的编码缓冲区中的信息组;传输步骤,通过通信链路实时传输各组多缓冲LT码;解码步骤,设置多个解码缓冲区,利用各个解码缓冲区对其中累计接收到的每组多缓冲LT码进行LT码解码从而得到对应的信息组,发送关于该组多缓冲LT码的解码反馈信息反馈至所述编码端,并清空对应的解码缓冲区,其中,所述通信链路至少为两条,在一通信链路出现问题时,则切换至其他通信链路进行数据传输,或者选择其他通信链路与该通信链路同时进行数据传输。According to another aspect of the present invention, there is also provided a multi-buffer non-constant-speed code transmission method for real-time services in intensive communication, including: an encoding step, setting a plurality of encoding buffers, and using the plurality of encoding buffers to process the video streams The divided information groups are sequentially encoded with LT codes to obtain multiple groups of multi-buffer LT codes, and the obtained groups of multi-buffer LT codes are sent sequentially, and combined with the decoding feedback information to update the corresponding information groups in the coding buffer; Step, real-time transmission of each group of multi-buffer LT codes through the communication link; Decoding step, a plurality of decoding buffers are set, and each group of multi-buffer LT codes received by each decoding buffer is used to decode the LT codes to obtain the corresponding Information group, sending the decoding feedback information about the group of multi-buffered LT codes to the encoding end, and clearing the corresponding decoding buffer, wherein there are at least two communication links, and when a communication link has a problem , switch to another communication link for data transmission, or select another communication link to perform data transmission simultaneously with the communication link.
在一个实施例中,在所述传输步骤中,所述通信链路基于面向非链接的可靠传输协议进行通信,其中,所述面向非链接的可靠传输协议基于UDP包和CRC校验构成的删除信道以及多缓冲LT码的编码和解码方法得到。In one embodiment, in the transmission step, the communication link communicates based on a non-link-oriented reliable transmission protocol, wherein the non-link-oriented reliable transmission protocol is based on the deletion of UDP packets and CRC checks. Channel and multi-buffered LT code encoding and decoding methods are obtained.
在一个实施例中,在所述编码步骤中,进一步包括:步骤710,将视频流分成若干个相等长度的信息组,并将各个信息组依次排序形成一编码队列,将前设定数量的信息组依次放入各个编码缓冲区中,其中,所述设定数量的信息组个数与编码缓冲区的个数相同,每个信息组被分为K个长度相等的LT数据包;步骤720,对编码指针当前所指向的编码缓冲区中的K个LT数据包进行LT码编码得到p个编码包,并依次发送所得到的p个编码包,然后,将编码指针指向下一个编码缓冲区,如果当前编码指针指向最后一个编码缓冲区,则将编码指针指向第一个编码缓冲区,其中,编码包的个数p小于LT数据包的个数K;步骤730,在LT码编码过程中,判断是否收到来自所述解码端的解码反馈信息,若接收到所述解码反馈信息,则将未放入缓冲区中的且位于编码队列队首的第一组信息组放入与所述解码反馈信息对应的编码缓冲区中,否则返回步骤720继续对编码指针当前指向的编码缓冲区进行LT码编码。In one embodiment, the encoding step further includes: step 710, dividing the video stream into several information groups of equal length, sorting each information group in turn to form an encoding queue, and converting the previously set number of information Groups are put into each encoding buffer successively, wherein, the number of information groups of the set quantity is identical with the number of encoding buffers, and each information group is divided into K LT data packets equal in length; Step 720, Carry out LT code encoding to the K LT data packets in the encoding buffer currently pointed to by the encoding pointer to obtain p encoding packets, and send the obtained p encoding packets in sequence, then point the encoding pointer to the next encoding buffer, If the current encoding pointer points to the last encoding buffer, then the encoding pointer is pointed to the first encoding buffer, wherein the number p of encoded packets is less than the number K of LT data packets; step 730, in the LT code encoding process, Judging whether to receive decoding feedback information from the decoding end, if receiving the decoding feedback information, put the first group of information that is not placed in the buffer and is located at the head of the encoding queue into the decoding feedback Otherwise, return to step 720 and continue to perform LT code encoding on the encoding buffer currently pointed to by the encoding pointer.
在一个实施例中,在所述解码步骤中,进一步包括:步骤810,在接收到编码包时,依据从该编码包的包头信息中获取的编码缓冲区信息,将其放入相应的解码缓冲区中;步骤820,在某个解码缓冲区中的所接收的编码包的总数大于K时,对该解码缓冲区中的编码包进行LT码解码,如果解码成功,则将解码得到的信息组放入解码队列的队尾并向所述编码端发送解码反馈信息,否则该解码缓冲区继续接收对应的编码缓冲区发送的p个编码包,并对其所接收的全部编码包进行LT码解码,直至解码成功。In one embodiment, the decoding step further includes: step 810, when receiving the encoded packet, put it into the corresponding decoding buffer according to the encoding buffer information obtained from the header information of the encoded packet In the district; step 820, when the total number of the coded packets received in a certain decoding buffer is greater than K, carry out LT code decoding to the coded packets in the decoding buffer, if the decoding is successful, then the information group obtained by decoding Put it at the end of the decoding queue and send decoding feedback information to the encoding end, otherwise the decoding buffer will continue to receive p encoded packets sent by the corresponding encoding buffer, and perform LT code decoding on all the encoded packets it receives , until the decoding is successful.
在一个实施例中,所述多缓冲LT码的传输速率为:In one embodiment, the transmission rate of the multi-buffer LT code is:
其中,l为总信息组数,K为每个信息组中长度相等的LT数据包的个数,Pm为LT数据包大小,si为第i个信息组解码成功前所接收的多缓冲LT码的组数,p为每个信息组生成的编码包个数,tc是对应于传输数据链路一组多缓冲LT码的传输时间,tdi为第i个信息组解码后反馈信息的到达解码端所需时间。Among them, l is the total number of information groups, K is the number of LT data packets with the same length in each information group, P m is the size of LT data packets, and s i is the multi-buffer received before the ith information group is successfully decoded The number of groups of LT codes, p is the number of encoded packets generated by each information group, t c is the transmission time corresponding to a group of multi-buffered LT codes corresponding to the transmission data link, t di is the feedback information after decoding the i-th information group The time required to reach the decoder.
在一个实施例中,在满足max{tdi}<pmtc-1的前提下,所述多缓冲LT码的传输效率为:In one embodiment, under the premise that max{t di }<pmt c -1 is satisfied, the transmission efficiency of the multi-buffer LT code is:
其中,m为所述编码缓冲区的个数,R为传输数据链路实际传输速度,E(s)为解码成功前所接收的多缓冲LT码的组数的期望。Wherein, m is the number of encoding buffers, R is the actual transmission speed of the transmission data link, and E(s) is the expectation of the number of sets of multi-buffered LT codes received before successful decoding.
与现有技术相比,本发明的一个或多个实施例可以具有如下优点:Compared with the prior art, one or more embodiments of the present invention may have the following advantages:
本发明的多缓冲非恒速码传输系统基于非恒速码进行数据的编码与解码,并且包括至少两条通信链路对信息进行传输,这在链路出现实时性故障时保证了数据传输的连续性;由于采用了编码缓冲区和解码缓冲区,本发明的多缓冲非恒速码更好的克服了非恒数码的延时特性,因此本系统可在密集通信中反馈链路延时较大时或上下行链路不对等反馈链路不理想时对实时数据进行高效可靠传输,并且通信链路之间的切换更加流畅。The multi-buffer non-constant-speed code transmission system of the present invention encodes and decodes data based on non-constant-speed codes, and includes at least two communication links to transmit information, which ensures the accuracy of data transmission when a link has a real-time failure Continuity; due to the use of the encoding buffer and the decoding buffer, the multi-buffer non-constant speed code of the present invention better overcomes the delay characteristics of the non-constant code, so the system can feedback link delays in dense communications. Efficient and reliable transmission of real-time data when there is a large amount of time or when the uplink and downlink unequal feedback links are not ideal, and the switching between communication links is smoother.
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。Additional features and advantages of the invention will be set forth in the description which follows, and in part will be apparent from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
附图说明Description of drawings
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。在附图中:The accompanying drawings are used to provide a further understanding of the present invention, and constitute a part of the description, and are used together with the embodiments of the present invention to explain the present invention, and do not constitute a limitation to the present invention. In the attached picture:
图1是根据本发明一实施例的密集通信中实时业务的多缓冲非恒速码传输系统的框图;1 is a block diagram of a multi-buffer non-constant-speed code transmission system for real-time services in dense communications according to an embodiment of the present invention;
图2是根据本发明一示例的基于多缓冲LT码的编码方法的流程图;Fig. 2 is the flow chart of the encoding method based on multi-buffer LT code according to an example of the present invention;
图3是根据本发明一示例的基于多缓冲LT码的解码方法的流程图;Fig. 3 is a flow chart of a decoding method based on multi-buffer LT codes according to an example of the present invention;
图4是根据本发明一示例的密集通信中实时业务的多缓冲非恒速码传输系统的传输效率在反馈链路具有延时情况下与其他系统的传输效率的比较图;Fig. 4 is a comparison diagram between the transmission efficiency of the multi-buffering non-constant-speed code transmission system of real-time services in intensive communication and the transmission efficiency of other systems under the condition that the feedback link has a delay according to an example of the present invention;
图5是根据本发明一示例的密集通信中实时业务的多缓冲非恒速码传输系统的框架图。Fig. 5 is a frame diagram of a multi-buffer non-constant-speed code transmission system for real-time services in intensive communication according to an example of the present invention.
具体实施方式Detailed ways
为使本发明的目的、技术方案和优点更加清楚,以下结合附图对本发明作进一步地详细说明。In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings.
图1是根据本发明一实施例的密集通信中实时业务的多缓冲非恒速码传输系统(以下简称多缓冲非恒速码传输系统)的框图,图5为根据本发明一示例的多缓冲非恒速码传输系统的框架图,下面以传输视频文件为例,并结合附图来详细说明本系统是如何进行数据传输的。Fig. 1 is a block diagram of a multi-buffer non-constant-speed code transmission system for real-time services in intensive communication (hereinafter referred to as a multi-buffer non-constant-speed code transmission system) according to an embodiment of the present invention, and Fig. 5 is a multi-buffer according to an example of the present invention The frame diagram of the non-constant-speed code transmission system, the following takes the transmission of video files as an example, and describes in detail how the system performs data transmission in combination with the attached drawings.
从图1可以看出多缓冲非恒速码传输系统主要包括编码端10、传输介质20以及解码端30。It can be seen from FIG. 1 that the multi-buffer non-constant-speed code transmission system mainly includes an
编码端10用于将待传输的文件转换为视频流,并基于非恒速码的编码方法对所得到的视频流进行编码。比如,可通过诸如摄像采集装置(比如摄像机)获取视频文件,并通过调用LibVLC库函数对所获取的视频文件进行VLC视频串流编码,从而得到视频流文件。The
具体来说,编码端10中设置有多个编码缓冲区,利用多个编码缓冲区对视频流所划分的若干信息组依次进行LT码编码得到多组多缓冲LT码,将所得到的各组多缓冲LT码依次发送,并结合解码反馈信息更新其所对应的编码缓冲区中的信息组。本实施例中的多缓冲LT码为一种改进的非恒速码。这里所说的解码反馈信息为ACK反馈包。Specifically, the
编码端10进一步包括:划分单元11、LT码编码单元12以及判断单元13。其中,划分单元11用于将视频流分成若干个相等长度的信息组,并将各个信息组依次排序形成一编码队列,将前设定数量的信息组依次放入各个编码缓冲区中,其中,设定数量的信息组个数与编码缓冲区的个数相同,每个信息组被分为K个长度相等的LT数据包。The
对于LT码编码单元12来说,其对编码指针当前所指向的编码缓冲区中的K个LT数据包进行LT码编码得到p个编码包,并依次发送所得到的p个编码包,然后,将编码指针指向下一个编码缓冲区,如果当前编码指针指向最后一个编码缓冲区,则将编码指针指向第一个编码缓冲区,其中编码包的个数p小于LT数据包的个数K。For the LT code encoding unit 12, it carries out LT code encoding to K LT data packets in the encoding buffer currently pointed to by the encoding pointer to obtain p encoded packets, and sends the obtained p encoded packets in sequence, and then, Point the encoding pointer to the next encoding buffer, if the current encoding pointer points to the last encoding buffer, point the encoding pointer to the first encoding buffer, wherein the number p of encoded packets is less than the number K of LT data packets.
判断单元13则在LT码编码过程中判断是否收到来自解码端10的解码反馈信息,若接收到该解码反馈信息,则将未放入编码缓冲区中的且位于编码队列队首的第一组信息组放入与该解码反馈信息对应的编码缓冲区中,否则返回LT码编码单元12继续对编码指针当前指向的编码缓冲区进行LT码编码。The judging unit 13 then judges whether to receive the decoding feedback information from the
对于传输介质20来说,其用于实时传输编码后的视频流,并且至少包括两条通信链路。这使得在一通信链路出现问题时,则切换至其他通信链路进行数据传输,或者选择其他通信链路与该通信链路同时进行数据传输。比如,如果LTE链路由于密集用户的增多,使数据总延时增大,则可改变传输方向,采取WLAN链路传输,由于非恒速编码包等重要性的特点,链路切换具有比较高的流畅性。As for the
请参考图5,在图5的示例中传输介质20包括两条链路,LTE链路和具有中继站的WLAN链路。优选地,通信链路通过面向非链接的可靠传输协议进行通信,其中,该面向非链接的可靠传输协议基于UDP包和CRC校验构成的删除信道以及多缓冲LT码的编码和解码方法得到。在由UDP包和CRC校验构成的删除信道上采用多缓冲LT码的差错控制方式只需要花费少量的计算开销,就可以保证系统实现可靠的传输,并且具有UDP协议高效通信的效果以及非恒速编码信道速率自适应匹配、高误码率通信环境下反馈信道压力小和编码包对等流属性的优点,因此,这种面向非链接的可靠传输协议可在多链路情况下使用。Please refer to FIG. 5 , in the example shown in FIG. 5 , the
解码端30中设置有多个解码缓冲区,利用各个解码缓冲区对其中累计接收到的每组多缓冲LT码进行LT码解码从而得到对应的信息组,发送关于该组多缓冲LT码的解码反馈信息反馈至编码端10,并清空对应的解码缓冲区。比如,解码端30通过以太网从LTE用户端和/或WIFI中接收多缓冲LT码形式的视频流文件,对其进行解码,并实时将解码后的文件传输给VLC播放器,以完成实时播放演示。在此,选取解码缓冲区的个数可大于编码缓冲区的个数,以增加对反馈信息延时的容忍。The decoding
详细地说,解码端30进一步包括:接收单元31和LT码解码单元32。其中,接收单元31用于在接收到编码包时,依据从该编码包的包头信息中获取的编码缓冲区信息,将其放入相应的解码缓冲区中。对于LT码解码单元32来说,其在某个解码缓冲区中的所接收的编码包的总数大于K时,对该解码缓冲区中的编码包进行LT码解码,如果解码成功,则将解码得到的信息组放入解码队列的队尾,并清空该解码缓冲区,此外,还向编码端10发送解码反馈信息,否则该解码缓冲区继续接收对应的编码缓冲区发送的p个编码包,并对其所接收的全部编码包进行LT码解码,直至解码成功。In detail, the decoding
从另一观点来看,本发明还提出了一种多缓冲非恒速码传输方法,下面结合上述多缓冲非恒速码传输系统,对该方法进行详细说明。From another point of view, the present invention also proposes a multi-buffer non-constant-speed code transmission method, which will be described in detail below in conjunction with the above-mentioned multi-buffer non-constant-speed code transmission system.
首先,编码端10设置多个编码缓冲区,利用多个编码缓冲区对视频流所划分的若干信息组依次进行LT码编码得到多组多缓冲LT码,将所得到的各组多缓冲LT码依次发送,并结合解码反馈信息更新其所对应的编码缓冲区中的信息组。First, the encoding
图2是根据本发明一实施例的基于多缓冲LT码的编码方法的流程图,参考图2,下面详细说明编码端10如对视频流进行编码。FIG. 2 is a flow chart of an encoding method based on multi-buffered LT codes according to an embodiment of the present invention. With reference to FIG. 2 , the encoding
如步骤S210所示,划分单元11首先将视频流分成若干相等长度的信息组,并将各个信息组依次排序形成一编码队列,其中,将前设定数量的信息组依次放入各个编码缓冲区中,其中,设定数量的信息组个数与编码缓冲区的个数相同,每个信息组被分为K个长度相等的LT数据包。在步骤S220中,LT码编码单元12对编码指针当前所指向的编码缓冲区中的K个LT数据包进行LT码编码得到p个编码包,并依次发送所得到的p个编码包,然后,将编码指针指向下一个编码缓冲区,如果当前编码指针指向最后一个编码缓冲区,则将编码指针指向第一个编码缓冲区,其中编码包的个数p小于LT数据包的个数K。As shown in step S210, the division unit 11 first divides the video stream into several equal-length information groups, and sorts each information group in turn to form an encoding queue, wherein the previously set number of information groups are sequentially put into each encoding buffer , where the number of information groups of the set number is the same as the number of encoding buffers, and each information group is divided into K LT data packets of equal length. In step S220, the LT code encoding unit 12 performs LT code encoding on the K LT data packets in the encoding buffer currently pointed to by the encoding pointer to obtain p encoded packets, and sends the obtained p encoded packets in sequence, and then, Point the encoding pointer to the next encoding buffer, if the current encoding pointer points to the last encoding buffer, point the encoding pointer to the first encoding buffer, wherein the number p of encoded packets is less than the number K of LT data packets.
详细地说,将一组信息划分为K个长度为P bit的等长LT数据包,然后随机选d个数据包作按位异或运算作为一个LT编码包,可以理解这样的数据包和编码包具有邻接关系。其中,d为编码度数是个随机变量,在工程上,该随机变量采用鲁棒弧度分布:In detail, a group of information is divided into K equal-length LT data packets with a length of P bit, and then d data packets are randomly selected for bitwise XOR operation as an LT encoded packet. It can be understood that such data packets and encoding Packages have an adjacency relationship. Among them, d is the encoding degree, which is a random variable. In engineering, the random variable adopts a robust arc distribution:
其中:
如步骤S230所示,判断单元13在LT码编码过程中判断是否收到来自解码端30的解码反馈信息,若接收到该解码反馈信息,则将未放入缓冲区中的且位于编码队列队首的第一组信息组放入与该解码反馈信息对应的编码缓冲区中,否则返回步骤S220继续对编码指针当前指向的编码缓冲进行LT码编码。比如,如果收到来自某个解码缓冲区的ACK反馈包,则将未放入缓冲区且位于编码队列队首的第一组信息组放入到与该解码缓冲对应的编码缓冲中。As shown in step S230, the judging unit 13 judges whether to receive the decoding feedback information from the decoding
通过以上步骤即可完成编码端10中对视频流文件的多缓冲LT码编码,通过传输介质20中的通信链路实时传输各组多缓冲LT码。其中,通信链路至少为两条,在一通信链路出现问题时,则切换至其他通信链路进行数据传输,或者选择其他通信链路与该通信链路同时进行数据传输。如上所述,本实施例中的通信链路基于面向非链接的可靠传输协议进行通信,该协议基于UDP包和CRC校验构成的删除信道以及多缓冲LT码的编码和解码方法。值得注意的是,若解码缓冲区并没有全部接收到相应的信息组所编码得到的p个编码包,比如只接收到p-2个编码包,此时,解码端30并不向编码端10发送要求其重新发送这p个编码包的请求。Through the above steps, the multi-buffer LT code encoding of the video stream file in the
最后,解码端30也设置多个解码缓冲区,利用各个解码缓冲区对累计接收到的每组多缓冲LT码进行LT码解码得到对应的信息组,发送关于该组多缓冲LT码的解码反馈信息反馈至编码端10,并清空对应的编码缓冲区。Finally, the decoding
图3是根据本发明一实施例的基于多缓冲LT码的解码方法的流程图,参考图3,下面详细说明编码端30如对视频流进行解码。在步骤S310中,接收单元31首先在接收到编码包时,依据从该编码包的包头信息中获取的编码缓冲区信息,将其放入相应的解码缓冲区中。接着,在步骤S320中,在某个解码缓冲区中的所接收的编码包的总数大于K时,LT码解码单元32对该解码缓冲区中的编码包进行LT码解码,如果解码成功,则将解码得到的信息组放入解码队列的队尾,并清空该解码缓冲区,还向编码端10发送解码反馈信息,否则该解码缓冲区继续接收对应的编码缓冲区发送的p个编码包,并对其所接收的全部编码包进行LT码解码,直至解码成功。FIG. 3 is a flow chart of a decoding method based on multi-buffered LT codes according to an embodiment of the present invention. With reference to FIG. 3 , the
具体地,根据包头携带的编码度信息找到度为1的编码包作为解码节点,由于解码节点是其唯一数据邻接包的完全复制,所以根据编码信息可以恢复这一对应邻接数据包。同时,将恢复的数据包与其所有的邻接编码包按位异或并且使这些编码包的度减1,并继续寻找度为1的编码包,如果找到,则重复上面的操作直到所有K个数据包都恢复,即解码成功,如果没有找到则返回解码失败,等待接收更多(下一组p个)包进行再次解码。Specifically, according to the encoding degree information carried in the packet header, an encoded packet with a degree of 1 is found as a decoding node. Since the decoding node is a complete copy of its unique data adjacent packet, this corresponding adjacent data packet can be recovered according to the encoding information. At the same time, bitwise XOR the recovered data packet with all its adjacent coded packets and decrement the degree of these coded packets by 1, and continue to search for coded packets with a degree of 1, if found, repeat the above operation until all K data The packets are all restored, that is, the decoding is successful. If it is not found, it will return the decoding failure, and wait to receive more (the next set of p) packets to decode again.
可以理解,在本实施例中应用中继互补链路以及多缓冲LT码,减小因反馈ACK信息包的延时而给LT编码性能带来的影响,提高传统LT码的传输效率,最终提供稳定可靠的数据传输服务。It can be understood that in this embodiment, the relay complementary link and the multi-buffer LT code are used to reduce the impact on the LT coding performance caused by the delay of the feedback ACK information packet, improve the transmission efficiency of the traditional LT code, and finally provide Stable and reliable data transmission service.
此外,本实施例的多缓冲LT码较之普通LT码具有更佳的传输速率。通过如下公式计算多缓冲LT码的传输速率:In addition, the multi-buffered LT code of this embodiment has a better transmission rate than the common LT code. The transmission rate of the multi-buffer LT code is calculated by the following formula:
其中,l为总信息组数,K为每个信息组中长度相等的LT数据包的个数,Pm为LT数据包大小,si为第i个信息组解码成功前所接收的多缓冲LT码的组数,p为每个信息组生成的编码包个数,tc是对应于传输数据链路一组多缓冲LT码的传输时间,tdi为第i个信息组解码后反馈信息的到达解码端所需时间。Among them, l is the total number of information groups, K is the number of LT data packets with the same length in each information group, P m is the size of LT data packets, and s i is the multi-buffer received before the ith information group is successfully decoded The number of groups of LT codes, p is the number of encoded packets generated by each information group, t c is the transmission time corresponding to a group of multi-buffered LT codes corresponding to the transmission data link, t di is the feedback information after decoding the i-th information group The time required to reach the decoder.
并且,在满足max{tdi}<pmtc-1的前提下,多缓冲LT码传输的传输效率:And, under the premise of satisfying max{t di }<pmt c -1, the transmission efficiency of multi-buffer LT code transmission:
其中,m为编码缓冲区的个数,R为传输数据链路实际传输速度,E(s)为解码成功前所接收的多缓冲LT码的组数的期望。Among them, m is the number of encoding buffers, R is the actual transmission speed of the transmission data link, and E(s) is the expected number of groups of multi-buffered LT codes received before successful decoding.
图4是根据本发明一示例的多缓冲非恒速码传输系统的传输效率在反馈链路具有延时情况下与其他系统的传输效率的比较图。从图4中可看出多缓冲LT码的在反馈链路具有延时的不同信道(比如,理想信道、AWGN信道和衰落信道)中的传输效率均高于传统LT码。Fig. 4 is a diagram comparing the transmission efficiency of the multi-buffer non-constant-rate code transmission system with the transmission efficiency of other systems under the condition that the feedback link has a delay according to an example of the present invention. It can be seen from Fig. 4 that the transmission efficiency of multi-buffered LT codes in different channels (such as ideal channels, AWGN channels and fading channels) with delay in the feedback link is higher than that of traditional LT codes.
综上所述,本实施例的多缓冲非恒速码传输系统基于非恒速码进行数据的编码与解码,并且包括至少两条通信链路对信息进行传输,这在链路出现实时性故障时保证了数据传输的连续性;由于采用了编码缓冲区和解码缓冲区,本发明的多缓冲非恒速码更好的克服了非恒数码的延时特性,因此本系统可在密集通信中反馈链路延时较大时或上下行链路不对等反馈链路不理想时对实时数据进行高效可靠传输,并且通信链路之间的切换更加流畅。To sum up, the multi-buffer non-constant-speed code transmission system of this embodiment encodes and decodes data based on non-constant-speed codes, and includes at least two communication links to transmit information, which will cause real-time failures in the links. The continuity of data transmission is guaranteed at the same time; due to the use of encoding buffer and decoding buffer, the multi-buffer non-constant speed code of the present invention better overcomes the delay characteristics of non-constant code, so this system can be used in intensive communication When the delay of the feedback link is large or when the uplink and downlink are not equal and the feedback link is not ideal, the real-time data can be transmitted efficiently and reliably, and the switching between communication links is smoother.
以上所述,仅为本发明的具体实施案例,本发明的保护范围并不局限于此,任何熟悉本技术的技术人员在本发明所述的技术规范内,对本发明的修改或替换,都应在本发明的保护范围之内。The above is only a specific implementation case of the present invention, and the scope of protection of the present invention is not limited thereto. Any skilled person familiar with the technology should modify or replace the present invention within the technical specifications described in the present invention. Within the protection scope of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410027567.8A CN103780345A (en) | 2014-01-21 | 2014-01-21 | System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410027567.8A CN103780345A (en) | 2014-01-21 | 2014-01-21 | System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103780345A true CN103780345A (en) | 2014-05-07 |
Family
ID=50572225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410027567.8A Pending CN103780345A (en) | 2014-01-21 | 2014-01-21 | System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103780345A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104283640A (en) * | 2014-09-24 | 2015-01-14 | 福建联迪商用设备有限公司 | Method and device for calculating bit error rate of transmitted data |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163038A (en) * | 2007-08-16 | 2008-04-16 | 中兴通讯股份有限公司 | Ethernet equipment link protecting method |
US20080167865A1 (en) * | 2004-02-24 | 2008-07-10 | Matsushita Electric Industrial Co., Ltd. | Communication Device, Signal Encoding/Decoding Method |
CN101562781A (en) * | 2009-05-19 | 2009-10-21 | 华中科技大学 | Self-adapting fountain code multicast transmission system based on modulation |
CN101820586A (en) * | 2010-02-26 | 2010-09-01 | 清华大学 | Method for reliable broadcasting in wireless local area network |
-
2014
- 2014-01-21 CN CN201410027567.8A patent/CN103780345A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080167865A1 (en) * | 2004-02-24 | 2008-07-10 | Matsushita Electric Industrial Co., Ltd. | Communication Device, Signal Encoding/Decoding Method |
CN101163038A (en) * | 2007-08-16 | 2008-04-16 | 中兴通讯股份有限公司 | Ethernet equipment link protecting method |
CN101562781A (en) * | 2009-05-19 | 2009-10-21 | 华中科技大学 | Self-adapting fountain code multicast transmission system based on modulation |
CN101820586A (en) * | 2010-02-26 | 2010-09-01 | 清华大学 | Method for reliable broadcasting in wireless local area network |
Non-Patent Citations (2)
Title |
---|
宋敬彬,孙海滨: "《Linux网络编程》", 31 December 2010 * |
赵少华,陈巍,白铂,牛志升,曹志刚: "一种应用于实时业务的非恒速码传输策略", 《电信科学》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104283640A (en) * | 2014-09-24 | 2015-01-14 | 福建联迪商用设备有限公司 | Method and device for calculating bit error rate of transmitted data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101895376B (en) | Transmission method for realizing data broadcasting in multi-hop wireless network | |
CN101282203B (en) | A Switched Multicast Transmission Method | |
CN102833051B (en) | Fountain coding broadcast method based on feedback | |
CN106254474B (en) | Cooperative caching method of heterogeneous nodes based on fountain code under the Internet of Vehicles | |
CN107147471A (en) | A data transmission optimization method based on linear network coding | |
CN113055285B (en) | Self-adaptive data transmission method based on MPTCP and network coding | |
CN103200088A (en) | Improved type MMRS fixed relay node selection signal transmission method based on fountain encoding | |
Palma et al. | A fountain codes-based data dissemination technique in vehicular ad-hoc networks | |
CN107249203B (en) | A Relay Agent Method for Long-distance Data Communication of Internet of Vehicles Based on Fountain Code | |
CN102882642B (en) | Vehicle ad hoc network real-time multicast method based on distributed fountain code | |
CN105634671A (en) | Communication method based on fountain codes and physical layer network coding | |
WO2012018339A1 (en) | Application of unequal error protection rateless codes in multimedia streaming over multi-path networks | |
CN102142934B (en) | Method for realizing distributed Luby transform (LT) codes on the basis of layering network topology | |
Khalaf et al. | Improving video transmission over heterogeneous network by using ARQ and FEC error correction algorithm | |
CN106100804A (en) | A kind of digital fountain decoding transmission method based on Sr-ARQ | |
Bai et al. | Multi-path transmission protocol in VANET | |
CN103780345A (en) | System and method for multi-buffering non-constant-speed code transmission of real-time service in intensive communication | |
CN101562498B (en) | Coding and decoding transmission method, equipment and system for multi-connection data stream cracking | |
CN106027202A (en) | Multi-rate data distribution method in wireless network based on network coding | |
CN102684893A (en) | Self-adaptive fountain coding method based on multimedia broadcast multicast service | |
CN101562549B (en) | Communication system and method, coding router | |
CN106506120A (en) | Method and system for data transmission in delay-tolerant network based on LT code | |
CN106059711A (en) | Digital fountain code power allocation method based on counter | |
CN101036348A (en) | System and method for improved power efficiency in a shared resource network | |
Huang et al. | An adaptive video streaming scheme for a cooperative fleet of vehicles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140507 |