CN100546389C - 信息处理装置和信息处理方法 - Google Patents
信息处理装置和信息处理方法 Download PDFInfo
- Publication number
- CN100546389C CN100546389C CNB2006100754216A CN200610075421A CN100546389C CN 100546389 C CN100546389 C CN 100546389C CN B2006100754216 A CNB2006100754216 A CN B2006100754216A CN 200610075421 A CN200610075421 A CN 200610075421A CN 100546389 C CN100546389 C CN 100546389C
- Authority
- CN
- China
- Prior art keywords
- image
- mentioned
- bit stream
- decoding
- decoded
- 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 - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/93—Regeneration of the television signal or of selected parts thereof
-
- 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/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- 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/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明的程序和信息处理装置生成索引文件和代理文件。比特流分析部件(32)对由比特流取得部件(31)取得的比特流进行分析,同时对由编码器(36)和代理文件存储部件(37)执行的处理的结果进行分析,生成索引文件,提供给索引文件存储部件(33)进行存储,进而将I图像和P图像提供给解码器(34)。解码器(34)对I图像和P图像进行解码,生成与P图像对应的非压缩基带图像,提供给编码器(36)。编码器(36)通过帧内编码将与所提供的P图像对应的非压缩基带图像数据编码为I图像,将所生成的I图像提供给代理文件存储部件(37),生成代理文件。本发明可以适用于重放装置。
Description
技术领域
本发明涉及程序、信息处理装置、信息处理方法以及记录介质,特别涉及适合于在进行随机重放时使用的程序、信息处理装置、信息处理方法和记录介质。
背景技术
作为动画图像数据的代表性的编码方式,可以列举以MPEG(moving picture experts group)编码方式为代表的动态补偿预测编码方式。
动态补偿预测编码方式大致区分有内部(intra)编码(帧内编码)和外部(inter)编码(帧间参照编码)的2种编码方式。在内部编码中,根据被编码图像内的宏块(macro-block)单位的相关关系来进行。在外部编码中,将被编码图像中在时间上为前后的图像作为参照图像,对根据该参照图像生成的预测图像与被编码图像的差分进行编码(例如参考专利文献1)。
专利文献1:日本特开平8-102951号公报
在现有的MPEG的解码(decode)中,在对P帧进行解码的情况下,对作为参照图像的之前的1帧或P帧进行解码而生成参照图像,并根据它对目标P帧进行解码。因此,在对位于GOP的最后的P帧进行解码的情况下,为了对目标P帧进行解码,就必须对多个帧进行解码。
另外,在对B帧进行解码的情况下,必须将其前后的P帧作为参照图像而利用,在对希望解码的B帧进行解码之前,必须先对前后的P帧进行解码。
因此,在随机重放(也称为扰乱(scramble)重放)等中,在希望对流(stream)内时间上分离的P帧、B帧进行重放的情况下,为了分别将除其以外的帧作为参照图像使用,就要花费解码时间,无法在短时间内对必要的影像进行解码并输出。
发明内容
本发明就是鉴于这样的状况而提出的,使得在进行随机重放的情况下,能够在短时间内输出必要的影像。
本发明的一个方面的程序使计算机执行包含以下步骤的处理:在比特流(bit stream)中,对前方向预测编码帧进行解码的前方向预测编码帧解码步骤;对通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧进行帧内编码的编码步骤;对比特流进行分析的分析步骤;根据与通过编码步骤的处理而生成的编码数据有关的编码信息和分析步骤的处理的分析结果,生成为了解码比特流所能够利用的属性信息的属性信息生成步骤。
还可以包含:根据通过编码步骤的处理而编码了的编码数据、通过属性信息生成步骤的处理而生成的属性信息,对比特流进行解码的比特流解码步骤。
在比特流解码步骤的处理中,可以包含:判断被解码的帧的编码类型的判断步骤;在通过判断步骤的处理,判断出被解码的帧是比特流中的帧内编码帧的情况下,对比特流中的被解码的帧内编码帧进行解码的第一解码步骤;在通过判断步骤的处理,判断出被解码的帧是比特流中的前方向预测编码帧的情况下,对通过编码步骤的处理编码了的编码数据中的与被解码的前方向预测编码帧对应的编码数据进行解码的第二解码步骤;在通过判断步骤的处理,判断出被解码的帧是比特流中的两方向预测编码帧的情况下,对两方向预测编码帧的解码所必需的比特流中的帧内编码帧进行解码生成参照图像,或者对与通过编码步骤的处理编码了编码数据中的与两方向预测编码帧的解码所必需的比特流的前方向预测编码帧对应的编码数据进行解码,生成参照图像的参照图像生成步骤;参照通过参照图像生成步骤的处理生成的参照图像,对比特流中的两方向预测编码帧进行解码的第三解码步骤。
在编码步骤的处理中,可以使得将通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧编码为固定速率(rate)的帧内编码数据。
在编码步骤的处理中,可以使得将通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧编码为变动速率的帧内编码数据。
可以使得在前方向预测编码帧解码步骤的处理中,选择性地对比特流中的规定个数的前方向预测编码帧进行解码,在编码步骤的处理中,对通过前方向预测编码帧解码步骤的处理而解码了的规定个数的前方向预测编码帧进行帧内编码。
还可以包含以下步骤:根据在与1帧对应的图像的显示内能够执行解码处理的帧个数、前方向预测编码帧的个数,设置通过前方向预测编码帧解码步骤的处理而选择性地被解码的规定个数的前方向预测编码帧的设置步骤。
还可以包含以下步骤:计算在与1帧对应的图像的显示时间内能够执行解码处理的帧个数的计算步骤。
在前方向预测编码帧解码步骤的处理中,可以选择性地对规定个数的被解码的前方向预测编码帧进行解码,使得比特流中的规定个数的前方向预测编码帧的连续个数最小。
本发明的一个方面的信息处理装置具备:对比特流中的前方向预测编码帧进行解码的前方向预测编码帧解码装置;对由前方向预测编码帧解码装置解码了的前方向预测编码帧进行帧内编码的编码装置;对比特流进行分析,根据比特流的分析结果和与由编码装置生成的编码数据有关的编码信息,生成为了解码比特流所能够利用的属性信息的属性信息生成装置。
还可以具备:根据由编码装置生成的编码数据、由属性信息生成装置生成的属性信息,对比特流进行解码的比特流解码装置。
本发明的一个方面的信息处理方法包含:对比特流中的前方向预测编码帧进行解码的前方向预测编码帧解码步骤;对通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧进行帧内编码的编码步骤;对比特流进行分析的分析步骤;根据与通过编码步骤的处理而生成的编码数据有关的编码信息和分析步骤的处理的分析结果,生成为了解码比特流所能够利用的属性信息的属性信息生成步骤。
在本发明的一个方面中,对前方向预测编码帧进行解码,对解码后的前方向预测编码帧进行帧内编码,对比特流进行分析,根据与编码有关的信息和分析结果,生成属性信息。能够在比特流的解码中利用该帧内编码数据和属性信息。
根据本发明的一个方面,能够生成比特流的属性信息,特别地对前方向预测编码帧进行解码,对解码后的前方向预测编码帧进行帧内编码,因此使用帧内编码后的帧、属性信息,能够高速地随机重放比特流。
附图说明
图1是表示适用了本发明的重放装置的结构的框图。
图2是表示图1的变换部件的结构的框图。
图3是用于对索引文件(index file)进行说明的图。
图4是用于对使I图像(I picture)的比特率固定的情况进行说明的图。
图5是用于对使I图像的比特率变动的情况进行说明的图。
图6是表示图1的重放部件的结构的框图。
图7是用于对随机重放P图像(P picture)的情况进行说明的图。
图8是用于对随机重放B图像(B picture)的情况进行说明的图。
图9是表示个人计算机(personal computer)的结构的框图。
图10是用于对在图9的个人计算机中实现的功能进行说明的功能框图。
图11是用于对代理文件(proxy file)生成处理1进行说明的流程图。
图12是用于对随机重放处理1进行说明的流程图。
图13是用于对变更了PI变换数的情况进行说明的图。
图14是用于对最小解码数进行说明的图。
图15是用于对最小解码数进行说明的图。
图16是用于对最小解码数进行说明的图。
图17是用于对最小解码数进行说明的图。
图18是用于对最小解码数进行说明的图。
图19是用于对变换的P图像的设置处理进行说明的流程图。
图20是用于对能够解码帧数计算处理进行说明的流程图。
图21是用于对所变换的P图像的设置进行说明的图。
图22是用于对代理文件生成处理2进行说明的流程图。
图23是用于对随机重放处理2进行说明的流程图。
具体实施方式
以下说明本发明的实施例,如果示例本发明的结构要素与说明书或附图所记载的实施例的对应关系,则如下。该记载用于确认支持本发明的实施例已经被记载在说明书或附图中。因此,虽然在说明书或附图中有记载,但作为与本发明的结构要素对应的实施例,即使是在此没有记载的实施例,该实施例也并不意味着不与该结构要素对应。相反,即使是作为与结构要素对应的实施例而在此有记载,也并不意味着该实施例不与该结构要素以外的结构要素对应。
本发明的一个方面的程序或信息处理方法使计算机执行包含以下步骤的处理:对比特流中的前方向预测编码帧(例如P图像)进行解码的前方向预测编码帧解码步骤(例如图11的步骤S5的处理);对通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧进行帧内编码的编码步骤(例如图11的步骤S7的处理);对比特流进行分析的分析步骤(例如图11的步骤S3的处理);根据与通过编码步骤的处理而生成的编码数据有关的编码信息(例如图3的代理文件图像大小(Proxy File Picture Size)、代理文件地址(Proxy File Address))和分析步骤的处理的分析结果,生成为了解码比特流所能够利用的属性信息(例如索引文件)的属性信息生成步骤(例如图11的步骤S11的处理)。
还可以包括:根据通过编码步骤的处理而编码了的编码数据、通过属性信息生成步骤的处理而生成的属性信息,对比特流进行解码的比特流解码步骤(例如图12的步骤S43~步骤S50的处理)。
比特流解码步骤的处理可以包含:判断被解码的帧的编码类型的判断步骤(例如图12的步骤S43~步骤S44的处理);在通过判断步骤的处理,判断出被解码的帧是比特流中的帧内编码帧(例如I图像)的情况下,对比特流中的被解码的帧内编码帧进行解码的第一解码步骤(例如图12的步骤S46的处理);在通过判断步骤的处理,判断出被解码的帧是比特流中的前方向预测编码帧(例如P图像)的情况下,对通过编码步骤的处理编码了的编码数据中的与被解码的前方向预测编码帧对应的编码数据进行解码的第二解码步骤(图12的步骤S45的处理);在通过判断步骤的处理,判断出被解码的帧是比特流中的两方向预测编码帧(例如B图像)的情况下,对两方向预测编码帧的解码所必需的比特流中的帧内编码帧进行解码而生成参照图像,或者对通过编码步骤的处理而编码了的编码数据中的与两方向预测编码帧的解码所必需的比特流的前方向预测编码帧所对应的编码数据进行解码而生成参照图像的参照图像生成步骤(图12的步骤S48的处理);参照通过参照图像生成步骤的处理生成的参照图像,对比特流中的两方向预测编码帧进行解码的第三解码步骤(图12的步骤S49的处理)。
在编码步骤的处理中,可以将通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧编码为固定速率(rate)的帧内编码数据(例如如图4所示那样地进行编码)。
在编码步骤的处理中,可以将通过前方向预测编码帧解码步骤的处理而解码了的前方向预测编码帧编码为变动速率的帧内编码数据(例如如图5所示那样进行编码)。
可以在前方向预测编码帧解码步骤的处理中,选择性地(例如使用图14~图18所说明的那样)对比特流中的规定个数的前方向预测编码帧进行解码,在编码步骤的处理中,对通过前方向预测编码帧解码步骤的处理而解码了的规定个数的前方向预测编码帧进行帧内编码。
还可以包含以下步骤:根据在与1帧对应的图像的显示内能够执行解码处理的帧个数(例如能够解码帧数)、前方向预测编码帧的个数,设置通过前方向预测编码帧解码步骤的处理而选择性地被解码的规定个数的前方向预测编码帧的设置步骤(例如图19所示的处理)。
还可以包含以下步骤:计算在与1帧对应的图像的显示时间内能够执行解码处理的帧个数(例如能够解码帧数)的计算步骤(例如图19的步骤S81的处理)。
在前方向预测编码帧解码步骤的处理中,选择性地对规定个数的被解码的前方向预测编码帧进行解码,使得比特流中的规定个数的前方向预测编码帧的连续个数最小(例如使用图14~图18所说明的那样)。
本发明的一个方面的信息处理装置是生成为了解码比特流所能够利用的信息的信息处理装置(例如图1的重放装置1或图9的个人计算机201),具备:对比特流中的前方向预测编码帧(P图像)进行解码的前方向预测编码帧解码装置(例如图2的解码器34);对由前方向预测编码帧解码装置解码了的前方向预测编码帧进行帧内编码的编码装置(例如图2的编码器36);对比特流进行分析,根据比特流的分析结果和与由编码装置生成的编码数据有关的编码信息(例如图3的代理文件图像大小、代理文件地址),生成为了解码比特流所能够利用的属性信息(例如索引文件)的属性信息生成装置(例如图2的比特流分析部件32)。
还可以具备:根据由编码装置生成的编码数据、由属性信息生成装置生成的属性信息,对比特流进行解码的比特流解码装置(例如图6的重放部件12)。
以下,参照附图说明本发明的实施例。
图1表示适用了本发明的重放装置1的结构例子。
重放装置1由变换部件11和重放部件12构成。
变换部件11例如接受通过MPEG2LongGOP流等帧间参照编码而编码了的比特流(由I图像(帧内编码帧)、P图像(前方向预测编码帧)、B图像(两方向预测编码帧)构成的比特流)的供给,生成在重放部件12中进行解码(decode)时所参照的索引文件,同时对所供给的比特流中的P图像进行编码(encode),通过变换为I图像而生成代理文件(proxy file),将索引文件和代理文件提供给重放部件12。对于变换部件11的详细,将在后面使用图2进行说明。
重放部件12接受包含I图像、P图像和B图像的比特流的供给,同时从变换部件11接受索引文件和代理文件的供给,根据用户的操作输入,对比特流进行解码,从用户希望的位置开始进行重放。对于重放部件12的详细,将在后面使用图6进行说明。
图2是表示图1的变换部件11的更详细的结构例子的框图。
比特流取得部件31接受包含I图像、P图像和B图像的比特流的供给,并提供给比特流分析部件32。
比特流分析部件32接受包含I图像、P图像和B图像的比特流的供给,将其中的I图像和P图像提供给解码器34。
另外,比特流分析部件32对解码器34、编码器36和代理文件存储部件37进行控制。另外,比特流分析部件32对所供给的比特流进行分析,同时对由编码器36执行的处理的结果和存储在后述的代理索引存储部件38中的信息进行分析,生成图3所示的索引(index)文件,并提供给索引文件存储部件33。
在图3所示的索引文件中,记载有对由比特流取得部件31取得并提供给比特流分析部件32的原始的比特流进行解码时所参照的信息。具体地说,在索引文件中,记载有显示顺序(display order)的图像的排列顺序、流顺序(stream order)的图像的排列顺序、以及用于将图像的排列从显示顺序变换为流顺序的图像的偏移量(Temporal Offset)。另外,在索引文件中,记载有:表示流顺序中的序列头(Sequence Header)的位置的信息,在图中,有序列头则记载为1,没有则记载为0;表示向前方向或后方向有无参照图像的信息(Forward/Backward Prediction(Picture Type))。
另外,在该例子中,表示向前方向或后方向有无参照图像的信息被记载为:所提供的比特流是OpenGOP的形式,将前方向参照帧(即P图像)记载为“10”,将两方向参照帧(即B图像)记载为“11”,另外将帧内编码数据(即I图像)记载为“00”。另外,在所提供的比特流是ColsedGOP的形式的情况下,接着帧内编码数据(即I图像)后面的2张B图像由于只参照后方向,所以记载“01”。
另外,在索引文件中,记载有各个图像的图像大小(PictureSize)、图像的流内或记录区域中的地址(Address)。另外,在索引文件中,记载有表示该图像与作为关键字帧(key frame)的图像(在此是进行帧内编码处理的I图像)的距离的信息(Key FrameOffset(十进制数))、用90KHz时钟的时间表示解码器的假想输入缓存器的积蓄量的VbvDelay(VBV:Video buffer verifier)。进而,在索引文件中,记载有表示为了对该图像进行解码所必需的前方向图像中的与离重放帧最远的帧之间的帧数(深度)的深度信息(Depth of Past Frames for Decoding)。
进而,在索引文件中,作为包含在代理文件中的与原始流中的P图像对应的帧,即与由编码器36编码了的I图像有关的编码信息,记载有图像大小(Proxy File Picture Size)、这些帧的地址(Proxy File Address)。这些信息被存储在后述的代理索引存储部件38中。
将在后面详细说明代理文件。
索引文件存储部件33存储从比特流分析部件32提供的使用图3所说明的索引文件,并输出到重放部件12。
解码器34对从比特流分析部件32提供的I图像和P图像进行解码,生成非压缩基带图像,将与P图像对应的非压缩基带图像数据提供给编码器36。这时,解码器34在作为其后解码的帧的参照图像而需要所生成了的非压缩基带图像的情况下,将所生成了的非压缩基带图像也提供给参照图像用存储器35而存储,在解码P图像的情况下,适当地参照存储在参照图像用存储器35中的参照用图像。
编码器36通过帧内编码将与所提供的P图像对应的非压缩基带图像数据编码为I图像,并将所生成的I图像提供给代理文件存储部件37。作为压缩处理时(生成I图像时)的参数,编码器36例如可以设置压缩率等。
参考图4,说明将从编码器36输出的I图像的比特率设置为固定的情况。
编码器36在使输出的I图像的比特率固定的情况下,例如生成I图像使得成为与代理文件存储部件37的存储容量等对应的规定的比特率。一般,利用了前方参照的P图像的信息量比I图像的信息量少,因此对于对P图像进行再压缩而编码为I图像时的比特率,如果设置为比变换前(P图像)的比特率大的比特率,则容易维持画质,是适合的。另外,也可以由用户设置该比特率。
接着,参照图5,说明将从编码器36输出的I图像的比特率设置为变动的情况。
编码器36从比特流分析部件32或解码器34取得原始的比特流的I图像(以GOP为单位时的先头的I图像)的速率,生成I图像使得成为与该值对应的比特率。一般,原始的压缩流的I图像的比特率反映了该GOP中的影像的复杂度。因此,通过与反映了GOP中的影像的复杂度的先头的I图像的比特率对应地,使从P图像变换而生成的I图像的比特率变动,能够防止画质的恶化。
所以,代理文件存储部件37根据从编码器36提供的用图4或图5说明那样地生成的从编码器36提供的I图像的数据,生成代理文件(proxy,即代理数据文件)并存储,输出到重放部件12。
代理索引存储部件38每次通过帧内编码将与所提供的P图像对应的非压缩基带图像数据编码为I图像而生成I图像时,作为与所生成的I图像有关的编码信息从编码器36取得图像大小(Proxy FilePicture Size)、这些帧的地址(Proxy File Address)并作为代理索引存储,提供给比特流分析部件32。
图6是表示图1的重放部件12的更详细的结构例子的框图。
重放部件12由操作输入取得部件51、解码处理部件52和重放影像输出部件53构成。
操作输入取得部件51接受用户的操作输入,向解码处理部件52提供表示用户的操作输入的信号。
解码处理部件52由索引文件取得部件61、解码控制部件62、比特流取得部件63、代理文件取得部件64、开关65、解码器66和参照图像用存储器67构成,根据从操作输入部件51提供的用户的操作输入,执行解码处理,并提供给重放影像输出部件53。
索引文件取得部件61取得从变换部件11的索引文件存储部件33输出的索引文件,提供给解码控制部件62。
比特流取得部件63取得提供给重放装置1的原始的比特流,根据从操作输入取得部件51提供的用户的操作输入,将重放输出的帧或重放输出的帧的解码所需要的帧输出到开关65。
代理文件取得部件64取得从变换部件11的代理文件存储部件37输出的代理文件,即从P图像变换生成的I图像的数据,根据从操作输入取得部件51提供的用户的操作输入,将重放输出的帧或重放输出的帧的解码所需要的帧输出到开关65。
开关65根据解码控制部件62的控制,将从比特流取得部件63提供的原始的比特流或从代理文件取得部件64提供的从P图像变换生成的I图像的任意一个提供给解码器66。
解码控制部件62根据从索引文件取得部件61提供的索引文件,切换开关65,控制提供给解码器66的比特流。具体地说,解码控制部件62在希望重放的帧是原始的比特流中的I图像的情况下,控制开关65使得将由比特流取得部件63提供的供给重放装置1的原始的比特流的I图像提供给解码器66。另外,解码控制部件62在希望重放的帧是原始的比特流中的P图像的情况下,控制开关65使得将由代理文件取得部件64提供的从P图像变换生成的I图像的数据提供给解码器66。另外,解码控制部件62在希望重放的帧是原始的比特流中的B图像的情况下,控制开关65使得将由代理文件取得部件64提供的从P图像变换生成的I图像的数据提供给解码器66,在对它们进行解码生成参照图像后,控制开关65使得将原始的比特流的B图像提供给解码器66。
解码器66对从开关65提供的压缩帧图像数据进行解码,生成非压缩基带图像,并提供给重放影像输出部件53。这时,解码器34在作为其后解码的帧的参照图像而需要所生成的非压缩基带图像的情况下,将所生成的非压缩基带图像提供给参照图像用存储器67而存储,在对P图像或B图像进行解码的情况下,适当地参照存储在参照图像用存储器67中的参照用图像。
重放影像输出部件53针对从解码器66提供的解码后的非压缩的图像数据(基带图像数据),根据需要进行例如颜色修正、大小修正、慢放时的字段控制等各种修正,使得正确地重放输出被解码了的图像,输出修正后的输出基带图像数据。
接着,参照图7,说明在重放部件12中对原始的比特流中的P图像进行解码的情况。
例如,在MPEG2LongGOP的比特流中重放输出P11帧的情况下,在现有技术中,能够如图7A所示,对作为包含P11的GOP的先头的I图像的I2帧进行解码,接着,在对P5、P8的帧进行解码生成了参照帧图像数据后,对目标的P11帧进行解码。
与此相对,在适用了本发明的重放部件12中重放输出P11帧的情况下,可以如图7B所示,从代理文件中抽出作为与P11帧对应的帧内压缩了的I图像的I11帧进行解码,并重放输出。
因此,在适用了本发明的重放部件12中重放输出P11帧的情况下,与现有的解码次数为4次相比,解码次数只有一次,能够高速地重放输出指定的帧。
接着,参照图8,说明在重放部件12中对原始的比特流中的B图像进行解码的情况。
例如,在MPEG2LongGOP的比特流中重放输出B12帧的情况下,在现有技术中,能够如图8A所示,对作为包含B12的GOP的先头的I图像的I2帧进行解码,接着,在对P5、P8、P11、P14帧进行解码生成了参照帧图像数据后,对目标的B12帧进行解码。
与此相对,在适用了本发明的重放部件12中重放输出B12帧的情况下,可以如图8B所示,对与作为B12帧的参照图像而必需的P11帧和P14帧对应的作为帧内压缩了的I图像的I11帧和I14帧进行解码,将它们作为参照图像对目标的B12帧进行解码而重放输出。
因此,在适用了本发明的重放部件12中重放输出B12帧的情况下,与现有的解码次数为6次相比,解码次数为3次,能够高速地重放输出指定的帧。
可以通过硬件执行上述一连串的处理,也可以通过软件执行。在该情况下,例如重放装置61由图9所示那样的个人计算机201构成。
在图9中,CPU(中央处理单元)221依照存储在ROM(只读存储器)222中的程序、或从硬盘226装载到RAM(随机访问存储器)223中的程序,执行各种处理。在RAM223中,也适当地存储在CPU221执行各种处理时所必需的数据等。
CPU221、ROM222和RAM223经由总线224相互连接。该总线224还与接口(I/F)225-1~225-3、HDD(硬盘驱动器)226、影像特殊效果声音混合处理部件227和信号处理部件228连接。
接口225-1与键盘202、鼠标203等输入设备连接。接口225-2与存储装置204连接,能够收发信息。另外,接口225-3与外部影像记录重放装置205-1~205-m连接,能够收发信息。HDD226对硬盘进行驱动,能够存储各种信息。
影像特殊效果声音混合处理部件227还与信号处理部件228、存储装置204和影像记录重放装置205-1~205-m连接,对从存储装置204和影像记录重放装置205-1~205-m的任意一个提供、或经由总线224从HDD226提供的影像信号实施特殊效果,或对声音进行混频等并提供给信号处理部件228输出,或者提供给存储装置204和影像记录重放装置205-1~205-m中的任意一个进行保存。
信号处理部件228还与显示器229和扬声器230连接,例如将从影像特殊效果声音混合处理部件227等提供的影像信号提供给显示器229进行显示,或者将声音信号提供给扬声器230进行声音输出。
显示器229例如由CRT(阴极射线管)、LCD(液晶显示器)等构成,显示从信号处理部件228提供的影像。扬声器对从信号处理部件228提供的声音进行重放输出。
总线224还根据需要与驱动器231连接,适当地安装磁盘、光盘、光磁盘或半导体存储器等可移动介质206,根据需要将从它们读出的计算机程序安装到HDD226中。
图10表示了用于说明在使用图9说明了的个人计算机201中,通过软件执行适用了本发明的处理的情况下的功能的一个例子的功能框图。
另外,对与图2、图6或图9的情况对应的部分附加同一符号,并适当地省略其说明。
通过由CPU221执行规定的程序,个人计算机201具有与图2的比特流分析部件32、解码器34和编码器36以及图6的解码控制部件62、开关65、解码器66和重放影像输出部件53一样的功能。
CPU221根据通过鼠标202或键盘203等输入设备输入的用户的操作,利用与参照图像用存储器35对应的RAM223的区域,对记录在存储装置204、外部影像记录重放装置205或与HDD226中的任意的区域对应的比特流存储部件281中的比特流中的I图像和P图像进行解码,只将P图像编码为I图像,由此生成代理文件,并存储到存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的代理文件存储部件37中。
进而,CPU221在每次通过帧内编码将与P图像对应的非压缩基带图像数据编码为I图像而生成I图像时,作为与所生成的I图像有关的编码信息,将图像大小(Proxy File Picture Size)、这些帧的地址(Proxy File Address)作为代理索引保存到与代理索引存储部件38对应的RAM223的区域中,同时对比特流进行分析,取得保存在代理索引存储部件38中的代理索引,生成用图3说明了的索引文件,并存储到存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的索引文件存储部件33中。
另外,CPU221根据通过鼠标202或键盘203等输入设备输入的用户的操作,接受要重放输出的帧的指令,参照存储在存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的索引文件存储部件33中的索引文件,与用图7和图8说明了的情况一样地,利用与参照图像用存储器67对应的RAM223的区域执行解码。
具体地说,CPU221的解码控制部件62在重放输出的帧是原始的比特流中的I图像的情况下,将存储在比特流存储部件381中的比特流中的对应的I图像提供给解码器66进行解码。另外,CPU221的解码控制部件62在重放输出的帧是原始的比特流中的P图像的情况下,将存储在代理文件存储部件37中的代理文件中的对应的I图像提供给解码器66进行解码。另外,CPU221的解码控制部件62在重放输出的帧是原始的比特流中的B图像的情况下,将存储在比特流存储部件381中的比特流中的重放的B图像前后的I图像、或存储在代理文件存储部件37中的代理文件中的与重放的B图像前后的P图像对应的I图像提供给解码器66进行解码,并存储在与参照图像用存储器67对应的RAM223的区域中,将它们作为参照图像,将原始的比特流中的重放的B图像提供给解码器66进行解码。
另外,对解码的帧图像数据通过CPU221的重放影像输出部件53实施各种处理,并输出到显示器229进行显示。
接着,参照图11的流程图,说明在图1的重放装置1中的使用图2说明了的变换部件11、或使用图9和图10说明了的个人计算机的CPU221中执行的代理文件生成处理1。
在步骤S1中,比特流取得部件31(CPU221)取得原始的比特流,提供给比特流分析部件32(CPU221的比特流分析部件32)。
在步骤S2中,比特流分析部件32(CPU221的比特流分析部件32)读入所提供的原始的比特流中的一个图像。
在步骤S3中,比特流分析部件32(CPU221的比特流分析部件32)对读入了的图像进行分析。即,比特流分析部件32取得用图3说明了的索引文件中的对应的图像的信息。
在步骤S4中,比特流分析部件32(CPU221的比特流分析部件32)判断读入了的图像是I图像还是P图像。在步骤S4中判断出不是I图像或P图像,即是B图像的情况下,处理前进到后述的步骤S10。
在步骤4中判断出是I图像或P图像的情况下,在步骤S5中,比特流分析部件32(CPU221的比特流分析部件32)将读入了的I图像或P图像提供给解码器34。解码器34对所提供的I图像或P图像进行解码,并存储在参照图像用存储器35中。
在步骤S6中,解码器34(CPU221的解码器34)判断解码了的图像是否是P图像。在步骤S6中,在判断出解码了的图像不是P图像,即是I图像的情况下,处理前进到后述的步骤S10。
在步骤S6中判断出解码了的图像是P图像的情况下,在步骤S7中,解码器34(CPU221的解码器34)将与解码了的P图像对应的非压缩图像帧提供给编码器36(CPU221的编码器36)。编码器36将所提供的非压缩图像帧编码为I图像,提供给代理文件存储部件37(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的代理文件存储部件37)。
在步骤S8中,代理文件存储部件37(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的代理文件存储部件37)存储由解码生成的I图像构成的代理文件。
在步骤S9中,作为与所生成的I图像有关的编码信息,编码器36将图像大小(Proxy File Picture Size)、这些帧的地址(ProxyFile Address)的索引信息,即代理索引提供给代理索引存储部件38。代理索引存储部件38存储该图像的代理索引。
在步骤S4中判断出读入的图像不是I图像或P图像,即是B图像的情况下,在步骤S6中判断出解码了的图像不是P图像,即是I图像的情况下,或者在步骤S9的处理结束后,在步骤S10中,比特流分析部件32(CPU221)判断全部的图像的处理是否结束了。在步骤S10中判断出全部的图像的处理还没有结束的情况下,处理返回到步骤S2,重复进行以后处理。
在步骤S10中判断出全部的图像的处理结束了的情况下,在步骤S11中,比特流分析部件32(CPU221的比特流分析部件32)根据各个图像的分析结果、存储在代理索引存储部件38中的由编码器36编码为I图像的帧,即从P图像变换为I图像的帧的图像大小(Proxy File Picture Size)和地址(Proxy File Address),生成用图3说明了的索引文件,并提供给索引文件存储部件33(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的索引文件存储部件33)进行存储,结束处理。
通过这样的处理,在对原始的比特流中的P图像进行了解码后,生成记载有通过编码为I图像而生成的I图像的代理文件、与包含在原始比特流和代理文件中的I图像(在原始的比特流中是P图像)有关的信息的索引文件。
接着,参照图12的流程图,说明在图1的重放装置1中的用图6说明了的重放部件12或用图9和图10说明了的个人计算机的CPU221中执行的随机重放处理1。
在步骤S41中,比特流取得部件63(CPU221)取得原始的比特流,代理文件取得部件64(CPU221)取得在变换部件11中生成的代理文件,索引文件取得部件61(CPU221)取得在变换部件11中生成的索引文件。
在步骤S42中,解码控制部件62(CPU221的解码控制部件62)根据由操作输入取得部件51取得的用户的操作输入,读入接着要重放的I图像的索引数据。
在步骤S43中,解码控制部件62(CPU221的解码控制部件62)判断接着要重放的图像是否是B图像。
在步骤S43中判断出接着要重放的图像不是B图像,即是I图像或P图像的情况下,在步骤S44中,解码控制部件62(CPU221的解码控制部件62)判断接着要重放的图像是否是原始比特流中的P图像。
在步骤S44中判断出接着要重放的图像是原始比特流中的P图像的情况下,在步骤S45中,解码控制部件62(CPU221的解码控制部件62)控制开关65(CPU221的开关65),将包含在由代理文件取得部件64取得的代理文件中的I图像,即与原始比特流的P图像对应的I图像,提供给解码器66(CPU221的解码器66)。解码器66对提供的I图像进行解码,提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出,处理前进到后述的步骤S50。
在步骤S44中判断出接着要重放的图像不是原始比特流中的P图像,即是原始比特流中的I图像的情况下,在步骤S46中,解码控制部件62(CPU221的解码控制部件62)控制开关65,将由比特流取得部件63取得的原始的比特流中的对应的I图像提供给解码器66。解码器66对提供的I图像进行解码,并提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出,处理前进到后述的步骤S50。
在步骤S43中判断出接着要重放的图像是B图像的情况下,在步骤S47中,解码控制部件62(CPU221的解码控制部件62)参照由索引外文件取得部件61取得的索引文件,控制开关65将应该解码的B图像的前后的原始的比特流的I图像或代理文件的I图像提供给解码器66。解码器66读入所提供的I图像。
在步骤S48中,解码器66(CPU221的解码器66)对读入的I图像进行解码,并存储到参照图像用存储器67(RAM223的与参照图像用存储器67对应的区域)中。
在步骤S49中,解码控制部件62(CPU221的解码控制部件62)控制开关65,将由比特流取得部件63取得的原始的比特流中的应该重放的B图像提供给解码器66。解码器66参照存储在参照图像用存储器67中的参照图像对提供的B图像进行解码,提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出。
在步骤S45、步骤S46或步骤S49的处理结束后,在步骤S50中,解码控制部件62(CPU221的解码控制部件62)判断接收到重放指令的全部图像的处理是否结束了。在步骤S50中判断出接收到重放指令的全部图像的处理还没有结束的情况下,处理返回到步骤S42,重复进行以后的处理。在步骤S50中判断出接收到重放指令的全部图像的处理已经结束的情况下,结束处理。
如用图7和图8所说明的那样,通过这样的处理,与现有技术相比缩短了用于对P图像、B图像进行解码的时间。
这样,适用了本发明的重放装置1包括:接受压缩了的比特流的供给,对其进行分析生成索引文件,同时将P图像变换为I图像生成代理文件的变换部件11;根据压缩了的比特流、索引文件和代理文件,依照用户的操作输入,高速地实现规定的帧的解码处理的重放部件12。
另外,适用了本发明的个人计算机201通过执行规定的程序,可以具有与图1的重放装置1一样的变换部件11和重放部件12的功能。
在变换部件11中,从所提供的原始的比特流中,只对I图像和P图像进行解码,再次地只将与P图像对应的帧编码为I图像,由此生成代理文件。
这时,所生成的代理文件的I图像的数据速率可以是固定速率,也可以与原始的比特流所对应的GOP的先头的I图像的帧速率对应地进行变动(可变速率)。
另外,在变换部件11中生成的索引文件中包含以下信息,即不只是原始的比特流的解码所必需的信息,还有与将包含在代理文件中的I图像,即在原始的比特流中是P图像的帧编码为I图像后的帧有关的图像大小、地址等的信息。
在重放部件12中,在参照索引文件对原始的比特流中的I图像进行解码并进行重放输出的情况下,对原始的比特流的对应的I图像进行解码,在对原始的比特流中的P图像进行解码并进行重放输出的情况下,对代理文件的对应的I图像(原始的比特流中的P图像)进行解码,在对原始的比特流中的B图像进行解码并进行重放输出的情况下,对要重放输出的B图像的前后的原始的比特流的I图像、或代理文件的I图像(原始的比特流中的P图像)进行解码并用作参照图像,对原始的比特流的B图像进行解码。
由此,能够缩短随机生成中的解码时间。
另外,如上所述,进行将P图像变换为I图像的PI变换,并一边切换变换前的流和变换后的部分一边用于解码处理,由此能够缩短解码时间提高随机访问性能。但是,在进行编辑和重放之前,将原始的流中的P图像的部分变换为I图像的处理需要花费时间。例如如果1GOP为15帧的流中的P图像是5帧,则需要花费用于对全部该5帧进行解码并变换为I图像(解码后的再次编码)的时间。
因此,图2的比特流分析部件32在进行PI变换时,也可以控制解码器34、编码器36、代理文件存储部件37,使得不将全部的P图像变换为I图像,而是根据需要只将一部分的P图像变换为I图像生成代理文件并存储。
进行PI变换的处理时间依赖于变换为I图像(解码后的再次编码)的P图像的个数,因此如果减少变换的图像的张数,则能够缩短处理时间(代理文件的生成时间)。理想的是比特流分析部件32将解码变换后的流所需要的最长帧数没有超过解码器的能力,作为用于决定变换的图像张数的判断基准。解码变换后的流所需要的最长帧数(以下,也称为能够解码帧数)例如也根据重放模式是扰乱重放还是通常重放而不同。
具体地说,能够解码帧数例如可以是预先设置(直接指定帧数),也可以是通过上位应用程序指定。例如,可以根据用于解码处理的解码器或CPU的个数、时钟频率来设置能够解码帧数。在这样的情况下,比特流分析部件32不需要计算出能够解码帧数,而可以取得指定的能够解码帧数。
与此相对,例如在只指定能够从上位应用程序提供给解码处理的时间分配T(例如20ms)的情况下,比特流分析部件32必须计算出能够解码帧数。
另外,这时,比特流分析部件32如果选择变换为I图像的P图像使得变换的P图像尽量不连续,则与能够解码帧数对应的变换为I图像的P图像的个数变少,是适合的。
参照图13,说明1GOP为15帧,P图像的个数N=4的情况(IBBPBBPBBPBBPBB)下的PI变换的变形。
例如在不进行PI变换的情况下,有效的序列(除了B图像以外的I图像和P图像的5帧的图像类型)是IPPPP,最长解码时间是在是Open GOP并且不是流的先头的GOP的情况下对在流顺序中接着I图像后面的2张B图像(例如图7、图8中的B0B1)进行解码时的7帧的解码时间。
另外,如上所述,在对4张P图像的全部进行PI变换的情况下,有效序列是IIIII,最长解码时间是对任意的B图像进行解码的情况下的3帧的解码时间。
与此相对,通过不对变换对象的P图像的全部进行变换,而是减少为一定个数,则随机解码的最长解码时间如图13所示那样变动。即,在只对4张P图像中的1张进行PI变换的情况下,通过选择变换为I图像的P图像使得变换的P图像尽量不连续,有效序列成为IPIPP或IPPIP,最长解码时间成为5帧的解码时间。另外,在只对4张P图像中的2张进行PI变换的情况下,通过选择变换为I图像的P图像使得变换的P图像尽量不连续,有效序列成为IPIIP、IIPIP或IPIPI,最长解码时间成为4帧的解码时间。
另外,在只对4张P图像中的1张进行PI变换的情况下,以及在只对4张P图像中的2张进行PI变换的情况下,最长解码时间缩短的只有选择变换为I图像的P图像使得变换的P图像尽量不连续的情况,即图13所示的有效序列的情况,例如如果是对2个图像进行PI变换的情况,则是选择变换的P图像使得在变换后的序列中P图像不连续有2张的情况,如果是对1个图像进行PI变换的情况,则是选择变换的P图像使得在变换后的序列中P图像不连续有3张的情况。
接着,参照图14~图18,说明不对变换的对象的P图像的全部进行变换,而减少为一定个数的情况的具体解码处理。
参照图14,说明只对4张P图像中的1张进行PI变换而有效序列为IPIPP的情况的解码处理。
如图14A所示,在显示顺序中,将包含在排列为B0、B1、I2、B3、B4、P5、B6、B7、P8、B9......的15张的帧中的4张P图像中的P8图像变换为I图像,作为代理文件准备I8图像的情况下,解码时间最长的是对B0或B1进行解码的情况,这时需要进行解码的是如图14B所示,在作为参照图像的I8、P11、P14、I2的基础上,还有B0或B1(在图14B中,图示为B0)的5个图像。
接着,参照图15,说明同样只对4张P图像中的1张进行PI变换,有效序列为IPPIP的情况下的解码处理。
如图15A所示,在显示顺序中,将包含在排列为B0、B1、I2、B3、B4、P5、B6、B7、P8、B9......的15张的帧中的4张P图像中的P11图像变换为I图像,作为代理文件准备I11图像的情况下,解码时间最长的是对B9或B10进行解码的情况,这时需要进行解码的是如图15B所示,在作为参照图像的I2、P5、P8、I11的基础上,还有B9或B10(在图15B中,图示为B9)的5个图像。
另外,在只对4张P图像中的1张进行PI变换的全部情况下,最长解码时间不应该是5张。即,最长解码时间为5张的是如图14和图15所示,只是变换后的P图像不连续有3张的情况。在除此以外的情况下,例如变换后的序列为IIPPP的情况或IPPPI的情况等下,产生了最长解码时间为需要6个图像的情况,减少了PI变换的效果。
接着,参照图16,说明对4张P图像中的2张进行PI变换,有效序列为IPIIP的情况下的解码处理。
如图16A所示,在显示顺序中,将包含在排列为B0、B1、I2、B3、B4、P5、B6、B7、P8、B9......的15张的帧中的4张P图像中的P8图像和P11图像变换为I图像,作为代理文件准备I8图像和I11图像的情况下,解码时间最长的是对B6或B7、或者B0或B1进行解码的情况,这时需要进行解码的是如图16B所示,在作为参照图像的I2、P5、I8的基础上,还有B6或B7(在图16B中,图示为B6)的4个图像,或者在作为参照图像的I11、P14、I2的基础上,还有B0或B1(在图16B中,图示为B0)的4个图像。
同样,图17是用于说明对4张P图像中的2张进行PI变换,有效序列为IIPIP的情况下的解码处理的图,图18是用于说明对4张P图像中的2张进行PI变换,有效序列为IPIPI的情况下的解码处理的图。
如图17A所示,在显示顺序中,将包含在排列为B0、B1、I2、B3、B4、P5、B6、B7、P8、B9......的15张的帧中的4张P图像中的P5图像和P11图像变换为I图像,作为代理文件准备I5图像和I11图像的情况下,解码时间最长的是对B9或B10、或者B0或B1进行解码的情况,这时需要进行解码的是如图17B所示,在作为参照图像的I5、P8、I11的基础上,还有B9或B10(在图17B中,图示为B9)的4个图像,或者在作为参照图像的I11、P14、I2的基础上,还有B0或B1(在图17B中,图示为B0)的4个图像。
另外,如图18A所示,在显示顺序中,将包含在排列为B0、B1、I2、B3、B4、P5、B6、B7、P8、B9......的15张的帧中的4张P图像中的P8图像和P14图像变换为I图像,作为代理文件准备I8图像和I14图像的情况下,解码时间最长的是对B6或B7、或者B12或B13进行解码的情况,这时需要进行解码的是如图18B所示,在作为参照图像的I2、P5、I8的基础上,还有B6或B7(在图18B中,图示为B6)的4个图像,或者在作为参照图像的I8、P11、I14的基础上,还有B12或B13(在图18B中,图示为B12)的4个图像。
另外,在该情况下,同样地在对4张P图像中的2张进行PI变换的全部情况下最长解码时间不应该是4张图像。即,最长解码时间为4张的是如图16~图18所示,只有变换后的P图像不连续有2张那样的情况。在除此以外的情况下,例如在变换后的序列为IIPPI的情况或IPPII的情况等下,减少了PI变换的效果。
另外,在图14~图18中,说明了I图像或P图像之间的B图像的个数分别是2个的情况,但即使I图像或P图像之间的B图像的个数为2张以上的若干个,由于连续的B图像的解码所需要的参照图像的张数是一样的,所以各个情况下的最长解码时间当然是一样的。
接着,参照图19的流程图,说明变换的P图像的设置处理。
在步骤S81中,执行在后面用图20说明的能够解码帧数计算处理,求出能够解码帧数。
另外,变换部件11的比特流分析部件32例如在预先确定能够解码帧数,或者从上位应用程序指定的情况下,在步骤S81中不执行能够解码帧数计算处理,可以取得预先确定或从上位应用程序指定的能够解码帧数。
假设由比特流取得部件31取得的比特流的1GOP中的P图像的个数为N,能够解码帧数为X,则在步骤S82中,变换部件11的比特流分析部件32判断是否是N+3>X。
在步骤S82中判断出不是N+3>X的情况下,在步骤S83中,比特流分析部件32不进行PI变换,结束处理。
在是N+3≤X的情况下,在不进行PI变换的比特流中解码时间最长的帧的解码处理所需要的时间比对能够解码帧数X进行解码所需要的时间还短。即,在这样的情况下,不需要进行PI变换。
在步骤S82中判断出是N+3>X的情况下,换一种说法,在判断出在不进行PI变换的比特流中解码时间最长的帧的解码处理所需要的时间比对能够解码帧数X进行解码所需要的时间长的情况下,在步骤S84中,比特流分析部件32将PI变换后的序列中来得及进行解码处理的P图像的最大连续数的PI跳过(skip)数S假设为X-3。
在步骤S85中,比特流分析部件32在S=X-3的情况下,判断是否是N/S>1。
在步骤S85中判断出是N/S>1的情况下,在步骤S86中,比特流分析部件32将PI跳过数S设置为X-3。
在步骤S85中判断出不是N/S>1的情况下,在步骤S87中,比特流分析部件32将PI跳过数S设置为N/2(其中在不是整数的情况下为接近值的整数)。
在步骤S86或步骤S87的处理结束后,在步骤S88中,比特流分析部件32根据PI跳过数S设置变换的P图像,结束处理。
通过这样的处理,根据能够解码帧数和1GOP中的P图像的个数,求出在PI变换后的序列中来得及进行解码处理的P图像的最大连续数的PI跳过数,根据它设置变换为I图像的P图像。这样,在尽量减少PI变换的P图像的个数的情况下,与全部将P图像复原为I图像的情况相比,能够削减用于生成代理文件的时间。将使用图12在后面说明变换为I图像的P图像的具体设置例子。
接着,参照图20的流程图,说明在图19的步骤S81中执行的能够解码帧数计算处理。
在步骤S101中,比特流分析部件32例如设置1秒钟30帧或1秒钟15帧等的单位时间的显示帧数。
在步骤S102中,比特流分析部件32从1帧显示周期中减去用于其他处理的时间,设置在1帧显示中进行解码处理的时间T。
具体地说,例如如果在解码以外的处理中每帧都使用了13ms,则在1秒钟30帧显示的情况下,成为1/30=33ms,33-13=20ms,将20ms设置为在1帧显示中进行解码处理的时间T,在1秒钟15帧显示的情况下,成为1/15=66ms,66-13=53ms,将53ms设置为在1帧显示中进行解码处理的时间T。
在步骤S103中,比特流分析部件32对大于等于1GOP的解码对象流进行解码,测量平均1帧解码时间A。
另外,在步骤S104中,比特流分析部件32计算T÷A,将小于等于T÷A的整数的最大值作为能够解码帧数X,处理返回到图19的步骤S81,前进到步骤S82。
通过这样的处理,计算出能够解码帧数X,并用于PI变换的P图像的设置中。
使用图21,说明包含在1GOP中的P图像的个数N是N=11的情况下的能够解码帧数X与PI跳过数S的关系、以及变换为I图像的P图像的设置。
例如在X=4,S=1的情况下,由于PI变换后的P图像不能连续存在,所以PI变换后的序列为IPIPIPIPIPIP。另外,例如在X=5,S=2的情况下,由于PI变换后的P图像只会连续存在2张,所以PI变换后的序列为IPPIPPIPPIPP。另外,例如在X=6,S=3的情况下,由于PI变换后的P图像只会最多连续存在3张,所以PI变换后的序列为IPPPIPPPIPPP。
另外,例如在X=7,S=4的情况下,由于PI变换后的P图像最多可以连续存在4张,所以PI变换后的序列可以单纯地为IPPPPIPPPPIP,如果P图像的连续数小于等于4张,并且变换为I图像的个数小于等于2张,则也可以是除此以外的序列(例如IPPPPIPPPIPP等)。其中,连续的P图像的个数理想的是尽量少,因此在X=7,S=4的情况下,与X=6,S=3的情况一样,有效序列为IPPPIPPPIPPP的情况使得PI变换的图像数是一样的,能够进一步缩短最长解码时间,是适合的。
另外,例如在X=8,S=5的情况下,由于PI变换后的P图像最多可以连续存在5张,所以PI变换后的序列为IPPPPPIPPPPP,进而,例如在X=9,S=5的情况下,在上述步骤S85中判断为N/S>1,因此,比特流分析部件32根据N/2(其中在不是整数的情况下,是接近的整数),将PI跳过数S设置为S=5。另外,在14(=N+3)>X≥10的情况下,在上述步骤S85中判断为N/S>1,因此比特流分析部件32也将PI跳过数S设置为S=5。这时,PI变换后的序列为IPPPPPIPPPPP。
另外,在X≥14(=N+3)的情况下,判断为不需要进行PI变换。
接着,参照图22的流程图,说明在图1的重放装置1中的用图2说明了的变换部件11、或用图9和图10说明的个人计算机的CPU221中执行的代理文件生成处理2。
在步骤S131~步骤S136中,执行与用图11说明了的步骤S1~步骤S6一样的处理。
即,比特流取得部件31(CPU221)取得原始的比特流,提供给比特流分析部件32(CPU221的比特流分析部件32)。比特流分析部件32(CPU221的比特流分析部件32)读入所提供的原始的比特流中的1个图像进行分析。即,比特流分析部件32取得用图3说明了的索引文件中的对应的图像的信息。
然后,比特流分析部件32(CPU221的比特流分析部件32)判断读入的图像是I图像还是P图像。在判断出不是I图像或P图像,即是B图像的情况下,处理前进到后述的步骤S141。
在判断出是I图像或P图像的情况下,比特流分析部件32(CPU221的比特流分析部件32)将读入的I图像或P图像提供给解码器34。解码器34对提供的I图像或P图像进行解码,存储在参照图像用存储器35中。
然后,解码器34(CPU221的解码器34)判断解码了的图像是否是P图像。在判断出解码了的图像不是P图像,即是I图像的情况下,处理前进到后述的步骤S141。
在步骤S136中判断出解码了的图像是P图像的情况下,在步骤S137中,解码器34(CPU221的解码器34)根据比特流分析部件32的控制,判断该P图像是否是上述的在变换的P图像的设置处理中被设置为变换为I图像的需要进行变换的P图像。在步骤S137中判断出不是需要进行变换的P图像的情况下,处理前进到后述的步骤S141。
在步骤S137中判断出是需要进行变换的P图像的情况下,在步骤S138中,解码器34(CPU221的解码器34)将与解码后的P图像对应的非压缩图像帧提供给编码器36(CPU221的编码器36)。编码器36将所提供的非压缩图像帧编码为I图像,并提供给代理文件存储部件37(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的代理文件存储部件37)。
在步骤S139中,代理文件存储部件37(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的代理文件存储部件37)存储由编码生成的I图像构成的代理文件。
在步骤S140中,作为与生成的I图像有关的编码信息,编码器36将图像大小(Proxy File Picture Size)、这些帧的地址(ProxyFile Address)的索引信息,即代理索引提供给代理索引存储部件38。代理索引存储部件38存储该图像的代理索引。
在步骤S134中判断出读入的图像不是I图像或P图像,即是B图像的情况下,在步骤S136中判断出解码了的图像不是P图像,即是I图像的情况下,在步骤S137中判断出不是需要进行变换的P图像的情况下,或者在步骤S140的处理结束后,在步骤S141中,比特流分析部件32(CPU221)判断全部的图像的处理是否结束了。在步骤S141中判断出全部的图像的处理还没有结束的情况下,处理返回到步骤S132,重复进行以后的处理。
在步骤S141中判断出全部的图像的处理结束了的情况下,在步骤S142中,比特流分析部件32(CPU221的比特流分析部件32)根据各个图像的分析结果、存储在代理索引存储部件38中的由编码器36编码为I图像的帧,即从P图像变换为I图像的帧的图像大小(Proxy File Picture Size)和地址(Proxy File Address),生成用图3说明了的索引文件,并提供给索引文件存储部件33(存储装置204、外部影像记录重放装置205或与HDD226中的任意区域对应的索引文件存储部件33)进行存储,结束处理。
通过这样的处理,在对原始的比特流中的P图像中的被设置为变换为I图像的P图像进行了解码后,生成记载有通过编码为I图像而生成的I图像的代理文件、与包含在原始比特流和代理文件中的I图像(在原始的比特流中是P图像)有关的信息的索引文件。
接着,参照图23的流程图,说明在图1的重放装置1中的用图6说明了的重放部件12或用图9和图10说明了的个人计算机的CPU221中执行的随机重放处理2。
在步骤S171~步骤S174中,执行与用图12说明了的步骤S41~步骤S44一样的处理。
即,比特流取得部件63(CPU221)取得原始的比特流,代理文件取得部件64(CPU221)取得在变换部件11中生成的代理文件,索引文件取得部件61(CPU221)取得在变换部件11中生成的索引文件。
然后,解码控制部件62(CPU221的解码控制部件62)根据由操作输入取得部件51取得的用户的操作输入,读入接着要重放的一个图像的索引数据,判断接着要重放的图像是否是B图像。在判断出不是B图像的情况下,处理前进到后述的步骤S178。
在判断出接着要重放的图像不是B图像,即是I图像或P图像的情况下,解码控制部件62(CPU221的解码控制部件62)判断接着要重放的图像是否是原始的比特流中的P图像。在判断出不是原始的比特流中的P图像的情况下,处理前进到后述的步骤S177。
然后,在步骤S174中判断出接着要重放的图像是原始的比特流中的P图像的情况下,在步骤S175中,解码控制部件62(CPU221的解码控制部件62)判断接着要重放的P图像是否是在作成代理文件时变换为I图像的P图像。
在步骤S175中判断出接着要重放的P图像是在作成代理文件时变换为I图像的P图像的情况下,在步骤S176中,解码控制部件62(CPU221的解码控制部件62)控制开关65(CPU221的开关65),将包含在由代理文件取得部件64取得的代理文件中的I图像,即与原始比特流的P图像对应的I图像,提供给解码器66(CPU221的解码器66)。解码器66对提供的I图像进行解码,提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出,处理前进到后述的步骤S181。
在步骤S174中判断出接着要重放的图像不是原始比特流中的P图像,即是原始比特流中的I图像的情况下,或者在步骤S175中判断出接着要重放的P图像不是作成代理文件时变换为I图像的P图像(即,是在作成代理文件时没有变换为I图像的P图像)的情况下,在步骤S177中,解码控制部件62(CPU221的解码控制部件62)控制开关65,将由比特流取得部件63取得的原始的比特流中的对应的I图像或P图像提供给解码器66。解码器66对提供的I图像或P图像进行解码,并提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出,处理前进到后述的步骤S181。
另外,在为了解码P图像而要参照的P图像是在作成代理文件时变换为I图像的P图像的情况下,作为参照图像,当然使用包含在代理文件中的I图像。
在步骤S173中判断出接着要重放的图像是B图像的情况下,在步骤S178中,解码控制部件62(CPU221的解码控制部件62)参照由索引文件取得部件61取得的索引文件,控制开关65将应该解码的B图像的前后的原始比特流的I图像或P图像、或者代理文件的I图像提供给解码器66。解码器66读入所提供的I图像或P图像。
在步骤S179中,解码器66(CPU221的解码器66)对读入的I图像或P图像进行解码,并存储到参照图像用存储器67(RAM223的与参照图像用存储器67对应的区域)中。
在步骤S180中,解码控制部件62(CPU221的解码控制部件62)控制开关65,将由比特流取得部件63取得的原始的比特流中的应该重放的B图像提供给解码器66。解码器66参照存储在参照图像用存储器67中的参照图像对提供的B图像进行解码,提供给重放影像输出部件53(CPU221的重放影像输出部件53)进行输出。
在步骤S176、步骤S177或步骤S180的处理结束后,在步骤S181中,解码控制部件62(CPU221的解码控制部件62)判断接收到重放指令的全部图像的处理是否结束了。在步骤S181中判断出接收到重放指令的全部图像的处理还没有结束的情况下,处理返回到步骤S172,重复进行以后的处理。在步骤S181中判断出接收到重放指令的全部图像的处理已经结束的情况下,结束处理。
通过这样的处理,与生成代理文件所花费的时间比用图11和图12说明了的情况短无关地,解码P图像、B图像所花费的时间比现有技术的情况缩短,因此解码处理不会出现问题。
通过这样的操作,与能够解码帧数对应地,求出PI变换的P图像(解码后,再次被编码为I图像的P图像)的个数,设置对哪个P图像进行变换,因此能够一边减少将P图像变换为I图像所需要的变换时间(换一种说法,就是代理文件的生成时间),一边利用代理文件减少解码处理的最长解码时间。
另外,在此说明了由一个装置构成具有变换部件11和重放部件12的重放装置1,但变换部件11和重放部件12当然也可以构成为各自不同的装置。
另外,可以如上所述通过硬件执行上述一连串的处理,也可以通过软件执行。
在通过软件执行一连串的处理的情况下,可以从网络或记录介质将构成该软件的程序安装到组装在专用的硬件中的计算机、或通过安装各种程序而能够执行各种功能的例如通用的个人计算机等中。
该记录介质如图9所示,不只可以由与装置本体分开的用于向用户提供程序而发布的记录有程序的磁盘(包含软盘)、光盘(CD-ROM)、DVD(包含数字通用盘(Digital Versatile Disk))、光磁盘(包含MD(Mini-Disk))或半导体存储器等构成的可移动介质206构成,还可以由在预先安装在装置本体中的状态下向用户提供的记录有程序的ROM222、包含在HDD226中的硬盘等构成。
另外,在本说明书中,记述记录在记录介质中的程序的步骤包含沿着所记载的顺序以时间顺序进行的处理,当然还包含不必须按照时间顺序进行处理而并列或分别执行的处理。
另外,在本说明书中,系统是指由多个装置构成的装置全体。
另外,本发明的实施例并不只限于上述的实施例,在不脱离本发明的宗旨的范围中,能够进行各种变形。
Claims (14)
1.一种信息处理方法,其特征在于,包含以下步骤:
连续数计算步骤,对由多个GOP构成的比特流,根据作为在与一帧对应的图像的显示时间内能够执行解码处理的数的能够解码帧数、和1个GOP中的P图像数,计算在被解码的2个P图像之间存在的P图像的连续数;
P图像解码步骤,根据通过上述连续数计算步骤的处理计算出的上述P图像的连续数,从构成上述比特流的上述多个GOP中的每一个选择规定个数的被解码的P图像并分别进行解码;
编码步骤,将对通过上述P图像解码步骤的处理选择了规定个数的上述P图像分别进行解码而得到的各帧,分别编码为I图像;
分析步骤,对上述比特流进行分析而取得包含图像的排列顺序的信息;以及
属性信息生成步骤,根据与通过上述编码步骤的处理而生成的编码数据有关的编码信息和通过上述分析步骤的处理而取得的上述信息,生成为了解码上述比特流所能够利用的属性信息。
2.根据权利要求1记载的信息处理方法,其特征在于,将比上述P图像数大的规定个数设定为阈值,在上述能够解码帧数在上述阈值以上的情况下,禁止上述P图像解码步骤的处理的执行,
在上述能够解码帧数在上述阈值以下的情况下,许可上述P图像解码步骤的处理的执行。
3.根据权利要求2记载的信息处理方法,其特征在于,
上述阈值是根据为了对在上述比特流中的、解码所需时间最长的帧进行解码处理而所必要的时间设定的。
4.根据权利要求1记载的信息处理方法,其特征在于,
在上述连续数计算步骤的处理中,
将比上述能够解码帧数小的值决定为上述P图像的连续数的候补,
在上述候补比上述P图像数小的情况下,将上述候补采用为P图像的连续数,
在上述候补比上述P图像数大的情况下,将上述候补以外的规定值采用为上述P图像的连续数。
5.根据权利要求4记载的信息处理方法,其特征在于,
在上述候补比上述P图像数大时被采用为上述P图像的连续数的上述规定值是,根据将上述P图像数除以2的值决定的。
6.根据权利要求1记载的信息处理方法,其特征在于,还包括:
根据通过上述编码步骤的处理而编码了的编码数据、和通过上述属性信息生成步骤的处理而生成的上述属性信息,对上述比特流进行解码的比特流解码步骤。
7.根据权利要求6记载的信息处理方法,其特征在于:
上述比特流解码步骤的处理包括:
判断被解码的帧的编码类型的判断步骤;
在通过上述判断步骤的处理,判断出被解码的帧是上述比特流中的I图像的情况下,对上述比特流中的被解码的上述I图像进行解码的第一解码步骤;
在通过上述判断步骤的处理,判断出被解码的帧是上述比特流中的P图像的情况下,对通过上述编码步骤的处理编码了的编码数据中的与被解码的上述P图像对应的上述编码数据进行解码的第二解码步骤;
在通过上述判断步骤的处理,判断出被解码的帧是上述比特流中的B图像的情况下,对上述B图像的解码所必需的上述比特流中的I图像进行解码生成参照图像,或者对通过上述编码步骤的处理而编码了的编码数据中的与解码上述B图像所需要的上述比特流的上述P图像对应的上述编码数据进行解码生成参照图像的参照图像生成步骤;
参照通过上述参照图像生成步骤的处理生成的上述参照图像,对上述比特流中的上述B图像进行解码的第三解码步骤。
8.根据权利要求1记载的信息处理方法,其特征在于:
通过上述编码步骤的处理所得到的上述I图像的比特速率为固定速率。
9.根据权利要求1记载的信息处理方法,其特征在于:
通过上述编码步骤的处理的所得到的上述I图像的比特速率是变动速率。
10.根据权利要求1记载的信息处理方法,其特征在于还包含以下步骤:
计算上述能够解码帧数的解码处理执行可能帧数计算步骤。
11.根据权利要求1记载的信息处理方法,其特征在于,
由上述编码步骤的处理所生成的编码数据是通过下述步骤所得到的各上述I图像,对由上述P图像解码步骤的处理所选择的规定个数的上述P图像分别进行解码,对所获得的上述各帧用上述编码步骤的处理进行编码,
与上述编码数据相关的上述编码信息包括有关各上述编码数据的图像大小和地址。
12.根据权利要求1记载的信息处理方法,其特征在于,
在上述处理中所采用的编码方式是MPEG编码方式。
13.一种信息处理装置,生成为了解码比特流所能够利用的信息,其特征在于包括:
连续数计算装置,对由多个GOP构成的上述比特流,根据在与一帧对应的图像的显示时间内能够执行解码处理的帧数、和1个GOP中的P图像数,计算在被解码的2个P图像之间存在的P图像的连续数;P图像解码装置,根据通过上述连续数计算装置计算出的上述P图像的连续数,从构成上述比特流的上述多个GOP中的每一个选择规定个数的被解码的P图像并分别进行解码;
编码装置,将对通过上述P图像解码装置选择了规定个数的上述P图像分别进行解码而得到的各帧,分别编码为I图像;以及
属性信息生成装置,对上述比特流进行分析而取得包含图像的排列顺序的信息,根据由上述比特流的分析而取得的上述信息和与由上述编码装置生成的编码数据有关的编码信息,生成为了解码上述比特流所能够利用的属性信息。
14.根据权利要求13记载的信息处理装置,其特征在于还包括:
根据由上述编码装置生成的编码数据、和由上述属性信息生成装置生成的上述属性信息,对上述比特流进行解码的比特流解码装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005119047 | 2005-04-15 | ||
JP2005119047 | 2005-04-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1848962A CN1848962A (zh) | 2006-10-18 |
CN100546389C true CN100546389C (zh) | 2009-09-30 |
Family
ID=36685572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100754216A Expired - Fee Related CN100546389C (zh) | 2005-04-15 | 2006-04-14 | 信息处理装置和信息处理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20060233528A1 (zh) |
EP (1) | EP1713282A2 (zh) |
KR (1) | KR20060109317A (zh) |
CN (1) | CN100546389C (zh) |
TW (1) | TW200704205A (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101686391A (zh) * | 2008-09-22 | 2010-03-31 | 华为技术有限公司 | 视频编码/解码方法、装置与视频播放方法、装置及系统 |
JP5332773B2 (ja) * | 2009-03-18 | 2013-11-06 | ソニー株式会社 | 画像処理装置および方法 |
CN102196249B (zh) * | 2011-05-17 | 2012-12-05 | 浙江宇视科技有限公司 | 监控数据回放方法及编码器、视频管理服务器 |
CN105263023B (zh) * | 2015-10-26 | 2018-08-03 | 西安电子科技大学 | 基于高速解码平台的网络码流实时接收方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1418011A (zh) * | 2001-11-09 | 2003-05-14 | 数码士有限公司 | 低速重放数字广播节目的方法 |
CN1574943A (zh) * | 2003-06-11 | 2005-02-02 | 三星电子株式会社 | 用于控制数字视频比特流逆向播放的装置和方法 |
-
2006
- 2006-04-10 TW TW095112664A patent/TW200704205A/zh unknown
- 2006-04-11 KR KR1020060032829A patent/KR20060109317A/ko not_active Application Discontinuation
- 2006-04-13 EP EP06252064A patent/EP1713282A2/en not_active Withdrawn
- 2006-04-14 US US11/403,873 patent/US20060233528A1/en not_active Abandoned
- 2006-04-14 CN CNB2006100754216A patent/CN100546389C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1418011A (zh) * | 2001-11-09 | 2003-05-14 | 数码士有限公司 | 低速重放数字广播节目的方法 |
CN1574943A (zh) * | 2003-06-11 | 2005-02-02 | 三星电子株式会社 | 用于控制数字视频比特流逆向播放的装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20060109317A (ko) | 2006-10-19 |
CN1848962A (zh) | 2006-10-18 |
EP1713282A2 (en) | 2006-10-18 |
US20060233528A1 (en) | 2006-10-19 |
TW200704205A (en) | 2007-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101164336B (zh) | 影像信息记录装置以及影像信息记录方法 | |
CN1278550C (zh) | 用于再现图像的方法和装置以及图像记录装置 | |
CN101808205B (zh) | 运动图像输出方法和运动图像输出设备 | |
CN101895765B (zh) | 代码转换器、记录装置和代码转换方法 | |
US20100166081A1 (en) | Video stream processing apparatus and control method, program and recording medium for the same | |
KR20220031030A (ko) | 비디오 코덱에서 시그널링하는 방법 | |
KR20130016289A (ko) | 동화상 예측 부호화 장치, 동화상 예측 부호화 방법, 동화상 예측 부호화 프로그램, 동화상 예측 복호 장치, 동화상 예측 복호 방법, 및 동화상 예측 복호 프로그램 | |
CN113225585B (zh) | 一种视频清晰度的切换方法、装置、电子设备以及存储介质 | |
CN113228679A (zh) | 视频编码和视频解码 | |
EP1122952A2 (en) | Device for and method of converting a frame rate in a moving picture decoder, and a record medium and an integrated circuit device for implementing such a method | |
KR20110063004A (ko) | 키 프레임 추출 장치 및 방법과 이를 이용한 방송 녹화 장치 및 방법 | |
CN100546389C (zh) | 信息处理装置和信息处理方法 | |
CN101288314A (zh) | 动态图像编码装置、动态图像解码装置、动态图像编码方法、动态图像解码方法、动态图像编码程序以及动态图像解码程序 | |
CN110891195B (zh) | 花屏图像的生成方法、装置、设备和存储介质 | |
TWI533673B (zh) | Motion picture prediction coding apparatus, method and program, and motion picture prediction decoding apparatus, method and program | |
JP2008271546A (ja) | 復号装置および復号方法、情報処理装置および情報処理方法 | |
JP4399744B2 (ja) | プログラム、情報処理装置、情報処理方法、並びに、記録媒体 | |
CN101690232B (zh) | 运动图像数据编码设备及其控制方法 | |
EP2277311B1 (en) | Apparatus and method for recording video data | |
CN100568975C (zh) | 解码装置、解码方法 | |
JP2006014288A (ja) | 動きベクトル符号化装置、方法、プログラム及び媒体 | |
JP4291185B2 (ja) | トランスコーディング方法、トランスコーダ及びプログラム | |
JP2009272929A (ja) | 映像符号化装置および映像符号化方法 | |
CN114143601A (zh) | 裁剪视频的方法、装置、电子设备、存储介质及程序产品 | |
JP5553533B2 (ja) | 画像編集装置およびその制御方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090930 Termination date: 20100414 |