CN103404146B - 视频文件修复方法及装置 - Google Patents

视频文件修复方法及装置 Download PDF

Info

Publication number
CN103404146B
CN103404146B CN201380000249.6A CN201380000249A CN103404146B CN 103404146 B CN103404146 B CN 103404146B CN 201380000249 A CN201380000249 A CN 201380000249A CN 103404146 B CN103404146 B CN 103404146B
Authority
CN
China
Prior art keywords
video
data
frame
sequence
frames
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.)
Active
Application number
CN201380000249.6A
Other languages
English (en)
Other versions
CN103404146A (zh
Inventor
周剑辉
王科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN103404146A publication Critical patent/CN103404146A/zh
Application granted granted Critical
Publication of CN103404146B publication Critical patent/CN103404146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种视频文件的修复方法及装置,用以提高视频文件修复的成功率。该方法包括:若按照编解码CODEC特征库中视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列;记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和用于记录所述视频帧序列基于时间戳的索引的索引数据;确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出目标容器格式的视频文件。

Description

视频文件修复方法及装置
技术领域
本发明涉及多媒体技术领域,尤其涉及一种视频文件修复方法及装置。
背景技术
目前,视频文件通常是采用视频封装技术将视频数据封装在视频容器中而生成的,其中视频容器是指封装视频数据时的文件格式,如音频视频交错(Audio Video Interleaved,简称:AVI)格式、MP4(MPEG-4Part)格式等。图1为视频文件的结构示意图,包括容器头数据、容器尾数据、和视频数据三部分。其中视频数据由若干个视频帧的数据组成,视频帧是指组成视频播放时动态影像的一个个静止的画面,一个视频帧的数据包括容器帧头(Container Frame Header,简称:CFH)数据和帧数据(如图1中的F1,F2,Fn所示)。容器头数据和容器尾数据用于存储视频文件采用的编解码(Coder-Decoder,简称:CODEC)类型、解码参数、视频数据的存储位置信息及索引数据,所述索引数据用于记录各个视频帧的帧数据基于时间戳的索引;视频帧的CFH中用于存储视频帧的时间戳和视频帧的存储位置信息,Fn表示第n个视频帧的帧数据,也被称为第n个视频帧的CODEC数据。各个视频帧的帧数据的总和构成编码后的视频数据流(即CODEC数据流)。上述容器头数据、容器尾数据和CFH被统称为容器数据。
现有技术中,如果视频文件中的容器头数据和容器尾数据损坏时,可以按照各种已知的容器格式依次扫描视频数据流,以便于提取出各个视频帧的CFH和各个视频帧的帧数据,并根据各个视频帧的CFH和帧数据重构出容器头数据和容器尾数据,播放器根据重构得到的容器头数据和容器尾数据可以正常播放视频。如果视频文件中的容器头数据、容器尾数据和视频帧的CFH均损坏时,采用现有的视频修复技术无法对视频文件进行修复,因而现有技术视频文件修复的成功率低。
发明内容
本发明实施例提供一种视频文件修复方法及装置,用以提高视频文件修复的成功率。
为了达到上述发明目的,本发明采用如下技术方案:
第一方面,提供一种视频文件修复方法,包括:
若按照编解码CODEC特征库中视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,其中每种所述视频帧结构特征对应一种CODEC类型;
记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
结合第一方面,在第一方面的第一种可能的实现方式中,所述若按照编解码CODEC特征库中的视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,具体包括:
从所述CODEC特征库中获取第一视频帧结构特征,判断所述视频数据流中数据的存储方式与第一视频帧结构特征是否相符合,若符合,则说明按照所述第一视频帧结构特征能够从受损视频文件的视频数据流中提取视频帧的帧数据;
否则从所述CODEC特征库中获取第二视频帧结构特征,直到第二视频帧结构特征能够从受损视频文件的视频数据流中提取视频帧的帧数据。
结合第一方面或者第一方面的第一种可能的实现方式中,在第一方面的第二种可能的实现方式中,所述确定所述视频帧序列的序列头SH包括:
按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;
如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;
如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述利用预定解码参数集合中的解码参数重构所述SH包括:
从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;
否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
第二方面,提供一种视频文件修复装置,包括:
提取模块,用于按照编解码视CODEC特征库中视频帧结构特征,从受损视频文件的视频数据流中提取视频帧的帧数据,其中所述视频帧结构特征对应一种CODEC类型;
生成记录模块,用于将所述提取模块提取的所述视频帧的帧数据生成视频帧序列,并记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定模块,用于确定所述生成记录模块生成的所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
重构输出模块,用于根据所述确定模块确定的所述SH、所述生成记录模块记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
结合第二方面,在第二方面的第一种可能的实现方式中,所述确定模块包括:
判断单元,用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;
SH提取单元,用于如果所述判断单元判断出所述SH未受损时,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;
重构单元,用于如果所述判断单元判断出所述SH受损时,利用预定解码参数集合中的解码参数重构所述SH。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述重构单元具体用于从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
第三方面,提供一种视频文件修复设备,包括接收器,处理器和存储器,其中:
所述接收器用于接收受损视频文件;
所述存储器用于存储指令和数据,并为处理器提供指令和数据;
所述处理器,用于读取存储器中存储的指令和数据,执行:
若按照编解码CODEC特征库中的视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,其中每种所述视频帧结构特征对应一种CODEC类型;
记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器用于确定所述视频帧序列的序列头SH,具体包括:用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述处理器利用预定解码参数集合中的解码参数重构所述SH,具体包括:用于从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
本发明实施例中,按照视频帧结构特征从受损视频文件的视频数据流中提取视频帧的帧数据,由提取的所述视频帧的帧数据生成视频帧序列;记录提取所述帧数据时使用的视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和用于记录所述视频帧序列基于时间戳的索引的索引数据;确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。与现有技术相比,本发明实施例在视频修复的过程中无需从受损视频文件的视频数据流中解析出CFH,因此不但在容器头数据和/或容器尾数据损坏时能够修复视频文件,而且在受损视频文件的容器数据中容器头数据、容器尾数据和CFH均损坏时,仍然可以对受损视频数据流进行修复,从而提高了视频修复的成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为背景技术中提供的封装在视频容器中的视频数据流的结构示意图;
图2a为本发明实施例提供一种视频修复方法的流程图;
图2b为图2a步骤203的一种实现流程图;
图3a为本发明实施例提供的CODEC数据流的格式示意图;
图3b为本发明实施例提供的视频帧序列(F1,F2...Fn)与CODEC数据流的一种对应关系示意图;
图4a为本发明实施例提供一种视频文件修复装置的一种结构示意图;
图4b为图4a中确定模块的一种结构示意图;
图5为本发明实施例提供一种视频文件修复设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例可以对受损视频文件的视频数据流(也可以称为受损视频数据流)进行修复,特别是当视频数据流中的容器数据损坏时,可以成功重构出容器数据,并修复受损的视频数据流。在本实施例中“受损”是指数据丢失或错误,例如视频文件受损是指视频文件中的部分数据丢失或错误,容器帧头(Container Frame Header,简称:CFH)受损是指CFH对应的数据丢失或错误。其中,视频文件受损之前采用的结构如图1所示,所述容器数据包括容器头数据、容器尾数据和CFH。如果视频文件受损,那么其中的容器数据和帧数据都有可能错误或丢失。视频文件恢复针对的是容器数据受损的情况,在这种情况下容器头数据、容器尾数据和CFH有可能同时受损。容器数据用于存储视频文件采用的CODEC类型、解码参数、用于记录各个视频帧的帧数据基于时间戳的索引的索引数据,以及视频帧的时间戳和视频帧的存储位置信息。
如图2a所示,本发明实施例提供一种视频修复方法,包括:
201、判断按照编解码CODEC特征库中的一种视频帧结构特征,是否能够从受损视频文件的视频数据流中提取视频帧的帧数据,其中所述CODEC特征库中包含至少一种视频帧结构特征,每种所述视频帧结构特征对应一种CODEC类型。
其中,所述视频数据流通常为二进制数据流。
所述CODEC类型包括但不限于:H.264、动态图象专家组(MovingPictures Experts Group-4,简称:MPEG4)或者技术即运动静止图像(或逐帧)压缩技术(Motion Joint Photographic Experts Group,简称:MJPEG)。采用不同的CODEC类型编码后得到的视频帧具有不同的视频帧结构特征。本实施例在预先设定的CODEC特征库中存储有至少一种视频帧结构特征,其中每种视频帧结构特征对应一种CODEC类型。下面仅以其中两种CODEC类型对应的视频帧结构特征为例进行描述:
(1)采用H.264编码后得到的视频帧的帧数据中,一个H.264视频帧的典型帧头为000001XX,其中XX包括了帧类型、帧数据重要程度以及对齐位,例如,一个典型的H.264I帧帧头可以为00000165;而每个帧的帧尾也有表示帧尾的比特位,譬如H.264的帧尾一般存在一个帧尾比特位(trailing bits),如xxx 10000 00000000。
(2)MJPEG帧头以FF D8开始,帧尾以FF D9结束。
在本实施例给出的CODEC特征库中存储有至少一种视频帧结构特征的情况下,判断按照编解码CODEC类型的视频帧结构特征,是否能够从视频数据流中提取各个视频帧的帧数据,具体包括:
从CODEC特征库中获取第一种视频帧结构特征,判断视频数据流中数据的存储方式与该第一种视频帧结构特征是否相符合,若符合,则说明按照该第一种视频帧结构特征能够从受损视频文件的视频数据流中成功提取各个视频帧的帧数据;否则从所述CODEC特征库中获取第二种视频帧结构特征,直到找到一种能够从受损视频文件的视频数据流中成功提取各个视频帧的帧数据的视频帧结构特征,或者按照所述CODEC特征库中的CODEC类型的视频帧结构特征均不能从视频数据流中提取各个视频帧的帧数据为止。
具体地,当使用H.264从视频数据流中提取各个视频帧的帧数据时,检测到00 00 01 XX时,可以假定这个数据是一个H.264视频帧的帧数据的起始位置,检测到帧尾比特位时,可以确定一个H.264视频帧的帧数据的结束位置,然后把位于起始位置和结束位置之间的这段候选数据提取出来,通过更进一步的特征(比如对齐位)来确认这段数据是否是H.264视频数据,继而在这段数据是H.264视频数据的情况下,基于H.264视频帧的结构特征从视频数据流中提取各个H.264视频帧的帧数据;如果检测不到典型帧头00 00 01 XX,或帧尾比特位,或对齐位等进一步的特征,则说明根据H.264的视频帧结构特征不能从视频数据流中成功提取各视频帧的帧数据。
当使用MJPEG从视频数据流中提取各个视频帧的帧数据时,检测到FF D8时,可以确定这个数据是一个MJPEG视频帧的帧数据的起始位置,检测到FF D9时,可以确定这个数据是一个MJPEG视频帧的帧数据的结束位置,继而在这段数据是MJPEG视频数据的情况下,基于MJPEG视频帧的结构特征从视频数据流中提取各个MJPEG视频帧的帧数据。如果检测不到FF D8,或FF D9,则说明根据MJPEG的视频帧结构特征不能从视频数据流中成功提取各视频帧的帧数据。MPEG4视频帧的提取和MJPEG视频帧类似,在此不再赘述。
需要说明的是,CODEC类型的视频帧数据特征不仅限于上面提到的帧头、帧尾特征数据,还可以包括帧数据中的其他常量数据(如固定位置的FF)、对齐位等(如在固定位置插入的值为1的对齐位)。
本步骤在执行时,如果按照某种CODEC类型的视频帧结构特征可以从视频数据流中成功提取各个视频帧的帧数据,则说明该某种CODEC类型与所述视频数据流在进行编码时所采用的CODEC类型是一致的。
202、若能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,并记录提取所述帧数据时使用的所述视频帧结构特征对应的CODEC类型、以及所述视频帧序列的存储位置信息和索引数据,其中所述索引数据用于记录所述视频帧序列基于时间戳的索引的。
其中,本文中提取出的各个视频帧的帧数据即为图1中所示的F1,F2...Fn,将各个视频帧按照提取时的顺序进行排列,如按照F1,F2...Fn的顺序排列,就生成了一个视频帧序列,该视频帧序列为CODEC数据流。
CODEC数据流的格式如图3a所示,其中,数据流头(Stream Head)表示CODEC数据流的数据头,用于存放描述所述CODEC数据流的整体参数,例如,所述CODEC数据流采用的CODEC类型;数据流尾(Stream Tail)表示CODEC数据流的数据尾,用于存放标识字节,该标识字节可以表示CODEC数据流的数据尾,视频帧序列的序列头(Sequence Header,SH)用于存放解码参数,Gn表示第n个图像组(Group Of Picture,GOP),fn表示图像组中的第n个视频原始数据帧。每个GOP均有一个相对应的SH,每个GOP包括n个视频原始数据帧的帧数据,该视频原始数据帧的帧数据是未进行过编码和/或压缩的数据。
为了便于理解步骤202提取的所述各个视频帧的帧数据形成的视频帧序列为CODEC数据流,下面结合一个具体实施例进行说明。
例如,如图3b所示,所述各个视频帧的帧数据即F1,F2...Fn各自存放的数据为:F1中存放的帧数据为图3a所示CODEC数据流中的数据流头和第一个SH和G1;F2中存放的帧数据为图3a所示CODEC数据流中的第二个SH和G2...,Fn中存放的帧数据为图3a所示CODEC数据流中的第n个SH、Gn和数据流尾。
得到各个视频帧的帧数据后,各个视频帧的帧数据形成的视频帧序列即为图3a所示的CODEC数据流。需要说明的是,上述图3b仅为一种实现方式,又如还可以采用如下实现方式:F1中存放的帧数据为图3a所示CODEC数据流中的数据流头;F2中存放的帧数据为图3a所示CODEC数据流中的第一个SH、G1和第二个SH、G2,...Fn中存放的帧数据为图3a所示CODEC数据流中的第n个SH、Gn和数据流尾。实际应用时,还可以有多种不同的实现方式,在此不作限制。
其中,所述SH保存有视频帧序列(亦即CODEC数据流)采用的解码参数,所述解码参数包括以下一种或者多种参数:分辨率、压缩算法、熵编码算法或者用于表示是否场编码等等,其中场编码是相对于帧编码的另一种编码方式。
所述分辨率可以采用标准化图像格式(Common IntermediateFormat,简称:CIF)或者D1,所述压缩算法可以采用适应性二元算术编码(Context-based Adaptive Binary Arithmetic Coding,简称:CABAC)等等。
需要说明的是,同一个视频帧序列(亦即CODEC数据流)中各个SH携带的解码参数可以是相同的。
在提取视频帧时,可以在提取的过程中获得视频帧的时间戳和存储位置信息,所述索引数据可以通过提取所述视频帧时得到的每个视频帧的时间戳和存储位置信息获得。
203、确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列采用的解码参数。
确定SH的具体过程将在后面结合附图2b进行详细描述。
204、根据所述SH、记录的CODEC类型和所述视频帧序列的存储位置信息和索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
可选地,具体的重构容器数据的过程为:
按照目标容器格式,将步骤202记录的CODEC类型、用于描述所述视频帧序列的存放位置的存储位置信息、索引数据、从步骤203确定的SH中获得的解码参数等信息写入容器头或容器尾的指定位置中,根据步骤202提取帧数据时获得的各视频帧的时间戳和存储位置信息重新生成各视频帧的CFH。
其中,目标容器格式可以是任一种标准容器格式,例如AVI、数字视频技术(Movie digital video technology,MOV)、MP4或FLV(FlashVideo)等。
以目标容器格式为AVI为例,本步骤会输出AVI格式的视频,播放器可以通过读取AVI格式的视频中的容器数据和SH中的编码参数,来正常播放所述AVI格式的视频。
需要说明的是,所述容器数据中的所述CODEC类型、所述视频帧序列的存储位置信息、所述解码参数、索引数据可以全部存放在图1中的容器头部分,也可以全部存放在图1中的容器尾部分,或者还可以一部分存放在图1中的容器头部分,另一部分存放在图1中的容器尾部分,在此不作限制。
基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件的过程可以是按照标准视频生成流程进行的。
本发明实施例中,若按照编解码CODEC特征库中至少一种视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列;记录提取所述帧数据时使用的视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和用于记录所述视频帧序列基于时间戳的索引的索引数据;确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。与现有技术相比,本发明实施例不但在容器头数据和/或容器尾数据损坏时能够修复视频文件,而且在受损视频数据流的容器数据中容器头数据、容器尾数据和CFH均损坏时,仍然可以对受损视频数据流进行修复,因而提高了视频修复的成功率。
另外,现有技术中,为了提取出各个视频帧的CFH和各个视频帧的帧数据,按照各种容器格式依次扫描视频数据流。一方面,标准容器格式包括:AVI、MOV、MP4或FLV等,由于不同容器格式的数量超过40多种,每次扫描需要单独使用一种容器格式,如果采用某种容器格式扫描视频数据流后,无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,则需要再更换另外一种容器格式,造成较大的工作量,进而也使得受损视频的修复工作量加大;而本实施例是通过各种CODEC类型的视频帧结构特征,从视频数据流中提取各个视频帧的帧数据,CODEC类型的数量少于容器格式的数量,与现有技术相比,本发明实施例降低了视频帧提取的复杂度,提高了视频帧提取的效率,进而降低了受损视频文件修复的复杂度,提高了受损视频文件修复的效率。另一方面,如果视频数据流自身所采用的容器格式为未知的容器格式,例如,一些私有容器格式,该私有容器格式通常不会对外公布,因而现有技术中无法得知私有容器格式,此时也无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,进而也无法成功对受损视频进行修复。而本发明实施例由于无需提取出CFH,在受损视频数据流的容器数据中容器头数据、容器尾数据和CFH均损坏时,仍然可以对受损视频数据流进行修复,因而提高了视频文件修复的成功率。
进一步地,如图2b所示,上述步骤203中,所述确定所述各个视频帧的帧数据形成的视频帧序列中序列头SH具体可以采用如下实现方式:
2031、判断所述视频帧序列中SH是否受损。
例如,使用标准解码器,对所述视频帧序列进行解码,如果可以进行成功解码,则说明视频帧序列中SH没有受损,如果解码失败,则说明视频帧序列中SH受损。
其中,所述标准解码器可以是FFmeg解码器或者VLC解码器。
2032、如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH。
例如,图3b所示的视频帧序列(F1,F2...Fn)与CODEC数据流的对应关系示意图,结合图3a所示的CODEC数据流的格式,提取F1帧存放的SH,或者提取F2帧存放的SH。当然还可以是其他帧中存放的SH,在此不作限制。
其中,由于该SH包括视频帧序列采用的解码参数,而容器数据重构时需要解码参数,因而提取出SH后,可以将解码参数用于容器数据的重构。
2033、如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
其中,所述各种解码参数可以保存在解码参数数据库中,所述解码参数包括以下一种或者多种参数:分辨率、压缩算法、熵编码算法或者用于表示是否场编码的参数等等。
所述分辨率可以采用CIF或者D1,所述压缩算法可以采用CABAC等。
本步骤具体实现时,可以采用如下方式:
从预定解参数集合中取出一种解码参数(可以称为第一解码参数),根据取出的第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;
如果解码成功,则利用所述第一解码参数重构所述SH;
如果解码失败,则返回执行所述从预定解参数集合中取出另一种解码参数(可以称为第二解码参数),根据取出的第二解码参数对所述视频帧序列进行解码的步骤,直到解码成功,或已使用过所述预定解参数集合中的每一种解码参数均解码失败为止。
所述重构后的SH包括的解码参数是利用该解码参数解码后得到的视频图像正常的解码参数。
需要说明的是,在利用一种解码参数对所述视频帧序列进行解码时,通常会出现如下两种情形:
情形一:解码后,提示解码失败,此时,将重新选用另一种解码参数对所述视频帧序列进行解码;
情形二:解码后得到视频图像,由于采用错误的解码参数解码后得到的视频图像会出现失真,例如,错误的解码参数无法正确还原视频图像的真实色彩和纹理,而使得解码器得到异常图像包括单色图像(纯灰色、纯或者白色、纯黑色等)、全屏马赛克图像以及噪声图像等,此时,需要采用通用的异常图像识别算法来(不在本专利讨论范围)进一步判断该视频图像是否正常,例如根据解码结果中的图像边缘特征是否符合预定条件来确认解码是否成功,如果解码得到的视频图像不正常将重新选用另一种解码参数对所述视频帧序列进行解码;如果解码得到的视频图像正常则说明解码成功。
另外,现有技术中,当受损视频中的容器数据和CFH均损坏时,无法修复该受损的视频文件,而采用本发明实施例提供的方法可以在受损视频中的容器数据和CFH均损坏时,修复该受损的视频文件。
相应地,如图4a所示,本发明实施例还提供一种视频文件修复装置,包括:
提取模块41,用于按照编解码CODEC特征库中视频帧结构特征,从受损视频文件的视频数据流中提取视频帧的帧数据,其中所述视频帧结构特征对应一种CODEC类型;
其中,所述视频数据流通常为二进制数据流。所述CODEC类型包括:H.264、MPEG4或者MJPEG。采用不同的CODEC类型编码后得到的视频帧具有不同的视频帧结构特征。
生成记录模块42,用于将提取模块41提取的所述视频帧的帧数据生成视频帧序列,并记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引。
可选地,所述索引数据可以通过提取所述视频帧时得到的每个视频帧的时间戳和存储位置信息获得;
确定模块43,用于确定生成记录模块42生成的所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
重构输出模块44,用于根据确定模块43确定的所述SH、生成记录模块42记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
本发明实施例中,若按照编解码CODEC特征库中至少一种视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列;记录提取所述帧数据时使用的视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和用于记录所述视频帧序列基于时间戳的索引的索引数据;确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。与现有技术相比,本发明实施例在视频修复的过程中无需从受损视频文件的视频数据流中解析出CFH,因此不但在容器头数据和/或容器尾数据损坏时能够修复视频文件,而且在受损视频文件的容器数据中容器头数据、容器尾数据和CFH均损坏时,仍然可以对受损视频数据流进行修复,从而提高了视频修复的成功率。
另外,现有技术中,为了提取出各个视频帧的CFH和各个视频帧的帧数据,按照各种容器格式依次扫描视频数据流。一方面,标准容器格式包括:AVI、MOV、MP4或FLV等,由于容器格式的类型超过40多种,每次扫描需要单独使用一种容器格式,如果采用某种容器格式扫描视频数据流后,无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,则需要再更换另外一种容器格式,造成较大的工作量,进而也使得受损视频的修复工作量加大;另一方面,如果视频数据流自身所采用的容器格式为未知的容器格式,例如,一些私有容器格式,该私有容器格式通常不会对外公布,因而无法得知私有容器格式,此时也无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,进而也无法成功对受损视频进行修复。
而本发明实施例是通过各种CODEC类型的视频帧结构特征,从视频数据流中提取各个视频帧的帧数据,CODEC类型的数量少于容器格式的数量,与现有技术相比,本发明实施例降低了视频帧提取的复杂度,提高了视频帧提取的成功率,进而降低了受损视频文件修复的复杂度,提高了受损视频文件修复的成功率。
图4a所示装置的具体工作流程可以参见前面方法实施例中的相关描述。
进一步地,如图4b所示,所述确定模块43包括:
判断单元431,用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;
SH提取单元432,用于如果判断单元431判断出所述SH未受损时,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;
重构单元433,用于如果判断单元431判断出所述SH受损时,利用预定解码参数集合中的解码参数重构所述SH。
进一步地,如图4b所示,所述重构单元433具体用于从预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
图4b所示装置的具体工作流程请参见前面方法实施例中的相关描述。
另外,现有技术中,当受损视频中的容器数据和CFH均损坏时,无法修复该受损的视频,而采用本发明实施例提供的装置可以在受损视频文件中的容器数据和CFH均损坏时,修复该受损的视频文件。
如图5所示,本发明实施例还提供一种视频文件修复设备,包括:接收器51,处理器52、存储器53、总线5000和驱动电路5001。
所述接收器51,用于接收受损视频文件。
所述存储器53,用于存储指令和数据;
所述处理器52,用于读取存储器53中存储的指令和数据,执行:
若按照编解码CODEC特征库中视频帧结构特征,能够从所述受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,其中所述视频帧结构特征对应一种CODEC类型;
记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
其中,所述处理器52可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。这些指令可以通过其中的处理器以配合实现及控制,用于执行本发明实施例揭示的方法。上述处理器还可以是通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(application specific integrated circuit)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
其中,上述通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。
其中,驱动电路5001,用于为视频文件修复设备中的各个硬件提供驱动使得各个硬件能够正常工作。
另外,视频文件修复设备的各个硬件组件通过总线系统5000耦合在一起,其中总线系统5000除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起,在图5中将各种总线都标为总线系统5000。
本发明实施例中,视频文件修复设备若按照编解码CODEC特征库中的视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列;记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据;确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。与现有技术相比,本发明实施例不但在容器头数据和/或容器尾数据损坏时能够修复视频文件,而且在受损视频数据流的容器数据中容器头数据、容器尾数据和CFH均损坏时,仍然可以对受损视频数据流进行修复,因而提高了视频修复的成功率。
另外,现有技术中,为了提取出各个视频帧的CFH和各个视频帧的帧数据,按照各种容器格式依次扫描视频数据流。一方面,标准容器格式包括:AVI、MOV、MP4或FLV等,由于容器格式的类型超过40多种,每次扫描需要单独使用一种容器格式,如果采用某种容器格式扫描视频数据流后,无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,则需要再更换另外一种容器格式,造成较大的工作量,进而也使得受损视频的修复工作量加大;另一方面,如果视频数据流自身所采用的容器格式为未知的容器格式,例如,一些私有容器格式,该私有容器格式通常不会对外公布,因而无法得知私有容器格式,此时也无法成功提取出各个视频帧的CFH和各个视频帧的帧数据,进而也无法成功对受损视频进行修复。
而本发明实施例是通过各种CODEC类型的视频帧结构特征,从视频数据流中提取各个视频帧的帧数据,CODEC类型的数量少于容器格式的数量,与现有技术相比,本发明实施例降低了视频帧提取的复杂度,提高了视频帧提取的成功率,进而降低了受损视频文件修复的复杂度,提高了受损视频文件修复的成功率。
进一步地,所述处理器52用于确定所述视频帧序列的序列头SH,具体包括:用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
其中,所述处理器52利用预定解码参数集合中的解码参数重构所述SH,具体包括:用于从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
图5所示装置的实现可以参见图1中的相关描述。
本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。因此,本发明的各方面、或各个方面的可能实现方式可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件等等),或者组合软件和硬件方面的实施例的形式,在这里都统称为“电路”、“模块”或者“系统”。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。
计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或者装置,或者前述的任意适当组合,如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、光纤、便携式只读存储器(CD-ROM)。
计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
计算机可读程序代码可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为单独的软件包、部分在用户的计算机上并且部分在远程计算机上,或者完全在远程计算机或者服务器上执行。也应该注意,在某些替代实施方案中,在流程图中各步骤、或框图中各块所注明的功能可能不按图中注明的顺序发生。例如,依赖于所涉及的功能,接连示出的两个步骤、或两个块实际上可能被大致同时执行,或者这些块有时候可能被以相反顺序执行。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种视频文件修复方法,其特征在于,包括:
若按照编解码CODEC特征库中的视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,其中所述视频帧结构特征对应一种CODEC类型;
记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
2.根据权利要求1所述的方法,其特征在于,所述若按照编解码CODEC特征库中的视频帧结构特征,能够从受损视频文件的视频数据流中提取视频帧的帧数据,具体包括:
从所述CODEC特征库中获取第一视频帧结构特征,判断所述视频数据流中数据的存储方式与第一视频帧结构特征是否相符合,若符合,则说明按照所述第一视频帧结构特征能够从受损视频文件的视频数据流中提取视频帧的帧数据;
否则从所述CODEC特征库中获取第二视频帧结构特征,直到第二视频帧结构特征能够从受损视频文件的视频数据流中提取视频帧的帧数据。
3.根据权利要求1或2所述的方法,其特征在于,所述确定所述视频帧序列的序列头SH包括:
按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;
如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;
如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
4.根据权利要求3所述的方法,其特征在于,所述利用预定解码参数集合中的解码参数重构所述SH包括:
从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;
否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
5.一种视频文件修复装置,其特征在于,包括:
提取模块,用于按照编解码视CODEC特征库中视频帧结构特征,从受损视频文件的视频数据流中提取视频帧的帧数据,其中所述视频帧结构特征对应一种CODEC类型;
生成记录模块,用于将所述提取模块提取的所述视频帧的帧数据生成视频帧序列,并记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定模块,用于确定所述生成记录模块生成的所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
重构输出模块,用于根据所述确定模块确定的所述SH、所述生成记录模块记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
6.根据权利要求5所述的装置,其特征在于,所述确定模块包括:
判断单元,用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;
SH提取单元,用于如果所述判断单元判断出所述SH未受损时,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;
重构单元,用于如果所述判断单元判断出所述SH受损时,利用预定解码参数集合中的解码参数重构所述SH。
7.根据权利要求6所述的装置,其特征在于,所述重构单元具体用于从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
8.一种视频文件修复设备,其特征在于,包括接收器,处理器和存储器,其中:
所述接收器用于接收受损视频文件;
所述存储器用于存储指令和数据;
所述处理器,用于读取所述存储器中存储的指令和数据,执行:
若按照编解码CODEC特征库中的视频帧结构特征,能够从所述受损视频文件的视频数据流中提取视频帧的帧数据,则由提取的所述视频帧的帧数据生成视频帧序列,其中所述视频帧结构特征对应一种CODEC类型;
记录所述视频帧结构特征对应的CODEC类型、所述视频帧序列的存储位置信息和索引数据,所述索引数据用于记录所述视频帧序列基于时间戳的索引;
确定所述视频帧序列的序列头SH,所述SH包括所述视频帧序列中的数据采用的解码参数;
根据所述SH、所述记录的CODEC类型和所述视频帧序列的存储位置信息和所述索引数据,重构出符合目标容器格式的容器数据,并基于重构出的所述容器数据,生成并输出所述目标容器格式的视频文件。
9.根据权利要求8所述的设备,其特征在于,所述处理器用于确定所述视频帧序列的序列头SH,具体包括:用于按照标准解码器,对所述视频帧序列进行解码,若能够成功解码,则确认所述SH未受损,否则确认所述SH受损;如果所述SH未受损,根据所述视频帧序列的格式从所述视频帧序列中提取所述SH;如果所述SH受损,利用预定解码参数集合中的解码参数重构所述SH。
10.根据权利要求9所述的设备,其特征在于,所述处理器利用预定解码参数集合中的解码参数重构所述SH,具体包括:用于从所述预定解码参数集合中获取第一解码参数,根据所述第一解码参数对所述视频帧序列进行解码,根据解码结果判断解码是否成功;如果解码成功,则利用所述第一解码参数重构所述SH;否则,从所述预定解码参数集合中获取第二解码参数,直到第二解码参数能够对所述视频帧序列进行成功解码,利用所述第二解码参数重构所述SH。
CN201380000249.6A 2013-03-11 2013-03-11 视频文件修复方法及装置 Active CN103404146B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/072390 WO2014139069A1 (zh) 2013-03-11 2013-03-11 视频文件修复方法及装置

Publications (2)

Publication Number Publication Date
CN103404146A CN103404146A (zh) 2013-11-20
CN103404146B true CN103404146B (zh) 2016-10-12

Family

ID=49565865

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380000249.6A Active CN103404146B (zh) 2013-03-11 2013-03-11 视频文件修复方法及装置

Country Status (3)

Country Link
US (1) US10136163B2 (zh)
CN (1) CN103404146B (zh)
WO (1) WO2014139069A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980712A (zh) * 2015-07-14 2015-10-14 济南中维世纪科技有限公司 视频监控数据恢复后的智能索引方法
CN105653385B (zh) * 2015-12-31 2019-02-01 深圳市蓝泰源信息技术股份有限公司 一种车载录像方法
CN106484566B (zh) * 2016-09-28 2020-06-26 上海爱数信息技术股份有限公司 基于ndmp协议的nas数据备份和文件细粒度浏览恢复方法
CN107896343A (zh) * 2017-11-29 2018-04-10 天津聚飞创新科技有限公司 Mp4文件的修复方法及装置
CN109936715B (zh) * 2017-12-19 2021-09-03 华为技术有限公司 一种mp4文件的处理方法及其相关设备
US10657032B2 (en) * 2018-03-30 2020-05-19 Atlassian Pty Ltd Systems and methods for monitoring performance of applications
CN108924634A (zh) * 2018-07-19 2018-11-30 深圳国微视安科技有限公司 一种ts流快速识别方法及装置
CN109474827B (zh) * 2018-12-03 2022-11-29 四川巧夺天工信息安全智能设备有限公司 监控视频快速转码的方法
US11750784B2 (en) * 2019-05-31 2023-09-05 Medicapture, Inc. Automatic video file repair method and system
CN111935500B (zh) * 2020-09-22 2021-08-10 腾讯科技(深圳)有限公司 视频解码方法、装置及电子设备
CN112732180B (zh) * 2020-12-29 2023-04-14 哈尔滨海能达科技有限公司 一种信息处理方法、处理装置、电子设备及存储介质
CN113507625B (zh) * 2021-06-22 2022-08-19 西安理工大学 一种自适应视频修复方法
CN113613088A (zh) * 2021-08-02 2021-11-05 安徽文香科技有限公司 一种mp4文件的修复方法、装置、电子设备及可读存储介质
CN113660442B (zh) * 2021-08-31 2024-03-19 广州盈可视电子科技有限公司 一种视频修复方法、装置、电子设备及可读介质
CN114125469B (zh) * 2021-11-08 2022-07-12 北京天宇威视科技股份有限公司 Mp4文件修复方法、装置、电子设备及存储介质
CN114257840B (zh) * 2021-11-26 2024-03-19 厦门市美亚柏科信息股份有限公司 一种用于Matroska格式视频的修复方法和系统
CN114860996B (zh) * 2022-07-06 2022-10-04 北京中科开迪软件有限公司 一种基于光盘库的电子视频档案修复方法及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686364B (zh) * 2004-04-28 2013-03-13 松下电器产业株式会社 流产生装置,流产生方法,编码装置,编码方法,记录介质及其程序
CN101742334B (zh) * 2008-11-10 2013-04-24 华为技术有限公司 修复视频数据流的方法、设备及视频传输系统
EP2285122B1 (en) * 2009-07-17 2013-11-13 Canon Kabushiki Kaisha A method and device for reconstructing a sequence of video data after transmission over a network
CN102045557B (zh) 2009-10-20 2012-09-19 鸿富锦精密工业(深圳)有限公司 视频编解码方法及使用其的视频编码、解码装置
CN101867821B (zh) * 2010-06-18 2011-11-16 上海交通大学 基于稀疏采样和纹理重建的视频编码系统
CN102469315B (zh) * 2010-11-16 2013-12-04 联芯科技有限公司 Mpeg-4视频码流的错误恢复方法和装置
RU2480941C2 (ru) * 2011-01-20 2013-04-27 Корпорация "Самсунг Электроникс Ко., Лтд" Способ адаптивного предсказания кадра для кодирования многоракурсной видеопоследовательности
KR101484171B1 (ko) * 2011-01-21 2015-01-23 에스케이 텔레콤주식회사 예측 움직임벡터 색인부호화에 기반한 움직임정보 생성/복원 장치 및 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법
CN102946534A (zh) * 2011-09-02 2013-02-27 斯凯普公司 视频编码
GB2495467B (en) 2011-09-02 2017-12-13 Skype Video coding
US9118744B2 (en) * 2012-07-29 2015-08-25 Qualcomm Incorporated Replacing lost media data for network streaming

Also Published As

Publication number Publication date
US20160007048A1 (en) 2016-01-07
US10136163B2 (en) 2018-11-20
CN103404146A (zh) 2013-11-20
WO2014139069A1 (zh) 2014-09-18

Similar Documents

Publication Publication Date Title
CN103404146B (zh) 视频文件修复方法及装置
US10051145B1 (en) Embedding and decoding three-dimensional watermarks into stereoscopic images
CN109997358A (zh) 用于自由视点视频流式传输的以解码器为中心的uv编解码器
JP2010529804A (ja) 2d映像メディア標準に基づいて3d映像ファイルを生成及び再生するためのシステム及び方法
AU2007231756B2 (en) A method of segmenting videos into a hierachy of segments
EP1566769A3 (en) Method and apparatus for encoding and decoding 3D data
CN101142824A (zh) 使用相机参数编码和产生多视点视频的设备和方法以及存储实施该方法的程序的记录介质
CN100433821C (zh) 信号处理装置以及方法
JP2004248255A5 (zh)
CN102026017A (zh) 一种视频解码高效测试方法
CN103886883A (zh) 一种对有损视频监控数据进行恢复的方法及系统
CN100407325C (zh) 用于在标准分辨率兼容介质上提供高分辨率材料的系统和方法
WO2023246926A1 (zh) 模型训练方法、视频编码方法及解码方法
CN101409844B (zh) 视频信号处理方法和系统
AU2007221717B2 (en) Video-linked controller of external target device and video recording medium used therein
CN109640019B (zh) 一种通过移动终端录制编辑长视频的方法
CN110493604A (zh) 一种基于gpu集群实现8k hevc实时编码的方法
CN102934452A (zh) 用于传送在数字视频流内的信息和/或应用数据的方法,以及用于生成和播放这样的视频流的相关设备
CN113628121B (zh) 数据处理、训练多媒体数据的方法和装置
CN110913233A (zh) 一种3d-hevc深度图帧内快速编码的方法
Selmanovic et al. Backwards Compatible JPEG Stereoscopic High Dynamic Range Imaging.
CN2932874Y (zh) 用于银行监视的视频编解码装置
CN103227935A (zh) 图像发送装置和方法以及图像再现装置和方法
KR20050084219A (ko) Mpeg-2 mp@ml 압축된 비디오로부터 고화질 비디오효과를 생성하기 위한 시스템 및 방법
CN114359956B (zh) 一种基于图像转换的半监督行人检测方法

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