CN113856204A - 一种云游戏数据解码方法、装置、电子设备及存储介质 - Google Patents
一种云游戏数据解码方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113856204A CN113856204A CN202111143820.2A CN202111143820A CN113856204A CN 113856204 A CN113856204 A CN 113856204A CN 202111143820 A CN202111143820 A CN 202111143820A CN 113856204 A CN113856204 A CN 113856204A
- Authority
- CN
- China
- Prior art keywords
- decoding
- data
- hardware
- cloud game
- historical
- 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
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/69—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供了一种云游戏数据解码方法、装置、电子设备及存储介质,涉及计算机技术领域。该方法包括:在云游戏启动时,获取终端设备的历史解码能力数据,然后基于历史解码能力数据判断终端设备是否满足硬件解码要求。在终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码。之后在采用硬件解码方式对云游戏的视频数据进行解码过程中,基于终端设备的实时解码能力数据判断是否切换为软件解码方式。若是,则切换为采用软件解码方式对云游戏的视频数据进行解码。如此,可以避免出现游戏画面卡顿的情况。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种云游戏数据解码方法、装置、电子设备及存储介质。
背景技术
云游戏是一种以云技术为基础的在线游戏技术,云游戏的优势在于低延时、操作流畅、无需下载安装。服务器将游戏画面以视频数据的形式传输给玩家的终端设备,玩家的终端设备对接收到的视频数据进行解码,从而展示游戏画面。
目前,运行云游戏的终端设备的型号具有多样性,各个终端设备对视频数据的解码能力不同,有些终端设备随着运行游戏的时长增加,对视频数据的解码速度也越来越慢,可能会出现游戏画面卡顿的情况。
发明内容
本发明实施例的目的在于提供一种云游戏数据解码方法、装置、电子设备及存储介质,以解决终端设备运行云游戏时出现游戏画面卡顿的问题。具体技术方案如下:
第一方面,本申请实施例提供一种云游戏数据解码方法,包括:
在云游戏启动时,获取终端设备的历史解码能力数据;
基于所述历史解码能力数据判断所述终端设备是否满足硬件解码要求;
在所述终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码;
在采用硬件解码方式对所述云游戏的视频数据进行解码过程中,基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式;
若是,则切换为采用软件解码方式对所述云游戏的视频数据进行解码。
第二方面,本申请实施例提供一种云游戏数据解码装置,包括:
获取模块,用于在云游戏启动时,获取终端设备的历史解码能力数据;
判断模块,用于基于所述获取模块获取的所述历史解码能力数据判断所述终端设备是否满足硬件解码要求;
解码模块,用于在所述判断模块判断出所述终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码;
所述判断模块,还用于在所述解码模块采用硬件解码方式对所述云游戏的视频数据进行解码过程中,基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式;
切换模块,用于在所述判断模块判断出切换为软件解码方式时,切换为采用软件解码方式对所述云游戏的视频数据进行解码。
第三方面,本发明实施例还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的云游戏数据解码方法步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中所述的云游戏数据解码方法。
第五方面,本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面中所述的云游戏数据解码方法。
本发明实施例的有益效果:
本发明实施例提供的云游戏数据解码方法、装置、电子设备及存储介质,在云游戏启动时,可以获取终端设备的历史解码能力数据,因硬件解码速度通常比软件解码速度快,所以在根据历史解码能力数据确定终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码,以保证游戏画面可以流畅播放。在云游戏运行过程中,终端设备持续进行硬件解码操作,可能会导致硬件解码的速度下降,所以在硬件解码过程中,可以基于终端设备的实时解码能力数据判断是否切换为软件解码方式,并根据判断结果及时进行解码方式的切换,避免采用硬件解码方式解码过程中因实时解码能力不足而出现卡顿现象,以避免云游戏画面出现卡顿。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种云系统的结构示意图;
图2为本发明实施例提供的一种云游戏数据解码方法的流程图;
图3为本发明实施例提供的另一种云游戏数据解码方法的流程图;
图4为本发明实施例提供的另一种云游戏数据解码方法的流程图;
图5为本发明实施例提供的一种云游戏数据解码方法的流程示意图;
图6为本发明实施例提供的一种云游戏数据解码装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在云游戏的场景中,如图1所示,用于运行云游戏的云系统可以包括:终端设备101和云设备102。
其中,云设备102可以是虚拟设备,也可以是实体设备。示例性的,云设备102可以是通过虚拟技术在云服务器上虚拟出的逻辑设备。具体而言,任意一台云服务器上可以虚拟出多台逻辑设备。当云设备是实体设备时,其包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、服务器等。
在实践中,云设备102可以通过安装云应用(也可称为云应用程序,云APP,云端应用等)来提供相应的网络服务。比如云设备102通过安装云游戏应用,以提供云游戏服务,也即,云应用运行在云设备102上。任意一个云设备102上可以运行一个或多个云应用。其中,当安装有多个云应用时,不同云应用的应用标识一般不同。在一种可能的场景中,一个云设备中可以安装有应用标识不同的多个云应用。
终端设备101为实体设备,其可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机等。终端设备101可以通过安装客户端的应用程序来提供相应的网络服务,比如终端设备101通过安装视频播放器来提供视频或图像播放服务。
云设备102与终端设备101通过云端通信模块建立通信连接。可选的,云端通信模块可内置于云设备102或者独立于云设备102,可用于实现云设备102上的一个或多个云应用与其对应的终端设备101之间的通信连接,和/或用于实现一个或多个云设备102与其对应的终端设备101之间的通信连接。上述所说的模块是广义的,可以是类、函数、线程、进程等,示例性的,云端通信模块可以为云应用服务程序。
在图1所示例的云系统中,一方面,云设备102用于运行云应用,并向终端101设备发送运行云应用时的数据流,终端设备101则用于展示接收到的数据流。另一方面,终端设备101用于采集用户的操作数据,并向云设备102发送操作数据(采集到的操作数据或处理后的操作数据),云设备102则基于接收到的操作数据对用户操作进行响应,并继续向终端设备101发送响应数据流,终端设备101则继续展示接收到的响应数据流。如此,云设备102与终端设备101形成闭环,用户可以通过终端设备101来使用云设备102上安装的云应用。由于云应用实际并不运行在终端设备101中,因此有利于降低终端设备101的运行资源。
以云游戏应用为例,云设备102向终端设备101发送云游戏应用的视频数据流,终端设备101则可通过已安装的应用,比如视频播放器展示接收到的视频流。进一步,终端设备101每采集到一次用户的操作数据,则向云设备102发送操作数据,云设备102则基于接收到的操作数据进行响应并刷新视频流,以及向终端设备101发送刷新后的视频数据,如此则可实现用户通过终端设备101来使用云设备102上安装的云游戏应用。
可以理解的是,图中的设备的数目仅是示意。根据实际需要,云系统可以包括任意数目的网络和设备,本发明实施例对此不做限制。
为了保证云游戏运行时的用户体验,云游戏的运行流畅度需要与终端设备中安装的游戏客户端的运行流畅度基本相同。然而在实际应用中,由于运行云游戏的终端设备的型号具有多样性,各个终端设备对视频数据的解码能力不同,有些终端设备随着运行游戏的时长增加,对视频数据的解码速度也越来越慢,可能会出现游戏画面卡顿的情况,造成用户体验下降。本申请实施例提供了一种云游戏数据解码方法,该方法是为了减少云游戏画面卡顿的情况,提高云游戏的运行流畅度,进而提高用户的体验满意度。
基于图1所示的云游戏系统,本申请实施例提供一种云游戏数据解码方法,该方法应用于终端设备,如图2所示,该方法包括:
S201、在云游戏启动时,获取终端设备的历史解码能力数据。
S202、基于历史解码能力数据判断终端设备是否满足硬件解码要求。在终端设备满足硬件解码要求的情况下,执行S203。
S203、采用硬件解码方式对云游戏的视频数据进行解码。
S204、在采用硬件解码方式对云游戏的视频数据进行解码过程中,基于终端设备的实时解码能力数据判断是否切换为软件解码方式。若是,则执行S205。
S205、切换为采用软件解码方式对云游戏的视频数据进行解码。
本发明实施例提供的云游戏数据解码方法,在云游戏启动时,可以获取终端设备的历史解码能力数据,因硬件解码速度通常比软件解码速度快,所以在根据历史解码能力数据确定终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码,以保证游戏画面可以流畅播放。在云游戏运行过程中,终端设备持续进行硬件解码操作,可能会导致硬件解码的速度下降,所以在硬件解码过程中,可以基于终端设备的实时解码能力数据判断是否切换为软件解码方式,并根据判断结果及时进行解码方式的切换,避免采用硬件解码方式解码过程中因实时解码能力不足而出现卡顿现象,可以避免云游戏画面出现卡顿。
在上述S201中,终端设备的历史解码能力数据为用于反映终端设备对视频数据进行硬件解码的解码能力的数据。
其中,历史解码能力数据可以包括但不限于如下至少一种:终端设备的型号对应的历史解码能力数据,终端设备所属的设备厂商对应的历史解码能力数据,登录云游戏的账户使用过的终端设备的历史解码能力数据。
在上述S202中,如果终端设备的历史解码能力数据满足硬件解码要求,说明终端设备的历史解码能力能够满足对云游戏的视频数据解码的要求,所以当前可采用硬件解码方式对云游戏的视频数据进行解码。
反之,如果终端设备的历史解码能力数据不满足硬件解码要求,说明终端设备的历史解码能力无法满足对云游戏的视频数据解码的要求,当前采用硬件解码方式容易导致游戏卡顿,所以这种情况下可以采用软件解码方式对云游戏的视频数据进行解码。
在上述S203中,终端设备可以基于终端设备的实时解码速度向硬件解码器传输云游戏的视频数据,以使硬件解码器对云游戏的视频数据进行解码。
在上述S204中,终端设备运行云游戏的过程中,终端设备的实时解码能力数据可能会发生变化,比如因终端设备运行云游戏时间过长使得终端设备发热,相应地终端设备的实时解码能力也会下降,若实时解码能力数据太差,会造成播放卡顿,影响用户体验。所以,本申请实施例中,终端设备可以根据实时解码能力数据判断是否切换为软件解码方式,以避免云游戏运行过程中出现长时间卡顿。
在本申请的一个实施例中,针对上述S202,本申请实施例提供了以下两种实现方式:
第一种可能的实现方式中,历史解码能力数据可以包括历史解码速度。相应的,上述S202中的硬件解码要求可以是历史解码速度达到第二解码速度阈值,第二解码速度阈值可以根据实际需求设置。上述S202可以实现为:判断历史解码速度是否大于等于第二解码速度阈值。若历史解码速度大于等于第二解码速度阈值,则确定终端设备满足硬件解码要求;若历史解码速度小于第二解码速度阈值,则确定终端设备不满足硬件解码要求。
其中,历史解码速度可以为历史运行云游戏过程中的硬件解码速度的最大值、最小值或平均值,可基于实际需求设置。
第二种可能的实现方式中,历史解码能力数据可以包括历史解码速度和解码稳定性指标。相应的,上述S202中的硬件解码要求可以是历史解码速度达到第二解码速度阈值,以及解码稳定性指标达到解码稳定性阈值。上述S202可以实现为:判断历史解码速度是否大于等于第二解码速度阈值,以及解码稳定性指标是否大于等于解码稳定性阈值。若历史解码速度大于等于第二解码速度阈值,且解码稳定性指标大于等于解码稳定性阈值,则确定终端设备满足硬件解码要求;否则,确定终端设备不满足硬件解码要求。
其中,解码稳定性指标可以基于历史解码速度的平均值得到,或者解码稳定性指标可以为历史解码速度的曲线图的波动参数,波动参数用于表征该曲线图的波动情况,波动参数越小,说明解码稳定性指标越好。例如,波动参数包括但不限于如下至少一种:幅值、上升过程的斜率、下降过程的斜率和方差等。该解码稳定性指标可以通过对历史解码情况的统计分析得到。
在本申请另一实施例中,在采用硬件解码方式对云游戏的视频数据进行解码过程中,由于终端设备的硬件解码能力波动,可能出现终端设备的硬件解码能力不足而导致云游戏运行卡顿的情况,因此需要基于终端设备的实时解码能力数据判断是否切换为软件解码方式。
实时解码能力数据用于体现终端设备实时的解码情况,包括但不限于如下至少一种:终端设备的实时解码速度、终端设备的待解码数据缓存量等,在此不作穷举。
一种可能的实现方式中,在实时解码能力数据包括但不限于终端设备的实时解码速度的情况下,上述S204可以实现为:判断实时解码速度是否小于第一解码速度阈值。若实时解码速度小于第一解码速度阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
该实时解码速度可以包括但不限于指定时长内的平均解码速度,比如指定时长可以为5秒,终端设备可以计算每5秒的平均解码速度。
例如,第一秒内,共解码21帧,其中在第一秒内用于解码的时长为500毫秒,剩余500毫秒未解码。第二秒内,共解码20帧,其中在第二秒内用于解码的时长为510毫秒,剩余490毫秒未解码。第三秒内,共解码22帧,其中在第三秒全部的1000毫秒都用于解码。第四秒内,共解码21帧,其中在第四秒内用于解码的时长为900毫秒,剩余的100毫秒未解码。第五秒内,共解码23帧,其中在第五秒内用于解码的时长为590毫秒,剩余的410毫秒未解码。在五秒内,共解码107帧,共有3500毫秒用于解码,平均速度为1帧/32.7毫秒,得到这5秒的平均解码速度为1帧/32.7毫秒。
当实时解码速度小于第一解码速度阈值时,说明实时解码速度已经无法满足云游戏流畅运行所需的解码速度。如果继续使用硬件解码器对云游戏视频数据进行解码,会造成卡顿,影响用户体验。所以此时可以切换为采用软件解码方式对云游戏的视频数据进行解码。
另一种可能的实现方式中,在实时解码能力数据包括但不限于终端设备的待解码数据缓存量的情况下,上述S204可以实现为:判断待解码数据缓存量是否大于等于预设数量阈值。若待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
可以理解的,如果实时解码速度变慢,在那么终端设备中缓存的待解码数据将会随之增多,在待解码数据缓存量过大的情况下,可能会出现播放卡顿的情况下,所以本申请实施例可以及时切换为软件解码方式,以避免云游戏长时间卡顿。
另一种可能的实现方式中,在实时解码能力数据包括但不限于终端设备的实时解码速度和待解码数据缓存量的情况下,上述S204可以实现为:判断实时解码速度是否小于第一解码速度阈值,以及待解码数据缓存量是否大于等于预设数量阈值。若实时解码速度小于第一预设解码速度阈值以及待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
采用实时解码速度和待解码数据缓存量综合判断是否需要切换为软件解码方式,可以使得判断的结果更加准确,可以避免误切换的问题。
在本申请一个实施例中,因部分终端设备不支持硬件解码,所以在获取终端设备的历史解码能力数据之前,还可以预先判断终端设备是否支持硬件解码,如图3所示,该方法可以包括如下步骤:
S206、判断终端设备是否支持对云游戏的视频数据进行硬件解码。
若是,即在终端设备支持对云游戏的视频数据进行硬件解码的情况下,执行S201。若否,即在终端设备不支持对云游戏的视频数据进行硬件解码的情况下,执行S207。
本步骤具体可以实现为:在云游戏启动时,终端设备与云设备协商视频数据的编码格式,然后终端设备基于协商好的编码格式,尝试获取用于对该协商好的编码格式的视频数据进行硬件解码的硬件解码器信息。如果无法获取到硬件解码器信息,则确定终端设备不支持对云游戏的视频数据进行硬件解码,如果获取到硬件解码器信息,则确定终端设备支持对云游戏的视频数据进行硬件解码。
其中,在云游戏启动时,终端设备向云设备发送自身所支持的编码格式列表,比如该编码格式列表可以包括:H.261、H.262、H.263、H.263+、H.264。云设备接收到该编码格式列表后,从该编码格式列表中选择一种解码格式,并将所选择的编码格式反馈给终端设备,作为协商好的编码格式。终端设备与运设备协商视频数据的编码格式的具体方法可参考相关技术,本申请实施例对此不作限定。
例如,该协商好的编码格式可以为H.264,代表着后续云设备将向终端设备发送采用H264格式编码的视频数据。终端设备可以调用指定应用程序编程接口(ApplicationProgramming Interface,API)尝试获取用于解码H.264格式视频数据的硬件解码器,若调用该指定API获取到的信息为空,则可确定终端设备不支持对云游戏的数据进行硬件解码。
S207、采用软件解码方式对云游戏的视频数据进行解码。
采用上述方法,在云游戏启动时,先对终端设备的硬件解码资源进行适配,以确定终端设备是否支持对云游戏的视频数据进行硬件解码。在不支持硬件解码的情况下,可以直接采用软件解码方式对云游戏的视频数据进行解码,而无需进一步对终端设备的硬件解码能力数据进行判断,可以加快云游戏的启动速度。
另外,如图3所示,在上述S202基于历史解码能力数据判断终端设备是否满足硬件解码要求之后,如果终端设备不满足硬件解码要求,说明终端设备的硬件解码能力不足以支持流畅地对视频数据进行解码播放,因此此时可执行S207采用软件解码方式对云游戏的视频数据进行解码。
在本申请另一实施例中,如图4所示,上述S203,在终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码,包括以下步骤:
S2031、在终端设备满足硬件解码要求的情况下,启动硬件解码器和软件解码器。
其中,软件解码器可作为备用解码器。可选的,软件解码器可与硬件解码器同时启动。或者,在本申请的另一个实施例中,也可以先启动硬件解码器,后续当硬件解码器正常工作后,再启动软件解码器,以避免因启动软件解码器产生的时延造成解码延迟,这有利于提高解码响应速度。
S2032、获取云游戏的视频数据,通过硬件解码器对云游戏的视频数据进行解码。
其中,终端设备可以接收云设备发送的音频数据和视频数据,默认通过硬件解码的方式对音频数据进行解码,并在终端设备满足硬件解码要求的情况下,通过硬件解码器对视频数据进行解码。由于音频数据的数据量较小,远小于视频数据的数据量,终端设备的硬件解码能力一般都能满足对于音频数据的解码要求,因此可以直接通过硬件解码的方式对音频数据进行解码。
在已启动硬件解码器和软件解码器的基础上,如图4所示,上述S205、切换为采用软件解码方式对云游戏的视频数据进行解码可以实现为:
S2051、关闭硬件解码器,调用软件解码器对云游戏的视频数据进行解码。
在关闭硬件解码器后,终端设备可以重新向云设备请求获取视频数据,云设备将从未解码的第一个关键帧开始向终端设备发送视频数据,进而终端设备采用软件解码的方式对后续接收到的视频数据进行解码,完成解码方式的切换。本申请实施例中,从硬件解码方式切换为软件解码方式所产生的解码停滞时间在毫秒级,所以可以做到用户无感知切换。
终端设备可记录此次切换前的硬件解码最大速度、硬件解码最小速度、硬件解码平均速度,写入本地配置文件。并将此次切换前的硬件解码最大速度、硬件解码最小速度、硬件解码平均速度发送到云设备,为更新云端配置文件中的终端设备的历史解码能力数据提供参考数据。
采用该方法,在确定采用硬件解码方式后,同时启动硬件解码器和软件解码器,如此,在需要进行切换解码方式时,不用启动软件解码器后再调用软件解码器,而是可以直接调用软件解码器对云游戏的视频数据进行解码,因此可以保证切换速度,使得云游戏可以流畅运行,避免了切换解码方式造成的卡顿。
在本申请实施例中,终端设备的本地配置文件中存储有终端设备的历史解码能力数据,且云端配置文件中可以存储各种型号的终端设备的历史解码能力数据、各设备厂商对应的历史解码能力数据、和/或登录云游戏的各账户的历史解码能力数据。作为示例,云端配置文件中存储有设备厂商1的A型号和B型号的终端设备的历史解码能力数据,以及厂商2的C型号和D型号的历史解码能力数据。
相应地,上述S201获取终端设备的历史解码能力数据的方式存在以下两种:
方式一、获取本地配置文件,从本地配置文件中获取终端设备的历史解码能力数据。以及,下载云端配置文件,从云端配置文件中获取终端设备的历史解码能力数据。
本申请实施例中,可以从终端设备的本地安全数字(Secure Digital,SD)卡中获取本地配置文件。本地配置文件中包括终端设备自身记录的本机的历史解码能力数据。例如,本地配置文件中包括但不限于以下至少一种:终端每次运行游戏的平均硬件解码速度、硬件解码速度的最大值和硬件解码速度的最小值。其中,终端设备每运行一次云游戏,都会将运行云游戏过程中统计的解码能力数据保存在本地配置文件中。
云端配置文件包括的历史解码能力数据是对同一型号、同一设备厂商或者同一系列的多个终端设备的历史解码能力数据的进行统计得到的。
例如,历史解码能力数据包括A、B、C、D、E设备厂商的终端设备的历史解码能力数据。以A设备厂商为例,A设备厂商对应的历史解码能力数据能够反映A设备厂商的各终端设备的解码能力的综合水平。
终端设备可以基于本地配置文件以及云端配置文件中的历史解码能力数据,综合判断终端设备是否满足硬件解码要求。
该硬件解码要求可以根据实际需求设置,例如,硬件解码要求可以为本地配置文件中的历史解码能力数据的平均硬件解码速度大于硬件解码速度阈值,且云端配置文件中的该终端设备的平均硬件解码速度也大于硬件解码速度阈值。
作为示例,硬件解码要求可以为本地配置文件中10次硬件解码速度的平均值大于1帧/33毫秒,且云端配置文件保存的硬件解码速度高于1帧/33毫秒。或者,硬件解码要求也可以为本地配置文件中10次硬件解码速度的最小值大于1帧/33毫秒且云端配置文件保存的硬件解码速度高于1帧/33毫秒。或者,硬件解码要求还可以为本地配置文件中10次硬件解码速度的最大值大于1帧/20毫秒且云端配置文件保存的硬件解码速度高于1帧/33毫秒。
采用本申请实施例,通过综合考虑本地配置文件记录的历史解码能力数据以及云端配置文件中获取的终端设备的历史解码能力数据,因本地配置文件中的历史解码能力数据表示终端设备本机的解码能力,云端配置文件中的历史解码能力数据表示与该终端设备属于同一类型的终端设备的综合解码能力,因此可以更准确的衡量终端设备的硬件解码能力。
方式二、获取本地配置文件,从本地配置文件中获取终端设备的历史解码能力数据。在无法获取本地配置文件,或者本地配置文件中获取的终端设备的历史解码能力数据的数据量未达到指定数据量时,获取云端配置文件,从云端配置文件中获取终端设备的历史解码能力数据。
在本申请实施例中,如果终端设备未运行过云游戏,则终端设备中未记录历史解码能力数据,即无法获取本地配置文件,所以此时可下载云端配置文件,从云端配置文件中获取终端设备的历史解码能力数据。
同时,如果可以获取到终端设备的本地配置文件,但终端设备的本地配置文件包括的历史解码能力数据过少,为了更准确地衡量终端设备的硬件解码能力,此时可以下载云端配置文件,从云端配置文件中获取终端设备的历史解码能力数据。
采用该方法,可以先获取终端设备的本地配置文件,如果能获取到终端设备的本地配置文件,则可直接根据本地配置文件中包括的历史解码能力数据判断终端设备是否满足硬件解码要求,进而在终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码。该过程中终端设备无需从云端下载云端配置文件,避免了从云端获取云端配置文件所造成的时延,可以加快云游戏的响应速度。另外,终端设备在无法获取本地配置文件的情况下,再从云端下载云端配置文件,可以保证能够获取到终端设备的历史解码能力数据,为解码方式的判断提供保障。
在本申请的一个实施例中,终端设备还可以记录实时解码能力数据,基于实时解码能力数据更新历史解码能力数据。
终端设备在运行云游戏过程中,可以将实时解码能力数据保存在本地配置文件中,并上传至云设备,以便于运维人员根据终端设备的历史解码能力数据灵活调整上述硬件解码要求。
以下结合具体流程对本申请实施例提供的云游戏数据解码的方法进行说明,如图5所示,以在视频APP中运行云游戏为例,在视频APP中显示的云游戏被用户触发后,视频APP的信令模块通过选择性转发单元(Selective Forwarding Unit,SFU)与云手机(云手机运行于云设备中)进行信令交互,从而启动云游戏。在云游戏启动后,视频APP获取云端配置文件和本地配置文件,将获取到的云端配置文件与视频APP所在的终端设备(比如手机)进行适配,已获取云端配置文件包括的与视频APP所在终端设备适配的历史解码能力数据。进而可以根据从本地配置文件和从云端配置文件中获取的历史解码能力数据判断是否采用硬件解码的方式对视频数据进行解码。
若确定采用硬件解码的方式对硬件数据进行解码,则视频APP启动硬件解码器和软件解码器,若不采用硬件解码方式,则启动软件解码器。
视频APP通过与SFU和云手机的信令模块进行信息交互,从云手机处获取云游戏的音视频数据,将音频数据传输至音频模块,将视频数据传输至视频模块。
在本申请实施例中,默认使用硬件解码器对音频数据进行解码,并通过扬声器播放解码得到的音频。
在上述确定采用硬件解码的情况下,视频模块将待解码视频数据输入硬件解码器进行硬件解码,将解码得到的视频数据渲染成游戏画面并进行画面显示。
在采用硬件解码器对视频数据进行解码的过程中实时监测实时解码能力数据(包括终端设备的实时解码速度和待解码数据缓存量),若确定实时解码能力数据所表征的实时解码性能下降,则切换为采用软件解码的方式进行解码,视频模块将待解码的视频数据输入软件解码器进行软件解码,将解码得到的视频数据渲染成游戏画面并进行画面显示。
在上述确定采用软件解码的情况下,视频模块将待解码视频数据输入软件解码器进行软件解码,将解码得到的视频数据渲染成游戏画面并进行画面显示。
通过使用本发明实施例提供的云游戏数据解码的方法,在云游戏启动后,在终端设备满足硬件解码要求的情况下,同时启动硬件解码器和软件解码器,利用硬件解码器对云游戏的视频数据进行解码,从而播放视频数据。并在视频数据的播放过程中,再根据终端设备的实时解码速度和待解码数据缓存量,判断是否需要切换为软件解码方式,从而实现了基于终端设备的实时解码性能动态切换解码方式,以减少云游戏运行过程中的卡顿,大大增加了用户的游戏体验。
通过对手机实时解码速度进行监测,在手机实时解码速度下降时由硬件解码切换至软件解码,保证了云游戏的流畅运行。
基于相同的发明构思,对应于上述方法实施例,本发明实施例还提供了一种云游戏数据解码装置,参见图6,该装置包括:获取模块601、判断模块602、解码模块603和切换模块604;
获取模块601,用于在云游戏启动时,获取终端设备的历史解码能力数据;
判断模块602,用于基于获取模块601获取的历史解码能力数据判断终端设备是否满足硬件解码要求;
解码模块603,用于在判断模块602判断出终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码;
判断模块602,还用于在解码模块603采用硬件解码方式对云游戏的视频数据进行解码过程中,基于终端设备的实时解码能力数据判断是否切换为软件解码方式;
切换模块604,用于在判断模块602判断出切换为软件解码方式时,切换为采用软件解码方式对云游戏的视频数据进行解码。
本发明实施例提供的云游戏数据解码装置,在云游戏启动时,可以获取终端设备的历史解码能力数据,因硬件解码速度通常比软件解码速度快,所以在根据历史解码能力数据确定终端设备满足硬件解码要求的情况下,采用硬件解码方式对云游戏的视频数据进行解码,以保证游戏画面可以流畅播放。在云游戏运行过程中,终端设备持续进行硬件解码操作,可能会导致硬件解码的速度下降,所以在硬件解码过程中,可以基于终端设备的实时解码能力数据判断是否切换为软件解码方式,并根据判断结果及时进行解码方式的切换,避免采用硬件解码方式解码过程中因实时解码能力不足而出现卡顿现象,可以避免云游戏画面出现卡顿。
可选地,实时解码能力数据包括终端设备的实时解码速度;判断模块602,具体用于:
判断实时解码速度是否小于第一解码速度阈值;
若实时解码速度小于第一解码速度阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
可选地,实时解码能力数据包括终端设备的待解码数据缓存量;判断模块602,具体用于:
判断待解码数据缓存量是否大于等于预设数量阈值;
若待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
可选地,实时解码能力数据包括终端设备的实时解码速度和待解码数据缓存量;判断模块602,具体用于:
判断实时解码速度是否小于第一解码速度阈值,以及待解码数据缓存量是否大于等于预设数量阈值;
若实时解码速度小于第一预设解码速度阈值以及待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
可选地,解码模块603,具体用于:
在终端设备满足硬件解码要求的情况下,启动硬件解码器和软件解码器;
获取云游戏的视频数据,通过硬件解码器对云游戏的视频数据进行解码;
切换模块604,具体用于:
关闭硬件解码器,调用软件解码器对云游戏的视频数据进行解码。
可选地,历史解码能力数据包括历史解码速度;判断模块602,具体用于:
判断历史解码速度是否大于等于第二解码速度阈值;
若历史解码速度大于等于第二解码速度阈值,则确定终端设备满足硬件解码要求;
若历史解码速度小于第二解码速度阈值,则确定终端设备不满足硬件解码要求。
可选地,历史解码能力数据包括历史解码速度和解码稳定性指标;判断模块602,具体用于:
判断历史解码速度是否大于等于第二解码速度阈值,以及解码稳定性指标是否大于等于解码稳定性阈值;
若历史解码速度大于等于第二解码速度阈值,且解码稳定性指标大于等于解码稳定性阈值,则确定终端设备满足硬件解码要求;否则,确定终端设备不满足硬件解码要求。
可选地,判断模块602,还用于在获取终端设备的历史解码能力数据之前,判断终端设备是否支持对云游戏的视频数据进行硬件解码;
判断模块602,具体用于在终端设备支持对云游戏的视频数据进行硬件解码的情况下,触发获取模块601执行基于历史解码能力数据判断终端设备是否满足硬件解码要求的步骤;
解码模块603,还用于在判断模块判断出终端设备不支持对云游戏的视频数据进行硬件解码的情况下,采用软件解码方式对云游戏的视频数据进行解码。
可选地,该装置还包括:记录模块和更新模块;
记录模块,用于记录实时解码能力数据;
更新模块,用于基于记录模块记录的实时解码能力数据更新历史解码能力数据。
可选地,解码模块603,具体用于:
基于终端设备的实时解码速度向硬件解码器传输云游戏的视频数据,以使硬件解码器对云游戏的视频数据进行解码。
可选地,历史解码能力数据包括如下至少一种:终端设备的型号对应的历史解码能力数据,终端设备所属的设备厂商对应的历史解码能力数据,登录云游戏的账户使用过的终端设备的历史解码能力数据。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述任一云游戏数据解码方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中任一所述的云游戏数据解码方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的云游戏数据解码方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (14)
1.一种云游戏数据解码方法,其特征在于,包括:
在云游戏启动时,获取终端设备的历史解码能力数据;
基于所述历史解码能力数据判断所述终端设备是否满足硬件解码要求;
在所述终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码;
在采用硬件解码方式对所述云游戏的视频数据进行解码过程中,基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式;
若是,则切换为采用软件解码方式对所述云游戏的视频数据进行解码。
2.根据权利要求1所述的方法,其特征在于,所述实时解码能力数据包括所述终端设备的实时解码速度;所述基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式,包括:
判断所述实时解码速度是否小于第一解码速度阈值;
若所述实时解码速度小于所述第一解码速度阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
3.根据权利要求1所述的方法,其特征在于,所述实时解码能力数据包括所述终端设备的待解码数据缓存量;所述基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式,包括:
判断所述待解码数据缓存量是否大于等于预设数量阈值;
若所述待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
4.根据权利要求1所述的方法,其特征在于,所述实时解码能力数据包括所述终端设备的实时解码速度和待解码数据缓存量;所述基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式,包括:
判断所述实时解码速度是否小于第一解码速度阈值,以及所述待解码数据缓存量是否大于等于预设数量阈值;
若所述实时解码速度小于第一预设解码速度阈值以及所述待解码数据缓存量大于等于预设数量阈值,则确定需要切换为软件解码方式;否则,确定不需要切换为软件解码方式。
5.根据权利要求1-4任一项所述的方法,其特征在于,在所述终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码,包括:
在所述终端设备满足硬件解码要求的情况下,启动硬件解码器和软件解码器;
获取所述云游戏的视频数据,通过所述硬件解码器对所述云游戏的视频数据进行解码;
所述切换为采用软件解码方式对所述云游戏的视频数据进行解码,包括:
关闭所述硬件解码器,调用所述软件解码器对所述云游戏的视频数据进行解码。
6.根据权利要求1所述的方法,其特征在于,所述历史解码能力数据包括历史解码速度;所述基于所述历史解码能力数据判断所述终端设备是否满足硬件解码要求,包括:
判断所述历史解码速度是否大于等于第二解码速度阈值;
若所述历史解码速度大于等于所述第二解码速度阈值,则确定所述终端设备满足硬件解码要求;
若所述历史解码速度小于所述第二解码速度阈值,则确定所述终端设备不满足硬件解码要求。
7.根据权利要求1所述的方法,其特征在于,所述历史解码能力数据包括历史解码速度和解码稳定性指标;所述基于所述历史解码能力数据判断所述终端设备是否满足硬件解码要求,包括:
判断所述历史解码速度是否大于等于第二解码速度阈值,以及所述解码稳定性指标是否大于等于解码稳定性阈值;
若所述历史解码速度大于等于第二解码速度阈值,且所述解码稳定性指标大于等于解码稳定性阈值,则确定所述终端设备满足硬件解码要求;否则,确定所述终端设备不满足硬件解码要求。
8.根据权利要求6或7所述的方法,其特征在于,在所述获取终端设备的历史解码能力数据之前,所述方法还包括:
判断所述终端设备是否支持对所述云游戏的视频数据进行硬件解码;
在所述终端设备支持对所述云游戏的视频数据进行硬件解码的情况下,执行所述获取终端设备的历史解码能力数据的步骤;
在所述终端设备不支持对所述云游戏的视频数据进行硬件解码的情况下,采用软件解码方式对所述云游戏的视频数据进行解码。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
记录所述实时解码能力数据;
基于所述实时解码能力数据更新所述历史解码能力数据。
10.根据权利要求5所述的方法,其特征在于,所述通过所述硬件解码器对所述云游戏的视频数据进行解码,包括:
基于所述终端设备的实时解码速度向所述硬件解码器传输所述云游戏的视频数据,以使所述硬件解码器对所述云游戏的视频数据进行解码。
11.根据权利要求1所述的方法,其特征在于,所述历史解码能力数据包括如下至少一种:所述终端设备的型号对应的历史解码能力数据,所述终端设备所属的设备厂商对应的历史解码能力数据,登录所述云游戏的账户使用过的终端设备的历史解码能力数据。
12.一种云游戏数据解码装置,其特征在于,包括:
获取模块,用于在云游戏启动时,获取终端设备的历史解码能力数据;
判断模块,用于基于所述获取模块获取的所述历史解码能力数据判断所述终端设备是否满足硬件解码要求;
解码模块,用于在所述判断模块判断出所述终端设备满足硬件解码要求的情况下,采用硬件解码方式对所述云游戏的视频数据进行解码;
所述判断模块,还用于在所述解码模块采用硬件解码方式对所述云游戏的视频数据进行解码过程中,基于所述终端设备的实时解码能力数据判断是否切换为软件解码方式;
切换模块,用于在所述判断模块判断出切换为软件解码方式时,切换为采用软件解码方式对所述云游戏的视频数据进行解码。
13.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-11任一所述的方法步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-11任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143820.2A CN113856204A (zh) | 2021-09-28 | 2021-09-28 | 一种云游戏数据解码方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143820.2A CN113856204A (zh) | 2021-09-28 | 2021-09-28 | 一种云游戏数据解码方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113856204A true CN113856204A (zh) | 2021-12-31 |
Family
ID=78991896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111143820.2A Pending CN113856204A (zh) | 2021-09-28 | 2021-09-28 | 一种云游戏数据解码方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113856204A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334352A (zh) * | 2022-08-11 | 2022-11-11 | 北京蔚领时代科技有限公司 | 一种自动匹配视频解码方法、装置、解码器及存储介质 |
-
2021
- 2021-09-28 CN CN202111143820.2A patent/CN113856204A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115334352A (zh) * | 2022-08-11 | 2022-11-11 | 北京蔚领时代科技有限公司 | 一种自动匹配视频解码方法、装置、解码器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111240837B (zh) | 资源配置方法、装置、终端及存储介质 | |
WO2020094034A1 (zh) | 用于终端的无线网络连接方法 | |
US11930197B2 (en) | Video decoding method and apparatus, computer device, and storage medium | |
CN109391843B (zh) | 在线视频倍速播放方法、装置、介质及智能终端 | |
WO2020094036A1 (zh) | 用于终端的无线网络连接方法 | |
US9166881B1 (en) | Methods and apparatus for adaptive bandwidth-based communication management | |
US20180260478A1 (en) | Audio processing method, server, user equipment, and system | |
CN111045824A (zh) | 应用控制方法、装置、电子设备以及计算机可读介质 | |
CN108235075B (zh) | 视频质量等级匹配方法、计算机可读存储介质及终端 | |
WO2019134499A1 (zh) | 一种用于对视频帧进行实时标注的方法与设备 | |
WO2018171548A1 (zh) | 一种解码方法、终端以及计算机可读存储介质 | |
CN113856204A (zh) | 一种云游戏数据解码方法、装置、电子设备及存储介质 | |
CN106789209B (zh) | 异常处理方法和装置 | |
CN109495776B (zh) | 一种音频发送、播放的方法及智能终端 | |
US9727873B1 (en) | Digital returns | |
WO2015032334A1 (zh) | 一种内容推荐的方法及移动终端 | |
CN114040245A (zh) | 视频播放方法、装置、计算机存储介质和电子设备 | |
CN106557398B (zh) | 信息上报方法和装置 | |
WO2023035662A1 (zh) | 云桌面运行的方法、服务器、终端 | |
US10110963B1 (en) | System, method, and computer program for media content playback management | |
CN117461311A (zh) | 基于解码帧率测量视频体验质量 | |
CN112905269A (zh) | 应用程序的网络访问方法、装置、终端及存储介质 | |
CN108156514B (zh) | 媒体文件的播放方法、装置及存储介质 | |
KR20180031325A (ko) | 적응적 스트리밍 서비스에서 스트리밍 어플리케이케이션으로 데이터를 제공하는 방법 및 장치 | |
US20160182536A1 (en) | Adapting user terminal application operation responsive to measured user behavior |
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 |