CN1156796C - 可变长度编码数据的处理方法及装置 - Google Patents
可变长度编码数据的处理方法及装置 Download PDFInfo
- Publication number
- CN1156796C CN1156796C CNB981073433A CN98107343A CN1156796C CN 1156796 C CN1156796 C CN 1156796C CN B981073433 A CNB981073433 A CN B981073433A CN 98107343 A CN98107343 A CN 98107343A CN 1156796 C CN1156796 C CN 1156796C
- Authority
- CN
- China
- Prior art keywords
- data
- code
- length varying
- compression section
- coded data
- 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.)
- Expired - Lifetime
Links
- 238000003672 processing method Methods 0.000 title 1
- 230000006835 compression Effects 0.000 claims description 119
- 238000007906 compression Methods 0.000 claims description 119
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 230000009471 action Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 7
- 238000013139 quantization Methods 0.000 claims description 7
- 230000000052 comparative effect Effects 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 241001269238 Data Species 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 18
- 238000000034 method Methods 0.000 description 9
- 230000015572 biosynthetic process Effects 0.000 description 7
- 238000005755 formation reaction Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 4
- 239000004744 fabric Substances 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000008014 freezing Effects 0.000 description 2
- 238000007710 freezing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 1
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2365—Multiplexing of several video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Abstract
本发明用无效数据量计算器13在后端有结束代码且分别由多个画面构成的第1和第2视频数据之内,将第1视频数据的最后的画面的解码定时的缓冲器占有值相关联的值及第2视频数据的最初的画面的解码定时的缓冲器占有值进行比较,在比较结果为规定值的时候,计算与上述的两值之差相对应的数据量,并用无效数据附加器14把该数据量数额的无效数据追加到第1视频数据的最后的画面上之后,用视频数据连接器15结合第2视频数据。
Description
技术领域
本发明涉及可变长度编码数据的处理方法及装置,特别是涉及把多个可变长度编码数据连接起来后再进行处理的可变长度编码数据的处理方法及装置。
背景技术
作为信息可变长度编码的代表性的例子人们知道MPEG(MovingPicture Experts Group,动画专家组)。在该MPEG中,编码位流在视频信号的情况下每一画面(picture)都具有可变长度的编码量。这是因为MPEG应用离散余弦变换(DCT)、量子化、赫夫曼(Huffman)编码等的信息变换的同时,为了改善画质,还必须相应地变更分配给每一图像的编码量,由于已进行了动作补偿预测,所以有时候要照原样不加改动地使输入图像编码,有时候则要使作为预测图像的差分图像编码等,编码图像本身的熵也变化得很大的缘故。
图12示出了用该MPEG进行的编码位流的一个例子,以I画面(帧内编码图像)、B画面(帧间正向预测编码图像)、B画面、P画面(双向预测编码图像)的顺序进行传送。其中,例如,I画面为120K位,P画面为80K位,B画面为40K位,每个都是可变长度的编码量。
在用固定的传送速率(编码速率)使这样的可变长度数据编码的情况下,如图13所示,如果把解码器的缓冲量当做最大值,由于以一定的速度输入数据后仅仅存下规定的值,所以在MPEG中把编码规定为:以规定的时间单位(如果是NTSC方式的视频信号的话,为1/29.97秒单位)把在一瞬间进行解码的假想解码器模型连接到编码器的输出上使用,使其缓冲器既不会上溢,也不会下溢。
还有,在图13中,I、B和P表示MPEG规定的I画面(帧内编码图像),B画面(帧间正向预测编码图像)和P画面(双向预测编码图像),表明它们被存储在缓冲器中并以1/29.29秒单位一瞬间地进行各画面的解码,数据瞬时地从缓冲器中取出来。
人们把这叫做VBV(Video Buffering Verifier,视频缓冲验证器),对于它的详情,已由国际标准化组织(ISO)在ISO-11172-2,ISO13818-2中进行了讲述。只要遵守该规定,则尽管在VBV缓冲器内的速率局部性地会有变化,但如果观测时间较长,就将变成为恒定的传送速率,在MPEG中,把这一情况定义为固定速率。
然而,历来以画面为单位存在着多个用上述的MPEG的压缩编码方式进行可变长度编码后的视频信号,在用户以任意的顺序或以规定的顺序回放它们的情况(例如,用各种各样的图形使卡拉OK的背景动画结合起来显示,和使宣传用的各种图像结合起来显示之类的情况)下,就必须使2个视频信号(这两个视频信号,在以下叫#1,#2)进行结合(连接)。
发明内容
要想使视频信号#1和#2进行结合,为了要使上述的VBV的缓冲器既不发生上溢又不发生下溢,就必须做成为瞬时地使得视频信号#1先编码,然后如图14所示,使在其结束的时间点的VBV缓冲器的占有值连接到下一个要编码的视频信号#2的处于最前边的画面的缓冲器占有值上,在结合部分(在图中用白圈表示)处变成为同一的缓冲器占有值。
因此,在使2个视频信号进行结合(连接)的现有的可变长度编码数据的处理方法中,由于必须意识到2个视频信号的结合顺序要预先编码,所以不能使自由地随机地已编码了的2个视频信号进行结合。因为如果未意识到结合而单纯地将已编码了的视频信号进行结合,则将发生下述问题。
首先,假定没有意识到作为第1图形进行结合而已编码了的2个视频数据信号#1和#2,这两个数据的VBV的缓冲器占有值的时间性推移变成为如图15(A)那样。一看这张图就可知道,与图14不一样,视频数据信号#1和视频数据信号#2一样头一张画面的缓冲器占有值是相等的值a。若使这2个视频数据信号#1和#2进行结合,则如图15(B)所示,由于在视频数据信号#1的终点时间点的缓冲器占有值是b,所以下一个要编码的视频数据信号#2的头一张画面的缓冲器占有值就必须变成为b,为此,视频数据信号#2的缓冲器占有值全体要往下侧移位恰好为(a-b)的量。因此,在图15(B)中用I表示的区间将产生下溢。
其次,假定作为另外一个第2图形没有意识到进行结合而已编码了2个视频数据信号#1和#2的数据,VBV的缓冲器占有值的时间性推移变成为图16(A)那样,这也和第1图形一样,与图14不同,视频数据信号#1和视频数据信号#2一样头一张画面的缓冲器占有值是相等的值a。若使这2个视频数据信号#1和#2进行结合,则如图16(B)所示,由于在视频数据信号#1的终点时间点的缓冲器占有值最大为c,所以下一个要编码的视频数据信号#2的头一张画面的缓冲器占有值就必须变成为c,为此,视频数据信号#2的缓冲器占有值全体要往上侧移位恰好为(c-a)的量。因此,在图16(B)中用II表示的区间将产生上溢。
以上的下溢或上溢的发生,是因为没有考虑使下一个要进行编码的视频数据信号#2第1张画面的缓冲器占有值,结合到先前已编码了的视频数据信号#1在结束时刻的画面的缓冲器占有值上这件事而进行了编码的结果,与图中未画出来的视频数据信号#2以后的视频数据信号之间进行结合之际也与此一样,有充分的可能性要发生下溢或上溢。
所谓“下溢”意味着在企图用回放器(解码器)对该画面解码时,数据还没有送到。因此,在这样的情况下,虽然会因回放器的制作方法而不同,但一般说结果将变成为要使前一张画面再一次进行回放(冻结)等,以等待全部的数据到齐。
另一方面,所谓‘上溢’,意味着通过使解码器的缓冲器上溢,使溢出部分的数据丢失。一般说,在MPEG中采用了赫夫曼编码法,如果一部分丢失了,有时候就丢掉这张画面。此外,由于已进行了动作补偿预测,参照该画面进行预测的图像也丢失,不仅在面内,还有可能产生在时间方向的丢失。
本发明鉴于上述的那些问题,目的是提供在使分别编码后的两个视频信号结合时,可以防止因解码器的缓冲器的上溢所引起的数据丢失,并把下溢所产生的坏影响减至最低限度的可变长度编码数据的处理方法和处理装置。
本发明的另一目的是提供采用使要进行结合的2个视频数据信号之内的前半的数据信号的最后的场面(scene)进行规定的编码的办法,使得可以防止解码器的缓冲器的上溢和下溢的可变长度编码数据的处理方法和装置。
还有,本发明的再一个目的是提供使多个编码视频数据信号随机地进行结合在规定的时间可以连续地回放的可变长度编码数据的处理方法和装置。
为了实现上述目的,本发明的第1处理方法是:在具有已可变长度编码以分别使解码器的缓冲器的占有值不上溢也不下溢的、在后端有结束代码,而且,使分别由多个压缩部分数据构成的第1和第2可变长度编码数据进行结合后,再向解码器缓冲器输出的可变长度编码数据的处理方法中,在削除了第1可变长度编码数据的结束代码后,对与和第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值和第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值之间进行大小比较,计算比较结果相应的数据量的无效数据,并在把已计算出来的无效数据追加到第1可变长度编码数据的最后的压缩部分数据上之后,结合第2可变长度编码数据,向解码器输出。
在本发明方法中,由于先计算与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值和第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值之间的比较结果相应的数据量,并把该数据量作为无效数据追加到第1可变长度编码数据的最后的压缩部分数据上,之后,使之与第2可变长度编码数据结合,所以可以使第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值正好下降一个无效数据的数据量,至少也可以防止解码器的缓冲器上溢。
此外,为了实现上述目的,本发明的第2处理方法是:在使输入信号进行正交变换后得到的系数量子化后,在具有已可变长度编码以分别使解码器的缓冲器的占有值不上溢也不下溢的、在后端有结束代码,而且,使分别由多个压缩部分数据构成的第1和第2可变长度编码数据进行结合后,再向解码器缓冲器输出的可变长度编码数据的处理方法中,在削除了第1可变长度编码数据的结束代码后,在第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,计算两者的差值的数据量,把与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据的交流成分对应的代码仅仅把削除代码量削除,之后,使之与第2可变长度编码数据结合。
在本发明方法中,由于在第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,把与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据的交流成分对应的代码仅仅把削除代码量削除,所以,可以用相同的解码器的缓冲器占有值使第1可变长度编码数据的最后的压缩部分数据和第2可变长度编码数据的最初的压缩部分数据进行结合。
本发明的第3处理方法是:在削除了第1可变长度编码数据的结束代码后,在第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,对第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据,令动作向量为0,且令已进行了动作补偿的误差数据为0进行编码,之后与第2可变长度编码数据进行结合。
在本发明中,由于即便是在第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,对第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据,令动作向量为O,且令已进行了动作补偿的误差数据为0进行编码,所以也可以用相同的解码器的缓冲器占有值使第1可变长度编码数据的最后的压缩部分数据和第2可变长度编码数据的最初的压缩部分数据进行结合。
此外,为达到上述目的,本发明的第1处理装置在具有已可变长度编码以分别使解码器的缓冲器的占有值不上溢也不下溢,在后端有结束代码,而且,使分别由多个压缩部分数据构成的第1和第2可变长度编码数据进行结合后,再向解码器缓冲器输出的可变长度编码数据的处理装置中,本发明装置的构成包括下述部分:削除装置,用于削除第1可变长度编码数据的结束代码;计算装置,用于计算与和已用削除装置削除掉结束代码的第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值及第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值之间的比较结果相应的数据量;附加装置,用于把用计算装置计算出来的数据量的无效数据追加到已削除了结束代码的第1可变长度编码数据的最后的压缩部分数据上去;连接器,用于把第2可变长度编码数据结合到已附加上来自附加装置的无效数据的第1可变长度编码数据的后边并向解码缓冲器输出。
在本发明装置中,与本发明的第1方法一样,可以使第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值正好下降一个无效数据的数据量,至少也可以防止解码器的缓冲器上溢。
本发明的第2处理装置,具有下述部分:存储电路,用于把第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲器占有值OC,最后的压缩部分数据的代码量DB,在从最后的压缩部分数据解码到下一个压缩部分数据被解码为止的时间内向解码器输入的代码量IB,和第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值NOC作为编码信息分别预先存储起来;结束代码削除器,用于削除第1可变长度编码数据的结束代码;计算器,用于根据从存储器中读出的编码信息,计算用(OC-DB+IB)表示的值并和缓冲占有值NOC进行比较,仅仅在NOC>(OC-DB+IB)时,才用{NOC-(OC-DB+IB)}表示,在NOC≤(OC-DB+IB)时,把0作为削除量进行计算;代码削除器,用于把与已从结束代码削除器中取出的第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据的交流成分对应的代码,削除一个恰好从计算器输入的削除代码量;连接器,用于使第2可变长度编码数据结合到从代码削除器输出出来的第1可变长度编码数据上。
在本发明装置中,由于即便是在在第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,对第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据的交流成分对应的代码也仅仅把削除代码量削除,所以,可以用相同的解码器的缓冲器占有值使第1可变长度编码数据的最后的压缩部分数据和第2可变长度编码数据的最初的压缩部分数据进行结合。
还有,本发明的第3处理装置,把第3处理装置的计算器构成为根据从存储电路中读出的编码信息,计算可用(OC-DB+IB)表示的值并与缓冲器占有值NOC比较,仅仅在NOC>(OC-DB+IB)时,才以代码变换标志作为规定值,并构成为不用第3处理装置的代码削除器,而代之以设置变换装置,用于在来自计算器的代码变换标志为规定值的时候,对来自结束代码削除器的第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据,令动作向量为0,且令已进行了动作补偿的误差数据为0进行编码。
在本发明中,由于即便是在在第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值相关联的值还大的时候,对第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据,令动作向量为0,且令已进行了动作补偿的误差数据为0进行编码,所以也可以用相同的解码器的缓冲器占有值使第1可变长度编码数据的最后的压缩部分数据和第2可变长度编码数据的最初的压缩部分数据进行结合。
此外,在本发明方法和装置中,由于已把第1可变长度编码数据的最后的场面编码为与静物画或近于静物画的图像的画面,所以可以使最后的场面的发生代码量极其之少,可以使缓冲器占有值推移接近于最大值。
附图说明
图1是本发明装置的实施例1的框图。
图2是说明本发明的数据结合动作的说明图。
图3是说明图6的实施例的数据结合动作的一个例子的说明图。
图4示出了本发明的实施例2的缓冲器占有值的时间性变化。
图5是本发明装置的实施例3的关键部位的框图。
图6是本发明装置的实施例3的另一关键部位的框图。
图7是图6中的代码削除器的一个例子的框图。
图8是本发明装置的实施例4的框图。
图9是AC系数的锯齿扫描的说明图。
图10示出了AC系数(代码)的一个例子。
图11示出了AC系数代码的一个例子。
图12是MPEG的画面类型中的发生代码量的说明图。
图13示出了解码器的缓冲器的占有值的时间性变化的一个例子。
图14是说明2个视频数据信号的结合的一个例子的说明图。
图15是说明发生下溢时的2个视频数据信号的解码器缓冲器的占有值的时间性变化的一个例子和结合的说明图。
图16是说明发生上溢时的2个视频数据信号的解码器缓冲器的占有值的时间性变化的一个例子和结合的说明图。
具体实施方式
下面与附图一起说明本发明的实施例。图1示出了本发明中的可变长度编码数据的处理装置的实施例1的框图。在该图中,可变长度编码数据的处理装置由视频数据信号#1输入结束代码削除器11,输入来自结束代码削除器11的视频数据信号#1的缓冲器占有值计算器12,输入缓冲器占有值计算器12的输出信号的无效数据计算器13,无效数据附加器14,输入视频数据信号#2和无效数据附加器14的输出信号并连接(结合)它们的视频数据连接器15构成。还有,上述图1的构成,通常可以用计算机的软件实现。
进而,说明本实施例的操作。按照MPEG的要求,在已预先可变长度编码了的2个视频数据信号#1和#2之内,把视频数据信号#1输入到结束代码削除器11中去,另一个视频数据信号#2则输入到视频数据连接器15中去。
在视频数据信号#1和#2的各自的最后,已附加上了规定值(例如,16进数的000001B7)的结束代码。结束代码削除器11削除已附加在上述的视频数据信号#1的末尾的结束代码,使得即便是把视频数据信号#2结合到已输入进来的视频数据信号#1的末尾上,在回放动作上也不会产生什么不合适。
缓冲器占有值计算器12,从结束代码削除器11输入已削除了结束代码的视频数据信号#1,检测出已记述在其最后的画面的标头(header)中的、该最后的画面的解码定时的缓冲器占有值(相当于解码器缓冲器占有率的值:Occupancy)OC,进而分别计算视频数据信号#1的最后的1个画面的代码量(Data Bits)DB,和在最后的一个画面被解码之后,在下一个视频数据信号#2的画面照原样的输入进来的时候,在最初被解码之前的时间内输入到回放器中的代码量(Inut Bits)IB。代码量IB是可以从已记述在首部中的传送速率和已知的解码周期来求解的恒定值。
无效数据计算器13,从缓冲器占有值计算器输入已削除了结束代码的视频数据信号#1的同时,还输入上述的缓冲器占有值OC,画面代码量DB和代码量IB,并比较判定下一个要结合的视频数据信号#2的最初的画面的解码时刻的解码器缓冲器的占有值(NextOccupance)NOC是否满足下述不等式。
NOC<(OC-DB+IB) (1)
其中,上述缓冲器占有值NOC虽然已记述在视频数据信号#2的最初的标头中,但是由于通常该占有值在各个视频数据信号中是同一个值,所以作为已知的固定值使用。
接着,无效数据量计算器13在上述不等式满足的情况下,根据下式计算无效数据(Stuff Bits)量SB。
SB=(OC-DB+IB)-NOC (2)
此外,在不满足上述不等式的情况下,无效数据量计算器13就把上述的无效数据量定为0。
无效数据附加器14,作为输入从无效数据量计算器13接受已削除了结束代码的视频数据信号#1和无效数据量SB,把与无效数据量SB相应的量的位数的无效数据附加到视频数据信号#1的最后的一个画面上,这些信号输出到视频数据连接器15中去。其中,上述的无效数据例如是全0的数据。
视频数据连接器15,在输出了已附加上来自无效数据附加器14的无效数据的视频数据信号#1之后,就输出下一个要结合的视频数据信号#2。这样一来,就从视频数据连接器15把结合视频数据信号输出到图中没有画出来的解码器的缓冲器中。
以下,更为详细地说明本实施例的数据结合动作。视频数据信号#1和#2的结合状态可以分类为示于图2和图3的3种图形。
第1种图形,如在图2(A)中用EO所示的那样,是把上述输入代码量IB,加到从视频数据信号#1的最后的1个画面的缓冲器占有值OC中,减去了其最后一个画面的代码量DB的值上的值(OC-DB+IB),与其次的视频数据信号#2的最初的画面解码时刻的缓冲器占有值NOC相同的情况,在这种情况下,由于不满足上述式(1),所以令无效数据量SB为0。
因此,由视频数据连接器15得到的视频数据信号,把视频数据信号#2照原样不变地结合到视频数据信号#1上后输出。该第1图形是一种即便是照原样不变地进行结合也既不会发生上溢也不会发生下溢的理想的图形,这是一种非常少有的情况。
第2种图形,如在图2(B)中用EO所示的那样,是一种若照原样不变地进行结合则有可能发生上溢的图形,由于在上述的值(OC-DB+IB)比缓冲器占有值NOC还大,满足上述式(1),所以把与用无效数据计算器13根据上式(2)计算出来的无效数据量SB相应的量的位数的无效数据,追加到视频数据信号#1的最后的1个画面的后边,再从视频数据连接器15输出,之后输出视频数据信号#2。
因此,解码器缓冲器占有值,在从视频数据信号#1的最后的1个画面到视频数据信号#2的最初的画面解码时刻之间,由于将进行如在图2(B)中用虚线III所示那样的变化,所以可以用下一个的视频数据信号#2的最初的画面解码定时的缓冲器占有值NOC相同的值进行结合。这样一来,该第2图形也将进行理想地结合,可以做成为既不发生上溢也不发生下溢。
最后的第3种图形,如图在2(C)和图3中分别用EO所示的那样,是上述的值(OC-DB+IB)比下一个的视频数据信号#2的最初的画面解码定时的缓冲器占有值NOC还小的情况,在这种情况下,
NOC>(OC-DB+IB) (3)
这一不等式成立。因此,不满足上述的式(1),所以使无效数据量SB为0。
但是,在该第3种图形中,若照原样不变地进行结合,则就象与图15一起说明过地那样,有可能发生下溢。对于该第3种图形,在实施例1中,由于要等待一个从视频数据信号#1的最后的1个画面存储到解码器缓冲器中之后,到下一个的视频数据信号#2的最初的画面存储后被解码为止的时间Tw这么大的一个时间后再进行解码,所以在视频数据信号#1的最后被解码的1个画面要显示2个画面的时间。但是,如图2(C)所示,由于视频信号#1的最后的画面和下一个视频数据信号#2的最初的画面解码定时的缓冲器占有值NOC进行结合,不会发生上溢,所以可以避免数据丢失这样的最坏的事态。
如上所述,在上述的实施例中,采用在发生上溢这类的数据结合时附加无效数据的办法,就可以进行既不会发生上溢也不会发生下溢的理想的视频数据信号的结合,此外,在有可能发生下溢的数据结合时,也可以做成为最低限度不使之发生数据丢失。
以上,虽然是解码器一侧的构成,但是本发明也可以一并进行在编码器一侧的处理。图4示出了说明这种情况下的本发明的实施例2的动作的缓冲器占有值的时间性变化。
在本实施例中,其特征在于用静物画或近于静物画的图像对视频数据信号#1的最后的场面已进行编码。在这种情况下,由于视频数据信号#1的最后的场面是静物画或近于静物画的图像,由于在已把它压缩编码了的情况下取差分后进行编码,因为在该场面中将发生在标头中几乎不存在编码数据这样的代码,所以代码发生量小。
因此,在视频数据信号#1的最后的场面中,解码器的缓冲器占有值,如在图4中用IV所表示的那样,几乎不减少(因为即便是进行解码数据量也是微小的),缓冲器占有值增大,接近最大值。为此,很少变成上述第1图形,几乎都变成了上述第2图形,如果一起应用实施例1,则如上所述,上溢和下溢这两者的可能性消失,可以进行理想的结合。
这里对本发明的第3实施例进行说明。图5是本发明的可变长度编码数据的处理装置的实施例3的关键部位的框图,图6是是本发明的可变长度编码数据的处理装置的实施例3的另一关键部位的框图。在图5中,已可变长度编码了的视频数据(编码数据信号#1、#2)被供给编码信息观测器20,在那里,分别读取:1)在用该编码数据信号的MPEG格式所确定的画面标头中所记述的VBV缓冲器占有值,2)在该编码视频数据信号的最后的画面的最后所记述的VBV缓冲器占有值,3)从该编码视频信号的最后的画面的画面起始代码起到结束代码止的代码量值,并把这些编码信息存储到存储电路中。
其中,上述1)的VBV缓冲器占有值,相当于下一个视频数据信号#2的最初的画面解码定时的解码器的缓冲器占有值(Next Occupancy)NOC,2)的VBV缓冲器占有值,相当于视频数据信号#1的最后的一个画面的缓冲器占有值(Occupancy)OC,3)的代码量值相当于视频数据信号#1的最后一个画面的代码量(Data Bits)DB。
此外,从最后的一个画面被解码开始,到在假定为下一个视频数据信号#2的画面原样不变地输入后的时候最初被解码为止的时间内,在编码信息观测器20中,用一个画面区间的时间除传送速率的除法运算计算输入到回放器中的代码量(Input Bits)IB,并存储到存储电路21中。这样的处理,必须在联结多个编码视频数据信号之前,与前后的编码视频数据信号的编码信息一起进行观测。
如图6所示,本发明的实施例3的关键部位,由结束代码削除器22,代码削除器23,追加/削除量计算器24,无效数据附加器25和与图5一起说明的存储电路21构成。为了说明图6的操作,由已存储到存储电路21中的上述缓冲器占有值NOC,OC,代码量DB和IB构成的编码信息,被供给追加/削除量计算器24中,在这里,进行下述那样的判断并计算削除代码量和无效数据量。
就是说,追加/削除量计算器24,在输入编码信息满足上述式(1)时,就根据上述式(2)算出无效数据量SB,而且,使削除代码量(De1eteBits)DEB变为零。在输入编码信息满足上述式(3)时,就根据下式
DEB=NOC-(OC-DB+IB) (4)
算出削除代码量DEB,而且,使无效数据量为零。此外,追加/削除量计算器24,在输入编码信息不满足上述式(1)和式(3)中的任何一式时,就是说,在NOC=(OC-DB+IB)的时候,使上述的削除代码量DEE和无效数据量SB这两方都变成零。追加/削除量计算器24,在以此方式算出的削除代码量DEB和无效数据量SB之内,把削除代码量供给代码削除器23,把无效数据量SB供给无效数据附加器25。
另一方面,编码视频数据信号#1供往与图1的代码削除器11的目的相同且构成也相同的结束代码削除器22,在削除了在数据的最后所记述的MPEG格式的4个字节的结束代码后,被供往代码削除器,在那里,至少要把与含于最后的画面中的数帧中所记述的画面编码数据的AC(交流)成分对应的代码削除掉用追加/削除量计算器24计算出来的上述削除代码量DEB。为的是使之与缓冲器占有值吻合。但是,在DEB=0的时候,不能进行削除。
图7示出了上述的代码削除器23的一个例子。在该代码削除器23中,编码视频数据信号#1被供给VLD器31进行可变长度解码。在这里,在MPEG规格中,画面的宏(macro)块的AC编码代码,是根据表1被可变长度编码VLC的赫夫曼代码。
[表1]
RUN | LEVEL | VLC CODE |
EOB00000000000000000000000000000000000000000111111111111111111 | 112345678910111213141516171819202122232425262728293031323334353637383940123456789101112131415161718 | 101s IF 1st COEFF11s NOT 1st COEFF0100 s0010 1s0000 110s0010 0110 s0010 0001 s0000 0010 10s0000 0001 1101 s0000 0001 1000 s0000 0001 0011 s0000 0001 0000 s0000 0000 1101 0s0000 0000 1100 1s0000 0000 1100 0s0000 0000 1011 1s0000 0000 0111 11s0000 0000 0111 10s0000 0000 0111 01s0000 0000 0111 00s0000 0000 0110 11s0000 0000 0110 10s0000 0000 0110 01s0000 0000 0110 00s0000 0000 0101 11s0000 0000 0101 10s0000 0000 0101 01s0000 0000 0101 00s0000 0000 0100 11s0000 0000 0100 10s0000 0000 0100 01s0000 0000 0100 00s0000 0000 0011 000s0000 0000 0010 111s0000 0000 0010 110s0000 0000 0010 101s0000 0000 0010 100s0000 0000 0010 011s0000 0000 0010 010s0000 0000 0010 001s0000 0000 0010 000s011s0001 10s0010 0101 s0000 0011 00s0000 0001 1011 s0000 0000 1011 0s0000 0000 1010 1s0000 0000 0011 111s0000 0000 0011 110s0000 0000 0011 101s0000 0000 0011 100s0000 0000 0011 011s0000 0000 0011 010s0000 0000 0011 001s0000 0000 0001 0011s0000 0000 0001 0010s0000 0000 0001 0001s0000 0000 0001 0000s |
RUN | LEVEL | VLC CODE |
2222233334445556667788991010111112121313141415151616171819202122232425262728293031ESCAPE | 12345123412312312312121212121212121212111111111111111 | 0101 s0000 100s0000 0010 11s0000 0001 0100 s0000 0000 1010 0s0011 1s0010 0100 s0000 0001 1100 s0000 0000 1001 1s0011 0s0000 0011 11s0000 0001 0010 s0001 11s0000 0010 01s0000 0000 1001 0s0001 01s0000 0001 1110 s0000 0000 0001 0100s0001 00s0000 0001 0101 s0000 111s0000 0001 0001 s0000 101s0000 0000 1000 1s0010 0111 s0000 0000 1000 0s0010 0011 s0000 0000 0001 1010s0010 0010 s0000 0000 0001 1001s0010 0000 s0000 0000 0001 1000s0000 0011 10s0000 0000 0001 0111s0000 0011 01s0000 0000 0001 0110s0000 0010 00s000 0000 0001 0101s0000 0001 1111 s0000 0001 1010 s0000 0001 1001 s0000 0001 0111 s0000 0001 0110 s0000 0011 1111 1s0000 0000 1111 0s0000 0000 1110 1s0000 0000 1110 0s0000 0000 1101 1s0000 0000 0001 1111s0000 0000 0001 1110s0000 0000 0001 1101s0000 0000 0001 1100s0000 0000 0001 1011s0000 01 |
其中,在上述表1中,可变长度编码代码的最终位s表示电平(L电平)的代码,在为0的时候是正,在为1的时候是负。
在宏块之内,存在着4个辉度信号,2个色彩信号,共计6个8×8个象素的块。在这些块的每一块中,都存在有AC代码。这些块内的赫夫曼代码事件,如图9所示,在已使量子化后的变换系数从低频区间频率成分向高频锯齿状地排列起来的时候,可以用检测出0以外的有效系数为止的、表示0的持续个数的RUN(连续),和后续的非零的有效系数的LEVEL(电平)之间的组合的事件来表现。
就是说,设若已把它展开来,若用INTRA(帧内编码)和非INTRA的话,如图9所示,虽然最初的系数有是DC成分与否的不同,但不论是哪种情况,也如图10所示,可展开为8×8的象素区域。接着,根据上述的RUN和LEVEL的组合,用表1表示进行了可变长度编码,但是是编码的视频信号。
图7的VLD器31,检测AC代码(AC系数)的‘RUN和LEVEL’事件及其代码长,计算如图11所示的那样的AC代码的送来的顺序,就是说在从低区信号开始进行排列时的该代码长的累计代码量和表示进行锯齿扫描时的系数的位置的地址,把该信息作为VLD信息,并与编码视频信号一起向图7的AC代码削除器32输出。
另一方面,图7的削除代码量控制电路33,根据从图6的追加/削除量计算器24输入进来的削除代码量DEB,和来自示于图7的后边要讲的代码量计数器35的削除对象的画面代码量信息,计算应削除多少的比率,把该计算结果作为削除比率信息供给AC代码削除器32。
AC代码削除器32,作为输入接受来自VDL器31的编码视频数据信号及VLD信息和来自削除代码量控制电路33的削除比率信息,并据此削除编码视频数据信号中的AC代码。VLD信息含有AC代码及其代码长。AC代码削除器32,如图10所示,使正交变换后的系数从低频区的频率成分开始向高频排列,以到对作为其代码长的累计代码量的最后的值的总代码量乘上(1-削除比率)的值为止变成有效,并削除从此往后的代码。把EOB(块结束)代码输出到削除后的AC代码中。用该操作使各块的AC代码仅把削除比率那一分额削除。
这样一来,在已对全部的块都进行了削除处理后的编码视频数据信号,在把一个画面分额存储到缓冲器34中后,用代码量计数器35对画面全体的代码量进行计数。把表示用代码量计数器35得到的画面全体的代码量的画面代码量信息供给削除代码量控制电路33。此外,来自缓冲器34的已被削除的画面编码数据,通过代码量计数器35被送往VLD器31。
反复进行上述动作,直到用削除代码量控制电路33计算出来的削除比率变成0以下为止,当削除比率变成0以下时,由于已最终性地削除了应削除的代码量分额,所以AC代码削除器32使削除动作结束,并作为变换后的编码视频数据信号向缓冲器34输出。在这种情况下,AC代码削除器32对AC代码以外的部分不进行任何操作地发送往缓冲器27。
还有,在要削除的画面变成为一幅的情况下,有时候正好在一幅画面中伴随有很大的劣化。此外,若正好是一幅的话,还有时候不可能达到预定的削除量,在这样的情况下,可以采用不仅是最后的画面,对从最后开始的多幅画面进行等分割,或者以这些画面所发生的代码量比率进行分割的办法来分配削除代码。
再次回到图6进行说明,在至少含有最后的画面的数帧中所记述的画面编码数据的AC(交流)成分对应的代码,用代码削除器23,仅仅削除掉用追加/削除量计算器24计算出来的上述削除代码量DEB后的视频数据信号,被供往无效数据附加器25,在那里,附加上与来自追加/削除量计算器24的无效数据量对应的量的无效数据后,作为已进行变换了的编码视频数据信号输出。作为上述无效数据,有由MPEG规定的无效数据(null data(0数据))。
这样处理后的编码视频数据信号,被供往与图1的视频数据信号连接器15相同的视频数据信号连接器26,直接与下一个要结合的编码视频数据信号#2连接,并作为结合后的视频数据信号输出。在本实施例中,如图2(A),图2(B)和图3所示,编码后的输入视频数据信号#1和编码后的输入视频数据信号#2可以直接结合。
例如,如图3所示,在给从视频数据信号#1的最后的一个画面的缓冲器占有值OC中减去其最后的一个画面的代码量DB后的值,加上上述输入代码量IB后的值(OC-DB+IB),比下一个的视频数据信号#2的画面解码定时的缓冲器占有值NOC还小的第3图形的情况下,追加/削除量计算器24就根据式(4)计算削除代码量,而且,使无效数据量SB变为0,所以,视频数据信号#1的最后的画面,如图3所示,用同一个值与下一个的视频数据信号#2的最初的画面的解码定时处的缓冲器占有值NOC进行结合。这样,若采用本实施例,则在本第3图形的情况下也可以使之既不产生上溢也不产生下溢。
如上所述,倘采用本实施例,则即便是在进行上述连接之际使两个编码视频数据信号直接相连也会符合MPEG的格式,所以可以未意识到预先进行结合而已经编码了的编码视频数据信号之间进行结合而不会使解码器的位流存储用的缓冲器露出问题。
此外,在进行上述的AC代码削除处理的时候,由于在MPEG的P画面或I画面中,用该处理巡地进行下一个的单方向的画面间预测,所以有时候误差进行累计而使劣化非常明显。在这种情况下,AC代码的削除限定于已在双方向间进行了预测编码的B画面也是有效的。这样的话,就可以防止因巡回所产生的误差的积累。
接着,对本发明的实施4进行说明。在该实施例中,利用了MPEG中的P画面或B画面的跳跃式宏块(Skipped macroblock)的概念。就是说,在某一宏块中,预测的结果、动作向量(MV)为0,且在着眼于预测图像与被预测图像的差分图像的情况下也完全处于无误差的状态的MB,存在着完全不送DC(直流)或AC的数据的模式(但是,在B画面的情况下,即便动作向量不为0,只要是与前一个MB的动作向量的差分为0就行)。
这种状况的MB,假定存在于全体画面上,则除最低限度的画面或切片(slice)外,都不再需要。例如,在MPEG1中,在跳跃式MB中虽然不可能有切片的最初和最后的MB,但是假定除此之外的几乎全体画面的MB都已变成为跳跃式MB,虽然会随切片的构成(数)而不同,但可以编码为256~1000位以上。具有这样的代码的画面不管是P画面还是B画面,从预测图像来看表示为完全无动作的状态,采用积极地利用这一现象的办法,通过不用正在动作着的图像的P画面或B画面的代码,而代之以已假定为其全体是跳跃式MB的代码,则可以作为与前边的预测图像相同的图像来变更编码数据。
这是一种符合MPEG格式的代码,如果实际上输入图像在该部分处是完全不动的图像的话,则作为结果理应输出相同的编码数据。假定为全体是跳跃式MB的画面的代码,是单纯帧间预测(No MC),由于是不要不具有DCT系数的编码(Not Coded)的代码,所以若以NoMC,NotCoded的名称来定义,由于该NoMC,NotCoded代码与预测图像无关,可以唯一地决定,所以只要预先把该代码存储在唯读存储器(ROM)等中,根据需要,把P画面或B画面的代码交换为NoMC,NotCoded代码即可。
当然,在这种情况下,已解码后的图像虽然不得不是静止的,但是,与前边说过的AC代码削除器32的处理相比,可以高速而价格便宜地实现。此外,与AC削除比较,可以大大地提高缓冲器占有量。图8示出了利用了该功能的本发明的实施例4的框图。在该图中,对和图6的构成相同的构成部分仅赋予相同的标号而略去其说明。
在图8中,由上述缓冲器占有值NOC,OC,代码量DB和IB构成的编码信息被从存储电路21供往追加/削除量计算器43,在那里,进行以下的判断并计算无效数据量SB,且,作成NoMC,NotCoded代码变换标志。此外,将已预先作成的NoMC,NotCoded代码的量设为NMNC位。
就是说,追加/削除量计算器43,在输入编码信息满足NOC<(OC-DB+IB)的时候,就根据上述式(2)算出无效数据量SB,且,使削除代码量(Delete Bits)DEB变为0。在输入编码信息满足NOC>(OC-DB+IB)的时候,就根据上述式(4)算出削除代码量DEB,且,使无效数据量SB变为0的同时,使NoMC,NotCoded代码变换标志变成‘1’,并把DB置换为NMNC。
再者,追加/削除量计算器43,在输入编码信息不满足上述式(1)和式(3)时,就是说,在NOC=(OC-DB+IB)时,就使上述的削除代码量DEB和无效数据量SB这两者都变成0,且,使NoMC,NotCoded代码变换标志变成为‘0’。追加/削除量计算器43,在这样地计算出来的NoMC,NotCoded代码变换标志和无效数据量SB之内,把NoMC,NotCoded代码变换标志供往NoMC,NotCoded代码变换器42,把无效数据量SB供往无效数据附加器25。
另一方面,已编码了的输入视频数据信号#1,在用结束代码削除器22削掉了结束代码后,供往NoMC,NotCoded代码变换器42。NoMC,NotCoded代码变换器42,仅在NoMC,NotCoded代码变换标志为‘1’的情况下,才把已输入的画面编码数据变换成上述的NoMC,NotCoded代码。该NoMC,NotCoded代码,读出已存储在NoMC,NotCoded代码ROM41中的NoMC,NotCoded代码使用。NoMC,NotCoded代码变换器42,在NoMC,NotCoded代码变换标志为‘0’的情况下,不进行变换处理。
如上所述,经受了变换处理的视频数据被供往无效数据附加器25,在那里,在附加上与来自追加/削除量计算器43的无效数据量SB对应的量的无效数据后,被供往视频数据连接器26,与下一个要进行结合的编码视频数据信号#2直接连接,作为结合后的视频数据信号输出。
倘采用本实施例,则在进行上述的连接时,即便是使2个编码视频数据信号直接连接,也符合MPEG的格式,所以可以使并没有预先意识到进行结合而已经编码了的视频数据信号之间进行结合而不会使解码器的位流存储用的缓冲器露出问题。此外,在本实施例中,由于也可以不进行AC代码的削除地用最小限度的代码置换成对该帧进行复制的代码,所以,可以用非常简便的方法来调整解码器的缓冲器占有值。
还有,本发明并不限定于上述的实施例,要进行结合的可变长度编码数据也可以是视频数据以外的种类的数据,关键是要是已可变长度编码了的数据,只要是在解码器中具有缓冲器,不论什么种类的编码数据都可以应用。
如上所述,倘采用本发明,由于先计算与第1可变长度编码数据从最后的压缩部数据的解码定时的缓冲器占有值相关联的值及第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值之间的比较结果相应的数据量,把该数据量作为无效数据追加到第1可变长度编码数据的最后的压缩部分数据上去,然后,结合第2可变长度编码数据,所以可以使第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲器占有值正好降低一个无效数据的数据量,因而至少可以防止解码器的缓冲器上溢,所以可以消除因结合所产生的数据的丢失,此外,即便是发生了下溢由于在结合时可以进行1~2帧左右的冻结,所以结合时的不满意与现有技术比,可以大幅度地降低。
另外,倘采用本发明,由于在使预先可变长度编码了的第1和第2可变长度编码数据结合后进行回放之际,即便是在在第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值比与第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲器占有值相关联的值还大的时候,由于可以或者是采用对与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据的交流成分对应的代码仅仅把削除代码量削除,或者是对与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数量的压缩部分数据中所述的数据编码为使动作向量为0,而且是动作补偿误差数据也为0的办法,用相同的解码器的缓冲器占有值使第1可变长度编码数据的最后的压缩部分数据和第2可变长度编码数据的最初的压缩部分数据进行结合,所以,可以使2个可变长度编码数据结合而不会发生使解码器的缓冲器上溢或下溢之类的问题。因此,倘采用本发明,就可以使已预先可变长度编码了的多个视频数据信号随机地进行结合,在规定的时间内连续地进行视频回放。
此外,倘采用本发明,由于已把第1可变长度编码数据的最后的场面编码为与静物画或与近于静物画的图像的画面,所以可以使最后的场面的发生代码量极其之少,由于可以使缓冲器占有值推移接近于最大值,所以借助于上述无效值的附加,可以使之不仅不产生上溢也不产生下溢,可以进行理想的2个可变长度编码数据的结合。
Claims (12)
1.一种可变长度编码数据的处理方法,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是:
在削除了第1可变长度编码数据的结束代码后,将第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值设为OC,将最后压缩部分数据的代码量设为DB,将在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量设为IB,将第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值设为NOC,对用(OC-DB+IB)表示的值和NOC的值进行大小比较,并计算与该比较结果相对应的无效数据的数据量,并在把已计算出来的数据量的无效数据追加到第1可变长度编码数据的最后的压缩部分数据中,然后,结合第2可变长度编码数据,向解码器输出,其中,当NOC<(OC-DB+IB)时,无效数据的数据量用{(OC-DB+IB)-NOC}表示,当NOC≥(OC-DB+IB)时,无效数据的数据量为0。
2.一种可变长度编码数据的处理方法,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据在使输入信号进行正交变换后得到的系数量子化后,分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是:
在削除了第1可变长度编码数据的结束代码后,将第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值设为OC,将最后压缩部分数据的代码量设为DB,将在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量设为IB,将第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值设为NOC,当NOC>(OC-DB+IB)时,用{NOC-(OC-DB+IB)}表示削除代码量,当NOC≤(OC-DB+IB)时,用0表示削除代码量,把与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据的交流成分对应的代码仅仅削除削除代码量,之后,使之与第2可变长度编码数据结合。
3.一种可变长度编码数据的处理方法,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据在使输入信号进行正交变换后得到的系数量子化后,分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是:
在削除了第1可变长度编码数据的结束代码后,将第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值设为OC,将最后压缩部分数据的代码量设为DB,将在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量设为IB,在第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值NOC比与第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲器占有值相关联的值(OC-DB+IB)还大的时候,对与第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据,令动作向量为0,而且,令动作补偿后的误差数据也为0进行编码后,使之与第2可变长度编码数据结合。
4.权利要求1到3中的任何一项所述的可变长度编码数据的处理方法,其特征是:上述压缩部分数据是作为帧压缩差分图像的画面,第1和第2可变长度编码数据分别是由多个画面构成的视频数据。
5.一种可变长度编码数据的处理装置,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是,具有:
结束代码削除器,用于削除第1可变长度编码数据的结束代码;
计算器,用于将第1可变长度编码数据的最后的压缩部分数据的解码定时处的缓冲器占有值设为OC,将最后压缩部分数据的代码量设为DB,将在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量设为IB,将第2可变长度编码数据的最初的压缩部分数据的解码定时处的缓冲器占有值设为NOC,计算与用(OC-DB+IB)表示的值和NOC的值的比较结果相对应的数据量,其中,当NOC<(OC-DB+IB)时,用{(OC-DB+IB)-NOC}表示该数据量,当NOC≥(OC-DB+IB)时该数据量为0;
无效数据附加器,用于把用计算器计算出来的数据量的无效数据追加到已削除了结束代码的第1可变长度编码数据的最后的压缩部分数据中去;
连接器,用于把第2可变长度编码数据结合到已附加上来自附加器的无效数据的第1可变长度编码数据的后边并向解码缓冲器输出。
6.一种可变长度编码数据的处理装置,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据在使输入信号进行正交变换后得到的系数量子化后,分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是具有:
代码量观测器,检测第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲占有值OC,最后的压缩部分数据的代码量DB,和在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量IB;
存储电路,将通过代码量观测器观测到的代码量IB,和第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值NOC,作为编码信息分别预先存储起来;
结束代码削除器,用于削除第1可变长度编码数据的结束代码;
计算器,用于根据从存储器中读出的编码信息,计算用(OC-DB+IB)表示的值并和缓冲占有值NOC进行比较,对削除量进行计算,当NOC>(OC-DB+IB)时,用{NOC-(OC-DB+IB)}表示削除量,当NOC≤(OC-DB+IB)时,削除量为0;
代码削除器,用于把与已从结束代码削除器中取出的第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据的交流成分对应的代码削除一个恰好从计算器输入的削除代码量;
连接器,用于使第2可变长度编码数据结合到从代码削除器输出出来的第1可变长度编码数据上。
7.一种可变长度编码数据的处理装置,将第1和第2可变长度编码数据进行结合后输出给解码器的缓冲器,其中,第1和第2可变长度编码数据在使输入信号进行正交变换后得到的系数量子化后,分别被可变长度编码为使解码器的缓冲器的占有值不上溢也不下溢,并使其后端具有结束代码,而且分别由多个压缩部分数据构成,其特征是具有:
代码量观测器,检测第1可变长度编码数据的最后的压缩部分数据的解码定时的缓冲占有值OC,最后的压缩部分数据的代码量DB,和在最后压缩部分数据被解码后到下一压缩部分数据被解码为止的时间内输入给解码器的代码量IB;
存储电路,将通过代码量观测器观测到的代码量IB,和第2可变长度编码数据的最初的压缩部分数据的解码定时的缓冲器占有值NOC,作为编码信息分别预先存储起来;
结束代码削除器,用于削除第1可变长度编码数据的结束代码;
计算器,用于根据从存储器中读出的编码信息,计算用(OC-DB+IB)表示的值并和缓冲占有值NOC进行比较,仅仅在NOC>(OC-DB+IB)时,才使代码变换标志变成规定值;
变换装置,用于在来自上述计算器的代码变换标志为规定值的时候,对来自结束代码削除器的第1可变长度编码数据的至少含有最后的压缩部分的数据的规定数的压缩部分数据中所述的数据,令动作向量为0,且令已进行了动作补偿的误差数据为0进行编码;
连接器,用于使第2可变长度编码数据结合到从变换装置输出出来的第1可变长度编码数据上。
8.权利要求6所述的可变长度编码数据的处理装置,其特征是:上述计算器还具有无效数据附加器,用于对无效数据量进行计算,当NOC<(OC-DB+IB)时,用{(OC-DB+IB)-NOC}表示无效数据量,当NOC≥(OC-DB+IB)时,无效数据为0,仅仅把从上述计算器输入的上述无效数据量的无效数据追加到从上述代码削除器输出的上述第1可变长度编码数据的最后的压缩部分数据中,然后再向上述连接器输出。
9.权利要求7所述的可变长度编码数据的处理装置,其特征是:上述计算器还具有无效数据附加器,用于对无效数据量进行计算,当NOC<(OC-DB+IB)时,用{(OC-DB+IB)-NOC}表示无效数据量,当NOC≥(OC-DB+IB)时,无效数据为0,仅仅把从上述计算器输入的上述无效数据量的无效数据追加到从上述变换装置输出的上述第1可变长度编码数据的最后的压缩部分数据中,然后再向上述连接器输出。
10.权利要求5到7中的任何一项所述的可变长度编码数据的处理装置,其特征是:上述压缩部分数据是作为帧压缩差分图像的画面,第1和第2可变长度编码数据分别是由多个画面构成的视频数据。
11.权利要求10所述的可变长度编码数据的处理装置,其特征是:把上述第1可变长度编码数据的最后的场面编码为静物画或近于静物画的图像的画面。
12.权利要求5到7中的任何一项所述的可变长度编码数据的处理装置,其特征是:对于多个可变长度编码数据,在规定的时间连续地重复上述第1和第2可变长度编码数据的结合。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP104951/1997 | 1997-04-22 | ||
JP104951/97 | 1997-04-22 | ||
JP10495197 | 1997-04-22 | ||
JP811098A JP3555729B2 (ja) | 1997-04-22 | 1998-01-19 | 可変長符号化データの処理方法及び装置 |
JP8110/98 | 1998-01-19 | ||
JP8110/1998 | 1998-01-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1210316A CN1210316A (zh) | 1999-03-10 |
CN1156796C true CN1156796C (zh) | 2004-07-07 |
Family
ID=26342557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB981073433A Expired - Lifetime CN1156796C (zh) | 1997-04-22 | 1998-04-21 | 可变长度编码数据的处理方法及装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6154494A (zh) |
JP (1) | JP3555729B2 (zh) |
KR (1) | KR100280592B1 (zh) |
CN (1) | CN1156796C (zh) |
TW (1) | TW395134B (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4275746B2 (ja) * | 1998-02-03 | 2009-06-10 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 符号化ビデオシーケンスの切り替え方法及びこれに対応する装置 |
US6483947B1 (en) * | 1998-03-17 | 2002-11-19 | Matsushita Electric Industrial Co., Ltd. | Video signal processing apparatus |
US6567554B1 (en) | 1999-03-12 | 2003-05-20 | Victor Company Of Japan, Limited | Data coding method and apparatus therefor |
JP2002142192A (ja) * | 2000-11-01 | 2002-05-17 | Sony Corp | 信号処理装置および方法、ならびに、記録装置および方法 |
US6836839B2 (en) | 2001-03-22 | 2004-12-28 | Quicksilver Technology, Inc. | Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements |
US7752419B1 (en) | 2001-03-22 | 2010-07-06 | Qst Holdings, Llc | Method and system for managing hardware resources to implement system functions using an adaptive computing architecture |
US7653710B2 (en) | 2002-06-25 | 2010-01-26 | Qst Holdings, Llc. | Hardware task manager |
US7962716B2 (en) | 2001-03-22 | 2011-06-14 | Qst Holdings, Inc. | Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements |
US20040133745A1 (en) | 2002-10-28 | 2004-07-08 | Quicksilver Technology, Inc. | Adaptable datapath for a digital processing system |
US6577678B2 (en) | 2001-05-08 | 2003-06-10 | Quicksilver Technology | Method and system for reconfigurable channel coding |
US7046635B2 (en) | 2001-11-28 | 2006-05-16 | Quicksilver Technology, Inc. | System for authorizing functionality in adaptable hardware devices |
US8412915B2 (en) | 2001-11-30 | 2013-04-02 | Altera Corporation | Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements |
US6986021B2 (en) | 2001-11-30 | 2006-01-10 | Quick Silver Technology, Inc. | Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements |
US7215701B2 (en) | 2001-12-12 | 2007-05-08 | Sharad Sambhwani | Low I/O bandwidth method and system for implementing detection and identification of scrambling codes |
US7403981B2 (en) | 2002-01-04 | 2008-07-22 | Quicksilver Technology, Inc. | Apparatus and method for adaptive multimedia reception and transmission in communication environments |
US7660984B1 (en) | 2003-05-13 | 2010-02-09 | Quicksilver Technology | Method and system for achieving individualized protected space in an operating system |
US7328414B1 (en) | 2003-05-13 | 2008-02-05 | Qst Holdings, Llc | Method and system for creating and programming an adaptive computing engine |
US8108656B2 (en) | 2002-08-29 | 2012-01-31 | Qst Holdings, Llc | Task definition for specifying resource requirements |
US7937591B1 (en) | 2002-10-25 | 2011-05-03 | Qst Holdings, Llc | Method and system for providing a device which can be adapted on an ongoing basis |
US8276135B2 (en) | 2002-11-07 | 2012-09-25 | Qst Holdings Llc | Profiling of software and circuit designs utilizing data operation analyses |
US7343087B2 (en) * | 2002-11-12 | 2008-03-11 | Matsushita Electric Industrial Co., Ltd. | Data stream playback device and method, digital broadcast receiver and related computer program |
US7225301B2 (en) | 2002-11-22 | 2007-05-29 | Quicksilver Technologies | External memory controller node |
KR100594459B1 (ko) * | 2004-11-23 | 2006-07-03 | 엘지전자 주식회사 | 화상데이터 최적디코딩기능이 구비된 이동통신단말기 및그 제어방법 |
US20060256854A1 (en) * | 2005-05-16 | 2006-11-16 | Hong Jiang | Parallel execution of media encoding using multi-threaded single instruction multiple data processing |
WO2011091323A1 (en) | 2010-01-21 | 2011-07-28 | Qst Holdings, Llc | A method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations |
US10395701B1 (en) * | 2018-05-09 | 2019-08-27 | Micron Technology, Inc. | Memory device with a latching mechanism |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100206261B1 (ko) * | 1992-02-28 | 1999-07-01 | 윤종용 | 디지탈 vtr의 영상신호 대역 압축장치 |
US5666161A (en) * | 1993-04-26 | 1997-09-09 | Hitachi, Ltd. | Method and apparatus for creating less amount of compressd image data from compressed still image data and system for transmitting compressed image data through transmission line |
JP3427505B2 (ja) * | 1994-08-25 | 2003-07-22 | 松下電器産業株式会社 | 画像符号化方法と編集装置 |
US5825313A (en) * | 1995-08-01 | 1998-10-20 | Sony Corporation | Information signal encoding apparatus, encoding method thereof, information signal decoding method, and information signal record medium thereof |
-
1998
- 1998-01-19 JP JP811098A patent/JP3555729B2/ja not_active Expired - Lifetime
- 1998-04-15 TW TW87105736A patent/TW395134B/zh not_active IP Right Cessation
- 1998-04-21 KR KR1019980014124A patent/KR100280592B1/ko not_active IP Right Cessation
- 1998-04-21 US US09/063,845 patent/US6154494A/en not_active Expired - Lifetime
- 1998-04-21 CN CNB981073433A patent/CN1156796C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
TW395134B (en) | 2000-06-21 |
KR100280592B1 (ko) | 2001-02-01 |
US6154494A (en) | 2000-11-28 |
JPH118850A (ja) | 1999-01-12 |
JP3555729B2 (ja) | 2004-08-18 |
KR19980081566A (ko) | 1998-11-25 |
CN1210316A (zh) | 1999-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1156796C (zh) | 可变长度编码数据的处理方法及装置 | |
US8213498B2 (en) | Bitrate reduction techniques for image transcoding | |
US20070242753A1 (en) | Coding and decoding method and apparatus using plural scanning patterns | |
US20070024474A1 (en) | Variable length coding method and variable length decoding method | |
EP1725043A2 (en) | Selection of and access to MPEG sub-frames without re-encoding | |
EP2395757A1 (en) | Image decoding device | |
JP2002135130A (ja) | 符号化信号分離・合成装置、差分符号化信号生成装置、符号化信号分離・合成方法、差分符号化信号生成方法、符号化信号分離・合成プログラムを記録した媒体および差分符号化信号生成プログラムを記録した媒体 | |
JPH08111867A (ja) | 動画像符号化方法及び動画像復号方法 | |
JP2010515397A (ja) | ビデオハードウェアにおける画像圧縮のためのアーキテクチャ | |
CN1496653A (zh) | 运动图象编码装置及运动图象解码装置 | |
WO2004032521A1 (ja) | 画像符号化装置、画像復号化装置およびこれらの方法 | |
JP2001258031A (ja) | 信号処理方法、画像符号化装置及び画像復号装置 | |
CN1669234A (zh) | 数字视频编码用可变精度图像间定时规定的方法和装置 | |
JP2003535523A (ja) | 映像信号符号化およびバッファ管理 | |
JPH10336586A (ja) | 画像処理装置および画像処理方法 | |
JP2005101731A (ja) | 可変長符号復号化装置および可変長符号復号化方法 | |
US7103102B2 (en) | Bit stream code lookup table for an MPEG-4 code word | |
JP7509143B2 (ja) | 画像処理装置および画像処理方法 | |
JP4100552B2 (ja) | 復号化方法 | |
CN117354531A (zh) | 一种视频数据的压缩方法、装置、终端设备和存储介质 | |
JP3201376B2 (ja) | 動画圧縮装置及び動画圧縮方法 | |
JP2003087797A (ja) | 画像情報変換装置及び方法、画像情報変換プログラム、並びに記録媒体 | |
JP2011151524A (ja) | 画像処理装置および方法 | |
JP2010041408A (ja) | 動画像符号化装置、動画像復号化装置、動画像符号化方法および動画像復号化方法 | |
CN101783950A (zh) | 一种图像显示方法、***及装置 |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: JVC KENWOOD CORPORATION Free format text: FORMER OWNER: VICTORY CO. LTD. Effective date: 20140228 |
|
TR01 | Transfer of patent right |
Effective date of registration: 20140228 Address after: Kanagawa Patentee after: JVC Kenwood Corp. Address before: Kanagawa Patentee before: Victory Co., Ltd. |
|
TR01 | Transfer of patent right | ||
CX01 | Expiry of patent term |
Granted publication date: 20040707 |
|
CX01 | Expiry of patent term |