CN114071224B - 视频数据处理方法、装置、计算机设备及存储介质 - Google Patents

视频数据处理方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN114071224B
CN114071224B CN202010758380.0A CN202010758380A CN114071224B CN 114071224 B CN114071224 B CN 114071224B CN 202010758380 A CN202010758380 A CN 202010758380A CN 114071224 B CN114071224 B CN 114071224B
Authority
CN
China
Prior art keywords
video frame
video
frames
buffer queue
terminal
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
CN202010758380.0A
Other languages
English (en)
Other versions
CN114071224A (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 CN202010758380.0A priority Critical patent/CN114071224B/zh
Publication of CN114071224A publication Critical patent/CN114071224A/zh
Application granted granted Critical
Publication of CN114071224B publication Critical patent/CN114071224B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44012Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请公开了一种视频数据处理方法、装置、计算机设备及存储介质,属于视频处理技术领域。本申请通过在获取到已解码的视频帧后,判断视频帧缓存队列当前是否缓存有视频帧,若缓存有视频帧,则对该视频帧缓存队列中已缓存的视频帧进行清理,即后续不再渲染播放这些被清理的视频帧,再将新获取到的已解码的视频帧添加到视频帧缓存队列中,从视频帧缓存队列中获取新添加进去的已解码的视频帧进行显示,使终端可以直接显示最新的视频帧画面,从而降低终端显示的延时。

Description

视频数据处理方法、装置、计算机设备及存储介质
技术领域
本申请涉及视频处理技术领域,特别涉及一种视频数据处理方法、装置、计算机设备及存储介质。
背景技术
云游戏是一种以云计算为基础的游戏方式,所有游戏都在服务器中运行,服务器响应于用户的操作指令,将游戏画面以视频的形式实时发送至用户所使用的终端,终端只需对接收到的视频数据进行处理,显示出游戏画面即可。
在目前的视频数据处理过程中,为应对网络抖动,即网络质量不稳定的情况,确保游戏画面显示的流畅性,终端通常会先对接收到的一部分视频帧进行缓存,再对缓存的视频帧进行解码、播放等。但是,在上述视频数据处理过程中,由于对大量视频帧进行缓存之后再播放,会导致终端播放的游戏画面相对于服务器中的游戏画面有较大的延时,这种延时问题会严重影响用户的游戏体验。因此,在网络抖动情况下,如何处理视频数据以降低终端显示的延时,是一个重要研究方向。
发明内容
本申请实施例提供了一种视频数据处理方法、装置、计算机设备及存储介质,可以降低终端显示的延时。该技术方案如下:
一方面,提供了一种视频数据处理方法,该方法包括:
对接收到的至少一个视频帧进行解码;
响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列,该视频帧缓存队列用于存储未播放的视频帧;
基于该视频帧缓存队列中所存储的该至少一个视频帧,进行界面显示。
一方面,提供了一种视频数据处理装置,该装置包括:
解码模块,用于对接收到的至少一个视频帧进行解码;
缓存模块,用于响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列,该视频帧缓存队列用于存储未播放的视频帧;
显示模块,用于基于该视频帧缓存队列中所存储的该至少一个视频帧,进行界面显示。
在一种可能实现方式中,该显示模块,还用于:
响应于该视频帧缓存队列为空的持续时长大于参考时长,显示网络状态提示信息,该网络状态提示信息用于指示当前网络状态差。
一方面,提供了一种计算机设备,该计算机设备包括一个或多个处理器和一个或多个存储器,该一个或多个存储器中存储有至少一条程序代码,该至少一条程序代码由该一个或多个处理器加载并执行以实现该视频数据处理方法所执行的操作。
一方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行以实现该视频数据处理方法所执行的操作。
一方面,提供了一种计算机程序产品,该计算机程序产品包括至少一条程序代码,该至少一条程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该至少一条程序代码,处理器执行该至少一条程序代码,使得该计算机设备实现该视频数据处理方法所执行的操作。
本申请实施例提供的技术方案,通过在获取到已解码的视频帧后,判断视频帧缓存队列当前是否缓存有视频帧,若缓存有视频帧,则对该视频帧缓存队列中已缓存的视频帧进行清理,即后续不再渲染播放这些被清理的视频帧,再将新获取到的已解码的视频帧添加到视频帧缓存队列中,从视频帧缓存队列中获取新添加进去的已解码的视频帧进行显示,使终端可以直接显示最新的视频帧画面,从而降低终端显示的延时。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种视频数据处理方法的实施环境示意图;
图2是本申请实施例提供的一种视频数据处理方法的流程图;
图3是本申请实施例提供的一种视频显示系统的示意图;
图4是本申请实施例提供的一种视频数据处理方法的具体流程图;
图5是本申请实施例提供的一种视频显示系统的数据处理流程图;
图6是本申请实施例提供的一种视频数据处理装置的结构示意图;
图7是本申请实施例提供的一种终端的结构示意图;
图8是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
为了便于理解本申请的技术过程,下面对本申请实施例所涉及的一些名词进行解释:
云游戏(Cloud gaming):又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端运行,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
网络抖动:在网络发生拥塞的情况下,排队产生的延迟将影响端到端的延迟,并导致通过同一连接传输的分组延迟各不相同,而抖动就是用来描述延迟变化的程度。
图1是本申请实施例提供的一种视频数据处理方法的实施环境示意图,参见图1,该实施环境包括终端101和服务器102。
其中,终端101是用户侧设备,终端101安装和运行有客户端,该客户端可以是支持云游戏的应用程序。该终端101可以是智能手机、平板电脑、笔记本电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等设备等,本申请实施例对此不作限定。
服务器102用于为终端101所运行的客户端提供后台服务,例如,服务器102可以是游戏服务器,用于为云游戏的运行提供支持。上述服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
上述终端101和服务器102之间可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例对此不作限定。
本领域技术人员可以知晓,上述终端的数量可以更多或更少,例如,上述终端可以仅为一个,也可以为几十个或几百个,或者更多数量。本申请实施例对上述实施环境中终端的数量和设备类型不加以限定。
本申请实施例提供了一种视频数据处理方法,可以降低视频播放过程中终端与服务器之间的延时。本申请实施例提供的技术方案可以应用于多种类型的应用程序中,与多种应用场景相结合,例如,应用于在线视频播放类应用程序、云游戏类应用程序等,本申请实施例对此不作限定。在本申请实施例中,以该视频数据处理方法与云游戏相结合为例进行说明。
图2是本申请实施例提供的一种视频数据处理方法的流程图。该方法可以应用于上述实施环境,在本申请实施例中,以终端作为执行主体,对该视频数据处理方法进行介绍,参见图2,该实施例具体可以包括以下步骤:
201、终端对接收到的至少一个视频帧进行解码。
在一种可能实现方式中,终端可以显示有云游戏的网页,或者,运行有云游戏的客户端,以该终端运行有云游戏的客户端为例,在客户端运行过程中,终端可以实时接收服务器发送的视频帧,该视频帧可以用于呈现游戏画面等。也即是,在云游戏运行过程中,服务器对游戏中的虚拟场景进行渲染,将渲染出的游戏画面实时推送到终端。终端接收到服务器发送的视频帧后,直接对视频帧解码,得到视频帧的YUV数据。在本申请实施例中,不对接收到的视频帧进行缓存,直接进行视频帧解码,可以降低因视频帧缓存所导致的延时。需要说明的是,在本申请实施例中,对具体采用哪种方式对视频帧进行解码不作限定。
202、终端响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列,该视频帧缓存队列用于存储未播放的视频帧。
在本申请实施例中,终端响应于接收到的视频帧解码完成,判断视频帧缓存队列是否为空。若视频帧缓存队列为空,则将已解码的该视频帧存储至该视频帧缓存队列;若视频帧缓存队列不为空,则先对该视频帧缓存队列中缓存的视频帧进行清理,再将已解码的该视频帧存储至该视频帧缓存队列。其中,对该视频帧缓存队列进行数据清理可以是将该视频帧缓存队列清空,即删除全部已缓存的视频帧,也可以删除部分已缓存的视频帧,本申请实施例对此不作限定。
在本申请实施例中,通过对视频帧缓存队列进行数据清理,删除未播放的视频帧之后,再将最新接收到的视频帧存储至视频帧缓存队列,在基于该视频帧缓存队列中的视频帧进行界面显示时,可以显示最新接收到的视频帧,降低视频播放的延时。
203、终端基于该视频帧缓存队列中所存储的该至少一个视频帧,进行界面显示。
在本申请实施例中,终端可以基于显示屏的刷新率,从视频帧缓存队列中获取视频帧,对视频帧渲染,以在终端显示屏显示视频帧画面。需要说明的是,本申请实施例对视频帧的具体显示方法不作限定。
本申请实施例提供的技术方案,通过在获取到已解码的视频帧后,判断视频帧缓存队列当前是否缓存有视频帧,若缓存有视频帧,则对该视频帧缓存队列中已缓存的视频帧进行清理,即后续不再渲染播放这些被清理的视频帧,再将新获取到的已解码的视频帧添加到视频帧缓存队列中,从视频帧缓存队列中获取新添加进去的已解码的视频帧进行显示,使终端可以直接显示最新的视频帧画面,从而降低终端显示的延时。
上述实施例是对本申请实施例方式的一个简要介绍,在一种可能实现方式中,终端部署有视频显示系统,该视频显示系统用于对视频帧进行数据处理,显示视频帧画面,终端可以通过该视频显示系统来执行上述实施例中的各个步骤。图3是本申请实施例提供的一种视频显示系统的示意图,该视频显示系统包括网络接收单元301、视频解码器302、视频帧缓存单元303、视频渲染器304以及视频显示单元305,其中,该视频解码器用于对接收到的数据包中的各个视频帧进行解码,将已解码的视频帧输入视频渲染器,由视频渲染器将视频帧进行渲染,在终端显示屏进行显示。当然,该视频显示系统还可以包括其他功能单元,本申请实施例对此不作限定。图4是本申请实施例提供的一种视频数据处理方法的具体流程图,以下结合图3和图4,以终端为执行主体,对上述视频数据处理方法进行具体说明。
401、终端响应于开局操作,向服务器发送运行指令。
在本申请实施例中,以对游戏开局后的视频画面进行显示为例进行说明,在一种可能实现方式中,用户可以通过终端所运行的云游戏客户端,来选择体验某一云游戏,终端响应于用户选中某一云游戏,显示该某一云游戏的开局准备界面,该开局准备界面可以显示有用于提供游戏开局功能的确认开局控件,该开局操作可以为用户对该开局确认控件的触发操作,终端响应于检测到用于对该确认开局控件的触发操作,生成运行指令,将该运行指令发送至该云游戏所对应的服务器。其中,该运行指令可以携带有该某一云游戏的标识、用户的用户标识等,本申请实施例对此不作限定。该触发操作可以为点击操作、长按操作等,本申请实施例对此不作限定。需要说明的是,在上述实施例中,仅以该运行指令用于指示游戏开局为例进行说明,上述对运行指令触发方式的说明,仅是一种示例性说明,本申请实施例对具体采用哪种方法触发该运行指令不作限定。
需要说明的是,上述终端响应于开局操作,向服务器发送运行指令的步骤401是可选步骤,在一种可能实现方式中,终端也可以不向服务器发送运行指令,服务器检测到终端启动云游戏客户端,或终端有游戏画面同步显示的需求时,即可执行下述向终端发送视频帧的步骤。
402、终端接收服务器响应于该运行指令发送的至少一个视频帧,对接收到的至少一个视频帧进行解码。
其中,该至少一个视频帧用于呈现应用程序运行画面,例如,该应用程序为云游戏应用程序时,该至少一个视频帧用于呈现游戏画面,以该云游戏为竞技对战类游戏为例,该至少一个视频帧可以包括本局竞技对战的虚拟场景信息,该虚拟场景中可以显示有被用户控制的虚拟对象、虚拟道具等。
在一种可能实现方式中,服务器响应于该运行指令,开始对游戏画面进行渲染,该游戏画面可以包括动态或静态的虚拟场景、虚拟对象、虚拟道具等,例如,用户可以某一控制虚拟对象在虚拟场景中进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。服务器可以基于参考帧率实时对虚拟场景画面,即游戏画面进行渲染,渲染出的连续的游戏画面可以呈现虚拟对象在虚拟场景中的活动过程。在一种可能实现方式中,该服务器中可以搭载有视频编码器,首先,服务器调用该视频编码器,实时对渲染出的连续的游戏画面进行压缩编码,得到视频ES(Elementary Stream,基本流),该视频ES流包括各个视频帧的信息,然后,服务器对视频ES流进行分组、打包,添加包头信息,得到PES(Packetized Elementary Stream,打包的基本流),将PES包内容分配到一系列固定长度的传输包中,最后,服务器将传输包实时发送至终端。需要说明的是,上述对视频数据传输方法的说明,仅是一种示例性说明,本申请实施例对具体采用哪种方法将视频数据从服务器发送至终端不作限定。
在一种可能实现方式中,终端基于接收到的TS包,即传输包,还原出PES包,去除PES包的包头信息,得到包含视频帧信息的ES,再对ES进行解码,得到已解码的至少一个视频帧。在本申请实施例中,该终端搭载有视频解码器,终端接收到完整视频帧之后,可以立即调用视频解码器进行解码,得到已解码的视频帧。其中,该已解码的视频帧可以为YUV数据格式。需要说明的是,上述对视频解码方法的说明,仅是一种示例性说明,本申请实施例对具体采用哪种方法进行视频解码不作限定。在本申请实施例中,终端接收到视频帧后,立即解码视频帧,而不进行缓存,可以避免因视频帧缓存而导致的终端播放延时。
403、终端响应于该至少一个视频帧包括视频的第一个视频帧,将已解码的第一个视频帧渲染至目标界面进行显示。
其中,该目标界面可以为用户操作界面,在该目标界面显示至少一个视频帧画面来呈现游戏的虚拟场景的变化、虚拟对象的活动等。在本申请实施例中,视频解码器对视频的第一个视频帧解码后,终端立即调用视频渲染器,对已解码的该第一个视频帧进行渲染,在目标界面进行显示,以降低终端播放的延时。需要说明的是,本申请实施例对视频渲染器进行视频帧渲染的具体方法不作限定。在本申请实施例中,直接对视频的第一个视频帧进行显示,而无需缓存,可以降低终端显示的延时,缩短用户的等待时间,进而可以提升云游戏的用户体验。
404、终端响应于该至少一个视频帧不包括视频的第一个视频帧,判断视频帧缓存队列是否为空。
其中,该视频帧缓存队列用于存储未播放的视频帧。
在本申请实施例中,终端接收到除第一个视频帧以外的任一视频帧时,需要将该任一视频帧存储至视频帧缓存队列,在对该任一视频帧进行存储之前,终端需先判断该视频帧缓存队列中是否已存储有视频帧。
405、终端响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的至少一个视频帧存储至该视频帧缓存队列。
在本申请实施例中,若该视频帧缓存队列不为空,终端可以先对该视频帧缓存队列进行数据清理,再将已解码的至少一个视频帧存储至该视频帧缓存队列。在一种可能实现方式中,该步骤405可以包括下述多种实现方式中的任一种:
实现方式一、终端响应于视频帧缓存队列不为空,清空该视频帧缓存队列,将已解码的该至少一个视频帧存储至该视频帧缓存队列。在一种可能实现方式中,终端删除视频帧缓存队列中已缓存的全部视频帧,将最新获取到的视频帧存储至该视频帧缓存队列,在视频帧显示时,可以直接渲染最新接收到的视频帧,从而可以避免因视频帧缓存队列中缓存有视频帧,而导致新接收到的视频帧显示延时。
实现方式二、终端响应于该视频帧缓存队列中已缓存的视频帧的数目大于第一参考数目,从该视频帧缓存队列中删除第一数目的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列。其中,该第一数目等于已缓存的视频帧的数目减去该第一参考数目,该第一参考数目可以基于网络延时时长的变化确定,即基于网络抖动情况确定,本申请实施例对该第一参考数目的具体数值不作限定。例如,在网络抖动较大的情况下,该视频帧缓存队列中会缓存有数量较多的视频帧,在终端对视频帧缓存队列进行数据清理时,可以保留该视频帧缓存队列中的第一参考数目的视频帧,从而可以避免一次性删除数目较多的视频帧,而导致终端播放的视频画面不流畅。
实现方式三、终端响应于该视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在该视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从该已缓存的视频帧中删除该目标视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列。其中,该第二参考数目可以基于网络延时时长的变化确定,即基于网络抖动情况确定,例如,在网络延时时长的变化较大时,增大该第二参考数目的数值,本申请实施例对该第二参考数目的具体数值不作限定。该参考条件可以由开发人员进行设置,本申请实施例对此不作限定。在一种可能实现方式中,可以基于目标间隔从已缓存的视频帧中获取视频帧,将获取到的视频帧确定为该目标视频帧,该目标间隔可以由开发人员进行设置本申请实施例对此不作限定,例如,可以从视频帧缓存队列中排在第一位的视频帧起,每间隔一个视频帧,进行一次视频帧获取,将获取到的视频帧确定为该目标视频帧,对这些目标视频帧进行删除,从而可以避免一次性删除较多连续的视频帧,而导致终端播放的视频画面不流畅。在一种可能实现方式中,还可以将已缓存的视频帧中除关键帧以外的视频帧确定为该目标视频帧。其中,该关键帧为包括目标对象的视频帧,该目标对象可以是目标人物、目标动物等,本申请实施例对此不作限定。例如,终端可以通过图像检测模型,快速检测各个已缓存的视频帧中是否包含目标对象,将包含目标对象的视频帧确定为关键帧,其他视频帧为非关键帧,对这些已缓存的非关键帧进行删除,从而可以避免在数据清理时删除关键信息。当然,终端还可以通过其他方法确定该目标视频帧,本申请实施例对具体采用哪种方法确定目标视频帧不作限定。
需要说明的是,上述对视频帧缓存队列进行数据清理的方法的说明,仅是几种可能实现方式的示例性说明,本申请实施例对具体采用哪种方法对视频帧缓存队列进行数据清理不作限定。在本申请实施例中,在对已解码的视频帧进行缓存时,先对视频帧缓存队列进行数据清理,可以降低因视频帧缓存队列中有缓存数据,而导致的终端播放延时。
需要说明的是,通常情况下,视频解码器可以按照一定周期,在每周期内输出一个已解码的视频帧,终端对该一个已解码的视频帧进行缓存。在网络抖动、视频解码器抖动的情况下,视频解码器可能会连续输出至少两个视频帧,在这种情况下,中的可以基于该至少两个视频帧执行上述视频帧缓存的步骤405。需要说明的是,本申请实施例对每次缓存的视频帧数目不作限定。在本申请实施例中,在连续接收到至少两视频帧的情况下,例如,终端在1ms内获取到2个已解码的视频帧,终端对至少两个视频帧均进行缓存,依次对各个视频帧进行渲染,以对各个视频帧进行显示,而不进行丢帧,可以确保终端有较高的实际显示帧率。
406、终端响应于视频帧缓存为空,将已解码的至少一个视频帧存储至该视频帧缓存队列。
在本申请实施例中,若视频帧缓存队列中没有缓存数据,则终端可以直接将已解码的视频帧存储至该视频帧缓存队列。
407、终端基于该视频帧缓存队列中所存储的至少一个视频帧,进行界面显示。
在本申请实施例中,终端可以通过视频渲染器,每隔一个目标时长,从视频帧缓存队列中获取视频帧进行渲染,在目标界面显示视频帧画面。其中,该目标时长可以基于显示屏刷新率确定,例如,显示屏刷新率为60HZ时,该目标时长为16.6ms。在一种可能实现方式中,终端在对视频的第一个视频帧渲染完成时,可以记录第一个视频帧的第一渲染时刻,基于该第一渲染时刻和目标时长,确定出除该第一个视频帧以外的各个视频帧的第二渲染时刻,响应于到达第二渲染时刻,从视频帧缓存队列中获取一个视频帧进行渲染,以对该一个视频帧进行显示。需要说明的是,本申请实施例对视频帧的具体显示方法不作限定。
在一种可能实现方式中,在网络环境较差,终端无法正常显示视频帧画面时,终端可以显示网络状态提示信息,以提示用户当前网络状态差。例如,终端响应于该视频帧缓存队列为空的持续时长大于参考时长,在目标页面显示网络状态提示信息。其中,该参考时长可以由开发人员进行设置,本申请实施例对此不作限定。当然,该终端还可以通过其他方式确定当前网络状态,本申请实施例对此不作限定。需要说明的是,本申请实施例对该网络状态提示信息的具体显示方式不作限定。
本申请实施例提供的技术方案,通过在获取到已解码的视频帧后,判断视频帧缓存队列当前是否缓存有视频帧,若是,则对该视频帧缓存队列中已缓存的视频帧进行清理,即后续不再渲染、播放这些被清理的视频帧,再将新获取到的已解码的视频帧添加到视频帧缓存队列中,从视频帧缓存队列中获取新添加进去的已解码的视频帧进行显示,使终端可以直接显示最新的视频帧画面,从而降低终端显示的延时。
图5是本申请实施例提供的一种视频显示系统的数据处理流程图,结合图5,对上述视频数据处理过程进行说明。首先,终端通过网络接收单元501接收视频数据包,该视频数据包可以包括视频帧数据,终端将接收到的视频帧数据输入视频解码器502,得到已解码的至少一个视频帧。然后,终端执行判断已解码的至少一个视频帧是否包括视频的第一个视频帧的步骤503,若是,则直接对该第一个视频帧进行渲染,在目标界面显示该第一个视频帧,即执行上述步骤403,若不是,则执行判断视频帧缓存队列是否为空的步骤504。响应于该视频帧缓存队列为空,将最新解码出的视频帧存储至该视频帧缓存队列,即执行上述步骤406;响应于该视频帧缓存队列不为空,先对视频帧缓存队列进行数据清理,再将最新解码出的视频帧存储至该视频帧缓存队列,即执行上述步骤405。最后,视频渲染器505基于显示屏刷新率,从视频帧缓存队列中获取视频帧进行渲染,显示视频帧画面。应用本申请实施例提供的技术方案,一方面,在视频帧缓存时,通过对视频帧缓存队列进行数据清理,使视频帧缓存队列中的缓存帧数位置在较少的数目,可以有效降低终端播放的延时。另一方面,在出现网络抖动或解码器抖动时,解码器可能连续输出两个或两个以上的视频帧,此时终端对这多个视频帧均进行缓存,而不进行丢帧,接收到的第二个视频帧和第二个之后的视频帧,会逐个延时显示,应用这种视频数据处理方法,可以确保终端有较高的显示帧率,避免因丢帧过多导致的视频播放卡顿。由于云游戏类用于程序对网络质量的要求较高,在云游戏类应用程序中应用本方案,可以降低终端的游戏画面显示延时,提高终端的实际显示帧率,缓解游戏画面显示卡顿的情况,避免网络抖动影响游戏的流畅度,进而提高游戏的用户体验。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
图6是本申请实施例提供的一种视频数据处理装置的结构示意图,参见图6,该装置包括:
解码模块601,用于对接收到的至少一个视频帧进行解码;
缓存模块602,用于响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列,该视频帧缓存队列用于存储未播放的视频帧;
显示模块603,用于基于该视频帧缓存队列中所存储的该至少一个视频帧,进行界面显示。
在一种可能实现方式中,该显示模块603用于:响应于该至少一个视频帧包括视频的第一个视频帧,将已解码的该第一个视频帧渲染至目标界面进行显示;
该缓存模块602,用于响应于该至少一个视频帧不包括视频的第一个视频帧,执行响应于视频帧缓存队列不为空,删除该视频帧缓存队列中至少一个已缓存的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列的步骤。
在一种可能实现方式中,该缓存模块602包括下述任一项:
第一缓存子模块,用于响应于视频帧缓存队列不为空,清空该视频帧缓存队列,将已解码的该至少一个视频帧存储至该视频帧缓存队列;
第二缓存子模块,用于响应于该视频帧缓存队列中已缓存的视频帧的数目大于第一参考数目,从该视频帧缓存队列中删除第一数目的视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列,该第一数目等于已缓存的视频帧的数目减去该第一参考数目;
第三缓存子模块,用于响应于该视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在该视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从该已缓存的视频帧中删除该目标视频帧,将已解码的该至少一个视频帧存储至该视频帧缓存队列。
在一种可能实现方式中,该第一参考数目、该第二参考数目基于网络延时时长的变化确定。
在一种可能实现方式中,该第三缓存子模块,用于执行下述任一项:
将该已缓存的视频帧中除关键帧以外的视频帧确定为该目标视频帧,该关键帧为包括目标对象的视频帧;
基于目标间隔从该已缓存的视频帧中获取视频帧,将获取到的视频帧确定为该目标视频帧。
在一种可能实现方式中,该装置还包括:
发送模块,用于响应于开局操作,向服务器发送运行指令;
接收模块,用于接收服务器响应于该运行指令发送的至少一个视频帧,该至少一个视频帧用于呈现应用程序运行画面。
在一种可能实现方式中,该显示模块603,还用于:
响应于该视频帧缓存队列为空的持续时长大于参考时长,显示网络状态提示信息,该网络状态提示信息用于指示当前网络状态差。
本申请实施例提供的装置,通过在获取到已解码的视频帧后,判断视频帧缓存队列当前是否缓存有视频帧,若缓存有视频帧,则对该视频帧缓存队列中已缓存的视频帧进行清理,即后续不再渲染、播放这些被清理的视频帧,再将新获取到的已解码的视频帧添加到视频帧缓存队列中,从视频帧缓存队列中获取新添加进去的已解码的视频帧进行显示,使终端可以直接显示最新的视频帧画面,从而降低终端显示的延时。
需要说明的是:上述实施例提供的视频数据处理装置在视频数据处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的视频数据处理装置与视频数据处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述技术方案所提供的计算机设备可以实现为终端或服务器,例如,图7是本申请实施例提供的一种终端的结构示意图。该终端700可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:一个或多个处理器701和一个或多个存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一条程序代码,该至少一条程序代码用于被处理器701所执行以实现本申请中方法实施例提供的视频数据处理方法。
在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、显示屏705、摄像头组件706、音频电路707和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在显示屏705的下层时,由处理器701根据用户对显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制显示屏705的显示亮度。具体地,当环境光强度较高时,调高显示屏705的显示亮度;当环境光强度较低时,调低显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图8是本申请实施例提供的一种服务器的结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)801和一个或多个的存储器802,其中,该一个或多个存储器802中存储有至少一条程序代码,该至少一条程序代码由该一个或多个处理器801加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器800还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器800还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括至少一条程序代码的存储器,上述至少一条程序代码可由处理器执行以完成上述实施例中的视频数据处理方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,提供了一种计算机程序产品,该计算机程序产品包括至少一条程序代码,该至少一条程序代码存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该至少一条程序代码,处理器执行该至少一条程序代码,使得该计算机设备实现该视频数据处理方法所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来至少一条程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种视频数据处理方法,其特征在于,所述方法包括:
从服务器接收到至少一个视频帧之后,在不对接收到的所述至少一个视频帧进行缓存的情况下,对所述至少一个视频帧进行解码;
响应于视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在所述视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从所述已缓存的视频帧中删除所述目标视频帧,将已解码的所述至少一个视频帧存储至所述视频帧缓存队列,所述视频帧缓存队列用于存储未播放的视频帧,所述目标视频帧是所述已缓存的视频帧中除关键帧以外的视频帧,所述关键帧为包括目标对象的视频帧;
基于所述视频帧缓存队列中所存储的所述至少一个视频帧,进行界面显示。
2.根据权利要求1所述的方法,其特征在于,所述对所述至少一个视频帧进行解码之后,所述方法还包括:
响应于所述至少一个视频帧包括视频的第一个视频帧,将已解码的所述第一个视频帧渲染至目标界面进行显示;
响应于所述至少一个视频帧不包括视频的第一个视频帧,执行响应于视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在所述视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从所述已缓存的视频帧中删除所述目标视频帧,将已解码的所述至少一个视频帧存储至所述视频帧缓存队列的步骤。
3.根据权利要求1所述的方法,其特征在于,所述第二参考数目基于网络延时时长的变化确定。
4.根据权利要求1所述的方法,其特征在于,所述对所述至少一个视频帧进行解码之前,所述方法还包括:
响应于开局操作,向所述服务器发送运行指令;
接收所述服务器响应于所述运行指令发送的至少一个视频帧,所述至少一个视频帧用于呈现应用程序运行画面。
5.根据权利要求1所述的方法,其特征在于,所述基于所述视频帧缓存队列中所存储的所述至少一个视频帧,进行界面显示之后,所述方法还包括:
响应于所述视频帧缓存队列为空的持续时长大于参考时长,显示网络状态提示信息,所述网络状态提示信息用于指示当前网络状态差。
6.一种视频数据处理装置,其特征在于,所述装置包括:
解码模块,用于从服务器接收到至少一个视频帧之后,在不对接收到的所述至少一个视频帧进行缓存的情况下,对所述至少一个视频帧进行解码;
缓存模块,用于响应于视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在所述视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从所述已缓存的视频帧中删除所述目标视频帧,将已解码的所述至少一个视频帧存储至所述视频帧缓存队列,所述视频帧缓存队列用于存储未播放的视频帧,所述目标视频帧是所述已缓存的视频帧中除关键帧以外的视频帧,所述关键帧为包括目标对象的视频帧;
显示模块,用于基于所述视频帧缓存队列中所存储的所述至少一个视频帧,进行界面显示。
7.根据权利要求6所述的装置,其特征在于,所述显示模块用于:响应于所述至少一个视频帧包括视频的第一个视频帧,将已解码的所述第一个视频帧渲染至目标界面进行显示;
所述缓存模块,用于响应于所述至少一个视频帧不包括视频的第一个视频帧,执行响应于视频帧缓存队列中已缓存的视频帧的数目大于第二参考数目,在所述视频帧缓存队列已缓存的视频帧中确定满足参考条件的目标视频帧,从所述已缓存的视频帧中删除所述目标视频帧,将已解码的所述至少一个视频帧存储至所述视频帧缓存队列的步骤。
8.根据权利要求6所述的装置,其特征在于,所述第二参考数目基于网络延时时长的变化确定。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
发送模块,用于响应于开局操作,向所述服务器发送运行指令;
接收模块,用于接收所述服务器响应于所述运行指令发送的至少一个视频帧,所述至少一个视频帧用于呈现应用程序运行画面。
10.根据权利要求6所述的装置,其特征在于,所述显示模块,还用于:
响应于所述视频帧缓存队列为空的持续时长大于参考时长,显示网络状态提示信息,所述网络状态提示信息用于指示当前网络状态差。
11.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求5任一项所述的视频数据处理方法所执行的操作。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如权利要求1至权利要求5任一项所述的视频数据处理方法所执行的操作。
CN202010758380.0A 2020-07-31 2020-07-31 视频数据处理方法、装置、计算机设备及存储介质 Active CN114071224B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010758380.0A CN114071224B (zh) 2020-07-31 2020-07-31 视频数据处理方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010758380.0A CN114071224B (zh) 2020-07-31 2020-07-31 视频数据处理方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN114071224A CN114071224A (zh) 2022-02-18
CN114071224B true CN114071224B (zh) 2023-08-25

Family

ID=80227579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010758380.0A Active CN114071224B (zh) 2020-07-31 2020-07-31 视频数据处理方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN114071224B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361579B (zh) * 2022-07-28 2024-06-25 珠海全志科技股份有限公司 视频送显方法、装置、电子设备及存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8648870B1 (en) * 2010-08-02 2014-02-11 Adobe Systems Incorporated Method and apparatus for performing frame buffer rendering of rich internet content on display devices
KR20150092928A (ko) * 2014-02-06 2015-08-17 에스케이플래닛 주식회사 레이턴시를 고려한 영상 출력 방법, 이를 수행하는 장치 및 클라우드 스트리밍 서비스 시스템
CN106162235A (zh) * 2016-08-17 2016-11-23 北京百度网讯科技有限公司 用于切换视频流的方法和装置
WO2017166954A1 (zh) * 2016-03-31 2017-10-05 努比亚技术有限公司 一种缓存视频帧的装置、方法和计算机存储介质
CN107333163A (zh) * 2017-06-29 2017-11-07 上海鋆创信息技术有限公司 一种视频处理方法及装置、一种终端及存储介质
CN107846597A (zh) * 2016-09-20 2018-03-27 上海澜至半导体有限公司 用于视频解码器的数据缓存方法和装置
CN110149552A (zh) * 2019-05-08 2019-08-20 百度在线网络技术(北京)有限公司 一种视频流帧数据的处理方法及终端
CN110213308A (zh) * 2018-02-28 2019-09-06 杭州海康威视数字技术股份有限公司 一种解码视频数据的方法及装置
CN110213636A (zh) * 2018-04-28 2019-09-06 腾讯科技(深圳)有限公司 在线视频的视频帧生成方法、装置、存储介质及设备
CN110312156A (zh) * 2018-03-27 2019-10-08 腾讯科技(深圳)有限公司 一种视频缓存方法、装置及可读存储介质
CN110418186A (zh) * 2019-02-01 2019-11-05 腾讯科技(深圳)有限公司 音视频播放方法、装置、计算机设备和存储介质
WO2020019140A1 (zh) * 2018-07-23 2020-01-30 深圳市大疆创新科技有限公司 视频处理方法、终端设备、机器可读存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8670072B1 (en) * 2011-12-05 2014-03-11 Guangzhou Ucweb Computer Technology Co., Ltd Method and apparatus for streaming media data processing, and streaming media playback equipment
US10805615B2 (en) * 2016-12-14 2020-10-13 LogMeln, Inc. Synchronizing video signals using cached key frames
CN109271327B (zh) * 2017-07-18 2020-11-27 杭州海康威视数字技术股份有限公司 内存管理方法及装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8648870B1 (en) * 2010-08-02 2014-02-11 Adobe Systems Incorporated Method and apparatus for performing frame buffer rendering of rich internet content on display devices
KR20150092928A (ko) * 2014-02-06 2015-08-17 에스케이플래닛 주식회사 레이턴시를 고려한 영상 출력 방법, 이를 수행하는 장치 및 클라우드 스트리밍 서비스 시스템
WO2017166954A1 (zh) * 2016-03-31 2017-10-05 努比亚技术有限公司 一种缓存视频帧的装置、方法和计算机存储介质
CN106162235A (zh) * 2016-08-17 2016-11-23 北京百度网讯科技有限公司 用于切换视频流的方法和装置
CN107846597A (zh) * 2016-09-20 2018-03-27 上海澜至半导体有限公司 用于视频解码器的数据缓存方法和装置
CN107333163A (zh) * 2017-06-29 2017-11-07 上海鋆创信息技术有限公司 一种视频处理方法及装置、一种终端及存储介质
CN110213308A (zh) * 2018-02-28 2019-09-06 杭州海康威视数字技术股份有限公司 一种解码视频数据的方法及装置
CN110312156A (zh) * 2018-03-27 2019-10-08 腾讯科技(深圳)有限公司 一种视频缓存方法、装置及可读存储介质
CN110213636A (zh) * 2018-04-28 2019-09-06 腾讯科技(深圳)有限公司 在线视频的视频帧生成方法、装置、存储介质及设备
WO2020019140A1 (zh) * 2018-07-23 2020-01-30 深圳市大疆创新科技有限公司 视频处理方法、终端设备、机器可读存储介质
CN110418186A (zh) * 2019-02-01 2019-11-05 腾讯科技(深圳)有限公司 音视频播放方法、装置、计算机设备和存储介质
CN110149552A (zh) * 2019-05-08 2019-08-20 百度在线网络技术(北京)有限公司 一种视频流帧数据的处理方法及终端

Also Published As

Publication number Publication date
CN114071224A (zh) 2022-02-18

Similar Documents

Publication Publication Date Title
CN110213636B (zh) 在线视频的视频帧生成方法、装置、存储介质及设备
CN112203100B (zh) 降低上下行带宽需求的传输方法及系统
CN107786827B (zh) 视频拍摄方法、视频播放方法、装置及移动终端
US20220191557A1 (en) Method for displaying interaction data and electronic device
CN110139116B (zh) 直播间切换方法、装置及存储介质
EP4071607B1 (en) Method for sharing application, electronic apparatus, and computer readable storage medium
CN110300274B (zh) 视频文件的录制方法、装置及存储介质
CN113490010B (zh) 基于直播视频的互动方法、装置、设备及存储介质
CN109275013B (zh) 虚拟物品展示的方法、装置、设备及存储介质
CN110149491B (zh) 视频编码方法、视频解码方法、终端及存储介质
CN114845129B (zh) 虚拟空间中的互动方法、装置、终端以及存储介质
CN114095437B (zh) 发送数据包的方法、装置、电子设备和存储介质
CN112822522A (zh) 视频播放方法、装置、设备及存储介质
WO2022217959A1 (zh) 资源展示方法及装置
CN108881719A (zh) 一种切换拍摄方式的方法及终端设备
CN111787347A (zh) 直播时长计算方法、直播显示方法、装置及设备
CN112004134B (zh) 多媒体数据的展示方法、装置、设备及存储介质
CN113141538B (zh) 媒体资源播放方法、装置、终端、服务器及存储介质
CN108536513B (zh) 一种图片显示方向调整方法及移动终端
WO2021143388A1 (zh) 码率切换方法及设备
CN114071224B (zh) 视频数据处理方法、装置、计算机设备及存储介质
EP4060956A1 (en) Data processing method and electronic device
US20220414178A1 (en) Methods, apparatuses and systems for displaying alarm file
WO2021258608A1 (zh) 带宽确定方法、装置、终端及存储介质
CN112312186B (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