CN116017058A - 视频播放方法、装置、电子设备和可读存储介质 - Google Patents

视频播放方法、装置、电子设备和可读存储介质 Download PDF

Info

Publication number
CN116017058A
CN116017058A CN202211532449.3A CN202211532449A CN116017058A CN 116017058 A CN116017058 A CN 116017058A CN 202211532449 A CN202211532449 A CN 202211532449A CN 116017058 A CN116017058 A CN 116017058A
Authority
CN
China
Prior art keywords
canvas
frame picture
resolution
video
target frame
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
CN202211532449.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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili 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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202211532449.3A priority Critical patent/CN116017058A/zh
Publication of CN116017058A publication Critical patent/CN116017058A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

本申请提出一种视频播放方法、装置、电子设备和可读存储介质。其中,方法包括:获取视频内容的原始帧画面;将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;给目标帧画面添加画布标签;基于画布标签,播放目标帧画面。本申请实施例获取视频内容后,通过画布增强帧画面的分辨率并播放视频内容,从而可以以较低的码率获取视频内容,实现高分辨率的视频播放效果。

Description

视频播放方法、装置、电子设备和可读存储介质
技术领域
本申请涉及一种视频处理技术领域和浏览器视频播放技术领域,尤其涉及一种视频播放方法、装置、电子设备和可读存储介质。
背景技术
通过网页端播放视频内容时,会占用一定的宽带。尤其在要求播放视频的分辨率越高的情况下,其码率承载越高,导致网站成本上升。因此,需要提供一种在低码率承载情况下,播放高分辨率视频的视频播放方法。
发明内容
本申请实施例提供一种视频播放方法、装置、电子设备和可读存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种视频播放方法,包括:
获取视频内容的原始帧画面;
将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;
给目标帧画面添加画布标签;
基于画布标签,播放目标帧画面。
在一种实施方式中,获取视频内容的原始帧画面包括:
响应于播放请求获取视频内容的视频标签;
基于视频标签获取视频内容的原始帧画面。
在一种实施方式中,基于画布标签,播放目标帧画面,包括;
隐藏视频标签;
选择画布标签,并基于画布标签播放画布标签标识的目标帧画面。
在一种实施方式中,将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面,包括:
获取视频内容的帧率;
按照帧率相应的速度将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面。
在一种实施方式中,将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面,包括:
获取原始帧画面的纹理;
创建预设分辨率的画布;
调用着色器对原始帧画面的纹理按照预设分辨率进行处理,将处理后的纹理渲染在画布上。在一种实施方式中,创建预设分辨率的画布,包括:
获取原始帧画面的初始分辨率;
按照初始分辨率的预设倍数,创建画布。
在一种实施方式中,创建预设分辨率的画布,包括:
设定目标帧画面的预设分辨率值;
按照预设分辨率值,创建画布。
在一种实施方式中,创建预设分辨率的画布,包括:
获取终端设备的显卡信息,根据显卡信息确定目标帧画面的预设分辨率值;
按照预设分辨率值,创建画布。
第二方面,本申请实施例提供了一种视频播放装置,包括:
原始帧画面获取模块,用于获取视频内容的原始帧画面;
渲染模块,用于将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;
标签添加模块,用于给目标帧画面添加画布标签;
播放模块,用于基于画布标签,播放目标帧画面。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,以使至少一个处理器能够执行上述视频播放的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机指令,当计算机指令在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
本申请实施例采用上述技术方案,获取视频内容后,采用画布增强帧画面的分辨率并播放视频内容,从而可以以较低的码率获取视频内容,实现高分辨率的视频播放效果。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
图1示意性示出了根据本申请实施例的环境应用示意图。
图2为根据本申请一实施例的视频播放方法的流程示意图。
图3为根据本申请一实施例的视频播放方法中步骤S220的子步骤流程示意图。
图4为根据本申请一实施例的视频播放方法的另一流程示意图。
图5为根据本申请一实施例的视频播放装置的示意图。
图6是用来实现本申请实施例的视频播放的方法的电子设备的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
视频播放方法会存在以下缺陷:以高分辨率播放视频,则码率承载较高,对宽带要求高且网站成本上升。考虑到码率承载问题,而牺牲播放效果以低分辨率播放视频,则难以满足用户需求。
本申请提供了多个实施例解决上述缺陷,具体参照下文。
在本申请的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本申请及区别每一步骤,因此不能理解为对本申请的限制。
以下为本申请的术语解释和相关技术背景:
WebGL(Web Graphics Library,Web图形库):是一种JavaScript API(JavaScriptApplication Programming Interface,脚本语言应用程序接口),在不使用插件的情况下,可在兼容的网页浏览器中呈现交互式2D和3D图形。WebGL完全集成到浏览器的所有网页标准中,可将影像处理效果的GPU(Graphic Processing Unit,图形处理器)加速使用方式当做网页Canvas(画布)的一部分。WebGL元素可以加入其他HTML(Hyper Text MarkupLanguage,超文本标记语言)元素之中并与网页或网页背景的其他部分混合。WebGL程序由JavaScript编写的句柄和OpenGL(Open Graphics Library,开放式图形库)ShadingLanguage(GLSL)编写的着色器代码组成,该语言类似于C或C++,并在电脑的GPU上执行。
GLSL(OpenGL Shading Language,OpenGL着色语言),是一个以C语言为基础的高阶着色语言。它是由OpenGL ARB(OpenGL Architecture Review Board,OpenGL架构评审委员会)所建立,提供开发者对绘图管线更多的直接控制,而无需使用汇编语言或硬件规格语言。
Shader(着色器)是一种计算机程序,在计算机图形学领域中,原本用于进行图像的浓淡处理(计算图像中的光照、亮度、颜色等),但近来,它也被用于完成很多不同领域的工作,比如处理CG(Computer Graphics,计算机图形学)特效、进行与浓淡处理无关的视频后期处理、甚至用于一些与计算机图形学无关的其它领域。
使用着色器在图形硬件上计算渲染效果有很高的自由度。尽管不是硬性要求,但目前大多数着色器是针对GPU开发的。GPU的可编程绘图管线已经全面取代传统的固定管线,可以使用着色器语言对其编程。构成最终图像的像素、顶点、纹理,它们的位置、色相、饱和度、亮度、对比度也都可以利用着色器中定义的算法进行动态调整。调用着色器的外部程序,也可以利用它向着色器提供的外部变量、纹理来修改这些着色器中的参数。
在电影后期处理、计算机成像、电子游戏等领域,着色器常被用来制作各种特效。除了普通的光照模型,着色器还可以调整图像的色相、饱和度、亮度、对比度,生成模糊、高光、有体积光源、失焦、卡通渲染、色调分离、畸变、凹凸贴图、色键(即所谓的蓝幕、绿幕抠像效果)、边缘检测等效果。
JavaScript(JS)是一种直译式脚本语言,是一门基于原型、头等函数的语言,是一门多范式的语言,它支持面向对象程序设计,指令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持I/O,比如网络、存储和图形等,但这些都可以由它的宿主环境提供支持。它已经由ECMA(欧洲电脑制造商协会)通过ECMAScript实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、Firefox、Safari、Opera)支持。
API(application programming interface,应用程序接口),是一种计算接口,它定义多个软件中介之间的交互,以及可以进行的调用(call)或请求(request)的种类,如何进行调用或发出请求,应使用的数据格式,应遵循的惯例等。它还可以提供扩展机制,以便用户可以通过各种方式对现有功能进行不同程度的扩展。一个API可以是完全定制的,针对某个组件的,也可以是基于行业标准设计的以确保互操作性。通过信息隐藏,API实现了模块化编程,从而允许用户实现独立地使用接口。
图1示意性示出了根据本申请实施例的环境应用示意图。如图1所示:
提供商网络2可以通过网络4连接多个移动终端6。提供商网络2可以提供内容服务。
内容服务可以包括诸如互联网协议视频流服务之类的内容流服务。内容流服务可以被配置为经由各种传输技术来分发内容。内容服务可以被配置为提供诸如视频,音频,文本数据,其组合等的内容。内容可以包括内容流(例如,视频流),内容文件(例如,视频文件)和/或其他数据。
提供商网络2可以实现视频内容播放服务,该视频内容播放服务被配置为允许用户播放和/或控制播放该视频内容。视频内容呈现在网页端的展示界面或者播放屏幕上。
提供商网络2可以位于诸如单个场所之类的数据中心,或者分布在不同的地理位置(例如,在多个场所)中。提供商网络2可以经由一个或多个网络4提供服务。网络4包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或类似。网络4可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,其组合等。网络4可以包括无线链路,诸如蜂窝链路,卫星链路,Wi-Fi链路等。
多个移动终端6可以被配置为访问提供商网络2的内容和服务。多个移动终端6可以包括任何类型的电子设备,诸如移动设备、平板设备、膝上型计算机、工作站、虚拟现实设备,游戏设备、机顶盒、数字流媒体设备、车辆终端、智能电视、机顶盒等。
多个移动终端6可以内容(视频等)输出(例如,显示、渲染、呈现)给用户。在其他实施例中,移动终端6还可以获取视频内容相关的信息,例如获取视频内容播放的视频标签,获取视频内容的帧画面。移动终端6还可以控制视频内容的播放,例如暂停,快进等。
以下将通过多个实施例介绍视频播放的方案。该方案可以通过计算机设备1300实施,计算机设备1300可以是提供商网络2或其计算节点,也可以是移动终端6。
实施例一
图2示意性示出根据本申请一实施例的视频播放方法的流程图。如图2所示,该视频播放方法可以包括步骤S210-S240。其中:
S210,获取视频内容的原始帧画面。
其中,视频内容可以是基于各种视频格式的视频稿件,例如:H.264/AVC(AdvancedVideo Coding,高级视频编码)、H.265/HEVC(High Efficiency Video Coding,高效率视频编码)H.265格式等。视频内容可以是本地数据库中上传的视频内容,也可以是通过互联网获取到视频网站中的视频内容。
在获取视频内容的情况下,或者在确定需要播放的视频内容的情况下,可以获取到该视频内容的帧画面,该帧画面为原始帧画面。帧画面为视频内容播放过程中,播放展示的每一张画面。视频内容播放时,通常以预设时间内多少张帧画面的帧率播放视频。
获取视频内容的原始帧画面,可以是在获取到视频内容的相关信息的情况下,即获得原始帧画面。例如,获得视频内容的地址信息、或者获得视频内容的视频标签信息的情况下,获得原始帧画面。
S220,将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面。
本申请实施例的视频播放方法,用于网页端播放视频。网页端采用WebGL的应用接口可以获取到视频内容。在获取到视频内容或者视频信息的情况下,创建画布。可以是在响应到播放请求的情况下,创建画布。也可以是在响应到获得视频信息或者视频内容的情况下创建画布。
响应于画布创建完成,即可将原始帧画面按照预设分辨率渲染在画布上。可以在创建画布的时候,创建分辨率较大的画布,如比预设分辨率大,再将该原始帧画面按照预设分辨率渲染在该画布上,以获得分辨率增强的目标帧画面。也可以是先创建预设分辨率相匹配的画布,再将原始帧画面按照预设分辨率渲染在画布上获得分辨率增强的目标帧画面。
S230,给目标帧画面添加画布标签。
添加画布标签,为采用WebGL中的接口,为目标帧画面添加画布标签。可以是为画布添加画布标签,从而播放画布标签的内容的情况下,可以播放画布上的目标帧画面。也可以是将目标帧画面存储至一个目标地址中,为目标地址的视频内容添加画布标签。
S240,基于画布标签,播放目标帧画面。
通过调用画布标签,可以展示画布标签表示的内容,从而播放目标帧画面。通过播放目标帧画面,以实现播放高分辨率视频的效果。
本申请实施例采用上述技术方案,通过网页端获取视频内容后,采用WebGL的Canvas画布增强帧画面的分辨率并播放视频内容,从而可以以较低的码率获取视频内容,实现高分辨率的视频播放效果。
其中,码率也叫比特率,是指每秒传送的比特数。比特率越高,传送数据速度越快。例如视频内容中的码率指由模拟信号转换为数字信号后,单位时间内的二进制数据量,也即单位时间内连续播放的媒体的数量,体现视频播放的清晰度,也是间接衡量视频播放质量的一个指标。分辨率则是单位英寸中所包含的像素点数。分辨率固定时,码率越高视频越清晰。码率越低,获得的视频内容的原始帧画面的分辨越低。
本申请实施例中,网页端获取的视频内容,可以为低分辨率的视频,从而以较低的码率承载获得视频内容,以减少宽带占用。同时通过WebGL,将原始帧画面增强,并播放增强分辨率的目标帧画面,使得用户在低码率情况下,能够观看高分辨率的视频。
在一种实施方式中,步骤S210包括:
S211,响应于播放请求获取视频内容的视频标签。
播放请求,可以是用户通过浏览网页时,通过点击查看或者快捷键等方式,请求需要观看的视频内容。网页端在响应于该播放请求的情况下,可以获得该视频内容的视频标签(video标签)。网页端通常基于该视频标签,播放相应的视频内容。
本申请实施例,在获得视频标签的情况下,不是通过视频标签播放视频内容,而是通过目标帧画面对应的画布标签播放视频内容,以播放高分辨率的视频内容。
S212,基于视频标签获取视频内容的原始帧画面。
网页端在获取到视频标签的情况下,可以播放视频内容相应的多张帧画面。因而,在网页端获取到视频标签的情况下,可以获取到对应的视频内容的帧画面,即原始帧画面。以方便后续对原始帧画面进行处理。
在一种实施方式中,步骤S240,包括:隐藏视频标签。
网页端在获取到视频标签的情况下,即会播放视频内容关联的多张原始帧画面,从而播放视频内容。但是,本申请实施例中,不再通过视频标签播放视频内容,而是通过画布标签播放分辨率增强的目标帧画面。因此,通过隐藏视频标签的方式,避开原始帧画面的播放。
在隐藏视频标签的情况下,选择画布标签,并基于画布标签播放画布标签标识的目标帧画面。
通过选择画布标签的方式,可以播放画布标签标识的目标帧画面,从而用户展示界面上展示的为高分辨率目标帧画面的视频内容,以使得用户观看到高分辨率视频的效果。
本申请实施例,通过隐藏原有的视频标签,选择画布标签的方式,避开原有视频内容的播放,以使得网页端播放画布标签表示的高分辨率目标帧画面。
在一种实施方式中,步骤S220,还包括:
获取视频内容的帧率。
帧率为视频内容播放时,播放帧画面的速度。例如,帧率为24fps,表示每秒播放24帧帧画面。
本申请实施例中,通过获取视频内容的帧率,可以使得在播放目标帧画面的情况下,以相同的帧率播放目标帧画面,从而用户在观看高分辨率的视频时,看到的是与原视频内容相同帧率的视觉效果。
另一方面,通过获取视频内容的帧率,还可以用于确定将原始帧画面渲染在画布上,获得分辨率增强的目标帧画面的渲染速度。以使得,在一边渲染一边播放目标帧画面的情况下,渲染速度能够满足播放速度。
按照帧率相应的速度将原始帧画面按照预设分辨率渲染在画布上。
本申请实施例中,将原始帧画面按照预设分辨率渲染在画布上,并播放目标帧画面的过程是实时进行的。也即,网页端在获得请求播放的视频内容的情况下,即渲染帧画面,渲染的同时播放渲染完成的目标帧画面。因此,渲染目标帧画面的速度需要大于或者等于播放速度或者帧率。
播放速度为用户观看视频内容时请求的播放速度。通常情况下,播放速度与帧率相对应。但是,随着多媒体技术的发展,用户可以对播放速度实施自主控制,例如,1.5倍速度播放、0.75倍播放速度或者快进快退等。
在一个示例中,可以实时获取播放速度,根据播放速度确定渲染速度。例如为1.5倍速度播放的情况下,将渲染速度提高到大于或者等于1.5倍原始帧率的速度。
本申请实施例中,获得视频内容的原始帧画面,可以是获得该视频内容的所有原始帧画面,也可以是获得该原始帧画面的第一帧,或者第1到第N帧。其中,N可以与视频播放内容的帧率或者播放速度相关。
在获取的帧画面为视频内容的第1至第N帧初始画面的情况下,首先将该第1至第N帧画面逐张渲染在画布上,在渲染完成后,再获取第N至第2N张帧画面,依次渲染于画布上,实现视频内容帧画面的实时增强分辨率。
在一种实施方式中,如图3所示,步骤S220,包括:
S221,创建预设分辨率的画布。
预设分辨率根据需要增强的分辨率大小决定。可以是增强的分辨率越大,创建的画布的分辨率越大。
S222,获取原始帧画面的纹理。
原始帧画面的纹理,可以包括体现画面内容的元素,如像素,体现画面元素具有缓慢变化或者周期性变化的表面结构组织排列属性。基于GPU可以获得帧画面的纹理。
S223,调用着色器对原始帧画面的纹理按照预设分辨率进行处理,将处理后的纹理渲染在画布上。。
本申请实施例中,采用着色器将原始帧画面的纹理渲染在的画布上,在渲染的过程中,可以按照预设的分辨率对原始帧画面的纹理进行处理,以渲染获得分辨率增强的目标帧画面。着色器可以采用例如GLSL着色器、Shader着色器、增强游戏画面的AMD FSR(FidelityFX Super Resolution,超级分辨率锐画技术)着色器或者增强动画效果的Anime4K(动画)着色器等。其中,Shader是一段代码片段用于描述怎么处理像素数据的,即根据输入像素,计算获得预设输出像素的内容并输出。例如输入的为9个像素,然后根据输入的像素计算18个像素的图片输出,从而实现两倍分辨率的增强。
如图4所示,本申请实施例,网页端基于用户的播放情况获取播放请求对应的视频内容及对应的视频标签,基于视频标签,获取视频内容的原始帧画面,并获取原始帧画面的纹理;通过创建画布,并采用着色器对原始帧画面的纹理进行处理增强分辨率,得到目标帧画面的纹理。获得的目标帧画面为分辨率增强后的帧画面。通过对目标帧画面添加画布标签,从而可以通过隐藏视频标签,播放画布标签标识的目标帧画面,实现高分辨率播放视频内容的效果。
在一种实施方式中,步骤S222,包括:获取原始帧画面的初始分辨率;按照初始分辨率的预设倍数,创建画布。
例如,原始帧画面的分辨率为1920x1080,按照两倍的分辨率增强,即创建分辨率3840x2160的画布,从而获得分辨率增强的目标帧画面为3840x2160分辨率。
通过按照初始分辨率的预设倍数,创建画布。可以依据获得的视频内容的原始帧画面的分辨率,确定目标帧画面的分辨率。
在一种实施方式中,步骤S222,包括:设定目标帧画面的预设分辨率值;按照预设分辨率值,创建画布。
例如,预设分辨率为3840x2160,则不管原始帧画面的分辨率为多少,均创建3840x2160分辨率大小的画布,获得分辨率为3840x2160的目标帧画面。
其中,预设分辨率可以为固定值,也可以为条件值。例如,条件值可以为原始帧画面的初始分辨率在第一范围的情况下,确定创建画布的分辨率值为3840x2160;原始帧画面的初始分辨率在第二范围的情况下,确定创建画布的分辨率值为1920x1080。条件值也可以为根据其他相关信息的参数,设定相应的预设分辨率。
在一种实施方式中,步骤S222,包括:
获取终端设备的显卡信息,根据显卡信息确定渲染目标帧画面的预设分辨率值;按照预设分辨率值,创建画布。
终端设备可以包括手机、平板、电脑或者电视机等。其画面尺寸相差较大。而分辨率是和图像有关的参数,指的是视频的画面尺寸。分辨率是屏幕图像的精密度,是指显示器所能显示的像素有多少。分辨率一定的情况下,显示屏越小图像越清晰,反之,显示屏大小固定时,分辨率越高图像越清晰。
本申请实施例,通过获取终端设备的显卡信息,根据显卡信息确定渲染目标帧画面的预设分辨率值。从而实现,根据画面尺寸调整视频播放效果。以使得,在画面尺寸较大的终端设备,能够看到更清晰的画面效果,进一步提高用户浏览体验。
实施例二
图5示出根据本申请一实施例的视频播放装置的结构框图。如图5所示,该装置500可以包括:
原始帧画面获取模块510,用于获取视频内容的原始帧画面;
渲染模块520,用于将原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;
标签添加模块530,用于给目标帧画面添加画布标签;
播放模块540,用于基于画布标签,播放目标帧画面。
在一种实施方式中,原始帧画面获取模块510包括:
视频标签获取子模块,用于响应于播放请求获取视频内容的视频标签;
原始帧画面获取子模块,用于基于视频标签获取视频内容的原始帧画面。
在一种实施方式中,播放模块540用于;
隐藏视频标签;
选择画布标签,并基于画布标签播放画布标签标识的目标帧画面。
在一种实施方式中,渲染模块520,还包括:
帧率获取子模块,用于获取视频内容的帧率;
渲染子模块还用于按照帧率相应的速度将原始帧画面渲染在画布上。
在一种实施方式中,渲染模块520包括:
画布创建子模块,用于创建预设分辨率的画布;
纹理获取子模块,用于获取原始帧画面的纹理;
渲染子模块,用于调用着色器对原始帧画面的纹理按照预设分辨率进行处理,将处理后的纹理渲染在画布上。在一种实施方式中,画布创建子模块用于:
获取原始帧画面的初始分辨率;
按照初始分辨率的预设倍数,创建画布。
在一种实施方式中,画布创建子模块还用于:
设定目标帧画面的预设分辨率值;
按照预设分辨率值,创建画布。
在一种实施方式中,画布创建子模块还用于:
获取终端设备的显卡信息,根据显卡信息确定目标帧画面的预设分辨率值;
按照预设分辨率值,创建画布。
本申请实施例视频播放装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
实施例三
图6示意性示出了根据本申请实施例一的适于实现视频播放方法的计算机设备600的硬件架构示意图。本实施例中,计算机设备600是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图6所示,计算机设备600至少包括但不限于:可通过系统总线相互通信链接存储器610、处理器620、网络接口630。其中:
存储器610至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器610可以是计算机设备600的内部存储模块,例如该计算机设备600的硬盘或内存。在另一些实施例中,存储器610也可以是计算机设备600的外部存储设备,例如该计算机设备600上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器610还可以既包括计算机设备600的内部存储模块也包括其外部存储设备。本实施例中,存储器610通常用于存储安装于计算机设备600的操作系统和各类应用软件,例如视频播放方法的程序代码等。此外,存储器610还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器620在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器620通常用于控制计算机设备600的总体操作,例如执行与计算机设备600进行数据交互或者通信相关的控制和处理等。本实施例中,处理器620用于运行存储器610中存储的程序代码或者处理数据。
网络接口630可包括无线网络接口或有线网络接口,该网络接口630通常用于在计算机设备600与其他计算机设备之间建立通信链接。例如,网络接口630用于通过网络将计算机设备600与外部终端相连,在计算机设备600与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,简称为GSM)、宽带码分多址(Wideband CodeDivision Multiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图6仅示出了具有部件610-630的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器610中的视频播放方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器620)所执行,以完成本申请实施例。
实施例四
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的视频播放方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中视频播放方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个(两个或两个以上)用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (11)

1.一种视频播放方法,其特征在于,包括:
获取视频内容的原始帧画面;
将所述原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;
给所述目标帧画面添加画布标签;
基于所述画布标签,播放所述目标帧画面。
2.根据权利要求1所述的方法,其特征在于,所述获取视频内容的原始帧画面包括:
响应于播放请求,获取视频内容的视频标签;
基于所述视频标签获取所述视频内容的原始帧画面。
3.根据权利要求2所述的方法,其特征在于,所述基于所述画布标签,播放所述目标帧画面,包括;
隐藏所述视频标签;
选择所述画布标签,并基于所述画布标签播放所述画布标签标识的目标帧画面。
4.根据权利要求1所述的方法,其特征在于,所述将所述原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面,包括:
获取所述视频内容的帧率;
按照所述帧率相应的速度将所述原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面。
5.根据权利要求1所述的方法,其特征在于,所述将所述原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面,包括:
创建预设分辨率的画布;
获取所述原始帧画面的纹理;调用着色器对所述原始帧画面的纹理按照所述预设分辨率进行处理,将处理后的纹理渲染在所述画布上。
6.根据权利要求5所述的方法,其特征在于,所述创建预设分辨率的画布,包括:
获取所述原始帧画面的初始分辨率;
按照所述初始分辨率的预设倍数,创建画布。
7.根据权利要求5所述的方法,其特征在于,所述创建预设分辨率的画布,包括:
设定所述目标帧画面的预设分辨率值;
按照所述预设分辨率值,创建画布。
8.根据权利要求5所述的方法,其特征在于,所述创建预设分辨率的画布,包括:
获取终端设备的显卡信息,根据所述显卡信息确定所述目标帧画面的预设分辨率值;
按照所述预设分辨率值,创建画布。
9.一种视频播放装置,其特征在于,包括:
原始帧画面获取模块,用于获取视频内容的原始帧画面;
渲染模块,用于将所述原始帧画面按照预设分辨率渲染在画布上,获得分辨率增强的目标帧画面;
标签添加模块,用于给所述目标帧画面添加画布标签;
播放模块,用于基于所述画布标签,播放所述目标帧画面。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
11.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-8中任一项所述的方法。
CN202211532449.3A 2022-12-01 2022-12-01 视频播放方法、装置、电子设备和可读存储介质 Pending CN116017058A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211532449.3A CN116017058A (zh) 2022-12-01 2022-12-01 视频播放方法、装置、电子设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211532449.3A CN116017058A (zh) 2022-12-01 2022-12-01 视频播放方法、装置、电子设备和可读存储介质

Publications (1)

Publication Number Publication Date
CN116017058A true CN116017058A (zh) 2023-04-25

Family

ID=86036230

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211532449.3A Pending CN116017058A (zh) 2022-12-01 2022-12-01 视频播放方法、装置、电子设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN116017058A (zh)

Similar Documents

Publication Publication Date Title
US9710884B2 (en) Flexible control in resizing of visual displays
US7439982B2 (en) Optimized scene graph change-based mixed media rendering
US9240070B2 (en) Methods and systems for viewing dynamic high-resolution 3D imagery over a network
US20150088977A1 (en) Web-based media content management
US20230367953A1 (en) Display rendering method and system
CN109949395A (zh) 热力图渲染方法及装置
US20150117515A1 (en) Layered Encoding Using Spatial and Temporal Analysis
CN111951356B (zh) 基于json数据格式的动画渲染方法
EP3563352B1 (en) Indexed value blending for use in image rendering
CN114245228A (zh) 页面链接投放方法、装置及电子设备
KR20150106846A (ko) 표시 장치에서의 그래픽 렌더링 및 그와 관련된 개선
CN107707965A (zh) 一种弹幕的生成方法和装置
CN111506241A (zh) 直播间的特效显示方法、装置、电子设备及计算机介质
CN115391692A (zh) 视频处理方法和装置
CN116017058A (zh) 视频播放方法、装置、电子设备和可读存储介质
Kim et al. Direct canvas: Optimized WebGL rendering model
CN113663328B (zh) 画面录制方法、装置、计算机设备及存储介质
CN112738605B (zh) 一种基于html5的iptv播放器渲染方法
CN113676765B (zh) 交互动画展示方法及装置
CN113676753B (zh) Vr场景中展示视频的方法、装置、电子设备和存储介质
CN116055540B (zh) 虚拟内容的显示系统、方法、设备及计算机可读介质
CN117793441A (zh) 视频画质增强方法、装置、计算机设备及存储介质
CN112995711A (zh) 一种web前端视频的分帧与图片处理合成方法及系统
CN117708454A (zh) 网页内容处理方法、装置、设备、存储介质及程序产品
CN116957967A (zh) 3d界面色差解决方法、系统、设备及介质

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