CN114465993A - 视频编码方法、视频解码方法和装置、介质和计算设备 - Google Patents

视频编码方法、视频解码方法和装置、介质和计算设备 Download PDF

Info

Publication number
CN114465993A
CN114465993A CN202210082205.3A CN202210082205A CN114465993A CN 114465993 A CN114465993 A CN 114465993A CN 202210082205 A CN202210082205 A CN 202210082205A CN 114465993 A CN114465993 A CN 114465993A
Authority
CN
China
Prior art keywords
frame
encoding
image
reference frame
coding
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
CN202210082205.3A
Other languages
English (en)
Other versions
CN114465993B (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.)
Hangzhou Netease Zhiqi Technology Co Ltd
Original Assignee
Hangzhou Netease Zhiqi Technology 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 Hangzhou Netease Zhiqi Technology Co Ltd filed Critical Hangzhou Netease Zhiqi Technology Co Ltd
Priority to CN202210082205.3A priority Critical patent/CN114465993B/zh
Publication of CN114465993A publication Critical patent/CN114465993A/zh
Application granted granted Critical
Publication of CN114465993B publication Critical patent/CN114465993B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks

Landscapes

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

Abstract

本公开的实施方式提供了一种视频编码方法、视频解码方法和装置、介质和计算设备。该视频编码方法包括:响应于接收到参考帧的帧标识,根据帧标识由编码端获取参考帧的帧图像;将参考帧的帧图像与待传输至解码端的其他图像帧组成新视频序列,对新视频序列进行编码得到编码数据;其中,所述参考帧作为新视频序列的首帧,且将参考帧编码成I帧;将所述新视频序列编码所使用的编码参数以及所述编码数据中除I帧以外的其他图像帧对应的编码数据,发送至所述解码端。本公开的方法使得编码端向解码端发送数据时节省了带宽,提高了网络传输的质量。

Description

视频编码方法、视频解码方法和装置、介质和计算设备
技术领域
本公开的实施方式涉及视频信号传输与处理领域,更具体地,本公开的实施方式涉及一种视频编码方法、视频解码方法和装置、介质和计算设备。
背景技术
本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在视频流的传输过程中,为了保证高清视频在有限带宽的信道传输时的流畅度和实时性,通常在发送端对视频信号进行压缩编码处理,在接收端再对接收的视频帧按照编码顺序进行组帧。视频信号在信道传输过程中,可能会由于信道传输质量不佳或者信道受到噪声影响而产生丢包,如果视频序列中间帧发生了丢包导致无法解析出,则后续的视频帧都不能正确解码,从而在接收端出现图像卡顿延迟的现象。
相关技术中,如果视频流的接收端经过检测发现丢包发生之后,可以请求发送端重新发送视频流的I帧,用于重新启动发送流。由于I帧不需要参考之前的视频帧,即使无法恢复丢失的视频帧的情况下,也能够正确解析后续的视频帧。但是这种恢复方式,由于I帧的数据大小一般比普通视频帧数据要大很多,在信道受限的情况下,容易造成视频数据传输失败,从而使得传输的视频质量不佳,仍然会导致卡顿、延迟、画面模糊等情况出现。
发明内容
有鉴于此,本公开的实施方式提供一种视频编码方法、视频解码方法和装置、介质和计算设备。
在本公开实施方式的第一方面中,提供了一种视频编码方法,所述方法由视频流的编码端执行,所述方法包括:
响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送;
将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对所述新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧;
将所述新视频序列编码所使用的编码参数、以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至所述解码端。
在本公开实施方式的第二方面中,提供了一种视频解码方法,所述方法由视频流的解码端执行,所述方法包括:
响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由所述视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到;
接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据;
由所述解码端获取所述帧标识对应的参考帧的帧图像;并根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据;
将所述参考帧的编码数据、以及所述除I帧以外的其他图像帧对应的编码数据组成所述新视频序列的码流,对所述码流进行解码。
在本公开实施方式的第三方面中,提供了一种视频编码装置,所述装置应用于视频流的编码端;所述装置包括:
图像获取模块,用于响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送;
二次编码模块,用于将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧;
传输处理模块,用于将所述新视频序列编码所使用的编码参数以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至解码端。
在本公开实施方式的第四方面中,提供了一种视频解码装置,所述装置应用于视频流的解码端;所述装置包括:
信息发送模块,用于响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由所述视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到;
数据接收模块,用于接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据;
二次编码模块,用于由所述解码端获取所述帧标识对应的参考帧的帧图像;并根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据;
解码处理模块,用于将所述参考帧的编码数据、以及所述除I帧以外的其他图像帧对应的编码数据组成新视频序列的码流,对所述码流进行解码。
在本公开实施方式的第五方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开任一实施例的方法。
在本公开实施方式的第六方面中,提供了一种计算设备,所述计算设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本公开任一实施例的方法。
根据本公开实施方式的视频编码方法、视频解码方法和装置、介质和计算设备,通过在解码端丢包时,编码端向解码端发送新视频序列的编码数据时,并没有发送I帧的编码数据,而是发送编码参数和I帧以外的其他图像帧的编码数据,由解码端根据编码参数获得I帧,这样相比较于重新发送I帧,能够节省带宽,从而减少了卡顿发生的几率,提高了网络传输的成功率。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
图1示意性地示出了根据本公开实施方式的一种视频编码方法的流程;
图2示意性地示出了根据本公开另一实施例的视频编码方法的流程;
图3示意性地示出了根据本公开一实施例的解码端接收到的视频流示意;
图4示意性地示出了根据本公开再一实施例的编码端二次编码的示意图;
图5示意性地示出了根据本公开一实施例的编码端传送编码数据的示意;
图6示意性地示出了根据本公开一实施例的解码端的码流恢复示意图;
图7示意性地示出了根据本公开一实施例的初始编码数据的示意图;
图8示意性地示出了根据本公开一实施例的编码端存储图像的示意图;
图9示意性地示出了根据本公开一实施例的视频编码装置的结构示意图;
图10示意性地示出了根据本公开又一实施例的视频编码装置的结构示意图;
图11示意性地示出了根据本公开一实施例的视频解码装置的结构示意图;
图12示意性地示出了根据本公开又一实施例的视频解码装置的结构示意图;
图13示意性地示出了根据本公开一实施例的计算机可读存储介质的示意图;
图14示意性地示出了根据本公开一实施例的一种计算设备的结构图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本公开的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本公开的实施方式可以实现为一种***、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本公开的实施方式,提出了一种视频编码方法、视频解码方法、介质和计算设备。下面参考本公开的若干代表性实施方式,详细阐释本公开的原理和精神。
发明概述
本公开的发明人发现,为了解决相关技术中存在的请求发送端重新发送I帧时,由于I帧数据较大导致容易传输失败的问题,可以选择一个在视频流的解码端已经接收到的图像帧作为编码时的I帧,这样,在编码端发送码流时,可以不将该图像帧发送到解码端,而由解码端自己从本端获取该可作为I帧的图像帧,并将其编码成I帧。如此,编码端发送的码流就可以降低数据量,提高码流传输成功率,并且也实现了码流的恢复。
在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
示例性方法
图1示意性地示出了根据本公开一个实施例提供的视频编码方法的流程示意图,该方法由视频流的编码端执行,可以包括如下处理:
在步骤100中,响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送。
在步骤102中,将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对所述新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧。
在步骤104中,将所述新视频序列编码所使用的编码参数、以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至所述解码端。
图2示意性地示出了根据本公开一个实施例提供的视频解码方法的流程示意图,该方法由视频流的解码端执行,可以包括如下处理:
在步骤200中,响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由所述视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到。
在步骤202中,接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据。
在步骤204中,由所述解码端获取所述帧标识对应的参考帧的帧图像。
在步骤206中,根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据。
在步骤208中,将所述参考帧的编码数据、以及所述除I帧以外的其他图像帧对应的编码数据组成所述新视频序列的码流,对所述码流进行解码。
如下结合图1和图2,对视频编解码的处理进行详细描述:
首先,假设由于视频流的传输信道质量不佳,解码端检测到该视频流发生了丢包。其中,这里所述的丢包可以具有宽泛的含义,例如,可以包括视频流中的其中一帧或几帧没有被解码端成功接收,或者还可以是相应的帧虽被解码端成功接收但却已经损坏。具体的丢包检测方式可以按照常规方式进行,本实施例不做限制。例如,视频流中的各帧可以都具有表示该帧在视频流序列中位置的序号,解码端可以依据接收到的帧序号是否连续来确定是否发生了丢包。示例性的,其中连续的十帧的序号可以依次为“01、02、03、04…10”,即这些序号是连续的,那么,如果解码端发现接收的序号发生了中断,比如,接收到的帧序号依次为“01、02、04、05…”,则可以确定序号“03”对应的帧丢失。
请参见图3的示意,该图3示意了解码端接收到的视频流,该视频流中包括多个图像帧,例如,图像帧f1、图像帧f2等。假设图3中虚线框K框起来的那些图像帧发生了丢包。那么,根据步骤200,在检测到发生丢包后,解码端可以获取该视频流中参考帧的帧标识。
其中,视频流中可以包括的各个图像帧中筛选得到多个参考帧。例如,图3中示意了其中的两个参考帧,参考帧SC1和参考帧SC2。该多个参考帧可以是间隔筛选得到的,本实施例并不限制参考帧的筛选方式,例如,可以每间隔固定数量的图像帧确定一帧是参考帧。
此外,图3中的箭头示意了视频流的各图像帧的接收时序,这些图像帧是按照箭头方式从左到右逐个接收到的,例如,解码端先接收到SC1,后接收到SC2;先接收到图像帧f1,后接收到图像帧f2。因此,根据图3所示,在发生虚线框K框起来的图像帧丢包时,虚线框K之前的那些图像帧都已经被解码端接收到。
在步骤200中,解码端在检测到丢包发生时,获取该视频流的参考帧的帧标识,可以是获取解码端已经接收到的任一参考帧的帧标识。本实施例以获取在时序上距离丢包帧最近的参考帧为例,获取距离丢包帧最近的参考帧可以提高获取参考帧的效率,更快的得到所述参考帧。例如,根据图3的示意,距离丢包帧(即虚线框K中的图像帧)最近的参考帧是参考帧SC2,因为参考帧SC1相比于SC2来说,距离丢包帧更远。解码端可以获取SC2的帧标识。
本实施例中,参考帧的帧标识是用于表示该参考帧在视频流中所处位置的信息。示例性的,可以是参考帧在视频流中的时序位置的序号。比如,视频流的编码端在对视频流编码时,就可以为其中的每个图像帧都分配一个序号,以标识该图像帧在视频流中的位置。并且,编码端在将编码后的视频流发送至解码端时,也会将各个图像帧的序号一并发送,那么解码端也会接收到视频流中各个图像帧分别对应的序号。
解码端在将参考帧的帧标识反馈到编码端后,解码端可以处于等待状态,等待接收到编码端发送的信息之后,再进行丢包的恢复处理。
接着,请参见步骤100,编码端在接收到解码端反馈的参考帧的帧标识后,就可以知晓解码端发生了丢包。编码端可以根据该帧标识,由本端获取对应的参考帧的帧图像。其中,编码端可以在本端存储有图像集合,该集合中可以包括视频流中的多个参考帧的帧图像及对应的帧标识,因此,可以基于解码端反馈的帧标识,由该图像集合中获取到对应的参考帧的帧图像。
此外,编码端还可以通过其他方式来获知解码端发生了丢包,示例性的,解码端在检测到丢包后,可以向编码端发送丢包指示信息,以通过该丢包指示信息通知编码端。其中,丢包指示信息中可以携带参考帧的帧标识、以及该帧标识以外的其他信息。编码端在接收到丢包指示信息后,即可获知解码端发生了丢包,并可以获取其中携带的参考帧的帧标识。
根据步骤102,编码端可以将获取到的参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,并对该新视频序列进行编码,得到编码数据。其中,所述的待传输至解码端的其他图像帧可以是编码端在接收到解码端反馈的参考帧的帧标识之后获取到的图像帧,这些图像帧都是要传输至解码端的帧。
请参见图4的示意,编码端将获取到的SC2的帧图像与待传输的其他图像帧组成了新视频序列,并且在该序列中将SC2的帧图像作为序列的首帧。将该新视频序列送入编码端的二次编码器,以供二次编码器进行二次编码。之所以称为二次编码,是由于编码端在接收到解码端反馈的帧标识之前,是通过图4中的正常编码器对视频流进行编码,并且,该正常编码器与二次编码器在对视频流编码时的编码方式也有所不同,后续将再说明正常编码器是如何编码的,这里暂不介绍。即正常情况下,是由编码端的正常编码器对视频流进行编码,当编码端收到解码端反馈的帧标识后,获知解码端发生了丢包,则启动二次编码器通过另一种方式进行编码,后续待解码端对丢包帧恢复后,可以重新通过正常编码器进行编码。也就是说,编码端在正常传输情况时以及解码端丢包时的编码可以采取不一样的方式。
如上所述,二次编码时,编码端是将参考帧的帧图像与待传输的其他图像帧组成新视频序列,并且在该序列中将参考帧的帧图像作为序列的首帧,即该参考帧是应用于二次编码,所以本公开实施例中也可以将参考帧称为二次编码(secondary coding)帧。
此外,为了保持码流的唯一性,编码端在对上述的新视频序列编码之前,可以终止正常编码器的编码处理,只由二次编码器启动编码。本实施例并不限制所述的正常编码器和二次编码器在物理上是否是同一个编码器,例如,正常编码器和二次编码器可以是物理上分开独立的两个编码器,又例如,正常编码器和二次编码器在物理上可以是同一个编码器,该同一个编码器在不同的情况下可以采用不同的编码方式,当未发生丢包时可以将该编码器称为正常编码器,当发生丢包时可以将该编码器称为二次编码器,如上所述的,正常编码器和二次编码器可以采用不同的编码方式,不再赘述。
请继续参见图4,二次编码器在对新视频序列编码时,可以将序列中的参考帧的帧图像作为首帧,并将该参考帧编码成I帧,而序列中的其他图像帧可以参考该I帧进行编码,例如可以将其他图像帧编码成P帧。
根据步骤104,编码端在向解码端发送编码数据时,上述新视频序列的I帧的编码数据可以不发送,而发送相应编码数据中除所述I帧以外的其他图像帧对应的编码数据。比如,假设该新视频序列中包括作为首帧的SC2、以及八个图像帧,共九帧,那么SC2编码成I帧的编码数据不发送,而只将其余八帧对应的编码数据发送至解码端。
此外,除了上述的编码数据,编码端还可以将二次编码器对该新视频序列编码时使用的编码参数一并发送至解码端。例如,该编码参数可以包括但不限于码率、分辨率、帧率等参数,这些编码参数可以编码成SEI(Supplemental Enhancement Information,媒体增强补充信息)。例如,如图5的示意,该SEI和上述的其他图像帧的编码数据一起通道信道传输至解码端。
请继续参见步骤202,解码端接收到编码端发送的SEI和编码数据后,解码端可以获取步骤200中发送至编码端的帧标识对应的帧图像,该帧图像即所述帧标识对应的参考帧的图像。当然,本实施例不限制解码端获取上述的帧图像、以及接收编码端发送的编码数据之间的先后顺序,比如,解码端可以在接收到编码端发送的编码数据之前,先由解码端本端获取该帧图像;或者,还可以是解码端先接收编码端发送的编码数据,然后再由本端获取上述参考帧的帧图像。
接着,请参见图6的示意,解码端还可以根据接收到的SEI中的编码参数,将获取到的参考帧SC2的帧图像编码成I帧,从而得到参考帧SC2的编码数据。再将该SC2的编码数据与解码端接收到的编码数据组成对新视频序列编码后的完整码流,送往解码器进行解码,进行正常解码过程。
而对于编码端来说,在步骤104中,编码端将编码参数以及除所述I帧以外的其他图像帧对应的编码数据通过信道传输至解码端之后,如果在一定时间段内未再接收到解码端反馈的参考帧的帧标识,就可以确认解码端相应的丢包帧已经被恢复。例如,假设当前时刻是T1,并假设编码端接收到解码端发送的参考帧的帧标识的时刻称为第一时刻T2,且在时间轴上,T1位于T2之后,那么,如果T1-T2的时间间隔到达了某时长阈值,且编码端在该T1-T2的时间间隔内也未接收到解码端发送的上述帧标识,就可以确认解码端相应的丢包帧已经恢复。则编码端可以停止二次编码器的编码处理,而重新启动正常编码器。该正常编码器的编码处理将后续描述。
上述的编码端在一定时间段内未再接收到解码端反馈的参考帧的帧标识,就确定解码端相应的丢包帧已经被恢复,仅是一种示例的丢包恢复的确认方式,本公开实施例不局限于此。比如,在其他的示例性方式中,解码端在相应的丢包帧恢复后,还可以向编码端发送丢包恢复的通知,编码端根据该通知确定解码端的丢包帧已经恢复。
此外,在其他的例子中,如果视频流的编码参数相对较为稳定,可以在编码端将编码参数发送至解码端之后,由解码端将该编码参数进行存储,若再次发生丢包的时候,编码端在发送用于丢包恢复的编码数据时,可以不再发送该编码参数,而是由解码端获取存储的编码参数使用。例如,假设某一次丢包的情况发生时,编码端按照上述的流程,将编码参数发送至解码端,解码端不仅根据该编码参数将参考帧SC2的帧图像编码成I帧,得到参考帧SC2的编码数据,而且还将该编码参数存储下来。那么,假设再一次发生丢包,编码端又对组建的新视频序列编码,并向解码端发送编码数据时,可以不再发送编码参数,而只发送除所述I帧以外的其他图像帧对应的编码数据,解码端获取本端存储的编码参数,将参考帧编码成I帧。
上述的例子可以看到,尽管在后续发送新视频序列的编码数据时,编码端可以不发送编码参数,但是在这之前,编码端已经将该视频流编码使用的编码参数发送至解码端。即,编码端都会将“编码所使用的编码参数、以及编码数据中除I帧以外的其他图像帧对应的编码数据”发送给解码端,只不过该编码参数、以及I帧以外的其他图像帧的编码数据可以是一起发送,也可以是分开在不同的时间发送,或者也可以说,编码参数和上述的编码数据可以是在同一次二次编码过程中(对应一次丢包)发送,也可以是在不同次二次编码(可以是对应不同次丢包)中发送。
上述本实施例的方法,描述了在解码端发生丢包时,编码端的视频编码处理以及解码端的视频解码处理,由上述处理过程可以看到,编码端在发送新视频序列的编码数据时,并没有发送I帧的编码数据,而是发送编码参数和I帧以外的其他图像帧的编码数据,这样就能节省带宽。比如,对于高清视频来说,相比较于重新发送I帧,I帧会随着分辨率的增大而增大,而携带编码参数的SEI信息对于不同分辨率视频的大小固定,则对于高清视频的发送节省了带宽。例如,在1080p等高清视频中,I帧的大小大致是P帧的5到10倍,而SEI信息仅相当于P帧信息的10%左右,可以节省很大一部分带宽,从而减少了卡顿发生的几率,更有利于网络传输。
如下描述编码端的正常编码器如何进行视频流的编码:
上述图1和图2的流程描述了编码端在解码端发生丢包情况下的处理,而当解码端正常接收视频流,并没有发生丢包时,编码端可以通过正常编码器对视频流进行编码。本实施例将编码端通过正常编码器对视频流编码得到的编码数据称为初始编码数据,在初始编码数据的生成过程中,编码端可以由视频流的各个图像帧中筛选得到多个图像帧,将这些筛选到的图像帧作为参考帧。示例性的,可以每隔一定的时间间隔,将一帧标记为参考帧。
请结合参见图7的示意,该图7示意了初始编码数据的一部分。其中,该初始编码数据中可以包括两个参考帧SC1和SC2,当然,初始编码数据中可以包括更多数量的参考帧,这里仅示意了两帧。
假设将参考帧SC1称为第一参考帧,将SC2称为第二参考帧,那么在筛选参考帧时,可以这样处理:在已经确定好第一参考帧之后,进行时间间隔的计算,若到达SC2时,确定该SC2与SC1之间的时间间隔到达了设定的时间阈值,则可以将SC2确定为第二参考帧。例如,假设时间阈值是t,在确定好SC1之后,对于时序上位于SC1之后的每一帧,可以获取该帧与SC1之间的时间间隔T,若时间间隔T小于时间阈值t,不将其设为参考帧;若发现某一帧与SC1之间的时间间隔T达到了t,则将该帧确定为第二参考帧SC2。
在编码过程中,编码端可以为每个参考帧添加标识,即按照相应的时间间隔为一系列图像帧中的一部分添加标识,以将这些被添加了标识的图像帧确定为参考帧。后续在发送初始编码数据时,若根据所述标识确定某个图像帧是参考帧,则将该参考帧的帧标识(如,可以是图像帧在视频流中的序号)编码成SEI。编码端可以将该SEI设置在初始编码数据中,一并发送至解码端。因此,在向解码端传输的初始编码数据中,包括多个参考帧的帧标识,这些帧标识指示了参考帧在视频流中的位置,并且这些帧标识是以SEI的格式发送。
由上述可以看到,编码端的正常编码器和二次编码器在编码的方式上,区别包括:
正常编码器:进行正常的码流编码过程,只是会由视频流中所筛选出的部分图像帧作为参考帧,并将参考帧的帧标识编码成SEI,随视频流的初始编码数据一并发送至解码端;另外,SEI中携带的内容是参考帧的帧标识。
二次编码器:以解码端反馈的帧标识对应的参考帧为首帧,与待传输的其他图像帧组成新视频序列进行编码,将首帧编码成I帧。并且,将本次编码的编码参数记录到SEI中,将该SEI以及除I帧以外的其他图像帧对应的编码数据发送至解码端。可以看到,二次编码时的SEI中携带的内容是编码参数,与初始编码数据中的SEI有所不同。
在另一种相关技术中,还可以在视频流中每隔几帧就将一帧设置为LTR(longterm reference,长期参考)帧,当丢包发生时,解码端可以参考前向最近的LTR帧进行丢包恢复,而且这种方式不需要编码端重新传送I帧,不会再出现前述的相关技术那样传送I帧导致的信道压力大和卡顿的情况。但是,LTR帧需要编码端在编码时在码流中写入特殊语法元素,并且在解码端需要能够识别这些语法元素,否则就不能正确解码。可见,这种参考LTR帧进行丢包恢复的方式,对编码端和解码端都有支持LTR帧编解码的要求,不具有普遍兼容性。
此外,由本公开实施例的初始编码数据的生成过程还可以看到,编码端在由视频流的各图像帧中筛选参考帧时,这些参考帧可以是由初始编码数据中的P帧中筛选得到。如此,参考帧与P帧的结构相同,编码端在生成参考帧时,就是普通的P帧即可,不需要像生成LTR帧那样做额外的修改,同样,解码端也能够支持参考帧的解码,因此,相对于相关技术中的以LTR帧为参考进行丢包恢复的方式,本实施例的方法对编解码端具有较好的兼容性。
如前述的示例,编码端在某时长阈值的时间间隔内未接收到解码端发送的帧标识的情况下,可以确认解码端相应的丢包帧已经被恢复,则停止二次编码器的编码处理,重新启动正常编码器,也就是说,编码端可以重新开始将待传输的视频流编码成上述初始编码数据的格式,该初始编码数据包括由视频流的各图像帧中筛选确定的各个参考帧分别对应的帧标识、以及对视频流的各图像帧编码得到的编码数据,并将该初始编码数据发送至解码端。
如下示例两种时间阈值的确定方式,该时间阈值是用于筛选参考帧使用,即,每隔该时间阈值,将视频流中的一帧标记为参考帧。比如,SC2与第一参考帧SC1之间的时间间隔到达了该时间阈值,则将SC2确定为第二参考帧。
在一个例子中,编码端可以获取用于传输视频流的传输网络的网络状态参数,该网络状态参数包括但不限于传输速率、带宽、时延等。可以存储有网络状态参数与时间阈值的映射关系,比如,当网络状态参数的取值是c1时,对应可以采用的时间阈值是t1,当网络状态参数的取值是c2时,对应可以采用的时间阈值是t2。可以基于上述的映射关系,确定视频流的传输网络的网络状态参数对应的时间阈值,并利用该时间阈值来筛选确定视频流中的参考帧。比如,当已经确定第一参考帧的情况下,若某个图像帧与该第一参考帧之间的时间间隔达到了所述的时间阈值,则将该图像帧确定为第二参考帧。
在另一个例子中,编码端还可以存储场景参数与时间阈值的映射关系,其中,该场景参数可以用于表示视频流所属的场景,比如,场景参数s1表示视频流属于视频会议场景,场景参数s2表示视频流属于观看视频的场景。而不同的场景可以采用不同的时间阈值,比如,对于实时性要求比较高的场景,可以设定较短的时间阈值,对于实时性要求不高的场景,可以设置时间阈值稍长。当然,上述的场景仅是示例,还可以是其他的场景示例。编码端在获取视频流时,还可以获取该视频流所属的场景参数,并据此确定对应的时间阈值。该时间阈值可以用于筛选确定视频流中的参考帧。比如,当已经确定第一参考帧的情况下,若某个图像帧与该第一参考帧之间的时间间隔达到了所述的时间阈值,则将该图像帧确定为第二参考帧。
进一步的,请参见图8所示,编码端在由视频流的各个图像帧中筛选得到多个参考帧(表示为SC)后,可以将该SC帧发送至编码端这边的解码器,得到解码后的参考帧的帧图像。所述的参考帧的帧图像可以存储在编码端的图像集合中,该图像集合中可以存储多个参考帧的帧图像,并可以对应存储参考帧的帧标识,这样后续编码端在接收到解码端反馈的帧标识时,就可以根据该帧标识由所述图像集合中获取对应的帧图像。
一方面,编码端存储的参考帧的帧图像是通过编码端的解码器对初始编码数据解码后得到,这样能与解码端获取参考帧的帧图像的方式一致,比如,解码端也是在接收到初始编码数据后解码得到SC帧的帧图像。这种图像获得方式的一致性能有助于使得编码端和解码端两端的参考帧的帧图像尽可能的一致,从而解码端获得的新视频序列的完整码流也能与编码端一致。
另一方面,图像集合中存储有多个参考帧的帧图像,使得编码端能在本端获取到与解码端所反馈的帧标识相对应的帧图像,因为解码端具体在视频流的哪一帧发生丢包是不确定的,那么在图像集合中多存储几个参考帧的帧图像,就有更大的概率能获取到发生丢包时与解码端所反馈的帧标识相对应的帧图像。不过考虑到存储资源的节省,图像集合中的帧图像的数量也不用过多。
如上,本公开实施例不限制图像集合中存储的参考帧的数量,假设最多可以存储N个,N是大于1的自然数,且可以将N称为数量阈值。那么当编码端对某一个参考帧解码得到帧图像时,该待存入上述的“图像集合”中的帧图像可以称为最新存入所述图像集合中的新晋帧图像。可以判断图像集合中的帧图像的图像数量是否已经达到数量阈值,若没有达到数量阈值,则可以直接将新晋帧图像存入。如果已经达到数量阈值,可以获取图像集合中的最久帧图像,所述最久帧图像在时间上最早存入图像集合中的帧图像。将所述最久帧图像及其对应的帧标识由图像集合中删除,并将所述新晋帧图像及对应的帧标识存储至图像集合中。这样就能使得图像集合中的帧图像都是相对较新的图像。
对于解码端来说,解码端在接收到编码端发送的初始编码数据后,可以根据初始编码数据中包括的SEI中的帧标识,解码对应的参考帧得到帧图像,并将该帧图像存储在解码端。例如,解码端接收到参考帧SC1时,解码得到SC1的帧图像并缓存,当解码端接收到参考帧SC2时,解码得到SC2的帧图像并缓存。此外,解码端可以存储一个参考帧的帧图像即可,那么,在上面的例子中,当解码端解码得到SC2的帧图像时,可以将之前存储的SC1的帧图像替换为该SC2的帧图像,从而仅需要保存最近一次接收到的参考帧对应的帧图像,达到节省存储空间的目的。
还需要说明的是,这里所说的将该帧图像存储在解码端可以宽泛的理解,指的是存储在解码端能获取到的位置。比如,假设解码端位于某服务器设备上,可以是将参考帧的帧图像存储在该服务器设备上,解码端直接从服务器设备获取;或者还可以是,将参考帧的帧图像存储在该服务器设备之外的某个外部存储器中,解码端可以通过与该外部存储器交互获取到所述帧图像。
图9示意性地示出了根据本公开又一实施例的视频编码装置的结构示意图,该视频编码装置可以应用于视频流的编码端。如图9所示,该装置可以包括:图像获取模块91、二次编码模块92和传输处理模块93。
图像获取模块91,用于响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送。
二次编码模块92,用于将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对所述新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧。
传输处理模块93,用于将所述新视频序列编码所使用的编码参数、以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至所述解码端。
在一个例子中,所述编码参数包括:码率、分辨率和帧率信息中的至少一项。
在一个例子中,如图10所示,该装置还可以包括:正常编码模块94,用于在编码端接收到参考帧的帧标识之前,向所述视频流的解码端发送对所述视频流编码得到的初始编码数据,其中,所述初始编码数据中包括所述多个参考帧分别对应的帧标识。
在一个例子中,图像获取模块91,还用于在所述接收到参考帧的帧标识之前,根据所述初始编码数据,对所述参考帧进行解码,得到所述参考帧对应的帧图像;并将所述参考帧的帧图像及对应的帧标识存储在所述编码端的图像集合中;所述根据所述帧标识,由所述编码端获取所述参考帧的帧图像,包括:所述编码端根据接收到的所述帧标识,由所述编码端存储的图像集合中获取所述帧标识对应的帧图像。
在一个例子中,图像获取模块91,在用于将所述参考帧的帧图像及对应的帧标识存储在所述编码端的图像集合中时,包括:响应于所述图像集合中的图像数量已达到数量阈值,获取所述图像集合中的最久帧图像,所述最久帧图像在最早存入所述图像集合中的帧图像;将所述最久帧图像及对应的帧标识由所述图像集合中删除;将新晋帧图像及对应的帧标识存储至所述图像集合中;所述对所述参考帧进行解码得到的帧图像是最新存入所述图像集合中的新晋帧图像。
在一个例子中,正常编码模块94,在用于向所述视频流的解码端发送对所述视频流编码得到的初始编码数据时,包括:在确定所述视频流中的其中一个图像帧是第一参考帧之后,响应于所述视频流中的另一个图像帧与所述第一参考帧之间的时间间隔达到时间阈值,将所述另一个图像帧确定为第二参考帧;将所述多个参考帧的帧标识编码成媒体增强补充信息SEI,并将所述SEI设置在初始编码数据中,发送至所述解码端;所述多个参考帧中包括第一参考帧和第二参考帧。
在一个例子中,二次编码模块92,还用于:在所述传输处理模块将所述新视频序列编码所使用的编码参数以及除I帧以外的其他图像帧对应的编码数据发送至所述解码端之后,响应于所述解码端对于相应丢包帧的恢复,停止所述编码数据的生成。
图11示意性地示出了根据本公开又一实施例的视频解码装置的结构示意图,该视频解码装置可以应用于视频流的解码端。如图11所示,该装置可以包括:信息发送模块1101、数据接收模块1102、二次编码模块1103和解码处理模块1104。
信息发送模块1101,用于响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到。
数据接收模块1102,用于接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据。
二次编码模块1103,用于由所述解码端获取所述帧标识对应的参考帧的帧图像;并根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据。
解码处理模块1104,用于将所述参考帧的编码数据、以及除I帧以外的其他图像帧对应的编码数据组成新视频序列的码流,对所述码流进行解码。
在一个例子中,如图12所示,该装置还可以包括:图像存储模块1105。
数据接收模块1102,还用于在所述信息发送模块向所述视频流的编码端发送参考帧的帧标识之前,接收所述视频流的编码端发送的初始编码数据,所述初始编码数据中包括所述视频流中的各个参考帧分别对应的帧标识。
图像存储模块1105,用于根据所述帧标识,解码对应的参考帧获得帧图像;在所述解码端存储所述参考帧的帧图像。
在一个例子中,信息发送模块1101,在用于响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识时,包括:响应于检测到视频流发生丢包,获取所述视频流中在时序上距离丢包帧最近的参考帧;将所述参考帧的帧标识发送至所述视频流的编码端。
应当注意,尽管在上文详细描述中提及了视频编码装置或视频解码装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。此外,视频编码装置可以用于实现本公开任一实施例的视频编码方法,该装置中的各个模块的处理的详细过程可以结合参见视频编码方法的方法实施例所述。同理,视频解码装置可以用于实现本公开任一实施例的视频解码方法,该装置中的各个模块的处理的详细过程可以结合参见视频解码方法的方法实施例所述。
本公开实施例还提供了一种计算机可读存储介质。如图13所示,该存储介质上存储有计算机程序1301,该计算机程序1301被处理器执行时可以执行本公开任一实施例的视频编码方法或者视频解码方法。
本公开实施例还提供了一种计算设备,该设备可以包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行该计算机指令时实现本公开任一实施例的视频编码方法或者视频解码方法。
图14示例了一种该计算设备的结构,如图14所示,该计算设备140可以包括但不限于:处理器141、存储器142、连接不同***组件(包括存储器142和处理器141)的总线143。
其中,存储器142存储有计算机指令,该计算机指令可以被处理器141执行,使得处理器141能够执行本公开任一实施例的广告推送方法。存储器142可以包括随机存取存储单元RAM1421、高速缓存存储单元1422和/或只读存储单元ROM1423。该存储器142还可以包括:具有一组程序模块1424的程序工具1425,该程序模块1424包括但不限于:操作***、一个或多个应用程序、其他程序模块和程序数据,这些程序模块一种或多种组合可以包含网络环境的实现。
总线143例如可以包括数据总线、地址总线和控制总线等。该计算设备140还可以通过I/O接口144与外部设备145通信,该外部设备145例如可以是键盘、蓝牙设备等。该计算设备140还可以通过网络适配器146与一个或多个网络通信,例如,该网络可以是局域网、广域网、公共网络等。如图14所示,该网络适配器146还可以通过总线143与计算设备140的其他模块进行通信。
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (10)

1.一种视频编码方法,其特征在于,所述方法由视频流的编码端执行,所述方法包括:
响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送;
将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对所述新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧;
将所述新视频序列编码所使用的编码参数、以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至所述解码端。
2.根据权利要求1所述的方法,其特征在于,在所述响应于接收到参考帧的帧标识之前,所述方法还包括:
向所述视频流的解码端发送对所述视频流编码得到的初始编码数据,其中,所述初始编码数据中包括所述多个参考帧分别对应的帧标识。
3.一种视频解码方法,其特征在于,所述方法由视频流的解码端执行,所述方法包括:
响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由所述视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到;
接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据;
由所述解码端获取所述帧标识对应的参考帧的帧图像;并根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据;
将所述参考帧的编码数据、以及所述除I帧以外的其他图像帧对应的编码数据组成所述新视频序列的码流,对所述码流进行解码。
4.根据权利要求3所述的方法,其特征在于,所述响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识之前,所述方法还包括:
接收所述视频流的编码端发送的初始编码数据,所述初始编码数据中包括所述视频流中的各个参考帧分别对应的帧标识;
根据所述帧标识,解码对应的参考帧获得帧图像;
在所述解码端存储所述参考帧的帧图像;
所述由所述解码端获取所述帧标识对应的参考帧的帧图像,包括:获取所述解码端存储的所述帧标识对应的帧图像。
5.一种视频编码装置,其特征在于,所述装置应用于视频流的编码端;所述装置包括:
图像获取模块,用于响应于接收到参考帧的帧标识,根据所述帧标识,由所述编码端获取所述参考帧的帧图像,所述帧标识对应的参考帧是编码端由所述视频流的各图像帧中筛选得到的多个参考帧中的其中一个,且所述帧标识由所述视频流的解码端发送;
二次编码模块,用于将所述参考帧的帧图像与待传输至所述解码端的其他图像帧组成新视频序列,对所述新视频序列进行编码,得到编码数据;其中,所述参考帧作为所述新视频序列的首帧,且将所述参考帧编码成I帧;
传输处理模块,用于将所述新视频序列编码所使用的编码参数、以及所述编码数据中除所述I帧以外的其他图像帧对应的编码数据,发送至所述解码端。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
正常编码模块,用于在编码端接收到参考帧的帧标识之前,向所述视频流的解码端发送对所述视频流编码得到的初始编码数据,其中,所述初始编码数据中包括所述多个参考帧分别对应的帧标识。
7.一种视频解码装置,其特征在于,所述装置应用于视频流的解码端;所述装置包括:
信息发送模块,用于响应于检测到视频流发生丢包,向所述视频流的编码端发送参考帧的帧标识;所述参考帧是由所述视频流包括的各图像帧中筛选得到的多个参考帧中的其中一个,且所述参考帧已被所述解码端接收到;
数据接收模块,用于接收所述编码端发送的编码数据,所述编码数据是所述编码端对新视频序列进行编码得到,所述新视频序列中包括所述帧标识对应的参考帧、以及其他图像帧,且所述新视频序列编码时将参考帧编码成I帧;所述编码数据中包括对新视频序列编码所使用的编码参数、以及除I帧以外的其他图像帧对应的编码数据;
二次编码模块,用于由所述解码端获取所述帧标识对应的参考帧的帧图像;并根据所述编码参数将所述参考帧的帧图像编码成I帧,得到所述参考帧的编码数据;
解码处理模块,用于将所述参考帧的编码数据、以及所述除I帧以外的其他图像帧对应的编码数据组成新视频序列的码流,对所述码流进行解码。
8.根据权利要求7所述的装置,其特征在于,
所述数据接收模块,还用于在所述信息发送模块向所述视频流的编码端发送参考帧的帧标识之前,接收所述视频流的编码端发送的初始编码数据,所述初始编码数据中包括所述视频流中的各个参考帧分别对应的帧标识;
所述装置还包括:图像存储模块,用于根据所述帧标识,解码对应的参考帧获得帧图像;在所述解码端存储所述参考帧的帧图像。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~4任一所述方法的步骤。
10.一种计算设备,其特征在于,所述计算设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本公开权利要求1~4任一所述的方法。
CN202210082205.3A 2022-01-24 2022-01-24 视频编码方法、视频解码方法和装置、介质和计算设备 Active CN114465993B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210082205.3A CN114465993B (zh) 2022-01-24 2022-01-24 视频编码方法、视频解码方法和装置、介质和计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210082205.3A CN114465993B (zh) 2022-01-24 2022-01-24 视频编码方法、视频解码方法和装置、介质和计算设备

Publications (2)

Publication Number Publication Date
CN114465993A true CN114465993A (zh) 2022-05-10
CN114465993B CN114465993B (zh) 2023-11-10

Family

ID=81412087

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210082205.3A Active CN114465993B (zh) 2022-01-24 2022-01-24 视频编码方法、视频解码方法和装置、介质和计算设备

Country Status (1)

Country Link
CN (1) CN114465993B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024017135A1 (zh) * 2022-07-21 2024-01-25 华为技术有限公司 处理图像的方法和装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101207813A (zh) * 2007-12-18 2008-06-25 中兴通讯股份有限公司 一种视频序列的编码、解码方法及编码、解码***
WO2008095345A1 (en) * 2007-02-02 2008-08-14 Zte Corporation A method for encoding a video sequence and a error remedying system using same
US20110085602A1 (en) * 2008-09-24 2011-04-14 Tencent Technology (Shenzhen) Company Ltd. Video Communication System, Device and Method Based on Feedback Reference Frames
CN103152576A (zh) * 2013-03-21 2013-06-12 浙江宇视科技有限公司 一种适用于组播抗丢包的视频编码及解码装置
CN103227926A (zh) * 2013-05-27 2013-07-31 合肥优尔电子科技有限公司 适用于低带宽无线通信信道的视频编码装置及其编码方法
US20140140407A1 (en) * 2012-11-12 2014-05-22 Tencent Technology (Shenzhen) Company Limited Hybrid-resolution encoding and decoding method and a video apparatus using the same
US20170094294A1 (en) * 2015-09-28 2017-03-30 Cybrook Inc. Video encoding and decoding with back channel message management
CN110519598A (zh) * 2019-08-23 2019-11-29 香港乐蜜有限公司 视频解码方法、装置及设备
US20190394458A1 (en) * 2018-06-25 2019-12-26 Polycom, Inc. Long-term reference for error recovery without back channel
CN111770390A (zh) * 2020-07-09 2020-10-13 腾讯科技(深圳)有限公司 数据处理方法、装置、服务器及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008095345A1 (en) * 2007-02-02 2008-08-14 Zte Corporation A method for encoding a video sequence and a error remedying system using same
CN101207813A (zh) * 2007-12-18 2008-06-25 中兴通讯股份有限公司 一种视频序列的编码、解码方法及编码、解码***
US20110085602A1 (en) * 2008-09-24 2011-04-14 Tencent Technology (Shenzhen) Company Ltd. Video Communication System, Device and Method Based on Feedback Reference Frames
US20140140407A1 (en) * 2012-11-12 2014-05-22 Tencent Technology (Shenzhen) Company Limited Hybrid-resolution encoding and decoding method and a video apparatus using the same
CN103152576A (zh) * 2013-03-21 2013-06-12 浙江宇视科技有限公司 一种适用于组播抗丢包的视频编码及解码装置
CN103227926A (zh) * 2013-05-27 2013-07-31 合肥优尔电子科技有限公司 适用于低带宽无线通信信道的视频编码装置及其编码方法
US20170094294A1 (en) * 2015-09-28 2017-03-30 Cybrook Inc. Video encoding and decoding with back channel message management
US20190394458A1 (en) * 2018-06-25 2019-12-26 Polycom, Inc. Long-term reference for error recovery without back channel
CN110519598A (zh) * 2019-08-23 2019-11-29 香港乐蜜有限公司 视频解码方法、装置及设备
CN111770390A (zh) * 2020-07-09 2020-10-13 腾讯科技(深圳)有限公司 数据处理方法、装置、服务器及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024017135A1 (zh) * 2022-07-21 2024-01-25 华为技术有限公司 处理图像的方法和装置

Also Published As

Publication number Publication date
CN114465993B (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
US11184627B2 (en) Video transcoding system, method, apparatus, and storage medium
US6381282B1 (en) Video signal decoding arrangement and method for improved error concealment
US20110085602A1 (en) Video Communication System, Device and Method Based on Feedback Reference Frames
CN109348279B (zh) 一种推流方法、装置、设备及存储介质
US9153127B2 (en) Video transmitting apparatus, video receiving apparatus, and video transmission system
CN110113610B (zh) 数据传输方法及装置
JP2015501098A (ja) 復号化されたピクチャのバッファおよび基準ピクチャのリストのための状態情報の信号化
CN101742289B (zh) 视频码流压缩方法、***及装置
CN104333762A (zh) 一种视频解码方法
CN110519640B (zh) 视频处理方法、编码器、cdn服务器、解码器、设备及介质
CN111641804A (zh) 视频数据处理方法和装置、终端、摄像头及视频会议***
JP2009118244A (ja) 再生単位が可変のデータを送信する技術
CN114465993B (zh) 视频编码方法、视频解码方法和装置、介质和计算设备
CN113794903A (zh) 视频图像处理方法、装置及服务器
US7403566B2 (en) System, computer program product, and method for transmitting compressed screen images from one computer to another or many computers
WO2020237466A1 (zh) 视频传输方法、装置、飞行器、播放设备及存储介质
US9467639B2 (en) Video transmission apparatus and control method for video transmission apparatus
JPH10126772A (ja) 動画像データ転送方法
US10116415B2 (en) Transmission device, receiving device, transmission method, and receiving method
KR20160023777A (ko) 그래픽 처리기를 이용한 비디오 디코딩에 대한 픽처 참조 제어
CN111093082A (zh) 一种流媒体直播的方法及***
CN112153413B (zh) 一种同屏广播处理花屏的方法和服务器
CN114827669A (zh) 一种视频数据的传输方法、装置、介质及设备
CN110602507A (zh) 丢帧处理方法、设备及***
KR20130141368A (ko) 수신장치 및 수신장치용 프로그램

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