[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN118870110A - 视频处理方法、装置、设备及存储介质 - Google Patents

视频处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN118870110A
CN118870110A CN202310487994.3A CN202310487994A CN118870110A CN 118870110 A CN118870110 A CN 118870110A CN 202310487994 A CN202310487994 A CN 202310487994A CN 118870110 A CN118870110 A CN 118870110A
Authority
CN
China
Prior art keywords
frame
key frame
target
code stream
received
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.)
Pending
Application number
CN202310487994.3A
Other languages
English (en)
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 CN202310487994.3A priority Critical patent/CN118870110A/zh
Publication of CN118870110A publication Critical patent/CN118870110A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请实施例提供了一种视频处理方法、装置、设备及存储介质,包括:在到达统计时间间隔时,确定当前存在链路时延,向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧,确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。从而,可及时降低服务器与终端设备之间的链路时延。

Description

视频处理方法、装置、设备及存储介质
技术领域
本申请实施例涉及互联网技术领域,尤其一种视频处理方法、装置、设备及存储介质。
背景技术
对于云游戏和互动直播类视频应用,低时延对于用户体验至关重要。以云游戏为例,云游戏是一种以云计算技术为基础的在线游戏技术。随着云渲染、视频编码技术的发展,云游戏已经逐渐普及成为一种重要的游戏形态。云游戏把游戏的运行、渲染等逻辑放在云服务器上,通过视频编码技术对渲染完毕的游戏画面进行编码压缩,编码的码流通过网络传输到终端设备,再由终端设备对码流进行解码渲染和播放。
服务器与终端设备之间的整个链路时延包括服务器的渲染时延、编码时延、网络传输时延以及终端设备的解码渲染时延等。出现上述任一种时延均会引起整个游戏链路时延上升,高时延会导致终端设备对用户操作响应迟钝,甚至出现用户操作和画面不匹配的现象。
因此,如何降低服务器与终端设备之间的链路时延,是亟需解决的问题。
发明内容
本申请实施例提供一种视频处理方法、装置、设备及存储介质,可及时降低服务器与终端设备之间的链路时延。
第一方面,提供一种视频处理方法,包括:
在到达统计时间间隔时,确定当前存在链路时延;
向服务器发送码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为所述统计时间间隔内接收到的最后一个编码帧,所述码流刷新请求用于请求所述服务器编码新的关键帧;
确定接收到目标关键帧,从所述目标关键帧开始解码渲染,所述目标关键帧为待处理视频对应的码流中位于所述目标编码帧之后的关键帧。
第二方面,提供一种视频处理方法,包括:
接收终端设备发送的码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为终端设备当前统计时间间隔内接收到的最后一个编码帧;
确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,所述预设类型的关键帧的标识小于或等于所述目标编码帧的标识;
向所述终端设备发送所述关键帧,并存储所述关键帧的标识。
第三方面,提供一种视频处理装置,包括:
确定模块,用于在到达统计时间间隔时,确定当前存在链路时延;
发送模块,用于向服务器发送码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为所述统计时间间隔内接收到的最后一个编码帧,所述码流刷新请求用于请求所述服务器编码新的关键帧;
所述确定模块还用于:确定接收到目标关键帧;
处理模块,用于从所述目标关键帧开始解码渲染,所述目标关键帧为待处理视频对应的码流中位于所述目标编码帧之后的关键帧。
第四方面,提供一种视频处理装置,包括:
接收模块,用于接收终端设备发送的码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为终端设备当前统计时间间隔内接收到的最后一个编码帧;
处理模块,用于确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,所述预设类型的关键帧的标识小于或等于所述目标编码帧的标识;
发送模块,用于向所述终端设备发送所述关键帧,并存储所述关键帧的标识。
第五方面,提供一种视频处理设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面或其各实施方式中或者第二方面或其各实施方式中的方法。
第六方面,提供一种计算机可读存储介质,用于存储计算机程序,计算机程序使得计算机执行如第一方面或其各实施方式中或者第二方面或其各实施方式中的方法。
第七方面,提供一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行如第一方面或其各实施方式中或者第二方面或其各实施方式中的方法。
综上,在本申请实施例中,通过终端设备在到达统计时间间隔时,确定当前存在链路时延,则向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧,终端设备确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。终端设备在确定当前存在链路时延时,则向服务器发送码流刷新请求(携带目标编码帧的标识),服务器编码新的关键帧并发送至终端设备,终端设备接收到待处理视频对应的码流中位于目标编码帧之后的关键帧,则从目标关键帧开始解码渲染。从而,可及时降低服务器与终端设备之间的链路时延,避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种视频图像处理过程示意图;
图2为本申请实施例提供的一种视频图像处理过程示意图;
图3为本申请实施例提供的一种视频处理方法的应用场景示意图;
图4为本申请实施例提供的一种视频处理方法的交互流程图;
图5为本申请实施例提供的一种视频处理方法的流程示意图;
图6为本申请实施例提供的一种视频处理方法的流程示意图;
图7为本申请实施例提供的一种视频处理装置的结构示意图;
图8为本申请实施例提供的一种视频处理装置的结构示意图;
图9是本申请实施例提供的视频处理设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在介绍本申请实施例技术方案之前,下面先对本申请实施例相关知识进行介绍:
1、云技术(Cloud technology),是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(Cloudtechnology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
2、云游戏(Cloud gaming),又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。简单地说,云游戏是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都在云端服务器运行,云端服务器将渲染完毕后的游戏画面压缩后通过网络传送给玩家游戏终端。
3、视频编码,通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式,转化成的数据可以称为码流。
4、视频解码,是视频编码的逆向过程。
5、端云协同,一种服务器端(云端)和用户端(终端设备)经过协商,协同工作提升视频画质/流畅度的手段,如协同制定或调整视频编码/视频处理/网络传输的策略。端云协同可用于云游戏、云渲染、实时通信等场景。
6、囤帧数,一段时间内客户端接收到帧数与实际播放的帧数之差,也是设备解码缓存中保留的帧数。
7、关键帧,也称为I帧,一种帧类型,无需依赖其他帧数据便可以独立解码,一段码流的第一帧一定是关键帧。
为了解决如何降低服务器与终端设备之间的链路时延这一技术问题,本申请实施例中,通过终端设备在到达统计时间间隔时,确定当前存在链路时延,则向服务器发送码流刷新请求,码流刷新请求包括统计时间间隔内接收到的最后一个编码帧(目标编码帧)的标识,码流刷新请求用于请求服务器编码新的关键帧,终端设备确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。终端设备在确定当前存在链路时延时,则向服务器发送码流刷新请求(携带目标编码帧的标识),服务器编码新的关键帧并发送至终端设备,终端设备接收到待处理视频对应的码流中位于目标编码帧之后的关键帧,则从目标关键帧开始解码渲染。从而,可及时降低服务器与终端设备之间的链路时延,避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
应理解的是,本申请实施例技术方案可以应用于如下场景,但不限于:
目前对于一些基于云场景中视频或者图像处理过程可以如下:图1为本申请实施例提供的一种视频图像处理过程示意图,图2为本申请实施例提供的一种视频图像处理过程示意图。如图1所示,云服务器生成视频,进行视频图像采集,对采集到的视频图像进行处理,对经过处理后的视频图像进行编码,得到视频图像的码流,进一步地,云服务器可以将码流发送给终端设备,终端设备对该码流进行解码,最后按照解码结果进行视频图像的展示。或者,如图2所示,云服务器生成视频,进行视频图像采集,对采集到的视频图像进行编码,得到视频图像的码流,进一步地,云服务器可以将码流发送给终端设备,终端设备对该码流进行解码,并对解码后的视频图像进行处理,如锐化处理、模糊处理、降噪处理等,最后对处理后的视频图像进行展示。
示例性的,图3为本申请实施例提供的一种视频处理方法的应用场景示意图,如图3所示,终端设备110可以与服务器120进行通信,其中,服务器120可以是独立的任一物理服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务以及大数据和人工智能平台等基础云服务的云服务器,还可以是多个物理服务器构成的服务器集群或者分布式系统,本申请实施例对此不做限制。服务器120可包括用于进行图像编码的编码模块,该编码模块可以包括将模拟音视频信号压缩为编码数据(编码文件)的硬件设备/软件代码。
终端设备110可以是具有基本的流媒体播放能力、人机交互能力以及通信能力的设备,例如智能手机、平板电脑、台式计算机和智能电视等,终端设备110中安装并运行有游戏客户端,游戏客户端可以是运行于终端设备110中的应用程序。或者,终端设备110中安装并运行有即时通信客户端或者支持音视频会议客户端,终端设备110中可以包括用于进行图像解码的解码模块,该解码模块可以包括将编码数据(或编码文件)转换为模拟音视频信号的硬件设备/软件代码。
在云游戏场景中,云服务器是指在云端运行游戏的服务器,并具备视频增强(编码前处理)、视频编码等功能,但不限于此。终端设备是指一类具备丰富人机交互方式、拥有接入互联网能力、通常搭载各种操作系统、具有较强处理能力的设备。终端设备可以是智能手机、客厅电视、平板电脑、车载终端、玩家游戏终端,如掌上游戏主机等,但不限于此。
在云游戏的运行过程中,服务器120可调用编码模块按照视频编码标准(如H.264、H.265等)对渲染得到的游戏画面进行图像压缩编码操作,以节省后续图像传输时占用的网络带宽,然后,可采用码流的方式将图像压缩编码得到的编码数据(编码帧)传输至终端设备110,终端设备110在接收到编码数据后,可通过解码模块对编码数据进行解码得到原始视频帧,再通过渲染模块对视频帧进行渲染显示,即显示原始的游戏画面。
在一些可实施方式中,图3所示的应用场景中还可以包括:基站、核心网侧设备等,此外,图3示例性地示出了一个终端设备、一台服务器,实际上可以包括其他数量的终端设备和服务器,本申请实施例对此不做限制。
在一实施例中,以云游戏场景为例,云游戏把游戏的运行、渲染等逻辑放在云服务器(如图3所示的服务器120)上,通过视频编码技术对渲染完毕的游戏画面进行编码压缩,编码的码流通过网络传输到终端设备110,再由终端设备110对码流进行解码渲染和播放。例如由于服务器异常或者网络抖动,或者其它原因,导致终端设备在极短的时间间隔内接收到多个编码帧时,终端设备的处理能力跟不上,便可能出现囤帧数大于预设阈值,出现链路时延,此时为了降低链路时延,终端设备110和服务器120通过端云协同执行本申请实施例提供的视频处理方法,可降低链路时延,可避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
具体地,在一实施例中,终端设备110在到达统计时间间隔时,确定当前存在链路时延,向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧。服务器确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,预设类型的关键帧的标识小于或等于目标编码帧的标识,服务器向终端设备发送关键帧,并存储关键帧的标识。终端设备确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。从而,通过端云协同,可及时降低服务器与终端设备之间的链路时延,避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
示例性地,本申请实施例技术方案可以应用于音视频交互类场景,如云游戏、交互类直播、视频会议、视频通话等场景,还可应用于其它场景,本实施例对此不做限制。
下面将对本申请实施例技术方案进行详细阐述:
图4为本申请实施例提供的一种视频处理方法的交互流程图,该方法例如可以由如图3所示的终端设备110和服务器120执行,但不限于此,如图4所示,该方法包括如下步骤:
S101、终端设备在到达统计时间间隔时,确定当前存在链路时延。
具体地,本实施例中,具体可以是周期性地进行是否出现链路时延的判断,一个周期可以是一个统计时间间隔,在到达一个统计时间间隔时,进行是否存在链路时延的判断,一个统计时间间隔例如为2秒。
本实施例中,可选的,确定当前存在链路时延,有两种可实施的方式:
方式一、S1、根据统计时间间隔内接收到的编码帧数量和已解码渲染的编码帧数量,确定当前囤帧数。
S2、若当前囤帧数大于预设阈值,则确定当前存在链路时延。
具体地,例如一个统计时间间隔内接收到的编码帧数量为m,该统计时间间隔内已解码渲染的编码帧数量为n,m减去n的差值即为当前囤帧数。
预设阈值例如为1,若当前囤帧数大于1,则确定当前存在链路时延。若当前囤帧数小于或等于1,则确定当前不存在链路时延。
方式二、S1’、获取第一编码帧的帧索引与第二编码帧的帧索引之间的差值,第一编码帧为统计时间间隔到达时正在解码的编码帧,第二编码帧为统计时间间隔内接收到的最后一个编码帧。
S2’、若差值大于预设阈值,则确定当前存在链路时延。
具体地,例如预设阈值为1,获取第一编码帧的帧索引与第二编码帧的帧索引之间的差值,其中,第一编码帧为统计时间间隔到达时正在解码的编码帧,第二编码帧为统计时间间隔内接收到的最后一个编码帧,若二者的差值大于1,则确定当前存在链路时延。若二者的差值小于或等于1,则确定当前不存在链路时延。
S102、终端设备向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧。
具体地,若终端设备在到达统计时间间隔时,确定当前存在链路时延,则向服务器发送码流刷新请求,以请求服务器编码新的关键帧。
S103、服务器确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,预设类型的关键帧的标识小于或等于目标编码帧的标识。
具体地,服务器接收到码流刷新请求,具体可以是服务器通过目标端口接收终端设备发送的码流刷新请求。若服务器确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧。
可选的,本实施例的方法还可以包括:
S106、服务器确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧不是预设类型的关键帧,则按照预设编码方式,对待编码的第一个视频帧编码。
具体地,服务器若确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧不是预设类型的关键帧,则按照预设编码方式,对待编码的第一个视频帧编码,其中预设编码方式可以是对待处理视频进行编码的方式,具体可以是将待编码的第一个视频帧编码为I帧或P帧,按照预设的帧间隔进行编码。
可选的,在一种可实施的方式中,目标编码帧的标识为帧索引,S103中确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,具体可以为:
若确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧的帧索引小于或等于目标编码帧的帧索引,则确定向终端设备发送的最后一个关键帧是预设类型的关键帧。
具体地,例如服务器在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧的帧索引为i,目标编码帧的帧索引为j,若i小于或等于j,服务器确定向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧。
S104、服务器向终端设备发送关键帧,并存储关键帧的标识。
具体地,服务器向终端设备发送关键帧,并存储关键帧的标识,具体可以是将该关键帧的标识更新存储为最近一次发出的关键帧的标识。
S105、终端设备确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。
具体地,本申请实施例中,编码帧的标识可以是编码帧的帧索引或者编号,帧索引或者编号具体可以是根据编码帧的时间戳按照从小到大的顺序。
可选的,在一种可实施的方式中,目标编码帧的标识为帧索引,S105中终端设备确定接收到目标关键帧,具体可以为:
S1051、若接收到的关键帧的帧索引大于目标编码帧的帧索引,则确定接收到目标关键帧。
可选的,本实施例的方法还可以包括:
S107、终端设备确定未接收到目标关键帧,向服务器发送码流刷新请求。
具体来说,由于服务器异常或者网络抖动可能会导致关键帧未能发送到终端设备,终端设备不能接收到关键帧,因此需要终端设备周期性地进行码流刷新请求的发送。在一种可实施的方式中,S107中终端设备确定未接收到目标关键帧,则向服务器发送码流刷新请求,具体可以为:
S1071、终端设备以预设时间为周期,确定未接收到目标关键帧,则向服务器发送码流刷新请求。
具体地,预设时间与上述统计时间间隔可以相同,也可以不同。终端设备可以以预设时间为周期,来判断是否接收到目标关键帧,若未接收到目标关键帧,则向服务器次发送码流刷新请求,所发送的码流刷新请求还是携带目标编码帧的标识。
在另一种可实施的方式中,S107中终端设备确定未接收到目标关键帧,则向服务器发送码流刷新请求,具体可以为:
S1071’、进入关键帧等待状态,每间隔预设时间,若确定未接收到目标关键帧,则向服务器发送码流刷新请求,直至接收到目标关键帧,退出关键帧等待状态。
具体地,S102中终端设备向服务器发送码流刷新请求之后,终端设备可以进入关键帧等待状态,在关键帧等待状态中,终端设备可以每间隔预设时间,查看一下是否接收到目标关键帧,若确定未接收到目标关键帧,则向服务器再次发送码流刷新请求,所发送的码流刷新请求还是携带目标编码帧的标识,直至接收到目标关键帧,退出关键帧等待状态。
可选的,S105中从目标关键帧开始解码渲染之前,还可以包括:
S108、终端设备删除缓存中还未解码的编码帧,并将目标关键帧存入缓存。
具体地,本实施例中,终端设备可以将接收到编码帧存储缓存中的解码队列中,可选的,S108中终端设备删除缓存中还未解码的编码帧,具体可以为:
终端设备删除缓存的解码队列中在目标关键帧之前接收到的还未解码的编码帧。相应地,S108中并将目标关键帧存入缓存,具体可以为:终端设备将目标关键帧存入缓存的解码队列中。
相应地,S105中从目标关键帧开始解码渲染,具体可以为:
终端设备对缓存中的目标关键帧进行解码渲染,并继续接收目标关键帧之后的编码帧。
具体来说,由于出现链路时延,例如由于服务器异常或者网络抖动导致终端设备在极短的时间间隔内接收到多个编码帧时,终端设备的处理能力跟不上,便可能出现囤帧数大于预设阈值,出现链路时延,此时为了降低链路时延,终端设备在接收到目标关键帧后,删除缓存的解码队列中在目标关键帧之前接收到的还未解码的编码帧,将目标关键帧存入缓存的解码队列中,以便从目标关键帧进行解码渲染,并继续接收目标关键帧之后的编码帧。从而可避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
本申请实施例提供的视频处理方法,通过终端设备在到达统计时间间隔时,确定当前存在链路时延,则向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧,终端设备确定接收到目标关键帧,从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。终端设备在确定当前存在链路时延时,则向服务器发送码流刷新请求(携带目标编码帧的标识),服务器编码新的关键帧并发送至终端设备,终端设备接收到待处理视频对应的码流中位于目标编码帧之后的关键帧,则从目标关键帧开始解码渲染。从而,可及时降低服务器与终端设备之间的链路时延,避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
下面结合一个具体的实施例,本实施例中以通过囤帧数确定存在链路时延为例,对本申请实施例提供的视频处理方法的技术方案进行详细说明。
图5为本申请实施例提供的一种视频处理方法的流程示意图,本实施例的执行主体可以是终端设备,如图5所示,本实施例的方法可以包括:
S201、终端设备判断是否到达统计时间间隔。
若是,执行S202,若否,继续执行S201。
S202、终端设备根据统计时间间隔内接收到的编码帧数量和已解码渲染的编码帧数量,计算当前囤帧数。
S203、判断当前囤帧数是否大于预设阈值。
若是,执行S204,若否,返回执行S201。
S204、终端设备向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧。
具体地,若终端设备在到达统计时间间隔时,确定当前囤帧数大于预设阈值,则可确定当前存在链路时延,向服务器发送码流刷新请求,以请求服务器编码新的关键帧。
S205、判断是否到达预设时间。
若是,执行S206,若否,返回执行S205。
具体地,终端设备向服务器发送码流刷新请求之后,终端设备可以进入关键帧等待状态,在关键帧等待状态中,终端设备可以每间隔预设时间,查看一下是否接收到目标关键帧,若确定未接收到目标关键帧,则向服务器再次发送码流刷新请求,所发送的码流刷新请求还是携带目标编码帧的标识,直至接收到目标关键帧,退出关键帧等待状态。
S206、终端设备判断是否接收到目标关键帧。
若是,则执行S207,若否,返回执行S204。
具体地,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。在一种可实施的方式中,目标编码帧的标识为帧索引,终端设备判断是否接收到目标关键帧,具体可以是若接收到的关键帧的帧索引大于目标编码帧的帧索引,则确定接收到目标关键帧。否则,确定未接收到目标关键帧。
S207、从目标关键帧开始解码渲染。
在S207之后,接着进行下一周期的视频处理过程。
本实施例中,可选的,S207中从目标关键帧开始解码渲染之前,还可以包括:
S208、终端设备删除缓存中还未解码的编码帧,并将目标关键帧存入缓存。
具体地,本实施例中,终端设备可以将接收到编码帧存储缓存中的解码队列中,可选的,S208中终端设备删除缓存中还未解码的编码帧,具体可以为:
终端设备删除缓存的解码队列中在目标关键帧之前接收到的还未解码的编码帧。相应地,S208中并将目标关键帧存入缓存,具体可以为:终端设备将目标关键帧存入缓存的解码队列中。
相应地,S207中从目标关键帧开始解码渲染,具体可以为:
终端设备对缓存中的目标关键帧进行解码渲染,并继续接收目标关键帧之后的编码帧。
具体来说,由于出现链路时延,例如由于服务器异常或者网络抖动导致终端设备在极短的时间间隔内接收到多个编码帧时,终端设备的处理能力跟不上,便可能出现囤帧数大于预设阈值,出现链路时延,此时为了降低链路时延,终端设备在接收到目标关键帧后,删除缓存的解码队列中在目标关键帧之前接收到的还未解码的编码帧,将目标关键帧存入缓存的解码队列中,以便从目标关键帧进行解码渲染,并继续接收目标关键帧之后的编码帧。从而可避免链路时延导致终端设备对用户操作响应迟钝,以及避免出现用户操作和画面不匹配的现象。
本申请实施例提供的视频处理方法,可及时消除终端设备的囤帧现象,可避免终端设备因为囤帧数过大导致的链路时延。
图6为本申请实施例提供的一种视频处理方法的流程示意图,本实施例的执行主体可以是服务器,如图6所示,本实施例的方法可以包括:
S301、服务器判断是否接收到终端设备发送的码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧。
若是,则执行S302,若否,则执行S305。
S302、服务器判断在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是否是预设类型的关键帧,预设类型的关键帧的标识小于或等于目标编码帧的标识。
若是,则执行S303,若否,则执行S305。
可选的,在一种可实施的方式中,目标编码帧的标识为帧索引,S302中服务器判断在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是否是预设类型的关键帧,具体可以为:
若确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧的帧索引小于或等于目标编码帧的帧索引,则确定向终端设备发送的最后一个关键帧是预设类型的关键帧。否则,确定向终端设备发送的最后一个关键帧不是预设类型的关键帧。
具体地,例如服务器在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧的帧索引为i,目标编码帧的帧索引为j,若i小于或等于j,服务器确定向终端设备发送的最后一个关键帧是预设类型的关键帧。
S303、服务器将待编码的第一个视频帧编码为关键帧。
S304、服务器向终端设备发送关键帧,并存储关键帧的标识。
具体地,服务器向终端设备发送关键帧,并存储关键帧的标识,具体可以是将该关键帧的标识更新存储为最近一次发出的关键帧的标识。
S305、服务器按照预设编码方式,对待编码的第一个视频帧编码。
本申请实施例提供的视频处理方法,通过服务器在接收到终端设备发送的码流刷新请求时,码流刷新请求包括目标编码帧的标识,判断在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,否则按照预设编码方式,对待编码的第一个视频帧编码。服务器向终端设备发送关键帧,并存储关键帧的标识,可使得终端设备从目标关键帧开始解码渲染,从而可及时消除终端设备的囤帧现象,可避免终端设备因为囤帧数过大导致的链路时延。
图7为本申请实施例提供的一种视频处理装置的结构示意图,如图7所示,该视频处理装置可以包括:确定模块11、发送模块12和处理模块13。
其中,确定模块11用于在到达统计时间间隔时,确定当前存在链路时延;
发送模块12用于向服务器发送码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为统计时间间隔内接收到的最后一个编码帧,码流刷新请求用于请求服务器编码新的关键帧;
确定模块11还用于:确定接收到目标关键帧;
处理模块13用于从目标关键帧开始解码渲染,目标关键帧为待处理视频对应的码流中位于目标编码帧之后的关键帧。
在一实施例中,发送模块12还用于:
确定未接收到目标关键帧,向服务器发送码流刷新请求。
在一实施例中,发送模块12用于:
以预设时间为周期,确定未接收到目标关键帧,则向服务器发送码流刷新请求。
在一实施例中,发送模块12用于:
进入关键帧等待状态,每间隔预设时间,若确定未接收到目标关键帧,则向服务器发送码流刷新请求,直至接收到目标关键帧,退出关键帧等待状态。
在一实施例中,处理模块13还用于:删除缓存中还未解码的编码帧,并将目标关键帧存入缓存。
在一实施例中,处理模块13用于:删除缓存的解码队列中在目标关键帧之前接收到的还未解码的编码帧,将目标关键帧存入缓存的解码队列中。
在一实施例中,确定模块11用于根据统计时间间隔内接收到的编码帧数量和已解码渲染的编码帧数量,确定当前囤帧数;
若当前囤帧数大于预设阈值,则确定当前存在链路时延;
或者,
获取第一编码帧的帧索引与第二编码帧的帧索引之间的差值,第一编码帧为统计时间间隔到达时正在解码的编码帧,第二编码帧为统计时间间隔内接收到的最后一个编码帧;
若差值大于预设阈值,则确定当前存在链路时延。
在一实施例中,目标编码帧的标识为帧索引,确定模块11用于:
若接收到的关键帧的帧索引大于目标编码帧的帧索引,则确定接收到目标关键帧。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图7所示的视频处理装置可以执行图4对应的方法实施例,并且视频处理装置中的各个模块的前述和其它操作和/或功能分别为了实现图4对应的方法实施例中的相应流程,为了简洁,在此不再赘述。
图8为本申请实施例提供的一种视频处理装置的结构示意图,如图8所示,该视频处理装置可以包括:接收模块21、处理模块22和发送模块23。
其中,接收模块21用于接收终端设备发送的码流刷新请求,码流刷新请求包括目标编码帧的标识,目标编码帧为终端设备当前统计时间间隔内接收到的最后一个编码帧;
处理模块22用于确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,预设类型的关键帧的标识小于或等于目标编码帧的标识;
发送模块23用于向终端设备发送关键帧,并存储关键帧的标识。
在一实施例中,处理模块22还用于:
确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧不是预设类型的关键帧,则按照预设编码方式,对待编码的第一个视频帧编码。
在一实施例中,处理模块22用于:若确定在接收到码流刷新请求之前,向终端设备发送的最后一个关键帧的帧索引小于或等于目标编码帧的帧索引,则确定向终端设备发送的最后一个关键帧是预设类型的关键帧。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的视频处理装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件编码处理器执行完成,或者用编码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图9是本申请实施例提供的视频处理设备的示意性框图。该视频处理设备可以是上述方法实施例中的服务器或终端设备。
如图9所示,该视频处理设备可包括:
存储器210和处理器220,该存储器210用于存储计算机程序,并将该程序代码传输给该处理器220。换言之,该处理器220可以从存储器210中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器220可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请实施例的一些实施例中,该处理器220可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请实施例的一些实施例中,该存储器210包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请实施例的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器210中,并由该处理器220执行,以完成本申请实施例提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该视频处理设备中的执行过程。
如图9所示,该视频处理设备还可包括:
收发器230,该收发器230可连接至该处理器220或存储器210。
其中,处理器220可以控制该收发器230与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器230可以包括发射机和接收机。收发器230还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该视频处理设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请实施例还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请实施例各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上内容,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以该权利要求的保护范围为准。

Claims (17)

1.一种视频处理方法,其特征在于,包括:
在到达统计时间间隔时,确定当前存在链路时延;
向服务器发送码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为所述统计时间间隔内接收到的最后一个编码帧,所述码流刷新请求用于请求所述服务器编码新的关键帧;
确定接收到目标关键帧,从所述目标关键帧开始解码渲染,所述目标关键帧为待处理视频对应的码流中位于所述目标编码帧之后的关键帧。
2.根据权利要求1所述的方法,其特征在于,还包括:
确定未接收到所述目标关键帧,向所述服务器发送所述码流刷新请求。
3.根据权利要求2所述的方法,其特征在于,所述确定未接收到所述目标关键帧,则向所述服务器发送所述码流刷新请求,包括:
以预设时间为周期,确定未接收到目标关键帧,则向所述服务器发送所述码流刷新请求。
4.根据权利要求2所述的方法,其特征在于,所述确定未接收到所述目标关键帧,则向所述服务器发送所述码流刷新请求,包括:
进入关键帧等待状态,每间隔预设时间,若确定未接收到所述目标关键帧,则向所述服务器发送所述码流刷新请求,直至接收到所述目标关键帧,退出所述关键帧等待状态。
5.根据权利要求1所述的方法,其特征在于,所述从所述目标关键帧开始解码渲染之前,还包括:
删除缓存中还未解码的编码帧,并将所述目标关键帧存入所述缓存。
6.根据权利要求5所述的方法,其特征在于,所述从所述目标关键帧开始解码渲染,包括:
对所述缓存中的所述目标关键帧进行解码渲染,并继续接收所述目标关键帧之后的编码帧。
7.根据权利要求5所述的方法,其特征在于,所述删除缓存中还未解码的视频帧,包括:
删除所述缓存的解码队列中在所述目标关键帧之前接收到的还未解码的编码帧;
所述并将所述目标关键帧存入所述缓存,包括:
将所述目标关键帧存入所述缓存的解码队列中。
8.根据权利要求1所述的方法,其特征在于,所述确定当前存在链路时延,包括:
根据所述统计时间间隔内接收到的编码帧数量和已解码渲染的编码帧数量,确定当前囤帧数;
若当前囤帧数大于预设阈值,则确定当前存在链路时延;
或者,
获取第一编码帧的帧索引与第二编码帧的帧索引之间的差值,所述第一编码帧为所述统计时间间隔到达时正在解码的编码帧,所述第二编码帧为所述统计时间间隔内接收到的最后一个编码帧;
若所述差值大于预设阈值,则确定当前存在链路时延。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述目标编码帧的标识为帧索引,所述确定接收到目标关键帧,包括:
若接收到的关键帧的帧索引大于所述目标编码帧的帧索引,则确定接收到所述目标关键帧。
10.一种视频处理方法,其特征在于,包括:
接收终端设备发送的码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为终端设备当前统计时间间隔内接收到的最后一个编码帧;
确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,所述预设类型的关键帧的标识小于或等于所述目标编码帧的标识;
向所述终端设备发送所述关键帧,并存储所述关键帧的标识。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧不是预设类型的关键帧,则按照预设编码方式,对待编码的第一个视频帧编码。
12.根据权利要求10所述的方法,其特征在于,所述目标编码帧的标识为帧索引,所述确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧是预设类型的关键帧,包括:
若确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧的帧索引小于或等于所述目标编码帧的帧索引,则确定向所述终端设备发送的最后一个关键帧是所述预设类型的关键帧。
13.一种视频处理装置,其特征在于,包括:
确定模块,用于在到达统计时间间隔时,确定当前存在链路时延;
发送模块,用于向服务器发送码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为所述统计时间间隔内接收到的最后一个编码帧,所述码流刷新请求用于请求所述服务器编码新的关键帧;
所述确定模块还用于:确定接收到目标关键帧;
处理模块,用于从所述目标关键帧开始解码渲染,所述目标关键帧为待处理视频对应的码流中位于所述目标编码帧之后的关键帧。
14.一种视频处理装置,其特征在于,包括:
接收模块,用于接收终端设备发送的码流刷新请求,所述码流刷新请求包括目标编码帧的标识,所述目标编码帧为终端设备当前统计时间间隔内接收到的最后一个编码帧;
处理模块,用于确定在接收到所述码流刷新请求之前,向所述终端设备发送的最后一个关键帧是预设类型的关键帧,则将待编码的第一个视频帧编码为关键帧,所述预设类型的关键帧的标识小于或等于所述目标编码帧的标识;
发送模块,用于向所述终端设备发送所述关键帧,并存储所述关键帧的标识。
15.一种视频处理设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1-9或10-12中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1-9或10-12中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9或10-12中任一项所述方法的步骤。
CN202310487994.3A 2023-04-28 2023-04-28 视频处理方法、装置、设备及存储介质 Pending CN118870110A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310487994.3A CN118870110A (zh) 2023-04-28 2023-04-28 视频处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310487994.3A CN118870110A (zh) 2023-04-28 2023-04-28 视频处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN118870110A true CN118870110A (zh) 2024-10-29

Family

ID=93173728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310487994.3A Pending CN118870110A (zh) 2023-04-28 2023-04-28 视频处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN118870110A (zh)

Similar Documents

Publication Publication Date Title
CN114501062B (zh) 视频渲染协同方法、装置、设备及存储介质
CN112533059B (zh) 图像渲染方法、装置、电子设备以及存储介质
CN106998485B (zh) 视频直播方法及装置
CN111726657A (zh) 直播视频的播放处理方法、装置及服务器
US20240098310A1 (en) Encoding method, real-time communication method, apparatus, device, and storage medium
CN109218745A (zh) 一种直播方法、服务器、客户端及可读存储介质
WO2021223577A1 (zh) 一种视频处理的方法、相关装置、存储介质及程序产品
WO2023216798A1 (zh) 音视频的转码装置、方法、设备、介质及产品
WO2021057697A1 (zh) 视频编解码方法和装置、存储介质及电子装置
CN110996122B (zh) 视频帧传输方法、装置、计算机设备及存储介质
US20240098316A1 (en) Video encoding method and apparatus, real-time communication method and apparatus, device, and storage medium
CN118870110A (zh) 视频处理方法、装置、设备及存储介质
WO2023142665A1 (zh) 图像处理方法、装置、计算机设备、存储介质及程序产品
CN115550690B (zh) 帧率调整方法、装置、设备及存储介质
CN116546262A (zh) 一种数据处理方法、装置、设备及存储介质
CN116567297A (zh) 帧率调整方法、装置、设备及存储介质
CN115914228B (zh) 一种数据处理方法、装置、存储介质及计算机程序产品
CN116567320A (zh) 视频处理协同方法、装置、设备及存储介质
CN112351277B (zh) 一种视频的编码方法和装置,视频的解码方法和装置
CN116546231A (zh) 游戏直播互动方法、装置、设备、存储介质和程序产品
CN116980619A (zh) 视频处理方法、装置、设备及存储介质
CN118870120A (zh) 多媒体数据的发送方法、装置、设备、介质及程序产品
CN117768660A (zh) 数据处理方法、装置、设备、介质及程序产品
CN118678146A (zh) 一种视频播放方法、装置、设备及存储介质
CN116567319A (zh) 硬件解码能力探测方法、装置、存储介质及计算机设备

Legal Events

Date Code Title Description
PB01 Publication