CN114827721A - 视频特效处理方法、装置、存储介质及电子设备 - Google Patents
视频特效处理方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN114827721A CN114827721A CN202210312474.4A CN202210312474A CN114827721A CN 114827721 A CN114827721 A CN 114827721A CN 202210312474 A CN202210312474 A CN 202210312474A CN 114827721 A CN114827721 A CN 114827721A
- Authority
- CN
- China
- Prior art keywords
- image data
- image
- rendering
- processed
- thread
- 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
- 230000000694 effects Effects 0.000 title claims abstract description 61
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 238000009877 rendering Methods 0.000 claims abstract description 99
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000005516 engineering process Methods 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000003068 static effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000000903 blocking effect Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/44012—Processing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47205—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本公开涉及一种视频特效处理方法、装置、存储介质及电子设备,方法包括:拉取待处理图像;对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;根据所述待处理图像的应用场景,确定目标渲染模式;根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放,如此,通过子线程实现对图像数据进行渲染,避免了渲染时长长导致其他线程阻塞,解决了硬件性能差的移动端渲染特效视频导致视频卡顿的问题。
Description
技术领域
本公开涉及视频技术领域,尤其涉及一种视频特效处理方法、装置、存储介质及电子设备。
背景技术
在相关技术中,随着短视频技术的发展,视频内容越来越丰富,为提高视频的吸引力,大多采用为视频进行特效处理的方式。而特效处理中涉及的Canvas逻辑与渲染都在主线程内执行,耗时的渲染任务可能阻塞主线程,进而导致动画卡顿的问题,动画产生的卡顿可能会影响用户体验,特别是针对硬件性能有限制的移动终端而言,导致某些视频特效在移动终端的浏览器/小程序里运行非常吃力。
发明内容
为克服相关技术中存在的问题,本公开提供一种视频特效处理方法、装置、存储介质及电子设备。
根据本公开实施例的第一方面,提供一种视频特效处理方法,应用于移动终端,包括:
拉取待处理图像;
对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;
根据所述待处理图像的应用场景,确定目标渲染模式;
根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放。
可选的,所述应用场景包括静态应用场景,所述目标渲染模式包括传输渲染模式,所述根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放,包括:
创建第一子线程,并在所述第一子线程中创建第一OffscreenCanvas对象,并将第一渲染命令传输至所述第一子线程,所述第一渲染命令中携带有所述特效参数和所述图像数据;
通过所述第一子线程根据所述特效参数和所述图像数据对所述第一OffscreenCanvas对象进行渲染,得到图像位图对象,并将所述图像位图对象传输至主线程中;
通过所述主线程将所述图像位图对象渲染至所述图像数据对应的文档树中的Canvas元素,以使浏览器加载渲染后的Canvas元素以对所述目标图像数据进行播放。
可选的,所述应用场景包括动态应用场景,所述目标渲染模式包括非传输渲染模式,所述根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放,包括:
在所述图像数据对应的文档树中的Canvas元素中创建第二OffscreenCanvas对象;
创建第二子线程,并将第二渲染命令传输至所述第二子线程,所述第二渲染命令中携带有所述特效参数、所述图像数据和所述第二OffscreenCanvas对象;
通过所述第三子线程根据所述特效参数和所述图像数据对所述第二OffscreenCanvas对象进行渲染,以更新所述Canvas元素,以使所述浏览器加载更新后的Canvas元素以对所述目标图像数据进行播放。
可选的,所述对所述待处理图像进行编译,得到预设格式的图像数据,包括:
采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
可选的,所述采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据,包括:
创建第三子线程;
通过所述第三子线程采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
可选的,所述待处理图像为视频中的图像,在得到渲染后的目标图像数据之后,所述方法还包括:
获取所述待处理图像对应的音频和所述待处理图像的时间戳;
根据所述待处理图像的时间戳,同步播放渲染后的目标图像数据和与该目标图像数据对应的音频。
可选的,所述视频的格式包括ffmpeg格式、OpenH264格式、TinyH264或de265格式。
根据本公开实施例的第二方面,提供一种视频特效处理装置,包括:
拉取模块,用于拉取待处理图像;
编译模块,用于对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;
确定模块,用于根据所述待处理图像的应用场景,确定目标渲染模式;
渲染模块,用于根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放。
根据本公开实施例的第三方面,提供一种电子设备,包括:
存储装置,其上存储有计算机程序;
处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面所提供的视频特效处理方法的步骤。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开第一方面所提供的视频特效处理的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
拉取待处理图像;对待处理图像进行编译,得到为浏览器所支持的格式的图像数据;根据待处理图像的应用场景,确定目标渲染模式;根据预设的特效参数,采用目标渲染模式并调用子线程对图像数据进行渲染,得到渲染后的目标图像数据,以使浏览器加载渲染后的目标图像数据进行播放。如此,通过子线程实现对图像数据进行渲染,避免了渲染时长长导致其他线程阻塞,解决了硬件性能差的移动端渲染特效视频导致视频卡顿的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种视频特效处理方法的流程图。
图2是根据一示例性实施例示出的一种视频特效处理装置的框图。
图3是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
图1是根据一示例性实施例示出的一种视频特效处理方法的流程图,如图1所示,该视频特效处理方法用于终端中,包括以下步骤。
在步骤S101中,拉取待处理图像。
示例地,待处理图像可以是教学直播视频中的图像。示例地,教学直播视频的格式可以是ffmpeg格式、OpenH264格式、TinyH264或de265格式。
示例地,可以采用WebSocket或API接口或者Fetch API接口拉取待处理图像。
在步骤S102中,对待处理图像进行编译,得到预设格式的图像数据,其中,预设格式为浏览器所支持的格式。
在一些实施例中,可以通过以下方式对待处理图像进行编译:采用webassembly技术对待处理图像进行编译,得到预设格式的图像数据。其中,webassembly技术是一种可以将数据处理成JavaScript这一编程语言可以调用的二进制字节码的编译技术,以解除浏览器对视频格式的限制。
在一些实施例中,采用webassembly技术对待处理图像进行编译,得到预设格式的图像数据可以通过以下方式实现:创建第三子线程;通过第三子线程采用webassembly技术对待处理图像进行编译,得到预设格式的图像数据。
这样,通过子线程来对待处理图像进行编译,进一步降低了主线程的阻塞。
在步骤S103中,根据待处理图像的应用场景,确定目标渲染模式。
在一些实施例中,可以通过待处理图像中视频画面确定应用场景。示例地,应用场景可以是静态应用场景,例如地图应用场景、图形可视化应用应用场景等,此种场景下,待处理图像为静态图像;应用场景也可以是动态应用场景,例如,H5游戏应用场景,此种场景下,待处理图像为视频图像。应当说明的是,在不同应用场景下,通过不同调用子线程的渲染模式来对图像数据进行特效处理,具体过程可以参照步骤S104的相关说明。
在步骤S104中,根据预设的特效参数,采用目标渲染模式并调用子线程对图像数据进行渲染,得到渲染后的目标图像数据,以使浏览器加载渲染后的目标图像数据进行播放。
这样,通过子线程实现对图像数据进行渲染,避免了渲染时长长导致其他线程阻塞,解决了硬件性能差的移动端渲染特效视频导致视频卡顿的问题。
其中,特效参数可以是增加毛刺特效的参数,也可以是将画面进行拆分特效的参数,也可以是其他效果的特效参数,本实施例在此不作限定。
在一些实施例中,应用场景可以是静态应用场景,对应的,目标渲染模式可以是传输渲染模式,在此情况下,图1所示的步骤S104可以通过以下方式实现:
创建第一子线程,并在第一子线程中创建第一OffscreenCanvas对象,并将第一渲染命令传输至第一子线程,第一渲染命令中携带有特效参数和图像数据;通过第一子线程根据特效参数和图像数据对第一OffscreenCanvas对象进行渲染,得到图像位图对象,并将图像位图对象传输至主线程中;通过主线程将图像位图对象渲染至图像数据对应的文档树中的Canvas元素,以使浏览器加载渲染后的Canvas元素以对目标图像数据进行播放。
需要说明的是,OffscreenCanvas和Canvas都是渲染图像所使用的对象。两者不同的是Canvas只能在window环境下使用,而OffscreenCanvas既可以在window环境下使用,也可以在子线程中使用,这样,便可通过创建的OffscreenCanvas在子线程中对图像数据进行特效的渲染处理,避免长时间渲染导致其他线程阻塞,例如UI线程。其中,第一子线程可以通过主线程创建。
其中,文档树是用来描述文档目录结构的工具,浏览器显示的网页均可以整合成一个文档树,该文档树中包含组成网页的各个元素,例如Canvas元素。通过将图像位图对象渲染至图像数据对应的文档树中的Canvas元素,可以实现Canvas元素的更新,浏览器即可加载更新后Canvas元素,将新加在待处理图像中的特效进行播放显示。
由于传输渲染模式是直接将图像位图对象传输至主线程中,不需要对图像位图对象进行拷贝,如此性能更高,对于静态应用场景而言,其需要的仅仅是简单的图像展现,因此,可以考虑使用性能更高的传输渲染模式,提供一种高效的后台渲染,前台展现的方式对目标图像数据进行展现的方式。
在一些实施例中,应用场景可以是动态应用场景,对应的,目标渲染模式可以是非传输渲染模式,在此情况下,图1所示的步骤S104可以通过以下方式实现:
在图像数据对应的文档树中的Canvas元素中创建第二OffscreenCanvas对象;创建第二子线程,并将第二渲染命令传输至第二子线程,第二渲染命令中携带有特效参数、图像数据和第二OffscreenCanvas对象;通过第三子线程根据特效参数和图像数据对第二OffscreenCanvas对象进行渲染,以更新Canvas元素,以使浏览器加载更新后的Canvas元素以对目标图像数据进行播放。
与第一子线程类似地,第二子线程也可以通过主线程创建。
在本实施例中,与第一OffscreenCanvas对象不同的,第二OffscreenCanvas对象是在Canvas元素中创建的,因此,直接对第二OffscreenCanvas对象等同于直接更新Canvas元素,进而无需传输图像位图对象到Canvas元素,提供一种最短的渲染路径,如此,便可提高整体渲染效率,这符合浏览器需要显示动态应用场景的图像的性能需求。
在一些实施例中,待处理图像为视频中的图像,在得到渲染后的目标图像数据之后,方法还包括:获取待处理图像对应的音频和待处理图像的时间戳;根据待处理图像的时间戳,同步播放渲染后的图像数据和与该图像数据对应的音频。
在获取的待处理图像为视频中的图像时,需要同步播放图像与音频,因此,可以获取获取待处理图像对应的音频和待处理图像的时间戳,以此实现图像与音频的同步播放。
图2是根据一示例性实施例示出的一种视频特效处理装置框图。参照图2,该装置包括拉取模块201,编译模块202、确定模块203和渲染模块204。
拉取模块201,用于拉取待处理图像;
编译模块202,用于对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;
确定模块203,用于根据所述待处理图像的应用场景,确定目标渲染模式;
渲染模块204,用于根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放。
可选的,所述应用场景包括静态应用场景,所述目标渲染模式包括传输渲染模式,所述渲染模块204包括:
第一创建子模块,用于创建第一子线程,并在所述第一子线程中创建第一OffscreenCanvas对象,并将第一渲染命令传输至所述第一子线程,所述第一渲染命令中携带有所述特效参数和所述图像数据;
第一渲染子模块,用于通过所述第一子线程根据所述特效参数和所述图像数据对所述第一OffscreenCanvas对象进行渲染,得到图像位图对象,并将所述图像位图对象传输至主线程中;
第二渲染子模块,用于通过所述主线程将所述图像位图对象渲染至所述图像数据对应的文档树中的Canvas元素,以使浏览器加载渲染后的Canvas元素以对所述目标图像数据进行播放。
可选的,所述应用场景包括动态应用场景,所述目标渲染模式包括非传输渲染模式,所述根据预设的特效参数,所述渲染模块204包括:
第二创建子模块,用于在所述图像数据对应的文档树中的Canvas元素中创建第二OffscreenCanvas对象;
创建第二子线程,并将第二渲染命令传输至所述第二子线程,所述第二渲染命令中携带有所述特效参数、所述图像数据和所述第二OffscreenCanvas对象;
第三渲染子模块,用于通过所述第三子线程根据所述特效参数和所述图像数据对所述第二OffscreenCanvas对象进行渲染,以更新所述Canvas元素,以使所述浏览器加载更新后的Canvas元素以对所述目标图像数据进行播放。
可选的,所述编译模块202具体用于采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
可选的,所述编译模块202包括:
第三创建子模块,用于创建第三子线程;
编译子模块,用于通过所述第三子线程采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
可选的,所述待处理图像为视频中的图像,在得到渲染后的目标图像数据之后,所述装置200还包括:
获取模块,用于获取所述待处理图像对应的音频和所述待处理图像的时间戳;
同步模块,用于根据所述待处理图像的时间戳,同步播放渲染后的图像数据和与该图像数据对应的音频。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开提供的视频特效处理方法的步骤。
图3是根据一示例性实施例示出的一种电子设备300的框图。例如,电子设备300可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图3,电子设备300可以包括以下一个或多个组件:处理组件302,存储器304,电力组件306,多媒体组件308,音频组件310,输入/输出(I/O)的接口312,传感器组件314,以及通信组件316。
处理组件302通常控制电子设备300的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件302可以包括一个或多个处理器320来执行指令,以完成上述的视频特效处理方法的全部或部分步骤。此外,处理组件302可以包括一个或多个模块,便于处理组件302和其他组件之间的交互。例如,处理组件302可以包括多媒体模块,以方便多媒体组件308和处理组件302之间的交互。
存储器304被配置为存储各种类型的数据以支持在电子设备300的操作。这些数据的示例包括用于在电子设备300上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器304可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件306为电子设备300的各种组件提供电力。电力组件306可以包括电源管理***,一个或多个电源,及其他与为电子设备300生成、管理和分配电力相关联的组件。
多媒体组件308包括在所述电子设备300和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件308包括一个前置摄像头和/或后置摄像头。当电子设备300处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件310被配置为输出和/或输入音频信号。例如,音频组件310包括一个麦克风(MIC),当电子设备300处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器304或经由通信组件316发送。在一些实施例中,音频组件310还包括一个扬声器,用于输出音频信号。
I/O接口312为处理组件302和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件314包括一个或多个传感器,用于为电子设备300提供各个方面的状态评估。例如,传感器组件314可以检测到电子设备300的打开/关闭状态,组件的相对定位,例如所述组件为电子设备300的显示器和小键盘,传感器组件314还可以检测电子设备300或电子设备300一个组件的位置改变,用户与电子设备300接触的存在或不存在,电子设备300方位或加速/减速和电子设备300的温度变化。传感器组件314可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件314还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件314还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件316被配置为便于电子设备300和其他设备之间有线或无线方式的通信。电子设备300可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件316经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件316还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述视频特效处理方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器304,上述指令可由电子设备300的处理器320执行以完成上述视频特效处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践本公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种视频特效处理方法,其特征在于,应用于移动终端,包括:
拉取待处理图像;
对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;
根据所述待处理图像的应用场景,确定目标渲染模式;
根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放。
2.根据权利要求1所述的方法,所述应用场景包括静态应用场景,所述目标渲染模式包括传输渲染模式,所述根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放,包括:
创建第一子线程,并在所述第一子线程中创建第一OffscreenCanvas对象,并将第一渲染命令传输至所述第一子线程,所述第一渲染命令中携带有所述特效参数和所述图像数据;
通过所述第一子线程根据所述特效参数和所述图像数据对所述第一OffscreenCanvas对象进行渲染,得到图像位图对象,并将所述图像位图对象传输至主线程中;
通过所述主线程将所述图像位图对象渲染至所述图像数据对应的文档树中的Canvas元素,以使浏览器加载渲染后的Canvas元素以对所述目标图像数据进行播放。
3.根据权利要求1所述的方法,所述应用场景包括动态应用场景,所述目标渲染模式包括非传输渲染模式,所述根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放,包括:
在所述图像数据对应的文档树中的Canvas元素中创建第二OffscreenCanvas对象;
创建第二子线程,并将第二渲染命令传输至所述第二子线程,所述第二渲染命令中携带有所述特效参数、所述图像数据和所述第二OffscreenCanvas对象;
通过所述第三子线程根据所述特效参数和所述图像数据对所述第二OffscreenCanvas对象进行渲染,以更新所述Canvas元素,以使所述浏览器加载更新后的Canvas元素以对所述目标图像数据进行播放。
4.根据权利要求1所述的方法,所述对所述待处理图像进行编译,得到预设格式的图像数据,包括:
采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
5.根据权利要求4所述的方法,所述采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据,包括:
创建第三子线程;
通过所述第三子线程采用webassembly技术对所述待处理图像进行编译,得到预设格式的图像数据。
6.根据权利要求1-5任一所述的方法,所述待处理图像为视频中的图像,在得到渲染后的目标图像数据之后,所述方法还包括:
获取所述待处理图像对应的音频和所述待处理图像的时间戳;
根据所述待处理图像的时间戳,同步播放渲染后的图像数据和与该图像数据对应的音频。
7.根据权利要求6所述的方法,所述视频的格式包括ffmpeg格式、OpenH264格式、TinyH264或de265格式。
8.一种视频特效处理装置,其特征在于,包括:
拉取模块,用于拉取待处理图像;
编译模块,用于对所述待处理图像进行编译,得到预设格式的图像数据,其中,所述预设格式为浏览器所支持的格式;
确定模块,用于根据所述待处理图像的应用场景,确定目标渲染模式;
渲染模块,用于根据预设的特效参数,采用所述目标渲染模式并调用子线程对所述图像数据进行渲染,得到渲染后的目标图像数据,以使所述浏览器加载渲染后的目标图像数据进行播放。
9.一种电子设备,其特征在于,包括:
存储装置,其上存储有计算机程序;
处理装置,用于执行所述存储装置中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该程序指令被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210312474.4A CN114827721A (zh) | 2022-03-28 | 2022-03-28 | 视频特效处理方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210312474.4A CN114827721A (zh) | 2022-03-28 | 2022-03-28 | 视频特效处理方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114827721A true CN114827721A (zh) | 2022-07-29 |
Family
ID=82530199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210312474.4A Pending CN114827721A (zh) | 2022-03-28 | 2022-03-28 | 视频特效处理方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114827721A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115474074A (zh) * | 2022-08-29 | 2022-12-13 | 咪咕文化科技有限公司 | 一种视频背景替换方法、装置、计算设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110198479A (zh) * | 2019-05-24 | 2019-09-03 | 浪潮软件集团有限公司 | 一种基于webassembly的浏览器音视频解码播放方法 |
CN111641838A (zh) * | 2020-05-13 | 2020-09-08 | 深圳市商汤科技有限公司 | 一种浏览器视频播放方法、装置以及计算机存储介质 |
-
2022
- 2022-03-28 CN CN202210312474.4A patent/CN114827721A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110198479A (zh) * | 2019-05-24 | 2019-09-03 | 浪潮软件集团有限公司 | 一种基于webassembly的浏览器音视频解码播放方法 |
CN111641838A (zh) * | 2020-05-13 | 2020-09-08 | 深圳市商汤科技有限公司 | 一种浏览器视频播放方法、装置以及计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
易旭昕: "OffscreenCanvas概念说明及使用解析", pages 1 - 11, Retrieved from the Internet <URL:https://zhuanlan, zhihu.com/p/34698375/> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115474074A (zh) * | 2022-08-29 | 2022-12-13 | 咪咕文化科技有限公司 | 一种视频背景替换方法、装置、计算设备和存储介质 |
CN115474074B (zh) * | 2022-08-29 | 2024-05-07 | 咪咕文化科技有限公司 | 一种视频背景替换方法、装置、计算设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170304735A1 (en) | Method and Apparatus for Performing Live Broadcast on Game | |
CN110231901B (zh) | 应用界面显示方法及装置 | |
EP3147802B1 (en) | Method and apparatus for processing information | |
CN109451341B (zh) | 视频播放方法、视频播放装置、电子设备及存储介质 | |
CN105808305B (zh) | 静态资源的加载方法和装置 | |
CN111078170B (zh) | 显示控制方法、显示控制装置及计算机可读存储介质 | |
CN111866571B (zh) | 在智能电视上编辑内容的方法、装置及存储介质 | |
CN106775235B (zh) | 屏幕壁纸展示方法和装置 | |
CN110704059A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN109117144B (zh) | 页面处理方法、装置、终端及存储介质 | |
US20170308397A1 (en) | Method and apparatus for managing task of instant messaging application | |
CN107566878B (zh) | 直播中显示图片的方法及装置 | |
CN108829473B (zh) | 事件响应方法、装置及存储介质 | |
CN114827721A (zh) | 视频特效处理方法、装置、存储介质及电子设备 | |
CN112882784A (zh) | 一种应用界面显示方法、装置、智能设备及介质 | |
CN117119260A (zh) | 视频的控制处理方法及装置 | |
CN107967233B (zh) | 电子作品显示方法和装置 | |
CN107885464B (zh) | 数据存储方法、装置及计算机可读存储介质 | |
CN115963929A (zh) | Vr显示方法、装置及存储介质 | |
CN112866612B (zh) | 插帧方法、装置、终端及计算机可读存储介质 | |
CN111246012B (zh) | 应用界面显示方法、装置及存储介质 | |
CN114125528A (zh) | 一种视频特效处理方法、装置、电子设备及存储介质 | |
CN107423060B (zh) | 动画效果的呈现方法、装置及终端 | |
CN111538447A (zh) | 信息展示方法、装置、设备及存储介质 | |
CN106375744B (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 |