CN1185061A - 变长编码数据传输装置、发射机和接收机侧装置及其用法 - Google Patents
变长编码数据传输装置、发射机和接收机侧装置及其用法 Download PDFInfo
- Publication number
- CN1185061A CN1185061A CN97123159A CN97123159A CN1185061A CN 1185061 A CN1185061 A CN 1185061A CN 97123159 A CN97123159 A CN 97123159A CN 97123159 A CN97123159 A CN 97123159A CN 1185061 A CN1185061 A CN 1185061A
- Authority
- CN
- China
- Prior art keywords
- data block
- variable length
- data
- header
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
- H04J3/0605—Special codes used as synchronising signal
Abstract
为发送变长编码数据块同时减少错码引起的数据损失,控制电路7将多个变长编码数据编组,定长电路9使每一个这样编组的变长编码数据块的码长固定,使得每一个数据块具有平均码长并把这些数据块编成一组,报头输出电路8准备包括有关编组的数据块和同步字的信息的报头,控制电路7控制开关SWC,通过输出端子2输出准备好的报头和数据块组。在译码侧参照报头中同步字的位置和有关数据块的信息,获得数据块组的码长和数据块的个数,对数据块进行同步/译码。
Description
本发明涉及变长编码数据传输装置、发射机侧装置、接收机侧装置及其用法,用来传输编码成具有可变位长度的数据块,而同时减少可能由于错码而出现的数据丢失。
变长编码是一种编码方法,其中具有不同的位长度的编码字按照每个数据项的出现频率分别赋予不同的数据,以便减少码的总量。因此,尽管经过变长编码处理的码的码长度和结束位置彼此不同,但是,只要位序列被正确地读出,各个码还是有可能被正确译码的,而各个码的结束点也有可能被正确地识别,因为译码是当位是在相当于特定码的长度处读出的时刻进行的。
若在变长编码数据的传送过程中出现错码,则在译码侧编码数据就会象具有不同码长那样被错误地译码。结果,当被读出的位序列出现失去同步时,即使不出现错码,也会以错误的方式连续地进行译码。这事实上显著地减低了译码数据的质量。
作为防止错码引起的这种失去同步的有害作用的一种方法,已知有David Redmill在1995年4月第二届国际汽车多媒体通信会议(2ndInternational Workshop on Mobile Multimedia communication-MoMuC)上发表的题为”影象和视频编码的健壮结构”的文章或DavidRedmill和N.G.Kingbury在IEEE Trans.Image Processing杂志1996,April,Vol.5,565-574页上发表的题为”变长数据块编码用的出错复原技术”一文讨论的方法,其中为每组变长编码数据块将数据块重新组织成伪定长码,使得任何选定的一组中每个数据块的码都变得长度相等,然后发送每一个这样的数据块。
在这些文章提出的方法中,在编码侧数据块被重新组织成伪定长数据块,然后将这些数据块译码,并利用上述变长码的性质或特性检测每个码字和每个数据块的结束位置,以便将数据块重新构造成为原来的具有可变长度的数据块。
这样,即使由于错码而失去同步,通过以具有定长的数据块的形式发送数据,也能在每个数据块的头部恢复同步。
还已知另一篇日本专利申请No.43118/1996题为”变长编码数据传送装置”,它根据上述文章提出的方法提出一种有效地防止由于错码而失去同步的有害作用。为了避免或减轻上述文章提出的方法所固有的这样的问题,即若在变长编码数据块的各组中存在一个码长度明显地大于其他变长编码数据块的数据块,对于这特定的数据块错码会更多,上述日本专利申请书提出的方法,通过把分割编码长度长得多的数据块的方法与选择数据块组的方法结合,使错码对编码成具有可变长度的数据造成的有害作用得以减轻。
但是,不论是在上述文章提出的方法的情况下,还是在上述日本专利申请提出的方法的情况下,为了在译码侧把被构造成伪定长码的数据块重新构造成原来的变长编码的数据块,必须与关于数据块的信息一起,传输关于具有固定长度的数据块的码长度和数据块个数的信息。
因此,传输的信息量相应增大了。另外,若错码出在那些信息上,就不可能构造变长编码的数据块,或者重新构造是以错误的方式进行的。结果这组数据块整个地丢失了。
此外,采用上述申请提出的方法时,要对具有长的编码长度的数据块进行分割,并对数据块组进行选择。在这种情况下,与关于数据块的信息一起,还需要发送关于数据块分割的和组的选择的信息。因此,即使在错码出在这些信息成分上的情况下,数据块的重新构造也会变得不可能,或者重新组织是以错误的方式进行的。
此外,采用重新组织成伪定长码的方法时,对每一个码进行译码,并检测每一个编码字和每一个数据块的结束位置,以便如上所述地从具有固定长度的数据块重新构造原来的具有可变长度的数据块。这时,若由于出现错码,指示数据块结束的编码字被译码成不同的编码字,或者将其他编码字译码成指示数据块结束的编码字,得到的将是不正确的变长编码数据块。但是,正确译码的数据块与不正确译码的数据块实际上是无法区分的,所以,在那种情况下就把不正确的数据块输出了。
鉴于上述问题,本发明的第一个目的是提供一种变长编码数据传输装置、发射机侧装置、接收机侧的装置以及它们的方法,其中无需那些偶然出现错码就会造成致命有害作用的外加信息,就能采用上述重新组织伪定长码数据块的方法,并能减小错码的这种有害作用。
本发明的第二个目的是,即使在不使用外加信息的情况下,也能避免在准备重新组织成伪定长码的变长编码数据块组中间存在码长明显地长于其他变长编码数据块的数据块而引致的问题。
本发明的第三个目的是,在不使用外加信息的情况下,避免与重新组织成伪定长码用的方法有关的信息的偶然丢失(bringing-outof)。
本发明的第四个目的是,在采用组织成伪定长码用的上述方法的情况下,在译码侧由于出现错码而获得被不正确地重新构造的变长编码数据块时,防止输出不正确的数据块。
为了达到上述目的,按照本发明,提供了一种变长编码数据发送装置,它包括第一编组装置,用来对多个变长编码数据进行编组;第二编组装置,用来使每一个这样编组的变长编码数据块的长度固定,使得每一个数据块具有平均码长,然后在这种条件下对数据块进行编组;报头准备装置,用来准备包括至少一个同步字的报头;输出装置,用来输出由报头信息准备装置准备的报头和由第二编组装置编组的数据块组;输入装置,用来输入由输出装置输出的报头和数据块组;以及同步/译码装置,用来以这样输入的报头中同步字的位置为基准,对每一个数据块进行同步/译码。
图1是方框图,表示按照本发明第一实施例用在动画编码发送上的编码装置的配置;
图2是表示重新组织伪定长码的操作模型的概念视图;
图3是用来解释从编码装置输出的编码数据的状态的示意图;
图4是方框图,表示第一实施例用的译码装置的配置;
图5是方框图,表示按照本发明第二实施例用在动画编码发送上的编码装置的配置;
图6是方框图,表示第二实施例用的译码装置的配置;
为了便于理解本发明,现将描述实施本发明用的两个模式。但应指出,这样的实施例只表示实施本发明用的模式而已,本发明不应限制在这些实施例上。相反,如有必要,在不离开本发明的范围的情况下,可以作出不同的改变。
1.实施本发明用的第一模式
首先,描述实施本发明用的第一模式,其中本发明应用于一种动画编码发送装置。图1是方框图,表示按照该第一模式或实施例的编码装置的配置。该编码装置将从输入端1输入的动画数据压缩和编码,使变长编码的数据变得具有伪固定长度,然后将已编码准备发送的数据从输出端2输出。
在图1中,由一系列帧组成的动画数据通过输入端1顺序地输入。正交变换电路3对输入的每一帧动画数据进行二维正交变换,并输出作为变换结果而获得的变换系数。量化电路4对这些变换系数进行量化,并在此状态下将其输出。变长编码电路5对经过这样量化的这些变换系数进行编码,使之具有可变的长度,并输出变长编码的数据。
在这里,从动画数据的输入到数据变长编码的数据处理是以块为单位进行的,其中块是通过把一个帧分成预定数目的象素而获得的。因此,从变长编码电路5输出的变长编码数据是以块单位为基础的数据块。
缓冲区6顺序地(在一系列的地址上)临时储存变长编码数据块,在这里,控制电路7控制所述装置的每一个组成部分。具体地说,控制电路7在几个储存在缓冲区6中的依次出现的变长编码数据块中,确定哪些数据块组成一个数据块组,并把关于该组的信息通知报头输出电路8。这里用的”关于该组的信息”一词指的是有关位于该组头上的变长编码数据块储存地址的信息。
报头输出电路8输出报头,后者包括:第一,与变长编码数据块无关的同步字,和第二,所通知的地址信息。尽管同步字可以放在任何地方,但是,为了便于解释,在这里假定它们位于报头的头部。
另一方面,定长电路9为控制电路7所决定的每一个组读入储存在缓冲区的变长编码数据块,并按照上述文章中讨论的方法将变长编码数据块重新组织成伪定长数据块,使得这样的伪定长数据块构成数据块组。这时,一种可采纳的方法可以是这样的,例如,使得数据块按顺序加到数据块组里,并在每次加入数据块时检查整个组的编码长度,使得当编码长度超过预定的数值时,将至此加入的数据块确定为一个单一的数据块组,而将编码长度超过预定数值之后要加入的数据块确定为另一个数据块组。每个伪定长数据块的编码长度是该特定数据块组的平均编码长度。
现参照图2描述将变长码重新组织成伪定长码的模型。
现假定,变长编码数据块的个数是N,而每个变长编码数据块i的位长度用bi(0≤i≤N-1)表示。还应指出,在下文中假定包括i在内的该数值是N的模数。
首先,在发送变长编码数据块的个数N之前,先求出平均值s≥(1/N)sum bi(式中,sum是一个指示求i=0至N-1之和的算子)。
然后,设想有N个槽,各有位长度s。下面要描述的操作的不同阶段都是针对这些槽的。在第一阶段S1,如图2所示,构成变长编码数据块i(0≤i≤N-1)的每一个位填充构成每一个槽(0≤i≤N-1)的每一个位单元。这时,对于满足bi<s的数据块i,槽i具有过剩的位(也就是说,槽i有多余的空位可以接纳外加的位)。另一方面,对于满足bi>s的数据块i,不能将所有的位都填入槽i中。若某些块的位数过多填不下,则该过程便进入第二阶段。在第二阶段S2,如图2所示,对于块i中无法填入的那些位,做出判断,看它们能否填入下一个槽(亦即,相邻的槽)。若准备赋给下一个槽的数据块i+1的位长度满足bi+1<s,则槽i+1中在块i+1的位之后还有空位,所以,无法填入槽i而溢出的多余的位便填入这些空位。在还有些块其剩余位在这些空位中还填不下的情况下,该过程进入图2的第三阶段S3,其中,剩下的过多的位被填入槽i+1的下一个槽i+2,如图2所示。若这样的填充操作重复最多N次,则所述N个块的位就能全部填入槽中。正如S4指出的,结果所得的数据可以作为N个具有位长度s的伪定长码(下文称作定长数据块)处理。
这样,变长编码数据块便被重新组织成伪定长码,然后发送每一个具有这样固定长度的数据块,并在接收机侧将其译码。为了在接收机一侧一个接一个地对顺序发送来的变长编码数据块进行译码,在前一个变长编码数据译码完成时,必须检测每一个变长编码数据块的起点。
但是,从前面的描述可以看出,变长编码数据块是被重新组织成伪定长数据块并被发送的,使得每一个变长编码数据块的起点总位于每一个伪定长码数据块的起点上。
于是,在接收机一侧,每一个变长编码数据块的的译码总可以在每一个伪定长码数据块的起点定时处开始。
这样,就开始每一个变长编码数据块的译码。但是,即使从一个定长数据块来的位都译码完毕,散布在多个定长数据块中的变长编码数据块的译码还是不能完成。于是,对于散布在多个定长数据块中的变长编码数据块,必须从该变长编码数据块所散布的多个定长数据块中获得该变长编码数据块的全部数据位。
也就是说,为了进行译码,每一个阶段的过程按以下方法完成。首先假定具有位长度s的槽的个数为N,并假定所接收的伪定长码数据块分别填入这些槽中。在第一阶段,译码从每个槽的顶位单元开始。这时,若存在这样的一个槽,其译码在第s位之前的某处尚未完成,则该过程进到第二阶段。在第二阶段,检查译码尚未完成的槽i,看在下一个槽i+1中译码是否完成,并判断是否得到满足bi+1<s条件的块i+1。若判断结果是肯定的,则槽i+1中剩余区域的位加到槽i上,并对槽i继续完成译码。若尽管加上了槽i+1的位但译码尚未完成,则该过程进到第三阶段,在这里加上槽i+1的下一个槽i+2的位。若这个加位的操作完成的次数与在发射机一侧填充操作的重复次数相等,就能得到原来个数N的变长编码数据块。
正如前面所讨论的,变长编码数据块形成具有s*N个位的伪定长码,并发送之。对于准备在槽的起始定时发送的每一个块,即使前一个块出现传送差错,也不会出现由于传送差错而本来会出现的失去同步,而译码也会按正常的定时完成。这就是说,即使中途出现差错,译码时每一个块也能得到正确的同步。这样,就可以防止大规模地出现译码差错。
当以上述方式将变长编码数据重新组织成伪定长码数据时,控制电路7控制开关SWC,使得从报头输出电路8输出报头之后,输出属于这一报头的一组数据块。
因此,从这样构造的编码装置输出的编码数据(一组数据块)便如图3所示。就是说,该数据块组是由多个伪定长码数据块D1直至Dn构成的。在该组的头上有一个报头,包括同步字SW和该特定的组头一个数据块的地址信息。
接着,将描述按照实施本发明的这个模式的译码装置。图4是方框图,表示按照实施本发明的这个模式的译码装置的结构。这个译码装置对从输入端子14输入的编码数据进行译码,并从输出端子15输出译了码的动画数据。
在图4中,由图1编码装置编码的数据是通过输入端子14输入的。
报头检测/译码电路16首先在输入的编码数据中间检测同步字,其次,按下述方法得到数据块的编码长度和构成一个组的数据块的个数,并将其通知控制电路17,第三去掉报头,只输出该组数据块。
这里,将描述如何获得数据块的编码长度和构成一个组的数据块的个数。
现假设编码数据如图3所示地输入,报头的编码长度用h表示,第一个同步字SW是在离基准位置S一个编码长度a的位置上检测到的,而下一个同步字SW是在离基准位置S一个编码长度b的位置上检测到的。于是,这两个同步字之间的数据块组的编码长度用下式表示。
L=b-(a+h) (1)
接着,若根据包括在第一报头H1中的地址信息,头一个数据块D1的地址指示为c,而若根据包括在下一个报头H2中的地址信息,头一个数据块Dn+1的地址检测出为d,则两个同步字SW之间的数据块个数n由以下等式表示。
n=d-c (2)
这里,既然构成一个组的数据块的编码长度是由定长电路9固定的,在实施本发明的这一个模式中它们就是彼此相等的。因此,每一个数据块的编码长度s用以下等式表示。
s=L/n (3)
再回头参照图4,缓冲区18临时储存着几个组的数据块。逆定长电路19按照上述文章中所讨论的方法,同时利用来自控制电路17的数据块编码长度s和数据块的个数n的信息,将储存在缓冲区18中的数据块组重新组织成原来的变长编码数据块,并顺序地将其输出。
变长码译码电路20对重新组织出来的变长编码数据块进行译码。译码后的数据由逆量化电路21进行逆量化,以便转换成原来的变换系数。这个变换系数被逆正交变换电路22译码成原来的动画数据,以便通过输出端子15输出。
按照传统的方法,重新组织成伪定长码用的关于数据块编码长度的信息也是从定长电路输出的。因此,即使这些信息成分出现很小的错码,都会使接收机一侧无法通过重新组织伪定长码来获得原来的变长编码数据块。这会导致画面质量的下降。
采用这种实施本发明的模式,重新组织成伪定长码用的关于数据块编码长度和数据块个数的信息,不是通过传输,而是通过检测同步字和通过以报头译码所得的结果为依据进行计算而获得的。因此,即使出现错码,通过检测同步字和获得报头仍旧可能重新组织数据块。这样就能避免由于这些信息部分地出错而使数据块完全丢失的风险。
除了重新组织成伪定长码的操作以外,动画编码操作可以类似于,例如,在1996年3月ITU-T建议H.263”低比特速率通讯用的视频编码”中建议的方法。在H.263中,作为具有可变编码长度的数据单元,存在一种包括同步字的被称为GOB(块组,Group of Block)报头的结构,或一种被称为MB(宏块,Macro Block)的结构。在类似于H.263的动画编码操作的情况下,例如,从报头输出电路8输出GOB报头,而单独一个MB可以用来作为单一的变长编码数据块。这样做,就可以获得一种编码输出和编码/译码电路,该电路的操作除了将MB重新组织成GOB内的伪定长码之外,类似于H.263。这样,这个方法可以与一般的动画编码方法有共同之处。
尽管以实施本发明的这个模式把本发明用于动画数据的传送,但是,本发明不限于动画数据,而是一般地适用于变长编码数据。
在实施本发明的这个模式中,数据块的个数和每一个数据块的编码长度是参照同步字的位置和地址求出的。不必使用地址信息,而是通过预先设置一个组的数据块个数,并在译码侧将这个个数与同步字的位置一起使用,也能获得同样的效果。
2.实施本发明的第二模式
按照上述实施本发明的第一模式的动画编码传输装置,仅仅靠判断每一个码是否能够被译码来重新组织原来的变长编码数据块的方法,译码侧是不可能区分不正确地重新组织的变长编码数据块的。
但若编码侧在构成具有固定长度的数据块之前给变长编码数据块加上一个检查字,则译码侧在完成变长编码数据块重新组织之后通过检查该检查字,就能知道该数据块是否被正确地重新组织的。
现将描述这个实施本发明的第二模式,其中将考虑这一点。
现描述这个实施本发明的第二模式。本发明亦以此第二模式用于动画编码传输装置。图5是方框图,表示其编码装置的配置。
如图5所示,这个第二模式从输入端子23到缓冲区28在结构上与第一模式相同。因此,下面将主要介绍不同点。
控制电路29保持储存在缓冲区28中的变长编码数据块的编码长度,并根据这一信息确定构成一个组的那些数据块。具体地说,这样控制所述控制电路29,使得一个组中的各个数据块的编码长度不会有很大的差异。
例如,控制电路29进行以下控制。首先,那些数据块组是通过将数据块一个接一个地加入组中、并计算包括在该组中的数据块的平均编码长度而一个接一个地构成的。然后,在一个新的数据块加入每一个数据块组时检查该数据块的编码长度。当检查结果发现编码长度超过该组数据块的平均编码长度的±70%时,就用准备加入的数据块构造一个新的组,使其处于头部。相反,当编码长度不超过平均编码长度的±70%时,该数据块直接加入该组中。应该指出,这个阈值不限于±70%,而是任选的。
当数据块这样组成一个组时,控制电路29便将有关该数据块组的信息通知报头输出电路30。报头输出电路30输出报头,后者包括同步字和位于该组头部的数据块的地址信息。
对于控制电路29所确定的每一个组,检查字加入电路31读出储存在缓冲区28中的变长数据块,并在给每一个数据块加上具有预定结构,例如两位”01”的数据块检查字之后将该数据块输出到定长电路32上。定长电路32按照上述文章提出的方法,将加上了检查字的变长编码数据块重新组织成伪定长码,并构成伪定长数据块组。
多路切换/检查字加入电路33顺序地将报头输出电路30所输出的报头链接到由定长电路32组织的数据块组上,使得形成一个输出单元。这时,多路切换/检查字加入电路33检查编码长度的和,然后在编码长度的和不等于预定常数的整倍数(例如,一个字节的整倍数)时,计算准备加什么位才能使编码长度的和等于该预定数值的整倍数。
接着,该计算要求多少个各具预定组成(例如,以一个位的”0”开始后跟多个”1”的字)的位,多路切换/检查字加入电路33就在输出单元(由报头和数据块组组成)的尾部加入多少个位,来形成数据块组检查字,使得单个输出单元的编码长度成为预定常数的整倍数。多路切换/检查字加入电路33的输出是通过输出端子24顺序地输出并发送的。
现将描述按照实施本发明的这个模式的译码装置。图6是方框图,表示按照这个模式的译码装置的配置。
如图6所示,这个译码装置对通过输入电路34输入的编码数据进行译码,并通过输出端子35输出原来的动画数据。
在图6中,进来的由图5编码装置编码的数据是通过输入电路34输入的。报头检测/译码电路36在这样输入的编码数据中检测每一个同步字,并对这个包括同步字之后进来的头一个数据块的地址信息的报头进行译码,然后去掉报头。在报头检测/译码电路36中,从等式(1)求出两个同步字之间的的编码长度L,并从等式(2)求出两个同步字之间的数据块个数n。
在这里,由于多路切换/检查字加入电路33所作的处理,同步字只出现在位序列的预定常数整倍数的位置。所以,若两个同步字之间的每一个固定长度的数据块的编码长度用s表示,无须推导即可得出以下等式。
L=n*s (4)
在这种情况下,报头检测/译码电路36首先检测数据块组的检查字。
例如,若数据块组的检查字是从一个位的”0”开始后跟多个”1”的字,则检测具有这样组成的紧接在同步字之后的该字的编码长度w。当这样获得数据块组的检查字的编码长度w时,两个同步字之间的每个定长数据块的编码长度s可以从以下等式求出。
s=(L-w)/n (5)
然后,报头检测/译码电路36将这样获得的数据块个数n和编码长度s通知控制电路37。
这时,报头检测/译码电路36检查通过检查数据块组检查字来检查所获得的编码长度是否正确。若报头被正确地译码,等式(5)获得的值是可以整除的。因此,若不能被整除,则可认为出现了某些错码。在那种情况下,报头检测/译码电路36不作随后的处理,将两个同步字之间的当前数据抛弃。
另一方面,若等式(5)可以整除,则可知道它们是一个被正确地传送的每个都具有固定长度的数据块组。因此,报头检测/译码电路36就照在缓冲区38中储存的样子输出这个数据块组。
逆定长电路39利用有关编码长度s和数据块个数n的信息,就来自控制电路37的数据块,把储存在缓冲区38中的数据块组重新组织成原来的变长编码数据块,并顺序地输出这样重新组织的数据块组。这个技术是上述文章提出的。
检查字检查电路40检查由检查字加入电路加31在每一个重新组织的变长编码数据的数据块上的数据块检查字是否就是预定的一个。若检查结果是否定的,则检查字检查电路40认为它们不是正确地重新组织的,所以将这些特定的数据块抛弃。
相反,若检查结果是肯定的,则检查字检查电路40认为它们是正确地重新组织的,故顺序地就这些数据块输出。
这样输出的数据块在通过变长码译码电路41、逆量化42电路42和逆正交变换电路43的过程中译码成原来的动画数据,然后从输出端子35输出。
采用实施本发明的这个模式,如同第一模式那样可以避免在信息部分出现错码时使数据块全部丢失的风险。
另外,采用实施本发明的这个模式,数据块是这样组织的,使得包括在某个数据块组中的数据块的编码长度差异不大。由于这一特点,可以舒缓这样的不便,即若在变长编码数据块的组中存在编码长度明显地长于其他变长编码数据块的数据块,则对于该特定的数据块,错码引起的有害作用更大。
另外,采用实施本发明的这个模式,同步字是这样设计的、使得同步字只出现在位序列的预定位置上,而检查字则加在数据块组上。利用这一点,在译码装置上不正确地检测同步字的几率减小了。此后,检查检查字以便确定是否得到了不正确的数据块长度和不正确的数据块个数。这样做,就可以防止由于同步字的不正确检测等而以错误的方式重新组织伪定长数据块。
另外,在这种模式的编码装置中,检查字是在重新组织伪定长数据块之前加到变长编码数据块上的。利用这一点,在译码装置上,检查重新组织的变长编码数据块,以便确信重新组织是以正确的方式进行的。这样做,就可以防止偶然输出不正确的变长编码数据块。
采用该第二模式,所示与同步字位置的限制相结合的方法是加入数据块组检查字的方法。但应指出,当然也可以采用其他方法。当然可以利用总是加定长检查字的方法。数据块组检查字本身当然可以不同于第二模式。
采用实施本发明的该第二模式,用数据块检查字来检查整个变长编码数据块。但是,也可以这样设计,使得部分地检查数据块,并只有在确信这部分数据块以正确的方式重新组织时,才输出重新组织的数据块。数据块组检查字本身当然可以不同于第二模式。
另外,正如在第一模式中,除了采用第二模式重新组织成伪定长码的操作以外,动画编码的一般方法也适用于动画编码操作。
另外,在该第二模式中,本发明用于动画数据中。但是,应当指出,和在第一模式中一样,本发明不限于动画数据,本发明也可以用于一般的变长编码数据。
另外,在第一和第二模式中,示出了数据块组编组的控制方法。但应指出,本发明当然可以采用其他控制方法。
采用第二模式和采用第一模式一样,数据块个数和每个数据块的码长是参考同步字的位置和地址求出的。不利用地址信息,而是预先设定组成一个组的数据块个数,并在译码侧利用所述个数与同步字的位置相结合,也可以得到同样的效果。
Claims (17)
1.一种变长编码数据传输装置,其特征在于包括:
第一编组装置,用来对多个变长编码数据进行编组;
第二编组装置,用来使每一个这样编组的变长编码数据的长度固定,使得每一个数据块都具有平均码长,然后在这种条件下对数据块进行编组;
报头准备装置,用来准备包括至少一个同步字的报头;
输出装置,用来输出由所述报头准备装置准备的所述报头和由所述第二编组装置编组的所述数据块组;
输入装置,用来输入由所述输出装置输出的所述报头和所述数据块组;以及
同步/译码装置,用来以这样输入的所述报头中所述同步字的位置为基准,对每一个数据块进行同步/译码。
2.按照权利要求1的变长编码数据传输装置,其特征在于:所述第一编组装置这样地进行编组,使得每一个所述变长编码数据的码长的差异不超过预定阈值。
3.按照权利要求1的变长编码数据传输装置,其特征在于:所述第一编组装置形成由预定个数的变长编码数据组成的组;以及
所述同步/译码装置,参照所述同步字的位置和所述编组的变长编码数据的个数,对所述每一个数据块进行同步/译码。
4.按照权利要求1的变长编码数据传输装置,其特征在于:
它还包括储存装置,用来顺序地将所述多个变长编码数据储存在一系列地址上,以及
所述报头准备装置使所述报头包括位于所述组头上的关于所述数据块储存在所述储存装置中的地址信息;
所述同步/译码装置参照所述同步字的位置和所述地址信息,对每一个数据块进行同步/译码。
5.按照权利要求4的变长编码数据传输装置,其特征在于:所述同步/译码装置参照属于所述两个报头的同步字的位置和包括在所述两个报头中的地址信息,求出夹在报头之间所述数据块组的码长和所述组的数据块个数,来进行同步/译码。
6.按照权利要求1的变长编码数据传输装置,其特征在于还包括:
第一检查字加入装置,用来在由所述第二编组装置编组的所述数据块组结束处加上第一检查字;以及
第一检查装置,用来检查所加的检查字,以便判断所述同步/译码装置是否正确地对所述数据块组进行了同步/译码。
7.按照权利要求1的变长编码数据传输装置,其特征在于还包括:
第二检查字加入装置,用来给由所述第一编组装置编组的所述变长编码数据加上第二检查字;以及
第二检查装置,通过检查所加的检查字,检查所述数据块是否正确地译码成原来的变长编码数据。
8.一种发射机侧装置,其特征在于包括:
第一编组装置,用来对多个变长编码数据进行编组;
第二编组装置,用来使每一个这样编组的变长编码数据块的长度固定,使得每一个数据块具有平均码长,然后在这种状态下对数据块进行编组;
报头准备装置,用来准备包括至少一个同步字的报头;
输出装置,用来输出由所述报头准备装置准备的所述报头和由所述第二编组装置编组的所述数据块组;
9.一种接收所述发射机侧装置所发送的数据用的接收机侧装置,其特征在于包括:
输入装置,用来输入由所述输出装置输出的所述报头和所述数据块组;以及
同步/译码装置,用来参照输入的报头中所述同步字的位置,对每一个数据块进行同步/译码。
10.一种发送变长编码数据的方法,其特征在于包括以下步骤:
对多个变长编码数据进行编组;
使每一个所述变长编码数据的码长固定,使得每一个所述数据块都具有平均码长,并对所述数据块进行编组;
把包括至少一个同步字的报头加到所述数据块组,并在该状态下输出所述数据块;
参照所述报头中所述同步字的位置,对每一个所述数据块进行同步和译码。
11.按照权利要求10的发送变长编码数据的方法,其特征在于还包括在所述报头上加上地址信息的步骤。
12.按照权利要求10的发送变长编码数据的方法,其特征在于还包括以下步骤:
将所述数据块加入组中,一个接一个地构成数据块组,
计算每一个所述数据块的平均长度,
检查准备加入到所述数据块组中的所述数据块的码长,并将所述码长与对应于平均码长的阈值比较,以及
当每一个所述数据块的码长小于所述阈值时,把每一个所述数据块加入所述数据块组中,而当每一个准备加入所述数据块组中的所述数据块的码长大于所述阈值时,就构成新的数据块组,并使所述数据块位于头部。
13.按照权利要求12的发送变长编码数据的方法,其特征在于:所述阈值是平均码长的±70%。
14.按照权利要求11的发送变长编码数据的方法,其特征在于还包括以下步骤:
将检测到的第一个同步字的位置与其后检测到的第二个同步字的位置加以比较,
通过从该两个检测位置之差减去所述报头的码长,来计算所述第一个和第二个同步字之间的数据块组的码长,
参照包含于相邻两个报头中的地址信息,计算所述第一个和第二个同步字之间数据块的个数,
参照所述数据块组的码长和所述数据块的个数,计算所述数据块的码长,对所述数据块进行译码。
15.按照权利要求10的发送变长编码数据的方法,其特征在于还包括以下步骤:
预先设定编组的数据块个数,
将检测到的第一个同步字的位置与其后检测到的第二个同步字的位置加以比较,
参照包含于相邻两个报头中的地址信息,计算所述第一个和第二个同步字之间数据块的个数,
通过从该两个检测位置之差减去报头的码长,来计算所述第一个和第二个同步字之间的数据块组的码长,
参照所述数据块组的码长和所述数据块的个数,计算所述数据块的码长,对所述数据块进行译码。
16.一种发送变长编码数据的方法,其特征在于包括以下步骤:
对多个变长编码数据进行编组;
使每一个所述变长编码数据的码长固定,使得每一个所述数据块具有平均码长,以及
在把其中包括至少一个同步字的报头加入所述数据块之后,对所述数据块进行编组,并且,在把所述第一检查字加到这样构成的所述数据块组的尾部之后输出所述数据块,以及
参照所述第一检查字对每一个数据块进行同步和译码。
17.一种发送变长编码数据的方法,其特征在于包括以下步骤:
对多个变长编码数据进行编组;
使每一个所述变长编码数据的码长固定,使得每一个所述数据块具有平均码长;
在把其中包括至少一个同步字的报头加入所述数据块之后,对所述数据块进行编组,并且,在把所述第二检查字加到构成的所述组的每一个数据块之后输出所述数据块,以及
参照所述第二检查字对所述数据块中的每一个进行同步和译码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP305310/1996 | 1996-11-15 | ||
JP305310/96 | 1996-11-15 | ||
JP30531096 | 1996-11-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1185061A true CN1185061A (zh) | 1998-06-17 |
CN1126267C CN1126267C (zh) | 2003-10-29 |
Family
ID=17943568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97123159A Expired - Fee Related CN1126267C (zh) | 1996-11-15 | 1997-11-17 | 变长编码数据传输装置及其方法、发射机和接收机侧装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6115425A (zh) |
EP (1) | EP0843437A3 (zh) |
KR (1) | KR100318249B1 (zh) |
CN (1) | CN1126267C (zh) |
CA (1) | CA2218626C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120273A (zh) * | 2018-08-29 | 2019-01-01 | 重庆物奇科技有限公司 | 基于霍夫曼编码的编码装置、译码装置及系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6563879B1 (en) * | 1999-05-17 | 2003-05-13 | Lucent Technologies Inc. | Method and apparatus for enabling transmission of variable length encoded data in a low signal to noise ratio environment |
AU4515801A (en) | 1999-12-03 | 2001-06-18 | Broadcom Corporation | Viterbi slicer for turbo codes |
WO2001043310A2 (en) | 1999-12-03 | 2001-06-14 | Broadcom Corporation | Embedded training sequences for carrier acquisition and tracking |
AU2001287101A1 (en) | 2000-09-05 | 2002-03-22 | Broadcom Corporation | Quasi error free (qef) communication using turbo codes |
US7242726B2 (en) | 2000-09-12 | 2007-07-10 | Broadcom Corporation | Parallel concatenated code with soft-in soft-out interactive turbo decoder |
US6518892B2 (en) | 2000-11-06 | 2003-02-11 | Broadcom Corporation | Stopping criteria for iterative decoding |
US7097561B2 (en) * | 2001-09-28 | 2006-08-29 | Igt | Gaming apparatus with novel display technique |
US20050232139A1 (en) * | 2004-04-20 | 2005-10-20 | Texas Instruments Incorporated | Dual length block codes for multi-band OFDM |
EP1591906A1 (en) * | 2004-04-27 | 2005-11-02 | Texas Instruments Incorporated | Efficient data transfer from an ASIC to a host using DMA |
GB2429593A (en) | 2005-08-26 | 2007-02-28 | Electrosonic Ltd | Data compressing using a wavelet compression scheme |
KR101783165B1 (ko) * | 2010-06-16 | 2017-09-28 | 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) | 기준 신호를 전송 및 디코딩하기 위한 방법 및 장치 |
US9992252B2 (en) | 2015-09-29 | 2018-06-05 | Rgb Systems, Inc. | Method and apparatus for adaptively compressing streaming video |
CN111091697B (zh) * | 2019-11-29 | 2021-08-13 | 湖北航天飞行器研究所 | 遥测数据的处理系统 |
CN116684003B (zh) * | 2023-07-27 | 2023-10-24 | 南京中科齐信科技有限公司 | 一种基于量子通信的铁路沿线空地综合监测方法及系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4145683A (en) * | 1977-11-02 | 1979-03-20 | Minnesota Mining And Manufacturing Company | Single track audio-digital recorder and circuit for use therein having error correction |
CA1309519C (en) * | 1987-03-17 | 1992-10-27 | Antonio Cantoni | Transfer of messages in a multiplexed system |
US5475540A (en) * | 1991-06-04 | 1995-12-12 | Quantum Corporation | Magnetic data storage disk drive with data block sequencing by using ID fields after embedded servo sectors |
JP2973675B2 (ja) * | 1991-07-22 | 1999-11-08 | 日本電気株式会社 | 可変レート伝送に適した符号化復号方式及び装置 |
DE4218695A1 (de) * | 1992-06-09 | 1993-12-16 | Thomson Brandt Gmbh | Verfahren, Coder und Decoder zur Datenübertragung und/oder -speicherung |
US5440345A (en) * | 1992-07-17 | 1995-08-08 | Kabushiki Kaisha Toshiba | High efficient encoding/decoding system |
FR2701180B1 (fr) * | 1993-01-29 | 1995-03-10 | Cit Alcatel | Dispositif de cellulisation et dispositif de décellulisation de voies numériques synchromes, centre de commutation de voies numériques synchrones, et centre de commutation de voies numériques asynchrones. |
EP0637174B1 (en) * | 1993-07-30 | 1999-09-22 | Victor Company Of Japan, Limited | Digital data transmission method and apparatus |
KR100283710B1 (ko) * | 1993-11-30 | 2001-03-02 | 제이 엘. 차스킨 | 전송 데이타 패킷 어셈블링 시스템내의 데이타 워드 인디케이터 |
JP2848784B2 (ja) * | 1994-08-02 | 1999-01-20 | 沖電気工業株式会社 | パケット交換方式 |
JP3632229B2 (ja) * | 1994-12-07 | 2005-03-23 | 株式会社日立製作所 | Atm交換装置 |
CA2180189C (en) * | 1995-08-03 | 2001-07-03 | Satoru Adachi | Variable length coded data transmission device |
-
1997
- 1997-10-20 CA CA002218626A patent/CA2218626C/en not_active Expired - Fee Related
- 1997-10-23 EP EP97118469A patent/EP0843437A3/en not_active Withdrawn
- 1997-11-13 US US08/969,318 patent/US6115425A/en not_active Expired - Fee Related
- 1997-11-15 KR KR1019970060230A patent/KR100318249B1/ko not_active IP Right Cessation
- 1997-11-17 CN CN97123159A patent/CN1126267C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120273A (zh) * | 2018-08-29 | 2019-01-01 | 重庆物奇科技有限公司 | 基于霍夫曼编码的编码装置、译码装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
KR19980042465A (ko) | 1998-08-17 |
CA2218626A1 (en) | 1998-05-15 |
EP0843437A3 (en) | 2001-06-13 |
CA2218626C (en) | 2002-11-19 |
KR100318249B1 (ko) | 2002-04-22 |
CN1126267C (zh) | 2003-10-29 |
US6115425A (en) | 2000-09-05 |
EP0843437A2 (en) | 1998-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1126267C (zh) | 变长编码数据传输装置及其方法、发射机和接收机侧装置 | |
CN1168217C (zh) | 变长编码数据发送装置 | |
CN1154237C (zh) | 编码/解码装置及编码/解码方法 | |
CN1073307C (zh) | 用于装满比特位的数据的可变长译码装置 | |
CN1123978C (zh) | 图像编码器、图像解码器以及传送一系列帧的改进方法 | |
CN1175667C (zh) | 对预定场奇偶性的场进行解码的装置和方法 | |
CN1104094C (zh) | 数据压缩方法和设备 | |
US5109437A (en) | Method for compressing digital data | |
CN1148005C (zh) | 快速联合图像专家组霍夫曼编码和解码方法 | |
CN1335002A (zh) | 在冗余度增量通信系统中可以对数据块进行合并的信令方法 | |
CN1119864C (zh) | 解码装置 | |
CN1065569A (zh) | 用于重新组合已优先化视频数据的设备 | |
CN1157068A (zh) | 码分多址通信系统的功率控制 | |
CN1494784A (zh) | 通信方法和设备 | |
CN1110158C (zh) | 在移动通信系统中发送子帧的装置和方法 | |
CN1118942C (zh) | 一串m-位信息字到被调制信号的转换 | |
CN1465157A (zh) | 发送装置和接收装置 | |
CN1951017A (zh) | 一种顺序压缩/解压缩数据的方法及装置 | |
CN1276665A (zh) | 时间上协调数据在一个总线上的传送的方法 | |
JPH0530365A (ja) | デイジタルイメージデータをコード化するための方法及び装置 | |
CN1249947C (zh) | 模拟蜂窝网络的网络元件及用于该网络元件的方法 | |
CN1222170C (zh) | 用于提高码率的块编码/解码方法和设备 | |
CN1638315A (zh) | 具有不同发送时间间隔的复用信道的速率匹配方法和装置 | |
US7546303B2 (en) | Method for coding positions of data elements in a data structure | |
WO1999052294A1 (en) | Method and apparatus for encoding/decoding a data stream using inferential techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |