CN111935500A - 视频解码方法、装置及电子设备 - Google Patents

视频解码方法、装置及电子设备 Download PDF

Info

Publication number
CN111935500A
CN111935500A CN202010999271.8A CN202010999271A CN111935500A CN 111935500 A CN111935500 A CN 111935500A CN 202010999271 A CN202010999271 A CN 202010999271A CN 111935500 A CN111935500 A CN 111935500A
Authority
CN
China
Prior art keywords
decoding
video
frame
candidate
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.)
Granted
Application number
CN202010999271.8A
Other languages
English (en)
Other versions
CN111935500B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010999271.8A priority Critical patent/CN111935500B/zh
Publication of CN111935500A publication Critical patent/CN111935500A/zh
Application granted granted Critical
Publication of CN111935500B publication Critical patent/CN111935500B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • H04N21/2335Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4394Processing of audio elementary streams involving operations for analysing the audio stream, e.g. detecting features or characteristics in audio streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4398Processing of audio elementary streams involving reformatting operations of audio signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4

Landscapes

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

Abstract

本申请公开了一种视频解码方法、装置及电子设备,涉及视频处理技术领域。其中,该方法包括:识别待解码视频数据中的第一个视频帧,若识别出第一个视频帧是未携带视频解码参数的关键帧,则依次访问所述待解码视频数据对应的候选解码参数信息;根据当前访问的候选解码参数信息和关键帧,解码第一个视频帧;若第一个视频帧解码成功,则根据得到的解码结果以及当前访问的候选解码参数信息,解码待解码视频数据中的后续视频帧。如此,可以在待解码视频数据缺少视频解码参数的情况下,实现对待解码视频数据的解码。

Description

视频解码方法、装置及电子设备
技术领域
本申请涉及视频处理技术领域,更具体地,涉及一种视频解码方法、装置及电子设备。
背景技术
视频解码过程通常需要依据特定的视频解码参数进行,视频解码参数包括解码器初始化所需的信息,比如,图像的宽、高、码流对应的画质档次(profile)、所采用的熵编码模式以及码流的一些其他关键参数。如果没有视频解码参数,解码器将无法完成对视频数据的解码,导致视频无法播放。
发明内容
本申请提出了一种视频解码方法、装置及电子设备,可以在没有视频解码参数的情况下,实现对视频数据的解码。
一方面,本申请实施例提供了一种视频解码方法,包括:识别待解码数据中的第一个视频帧;若识别出第一个视频帧是未携带视频解码参数的关键帧,则依次访问待解码视频数据对应的候选解码参数信息;根据当前访问的候选解码参数信息和所述关键帧,解码第一个视频帧;若第一个视频帧解码成功,则根据得到的解码结果以及所述当前访问的候选解码参数信息,解码待解码视频数据中的后续视频帧。
另一方面,本申请实施例提供了一种视频解码装置,包括识别模块、访问模块和解码模块。其中,识别模块用于识别出待解码视频数据中的第一个视频帧。访问模块用于当识别出第一个视频帧是未携带解码参数的关键帧,依次访问待解码视频数据对应的候选解码参数信息。解码模块用于根据当前访问的候选解码参数信息和所述关键帧,解码第一个视频帧;若第一个视频帧解码成功,则根据得到的解码结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
另一方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个程序,其中所述一个或多个程序被存储于所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行本申请实施例提供的视频解码方法。
本申请提供的方案,可以在识别出待解码视频数据中的第一个视频帧没有携带视频解码参数时,依次访问待解码视频数据对应的候选解码参数信息,并根据当前访问的候选解码参数信息和关键帧,解码第一个视频帧,如果第一个视频帧解码成功,则可以根据得到的解码结果以及当前访问的候选解码参数信息,解码待解码视频数据中的后续视频帧。如此,可以实现对缺少视频解码参数的视频数据的解码。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种适用于本申请实施例的应用环境示意图。
图2示出了本申请一实施例提供的一种视频解码方法的流程示意图。
图3示出了本申请实施例提供的一个例子中的IDR帧的结构示意图。
图4示出了本申请另一实施例提供的一种视频解码方法的流程示意图。
图5示出了图4所示实施例中依次访问候选解码参数信息的流程示意图。
图6示出了图5所示步骤S530的子步骤示意图。
图7示出了第一视频编码码流的获得流程的一种示意图。
图8示出了第一视频编码码流的获得流程的另一示意图。
图9示出了本申请实施例提供的一种视频解码装置的框图。
图10是本申请实施例的用于执行根据本申请实施例的视频解码方法的电子设备的框图。
图11是本申请实施例的用于保存或者携带实现根据本申请实施例的视频解码方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
为了便于视频解码参数的读取和使用,在一些视频编码标准中,视频解码参数是独立于其他数据单独存放的。比如,H.264视频编码标准中使用了参数集的概念,参数集包括:序列参数集(Sequence Parameter Set,SPS)和图像 集(Picture Parameter Set,PPS)。序列参数集保存了一组编码视频序列(Coded video Sequence)的全局参数,所谓的编码序列是指原始视频中的视频帧中的像素数据经过编码之后的结构所组成的序列。这里的全局参数例如可以包括图像的宽、高、码流的画质档次、码流的最大参考帧数目(max_num_ref_frames)、码流的关键参数取值范围等。
其中,码流的画质级别可以由SPS的profile字段的值确定,profile字段的值可以为baseline(基准档次)、main profile(主要档次)、high profile(高级档次)中的一者。码流的关键参数的取值范围可以由level(或level_idc)定义,level的每个取值,都对应了一组H.264标准中语法成员(syntax element)所采用的各种参数值的限制条件。在给定的画质档次下,码流的关键参数的取值范围通常与解码器的处理能力和内存容量相适应。比如,level_idc的每一取值,可以对应有不同的参数,包括最大视频分辨率、最大视频帧率、取样率、图像尺寸、编码比特率等,用于表征不同档次的编码器和解码器性能。请参照下表1,其中示例性地示出了H.264标准中,不同level的取值所对应的关键参数。
表1
Figure 801251DEST_PATH_IMAGE001
上表1中,VBV是指视频缓存检验器(Video Buffering Verifier),是一个当输入码流 遵从MPEG(Moving Picture Experts Group,动态图像专家组)标准时,既不会上溢出,也不 会下溢出的理论上的解码缓冲器模型。VBV maximum bit rate表示VBV的最大视频比特率, 其单位是1000必特每秒。VBV buffer size表示VBV的缓存大小,其单位是1000比特。 Macroblocks表示每秒的最大宏块处理数量,即最大宏块处理速率。Resolution表示分辨 率,frame rate表示帧率,表1的最后一列中,符号“@”之前的数据表示分辨率,符号“@”之后 的数据表示帧率。比如,
Figure 718391DEST_PATH_IMAGE002
@30表示的是分辨率为
Figure 934346DEST_PATH_IMAGE003
、帧率为30帧每秒。
上文描述的编码序列,包括的是多个视频帧的编码后数据,而每一视频帧的编码后数据所依赖的参数保存于一图像参数集中,图像参数集可以包括熵编码模式(entropy_coding_mode_flag)标识以及用于计算图像的色度分量的量化参数(chroma_qp_index_offset)等。其中,熵编码模式标识表示码流中熵编码或熵解码所采用的算法。该标识通常可以有两个取值,分别表示CABAC(基于上下文的自适应二进制算术熵编码)和CAVLC(基于上下文自适应的可变长编码)。
在实际应用中,有很多视频文件容易在压缩生产的过程中,容易因为某些原因,导致文件中视频帧的SPS信息和PPS信息丢失。而解码器需要拿到视频文件的SPS信息和PPS信息才可以进行解码,否则,将会报错,无法进行后续解码步骤,导致视频文件无法播放。
发明人经过长期的研究,提出了一种视频解码方法、装置及服务器,可以在需要解码的视频数据缺少视频解码参数时,完成对该视频数据的解码。下面对该内容进行详细介绍。
请参照图1,图1是一种适用于本申请实施例的应用环境示意图。其中,服务器100通过网络与终端设备200通信连接。其中,服务器100可以是用于提供视频解码服务或视频播放服务的服务器,终端设备200可以包括客户端210,从而基于服务器100提供的视频解码服务或视频播放服务,播放用户指定的视频文件。所述视频文件可以是终端设备200自行采集的视频文件,也可以是服务器100中存储的视频文件,还可以是服务器100从第三方设备获得的视频文件。这里的第三方设备可以是视频采集设备(如,摄像头)或者视频数据存储服务器等,本实施例对此没有限制。
本申请实施例中提及的服务器100可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算、大数据和人工智能平台等基础云计算服务的云服务器。终端设备200可以是智能手机、平板电脑、笔记本电脑、个人计算机(Personal Computer,PC)、智能电视、便携式穿戴设备等。客户端210可以是任意具有视频播放功能的应用程序。本申请实施例对此没有限制。
请参照图2,图2是本申请一实施例提供的一种视频解码方法的流程示意图,该方法可以由服务器100或终端设备200执行,或者也可以由服务器100和终端设备200协同执行。本申请实施例以该方法可以应用于图1所示的服务器100为例进行说明。该方法可以包括以下步骤:
S210,识别待解码视频数据中的第一个视频帧。
本实施例中,服务器100可以获得待播放的源文件。比如,可以从自身存储的文件中获得所述源文件。又比如,可以从视频采集设备或视频数据存储服务器获得所述源文件。本实施例对此没有限制。
一些例子中,这里的源文件可以同时包括音频文件和视频文件。服务器100可以从待播放的源文件中解析出视频数据和音频数据。示例性地,这里的解析可以通过特定的解析器实现,比如音视频分离器demuxer。解析出的音频数据和视频数据可以分别被存放到音频数据缓存(buffer)和视频数据缓存(buffer)中,以供后续解码使用。换句话说,存放于视频数据buffer中的视频数据可以视为S210中的待解码视频数据。
此外,在视频编码标准中,视频图像可以被分为三种类型,I帧、P帧和B帧。其中,I帧可以被称为关键帧或内部画面,其在编码过程中采用帧内压缩,可以理解为这一帧画面被完整保留。对应地,在解码过程中只需依据I帧自身的数据即可解码出I帧的原始视频数据。P是向前搜索的意思,P帧表示当前帧与前一帧的差别,编码过程中采用当前帧与前一帧的差异信息进行编码,编码结果即为P帧。对应地,解码过程中可以根据P帧及其前一帧的解码结果,可以解码出该P帧的原始视频数据。B是双向搜索的意思,B帧表示当前帧与该当前帧的前一帧和后一帧的区别,编码过程中采用当前帧分别与前一帧和后一帧的差异信息进行编码,编码结果即为B帧。对应地,解码过程中可以根据B帧及其前一帧和后一帧各自的解码结果,解码出B帧的原始视频数据。
一些视频编码标准中,图像通常以序列为单位进行组织,一个序列是一段图像编码后的数据流。一个序列的第一个图像(或,第一帧)叫做即时解码刷新(InstantaneousDecoding Refresh,IDR)图像,又称IDR帧。IDR帧是携带有视频解码参数的I帧,比如,在H.264标准中,IDR帧是携带有SPS信息和PPS信息的I帧。IDR帧的引入,是为了实现解码过程重同步,避免因一个序列解码出错,导致所有序列的解码出错。详细地,在读取到一个序列的第一个视频帧时,会将之前已解码的视频数据输出,并删除缓存中的已解码数据,重新开始一个序列的解码。如此,新开始的这个序列的解码过程,将不再依据其之前的视频帧,那么,之前的视频帧无论是否出错,都不会对新开始的这个序列造成影响。当新开始一个序列的解码时,需要重新查找这个序列对应的序列参数集和图像参数集,以用于这个序列的解码。在此情况下,S210中的待解码视频数据也可以是视频数据buffer中的一个图像序列。
以H.264标准为例,H.264的视频码流包括依次排列的多个网络适应层单元(Network Abstraction Layer Unit,NALU),每个NALU之前设置有起始码,用于表示NALU的位置。示例性地,如果从H.264码流中检测到一个起始码,可以确定其后的数据为NALU数据,对应地,当检测到下一个起始码,则可以确定NALU数据结束。NALU的结构包括:NAL头信息(Header)以及原始字节序列载荷(Raw Byte Sequence Payload,RBSP)。NAL Header可以占一个字节,其低5位(bit,比特)表示NALU的RBSP中数据的数据类型。比如图3所示的H.264视频码流中中IDR帧的数据结构。
第一个视频帧包含NALU-01、NALU-02以及NALU-03,其中,NALU-01、NALU-02以及NALU-03之前分别设置有起始码0x00 00 00 01。NALU-01的NAL Header字段的值为0x27,其低5位的值对应的十进制数为7,表示NALU-01的RBSP字段的值为序列参数集。NALU-02的NALHeader字段的值为0x28,其低5位的值对应的十进制数为8,表示图像参数集。NALU-03的NALHeader字段的值为0x25,其低5位的值所对应的十进制数为5,表示NALU-03的RBSP字段的值为IDR帧的数据,即携带有SPS和PPS的I帧的数据。
S220,若识别出所述第一个视频帧是未携带视频解码参数的关键帧,则依次访问所述待解码视频数据对应的候选解码参数信息。
本实施例中,在获得待解码视频数据后,可以依次读取待解码视频数据的每一视频帧。其中,在读取到第一个视频帧之后,可以识别第一个视频帧是否是携带有视频解码参数的关键帧(即,I帧),或者说,识别第一个视频帧是否是IDR帧。
以H.264标准为例,可以首先确定第一个视频帧所在的NALU,比如是图3所示的NALU-03,从而可以检测NALU-03之前的NALU内存储的数据是否是SPS和PPS,具体可以通过判断NALU-03之前的NALU-01的数据类型(NAL Type)字段的值是否是表征SPS的值,以及,NALU-02的数据类型字段的值是否是表征PPS的值。这样,可以得到两个判断结果,分别表示第一个视频帧是否携带有SPS以及第一个视频帧是否携带有PPS。
如果两个判断结果均为是,则可以确定第一个视频帧是携带有视频解码参数的关键帧,也就是,待解码视频数据是具有视频解码参数的,则可以按照该视频解码参数对待解码视频数据的各个视频帧(包括第一个视频帧及后续视频帧)进行解码。
如果两个判断结果中的至少一者为否,则可以确定第一个视频帧没有携带视频解码参数,即第一个视频帧是未携带视频解码参数的关键帧,又或者说,可以确定第一个视频帧不是IDR帧。值得说明的是,两个判断结果中的至少一者为否包含三种情况,分别是:SPS和PPS都没有携带;没有携带SPS;以及,没有携带PPS。这三种情况,均可以视为S220中描述的没有携带视频解码参数。
可以理解,上述的识别第一个视频帧的方式仅为举例说明,并非用于限制本申请的保护范围。
本实施例中,服务器100可以存储与待解码视频数据对应的枚举表,枚举表中存在至少一个列表项,每个列表项的内容为待解码视频数据对应的一个候选解码参数信息。这里的候选解码参数信息可以理解为待解码视频数据的一种可能的视频解码参数。
以H.264标准为例,SPS和PPS各自均包含参数项。为便于描述,本文中,将SPS中的参数项称为序列参数项,将PPS中的参数项称为图像参数项。在此情况下,上文提及的图像的宽、高、码流的profile、level、max_num_ref_frames等均可以视为序列参数项,而熵编码模式标识、用于计算色度分量的量化参数等均可以视为图像参数项。
其中,SPS包含的序列参数项以及PPS包含的图像参数项均是固定的,而序列参数项可能的取值(即,候选值)以及图像参数项可能的取值(即,候选值)是有限的,比如,分辨率对应的候选值包括表1的最后一列所显示的Resolution的值;又比如,Profile的候选值包括基准档次、主要档次和高档次;再比如,Level的取值包括表1的第一列示出的1~5.2;再比如,熵编码模式标识的候选值包括:CABAC和CAVLC。因此,可以将各序列参数项和各图像参数项按可能的取值组合,如此,可以得到多个组合,每个组合即为待解码视频数据对应的一个候选解码参数信息,也就是枚举表中的一个列表项。
换句话说,通常情况下,第一个视频帧应该是携带有视频解码参数的I帧,而这个视频解码参数可以包括序列参数项和图像参数项。上述的待解码视频数据可以与各序列参数项的候选值以及各图像参数项的候选值随机组合成的至少一个候选解码参数信息相对应,待解码视频数据所对应的每一个候选解码参数信息都包括每个序列参数项的一个候选值以及每个图像参数项的一个候选值。这里的至少一个候选解码参数信息可以理解成上述枚举表中的各候选解码参数信息,并且,两个不同的候选解码参数信息中至少存在一个参数项的候选值不同。
例如,候选解码参数信息如果是由参数项A、参数项B和参数项C各自的一个候选值随机组合而成,那么,对于两个不同的候选解码参数信息d1和d2,至少存在一个参数项x(x可以取A、B或C),d1和d2中与参数项x对应的候选值是不同的。
可以理解,如果多个待解码视频数据对应的候选解码参数信息如果是相同的,可以针对所述多个待解码视频数据仅存储一个枚举表。如果一些待解码视频数据对应的候选解码参数信息与其他待解码视频数据的候选解码参数信息不同,则可以针对这些待解码视频数据单独存储一枚举表。本实施例对此没有限制。
实施过程中,可以依次访问待解码视频数据所对应的枚举表中的列表项,每访问一个列表项,可以将该列表项中的候选解码参数信息作为第一个视频帧中的关键帧所携带的视频解码参数,从而将该列表项中的候选解码参数信息与该关键帧一起送入解码器。
S230,根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个视频帧。
本实施例中,将当前访问的列表项中的候选解码参数信息以及关键帧一并送入解码器之后,解码器可以按照送入的候选解码参数信息(即,S230中的当前访问的候选解码参数信息)初始化,进而基于初始化的信息解码关键帧。
可选地,如果第一个视频帧是仅缺失了SPS的关键帧,可以将当前访问的列表项中对应于序列参数项的值与关键帧自身携带的PPS组成当前访问的候选解码参数信息,然后再将当前访问的候选解码参数信息以及关键帧一起送入解码器。
类似地,如果第一个视频帧是仅缺失了PPS的关键帧,可以将当前访问的列表项中对应于图像参数项的值与关键帧自身携带的SPS组成当前访问的候选解码参数信息,然后再将当前访问的候选解码参数信息以及关键帧一起送入解码器。
S240,若所述第一个视频帧解码成功,则依据得到的解码结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
实施过程中,如果当前送入解码器的候选解码参数信息是正确的,即,如果当前访问的候选解码参数信息就是关键帧缺失的视频解码参数,那么,解码器在基于该候选解码参数信息进行初始化,并基于初始化的信息解码关键帧,是可以获得第一个视频帧对应的解码结果的,即可以解码成功。而如果当前送入的候选解码参数信息,不是关键帧缺失的视频解码参数,则解码器会解码失败。
因此,如果解码器基于当前送入的候选解码参数信息和关键帧成功解码第一个视频帧,则可以将当前送入的候选解码参数信息配置为待解码视频数据的视频解码参数,并且,可以依据配置的视频解码参数,以及解码器基于当前送入的候选解码参数信息和关键帧输出的解码结果,对后续的视频帧进行解码。如此,可以在待解码视频数据缺少视频解码参数的情况下,通过访问待解码视频数据对应的候选解码参数信息,尝试对第一个视频帧解码,以重构出待解码视频数据的视频解码参数,从而实现对待解码视频数据的解码。
如果解码器基于当前访问的候选解码参数信息(如,
Figure 329556DEST_PATH_IMAGE004
)以及关键帧失败,则可 以继续访问下一列表项,从而获得下一个候选解码参数信息,并基于获得的下一个候选解 码参数信息以及关键帧尝试解码第一个视频帧。基于此,请参照本申请另一实施例提供的 视频解码方法,该方法可以包括图4所示的步骤:
S410,识别待解码视频数据中的第一个视频帧。
S420,若识别出所述第一个视频帧是未携带视频解码参数的关键帧,则依次访问所述待解码视频数据对应的候选解码参数信息。
S430,根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个视频帧。
S440,若所述第一个视频帧解码成功,则根据解码得到的第一结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
第一结果可以理解为S240中的解码结果。本实施例中,S410-S440与上述实施例中的S210-S240的详细实现过程类似,在此不再赘述。
S450,若所述第一个视频帧解码失败,则根据所述当前访问的候选解码参数信息的下一候选解码参数信息,重新解码所述第一个视频帧。
示例性地,假如当前访问的候选解码参数信息是
Figure 143928DEST_PATH_IMAGE005
,i是[1,N]之间的整数,表示 的是候选解码参数信息所在的列表项在枚举表中的排列顺序,N为枚举表中的列表项的数 量。则,在解码器基于当前访问的候选解码参数信息是
Figure 966390DEST_PATH_IMAGE006
以及关键帧对第一个视频帧解 码失败时,可以读取列表项i+1,从而获得当前访问的候选解码参数信息
Figure 233424DEST_PATH_IMAGE007
的下一候选 解码参数信息
Figure 370007DEST_PATH_IMAGE008
。可以理解,
Figure 38886DEST_PATH_IMAGE009
的获得过程与
Figure 32250DEST_PATH_IMAGE006
的获得过程类似,在此不再 赘述。
然后,可以将获得的候选解码参数信息
Figure 786579DEST_PATH_IMAGE008
与关键帧一并送入解码器,由解码 器基于送入的候选解码参数信息
Figure 461274DEST_PATH_IMAGE010
和关键帧重新解码第一个视频帧。
S460,若所述第一个视频帧重新解码成功,则根据所述下一候选解码参数信息以及重新解码得到的第二结果,解码所述待解码视频数据的后续视频帧。
如果解码器基于送入的候选解码参数信息
Figure 984659DEST_PATH_IMAGE011
和关键帧成功地解码第一个视 频帧,则可以将候选解码参数信息
Figure 414503DEST_PATH_IMAGE012
配置为待解码视频数据的视频解码参数,并按照 配置的视频解码参数以及第二结果对待解码视频数据的后续视频帧进行解码。这里的第二 结果是指解码器基于下一候选解码参数信息
Figure 593812DEST_PATH_IMAGE013
和关键帧解码得到的解码结果。
可选地,如果解码器基于下一候选解码参数信息
Figure 868936DEST_PATH_IMAGE014
和关键帧重新解码失败, 则可以重新执行S450-S460,直至成功解码第一个视频帧为止。
参照上述描述,假设枚举表中存在N(N为正整数)个列表项,即依次排列有N个候选 解码参数信息,其中,排列顺序为j(j为正整数,并且,
Figure 512407DEST_PATH_IMAGE015
)的候选解码参数信息 可以表示为
Figure 283791DEST_PATH_IMAGE006
。那么,在确定待解码视频数据的第一个视频帧是未携带视频解码参数的 I帧之后,可以通过图5所示的流程,重构视频解码参数并基于重构的视频解码参数获得第 一个视频帧对应的解码结果。
S510,访问候选解码参数信息
Figure 12713DEST_PATH_IMAGE006
其中,j的初始值为枚举表中的第一个列表项的序号,比如1。
S520,根据候选解码参数信息
Figure 91527DEST_PATH_IMAGE006
以及关键帧,解码第一个视频帧。
其中,S510-S520的实现过程可以参照上述实施例的S210-S220或者S410-S420的详细实现过程,在此不再赘述。
S530,检测第一个视频帧是否解码成功。若是,则执行S540;若否,则执行S550。
示例性地,S530可以通过图6所示的步骤实现。详细描述如下。
S531,在开始解码第一个视频帧后,检测是否在目标时长内获得解码结果,以及检测是否产生解码错误信息。
S532,若在目标时长内获得解码结果,则确定第一个视频帧解码成功。
S533,若超过所述目标时长未获得解码结果,或者若检测到解码错误信息,则确定第一个视频帧解码失败。
本实施例中,开始解码第一个视频帧的时刻,可以是将访问的候选解码参数信息以及关键帧被送入解码器的时刻。每次通过S510获得一候选解码参数信息,并将该候选解码参数信息和关键帧送入解码器之后,即可确定当前已开始解码第一个视频帧,并开始计时。如果在计时满目标时长之前获得了解码结果,则可以确定第一个视频帧解码成功。如果在计时满目标时长之后还没有获得解码结果,或者是在计时满目标时长之前,就检测到了解码错误信息,可以直接确定第一个视频帧解码失败。可以理解,这里的解码失败是指本次解码失败。服务器100还可以基于其他候选解码参数信息继续解码第一个视频帧。
上述实施例中,对于第一个视频帧的解码是否成功的判断也可以参照图6所示流程实现。
S540,根据得到的解码结果以及候选解码参数信息
Figure 589505DEST_PATH_IMAGE006
,解码所述待解码视频数 据中的后续视频帧。
本实施例中,S540的详细实现过程可以参照上述实施例的S240或S440的详细实现过程,在此不再赘述。
S550,将j累加1,并跳转至S510。
服务器100在确定解码器对第一个视频帧的解码失败时,可以确定下一个需要访 问的候选解码参数信息在枚举表中的顺序,并将
Figure 298835DEST_PATH_IMAGE006
的下标j更新为所确定的顺序,由于 本实施例中是对枚举表中的候选解码参数信息依次访问,因此,可以直接将j累加1。如此, 当跳转至S510时,所访问的就是当前访问的候选解码参数信息的下一候选解码参数信息。
可选地,本实施例中,枚举表中的各候选解码参数信息可以是按照优先级从高到低的顺序排列的,一个候选解码参数信息的优先级可以与根据这个候选解码参数信息成功解码第一个视频帧的概率成正比。换句话说,一个候选解码参数信息的优先级越高,将这个候选解码参数信息与关键帧一起送入解码器后成功解码的概率也就越大。所述概率可以根据经验或统计数据获得。
在此情况下,S420中依次访问待解码视频数据对应的候选解码参数信息,可以这样实现:按照优先级从高到低的顺序,依次访问所述待解码视频数据对应的各候选解码参数信息。如此,在访问枚举表并依次利用枚举表中的候选解码参数信息尝试解码第一个视频帧的过程中,可以优先访问到解码成功概率较大的候选解码参数信息,缩短尝试解码所需的时间。
本实施例中,服务器100获得的待解码视频数据来自源文件,而该源文件实际是由视频编码码流经过一定处理得到的文件,这里的处理例如可以是网络传输、或数据存储等。换句话说,待解码视频数据可以视为经过传输、存储等处理的视频编码码流,在此将待解码视频数据描述为第一视频编码码流,则该第一视频编码码流可以是通过图7所示流程得到的。
S401,获得第二视频编码码流,所述第二视频编码码流的第一个视频帧为即时解码刷新(IDR)帧,所述即时解码刷新(IDR)帧为携带视频解码参数的关键帧。
S403,从所述第二视频编码码流中,删除所述即时解码刷新(IDR)帧所携带的视频解码参数,得到所述第一视频编码码流。
本实施例中,S401和S403可以在S410之前执行。这里的第二视频编码码流可以是对原始视频数据进行编码得到的码流,其中通常携带有视频解码参数,如上述的SPS和PPS。当服务器100获得的源文件是第二视频编码码流时,其通常可以正常解码。但是,实际应用中,存在视频网站的视频文件被盗用的情况。
基于此,可以在编码过程中,就将第二视频编码码流中的视频解码参数(也就是IDR帧携带的视频解码参数)删除,再将删除视频解码参数之后得到的第一视频编码码流作为源文件存储于源设备或服务器100中,这样即便是源文件被盗用,拿到的也是缺少视频解码参数的视频文件,解码存在困难。
而为了使通过服务器100使用视频解码服务的用户可以比较流畅地播放上述源文件(未携带视频解码参数),可以将IDR帧携带的视频解码参数配置成枚举表中较高优先级的候选解码参数信息,这里的较高优先级比如可以是在枚举表中排在前M位,M例如可以是1-5之间的任意整数,M的大小可以灵活设置。示例性地,如果M=1,则如图8所示,在S403之前,本实施例提供的视频解码方法还可以包括S402。
S402,将所述即时解码刷新帧所携带的视频解码参数,配置为所述待解码视频数据对应的最高优先级的候选解码参数信息。
其中,S402可以是在访问待解码视频数据对应的候选解码参数信息之前执行,比如,可以是在S410之前执行,也可以是在S420之前执行,如此,在基于枚举表中的候选解码参数信息,尝试解码待解码视频数据时,从第二视频编码码流中被删除的视频解码参数将优先被访问,由于被删除的视频解码参数就是待解码视频数据的真实视频解码参数,因此,第一个视频帧可以解码成功,解码器尝试解码第一个视频帧的次数很少,甚至可以通过一次尝试就成功,耗时很少。这样,既能够降低视频源文件被盗的风险,又可以快速流畅地为用户提供视频解码服务。
进一步地,在执行S402的过程中,可以对配置于枚举表中的所述最高优先级的候选解码参数信息进行加密,从而进一步降低视频源文件被盗的风险。一些场景中,甚至可以只对所述最高优先级的候选解码参数信息而非对源文件本身加密,由于被加密的数据大大减小,相应地,加密处理和解密处理的时长也将大大减少。解密通常是在解码过程实现的,解密时长减少,可以大大缩短解码过程的耗时,从而改善用户播放体验。
请参阅图9,其示出了本申请实施例提供的一种视频解码装置的框图。该装置900可以包括:识别模块910、访问模块920以及解码模块930。
其中,识别模块910可以用于识别待解码视频数据中的第一个视频帧。
访问模块920可以用于当识别出第一个视频帧是未携带解码参数的关键帧,依次访问待解码视频数据对应的候选解码参数信息。
可选地,所述视频解码参数包括序列参数项和图像参数项,所述序列参数项是序列参数集SPS中的参数项,所述图像参数项是图像参数集PPS中的参数项;所述待解码视频数据与所述序列参数项的候选值以及所述图像参数项的候选值随机组合而成的至少一个候选解码参数信息相对应,一个候选解码参数信息包括每个所述序列参数项的一个候选值以及每个所述图像参数项的一个候选值,不同的候选解码参数信息不全相同。
可选地,访问模块920可以按照优先级从高到低的顺序,依次访问所述待解码视频数据对应的各候选解码参数信息,其中,所述候选解码参数信息的优先级,与根据所述候选解码参数信息成功解码所述第一个视频帧的概率成正比。
解码模块930可以用于:根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个视频帧;若所述第一个视频帧解码成功,则根据得到的解码结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
可选地,所述解码结果为第一结果,则解码模块930还可以用于:在根据当前访问的候选解码参数信息和所述关键帧进行解码之后,若所述第一个视频帧解码失败,则根据所述当前访问的候选解码参数信息的下一候选解码参数信息,重新解码所述第一个视频帧;若所述第一个视频帧重新解码成功,则根据所述下一候选解码参数信息以及重新解码得到的第二结果,解码所述待解码视频数据的后续视频帧。
可选地,解码模块930确定所述第一个视频帧解码失败的情况可以包括:超过目标时长未获得解码结果,或者检测到解码错误信息。
可选地,解码模块930确定所述第一个视频帧解码成功的情况包括:在所述目标时长内获得解码结果。
可选地,待解码视频数据可以是经过处理的第一视频编码码流。对应地,装置900可以与一编码处理模块通信连接。编码处理模块可以用于:编码获得第二视频编码码流,所述第二视频编码码流的第一个视频帧为即时解码刷新帧,所述即时解码刷新帧为携带视频解码参数的关键帧;从所述第二视频编码码流中,删除所述即时解码刷新帧所携带的视频解码参数,得到所述第一视频编码码流。
装置900还可以包括配置模块。配置模块用于在编码处理模块从所述第二视频编码码流中,删除所述即时解码刷新帧所携带的视频解码参数之前,将所述即时解码刷新帧所携带的视频解码参数,配置为所述待解码视频数据对应的最高优先级的候选解码参数信息。
通过本申请实施例提供的视频解码装置,可以对缺少视频解码参数的视频数据进行解码,从而避免视频文件因缺少视频解码文件而无法播放。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图10,其示出了本申请实施例提供的一种电子设备的结构框图。电子设备1000可以是图1示出的服务器100或终端设备200,本申请实施例对此没有限制。本申请中的电子设备1000可以包括一个或多个如下部件:处理器1010、存储器1020、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器1020中并被配置为由一个或多个处理器1010执行, 一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器1010可以包括一个或者多个处理核。处理器1010利用各种接口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1020内的指令、程序、代码集或指令集,以及调用存储在存储器1020内的数据,执行电子设备1000的各种功能和处理数据。可选地,处理器1010可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1010可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1010中,单独通过一块通信芯片进行实现。
存储器1020可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器1020可用于存储指令、程序、代码、代码集或指令集。存储器1020可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备1000在使用中所创建的数据(比如待解码视频数据、候选解码参数信息)等。
可以理解,图10所示的结构仅为示意,电子设备1000还可以包括比图10所示更多、更少或完全不同的组件,本实施例对此没有限制。
请参考图11,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质1100中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质1100可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质1100包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质1100具有执行上述方法中的任何方法步骤的程序代码1110的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1110可以例如以适当形式进行压缩。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请上述实施例提供的视频解码方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (11)

1.一种视频解码方法,其特征在于,包括:
识别待解码视频数据中的第一个视频帧;
若识别出所述第一个视频帧是未携带视频解码参数的关键帧,则依次访问所述待解码视频数据对应的候选解码参数信息;
根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个视频帧;
若所述第一个视频帧解码成功,则根据得到的解码结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
2.根据权利要求1所述的方法,其特征在于,所述解码结果为第一结果,在所述根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个关键帧之后,所述方法还包括:
若所述第一个视频帧解码失败,则根据所述当前访问的候选解码参数信息的下一个候选解码参数信息,重新解码所述第一个视频帧;
若所述第一个视频帧重新解码成功,则根据所述下一候选解码参数信息以及重新解码得到的第二结果,解码所述待解码视频数据的后续视频帧。
3.根据权利要求2所述的方法,其特征在于,确定所述第一个视频帧解码失败的情况包括:超过目标时长未获得解码结果,或者检测到解码错误信息。
4.根据权利要求3所述的方法,其特征在于,确定所述第一个视频帧解码成功的情况包括:在所述目标时长内获得解码结果。
5.根据权利要求1-4中任意一项所述的方法,其特征在于,所述视频解码参数包括序列参数项和图像参数项,所述序列参数项是序列参数集SPS中的参数项,所述图像参数项是图像参数集PPS中的参数项;
所述待解码视频数据与所述序列参数项的候选值以及所述图像参数项的候选值随机组合而成的至少一个候选解码参数信息相对应,一个候选解码参数信息包括每个所述序列参数项的一个候选值以及每个所述图像参数项的一个候选值,两个不同的候选解码参数信息中存在至少一个参数项的候选值不同。
6.根据权利要求1-4中任意一项所述的方法,其特征在于,所述依次访问所述待解码视频数据对应的候选解码参数信息,包括:
按照优先级从高到低的顺序,依次访问所述待解码视频数据对应的各候选解码参数信息,其中,所述候选解码参数信息的优先级,与根据所述候选解码参数信息成功解码所述第一个视频帧的概率成正比。
7.根据权利要求6所述的方法,其特征在于,所述待解码视频数据为第一视频编码码流,所述第一视频编码码流通过如下方式获得:
获得第二视频编码码流,所述第二视频编码码流的第一个视频帧为即时解码刷新帧,所述即时解码刷新帧为携带视频解码参数的关键帧;
从所述第二视频编码码流中,删除所述即时解码刷新帧所携带的视频解码参数,得到所述第一视频编码码流。
8.根据权利要求7所述的方法,其特征在于,在所述从所述第二视频编码码流中,删除所述即时解码刷新帧所携带的视频解码参数之前,所述方法还包括:
将所述即时解码刷新帧所携带的视频解码参数,配置为所述待解码视频数据对应的最高优先级的候选解码参数信息。
9.一种视频解码装置,其特征在于,包括:
识别模块,用于识别待解码视频数据中的第一个视频帧;
访问模块,用于当识别出所述第一个视频帧是未携带解码参数的关键帧,依次访问所述待解码视频数据对应的候选解码参数信息;
解码模块,用于根据当前访问的候选解码参数信息和所述关键帧,解码所述第一个视频帧;若所述第一个视频帧解码成功,则根据得到的解码结果以及所述当前访问的候选解码参数信息,解码所述待解码视频数据中的后续视频帧。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储于所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-8中任意一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-8中任意一项所述的方法。
CN202010999271.8A 2020-09-22 2020-09-22 视频解码方法、装置及电子设备 Active CN111935500B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010999271.8A CN111935500B (zh) 2020-09-22 2020-09-22 视频解码方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010999271.8A CN111935500B (zh) 2020-09-22 2020-09-22 视频解码方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111935500A true CN111935500A (zh) 2020-11-13
CN111935500B CN111935500B (zh) 2021-08-10

Family

ID=73334057

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010999271.8A Active CN111935500B (zh) 2020-09-22 2020-09-22 视频解码方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111935500B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463335A (zh) * 2020-12-03 2021-03-09 Oppo广东移动通信有限公司 一种应用程序运行方法、装置和存储介质
CN113452947A (zh) * 2021-05-19 2021-09-28 深圳市捷视飞通科技股份有限公司 关键帧获取方法、装置、计算机设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103404146A (zh) * 2013-03-11 2013-11-20 华为技术有限公司 视频文件修复方法及装置
US20140098890A1 (en) * 2007-06-30 2014-04-10 Microsoft Corporation Neighbor determination in video decoding
CN104170386A (zh) * 2012-03-16 2014-11-26 松下电器产业株式会社 图像解码装置以及图像解码方法
CN104394319A (zh) * 2014-11-24 2015-03-04 广州市浩云安防科技股份有限公司 一种嵌入式的高清网络视频录像机
CN105376612A (zh) * 2014-08-26 2016-03-02 华为技术有限公司 一种视频播放方法、媒体设备、播放设备以及多媒体系统
CN109714622A (zh) * 2018-11-15 2019-05-03 北京奇艺世纪科技有限公司 一种视频数据处理方法、装置及电子设备
CN109819282A (zh) * 2017-11-22 2019-05-28 腾讯科技(深圳)有限公司 一种视频用户类别识别方法、装置和介质
CN111432242A (zh) * 2020-03-31 2020-07-17 广州市百果园信息技术有限公司 加密视频通话方法、装置、设备和存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140098890A1 (en) * 2007-06-30 2014-04-10 Microsoft Corporation Neighbor determination in video decoding
CN104170386A (zh) * 2012-03-16 2014-11-26 松下电器产业株式会社 图像解码装置以及图像解码方法
CN103404146A (zh) * 2013-03-11 2013-11-20 华为技术有限公司 视频文件修复方法及装置
CN105376612A (zh) * 2014-08-26 2016-03-02 华为技术有限公司 一种视频播放方法、媒体设备、播放设备以及多媒体系统
CN104394319A (zh) * 2014-11-24 2015-03-04 广州市浩云安防科技股份有限公司 一种嵌入式的高清网络视频录像机
CN109819282A (zh) * 2017-11-22 2019-05-28 腾讯科技(深圳)有限公司 一种视频用户类别识别方法、装置和介质
CN109714622A (zh) * 2018-11-15 2019-05-03 北京奇艺世纪科技有限公司 一种视频数据处理方法、装置及电子设备
CN111432242A (zh) * 2020-03-31 2020-07-17 广州市百果园信息技术有限公司 加密视频通话方法、装置、设备和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463335A (zh) * 2020-12-03 2021-03-09 Oppo广东移动通信有限公司 一种应用程序运行方法、装置和存储介质
CN113452947A (zh) * 2021-05-19 2021-09-28 深圳市捷视飞通科技股份有限公司 关键帧获取方法、装置、计算机设备和存储介质
CN113452947B (zh) * 2021-05-19 2023-01-24 深圳市捷视飞通科技股份有限公司 关键帧获取方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN111935500B (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
US9215473B2 (en) Sub-slices in video coding
TWI636687B (zh) 視訊資料串流概念技術
TWI692245B (zh) 視訊解碼裝置、視訊編碼方法及裝置與電腦可讀儲存媒體
US9860560B2 (en) Method for palette mode coding
KR102006044B1 (ko) 메타데이터를 이용한 비디오 디코딩 기법
CN111935500B (zh) 视频解码方法、装置及电子设备
CN109963176B (zh) 视频码流处理方法、装置、网络设备和可读存储介质
US9083952B2 (en) System and method for relative storage of video data
US20230017002A1 (en) File encapsulation method, file transmission method, file decoding method, electronic device, and storage medium
US20140086326A1 (en) Method and system for generating an instantaneous decoding refresh (idr) picture slice in an h.264/avc compliant video data stream
US20190356911A1 (en) Region-based processing of predicted pixels
WO2021254375A1 (zh) 视频分块方法、传输方法、服务器、适配器和存储介质
CN105379281B (zh) 用于使用图形处理器的视频解码的图片参考控制
US20130251022A1 (en) Signaling of end of slices
WO2022110870A1 (zh) 图像编码和解码方法、编码和解码装置、编码器及解码器
WO2022042325A1 (zh) 视频处理方法、装置、设备及存储介质
CN112954396B (zh) 视频的播放方法、装置、电子设备及计算机可读存储介质
US20230067994A1 (en) Encoding and decoding video data
US11736730B2 (en) Systems, methods, and apparatuses for video processing
US20220353524A1 (en) Parallel forensic marking apparatus and method
EP3989566A1 (en) Motion information list construction method in video encoding and decoding, device, and apparatus
US20230328259A1 (en) Image encoding method, real-time communication method, device, storage medium, and program product
US20130287100A1 (en) Mechanism for facilitating cost-efficient and low-latency encoding of video streams
CN116980619A (zh) 视频处理方法、装置、设备及存储介质
CN113905233A (zh) 基于音频视频编码标准的熵解码方法、可读介质及其电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant