CN106534880A - 视频合成方法及装置 - Google Patents

视频合成方法及装置 Download PDF

Info

Publication number
CN106534880A
CN106534880A CN201611085102.3A CN201611085102A CN106534880A CN 106534880 A CN106534880 A CN 106534880A CN 201611085102 A CN201611085102 A CN 201611085102A CN 106534880 A CN106534880 A CN 106534880A
Authority
CN
China
Prior art keywords
texture
video frame
original video
window
drawing window
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
CN201611085102.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.)
Shenzhen TCL New Technology Co Ltd
Original Assignee
Shenzhen TCL New 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 Shenzhen TCL New Technology Co Ltd filed Critical Shenzhen TCL New Technology Co Ltd
Priority to CN201611085102.3A priority Critical patent/CN106534880A/zh
Priority to PCT/CN2016/112917 priority patent/WO2018094814A1/zh
Publication of CN106534880A publication Critical patent/CN106534880A/zh
Pending legal-status Critical Current

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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234318Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
    • 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/44004Processing 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 video buffer management, e.g. video decoder buffer or video display buffer
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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
    • H04N21/440218Processing 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 by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Image Generation (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Studio Circuits (AREA)

Abstract

本发明公开了一种视频合成方法,包括以下步骤:获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。本发明还公开了一种视频合成装置。本发明提供的技术方案解决了录制端与播放端因设备不同而不能播放合成视频或是装饰效果与录制视频不能同步播放的技术问题。

Description

视频合成方法及装置
技术领域
本发明涉及通讯技术领域,尤其涉及一种视频合成方法及装置。
背景技术
随着4G时代的到来,互联网领域已从文字时代、图片时代、短视频时代进入到了直播时代,移动视频直播已经成为当前互联网表现最抢眼的领域之一。为了增加视频的趣味性,美化视频效果,主播通常会在录制时增加一些美颜、趣味贴图或者动画等装饰效果,但通常存在录制端与播放端设备不同而不能播放合成视频或是装饰效果与录制视频不能同步播放的问题,导致用户体验较差。
发明内容
本发明的主要目的在于提供一种视频合成方法及装置,旨在解决录制端与播放端设备不同而不能播放合成视频或是装饰效果与录制视频不能同步播放的技术问题。
为实现上述目的,本发明提供的一种视频合成方法包括以下步骤:
获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
优选地,所述获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层的步骤包括:
创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
将原始视频帧纹理缓存于系统编码库生成的绘图层。
优选地,所述创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口的步骤包括:
创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
根据系统编码线程窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
优选地,所述将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频的步骤包括:
根据接收的输入指令,从本地系统中获取对应的效果数据;
基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
优选地,所述对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频的步骤包括:
将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
此外,为实现上述目的,本发明还提供一种视频合成装置,包括:
获取模块,用以获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
绘制模块,用以创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
编码模块,用以将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
优选地,所述获取模块包括:
获取单元,用以创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
转换单元,用以获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
缓存单元,用以将原始视频帧纹理缓存于系统编码库生成的绘图层。
优选地,所述绘制模块包括:
绘图窗口创建单元,用以创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
绘制单元,用以根据系统编码线程窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
优选地,所述编码模块包括:
效果图片获取单元,用以根据接收的输入指令,从本地系统中获取对应的效果数据;
效果纹理绘制单元,用以基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
编码单元,用以对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
优选地,所述编码单元包括:
混合单元,用以将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
输出单元,用以基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
本发明提供的技术方案中,获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层,再创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口,最后将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频,从而基于绘图层在视频发送端将效果数据合成至待发送视频中,合成视频为通用格式,使得不管接收端是何种类型设备,都能对接收的编码视频解码播放,也解决了现有技术中录制视频与增加的装饰效果数据单独发送而造成的不能同步播放的技术问题,提高了用户体验。
附图说明
图1为本发明视频合成方法第一实施例的流程示意图;
图2为本发明视频合成方法第二实施例中获取原始视频帧步骤的细化流程示意图;
图3为本发明视频合成方法第三实施例中创建绘图窗口步骤的细化流程示意图;
图4为本发明视频合成方法第四实施例中将原始视频帧纹理与效果数据编码步骤的细化流程示意图;
图5为本发明视频合成方法第五实施例中实现视频合成步骤的细化流程示意图;
图6为本发明视频合成装置第一实施例的功能模块示意图;
图7为本发明视频合成装置第二实施例中获取模块的细化功能模块示意图;
图8为本发明视频合成装置第三实施例中绘制模块的细化功能模块示意图;
图9为本发明视频合成装置第四实施例中编码模块的细化功能模块示意图;
图10为本发明视频合成装置第五实施例中编码单元的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种视频合成方法,参照图1,在一实施例中,该视频合成方法包括:
步骤S10,获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
可以理解地,视频录制端可以通过多种方式获取相机的原始视频帧;例如,当视频录制端为手机时,可以通过手机自带的相机获取原始视频帧,当视频录制端为电脑时,可以通过电脑外接摄像头来获取原始视频帧。本实施例中,视频录制端为自带有相机的视频录制端,且操作系统为Android系统。
具体地,通过Android系统打开视频录制端的相机,并设置相机参数,例如光圈值、曝光控制、感光度、对焦距离等参数的设置;打开摄像头预览,并创建相机预览窗口(GLSurface View),同时为相机预览窗口设置渲染器(Render),上述步骤均是基于Android系统中开放图形库(Open GL)实现。
所述相机预览窗口用以获取相机的原始视频帧,也就是说,相机每更新一帧数据,系统就会调用一次渲染器的on Draw Frame(GL10)方法为相机预览窗口绘制图像,根据获取的相机每一帧的原始视频帧数据生成开放图形库的原始视频帧纹理。
需要说明的是,纹理就是一个图像或照片,用于在基本图形的表面加入额外的细节。每个二位的纹理都有其自己的坐标空间,其范围是从一个拐角的(0,0)到另一个拐角的(1,1)。当需要把一个纹理应用于一个矩形的时候,因此需要为每个顶点指定一个纹理坐标,以便Open GL知道需要用那个纹理的哪个部分画到矩形上。Android系统中,将以原始的视频帧和贴图作为纹理,使用(0,0)、(1,0)、(0,1)、(1,1)作为四个顶点的纹理坐标,其效果就是将整个图像缩放后,完整地绘制在顶点坐标指定的矩形区域上。
具体地,所述渲染器基于获取的每一原始视屏帧创建表面纹理和对应的纹理编号,这样,在渲染器的on Draw Frame中就可以通过创建的表面纹理(Surface Texure)和纹理编号(Texureld)获取纹理数据和操作纹理了。也就是说,获取所述原始视频帧通过渲染器on Draw Frame转换为对应的原始视频帧纹理。并通过Android系统编码库(Mediacodec)生成一个绘图层(surface),用以缓存所述原始视频帧纹理,所述编码库将从该绘图层获取待编码的视频流。
步骤S20,创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
基于Android系统创建绘图窗口,用以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;可以理解地,需要建立绘图窗口与绘图层的对应关系。
具体地,为了使用绘图窗口绘图,通过系统函数egl Create Window Surface创建一个EGL Surface,该函数接收编码库生成的绘图层(surface)作为参数,这样就建立了绘图窗口和绘图层的对应关系。
进一步地,Android系统编码线程通过修改“current”来设置EGL Surface,为了使Open GL能够在创建的绘图窗口上绘图,还需要通过系统编码线程调用EGL Surface.makeCurrent方法完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程将绘图层的原始视频帧纹理绘制于绘图窗口。可以理解地,所述绘图参数可以为预设的顶点坐标、纹理坐标和顶点着色器、片段着色器等,根据Open GL的绘图流程,将所述原始视频帧纹理绘制在绘图窗口上。
需要说明的是,所述顶点坐标指的是归一化坐标,用于指定矩形的绘制区域。在Open GL里,需要渲染的一切物体都要映射到x轴和y轴上的[-1,1]的范围内,这个范围内的坐标被称为归一化设备坐标,其独立于屏幕实际的尺寸或形状。Android系统中Open GL占用整个显示屏,因此x轴、y轴的[-1,1]的范围分别映射为屏幕的像素宽和像素高。
可以理解地,图像在绘制之前,需要在Open GL的管道中传递,这就需要称为着色器的子例程,这些着色器会告诉GPU如何绘制数据,有顶点着色器和片段着色器,在绘制任何内容到屏幕之前,需要先定义顶点着色器和片段着色器。
具体地,首先读取原始视频帧的顶点数据,执行顶点着色器,进而可以控制每个顶点,实现渲染、确定顶点位置纹理坐标变换等指令;当顶点的全部属性都被确定后,将顶点组装成图元,然后光栅化图元,负责接收一个图元经过处理的电,并把它转换为片段,每个片段对应屏幕的一个像素;执行片段着色器,进行纹理查找,确定纹理坐标;而后将原始视频帧写入帧缓冲区,即绘图层(surface),最后显示在屏幕上。
步骤S30,将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
可以理解地,效果数据可以是美颜、滤镜、趣味贴图、动画效果等。所述效果数据可以是预存于系统中的数据,也可以是用户基于系统程序而产生的当前数据并缓存于系统内存中。
具体地,基于用户输入的控制指令获取系统内存中的效果数据,并与绘图窗口的原始视频帧纹理混合和编码,合成新的视频,并输出到网络推流模块,以供接收端解码播放。
本发明提供的技术方案中,通过获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层,再创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口,最后将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频,从而基于绘图层在视频发送端将效果数据合成至待发送视频中(即合成视频),合成视频为通用格式,使得不管接收端是何种类型设备,都能对接收的编码视频解码播放,也解决了现有技术中录制视频与增加的装饰效果数据单独发送而造成的不能同步播放的技术问题,提高了用户体验。
进一步地,请参照图2,基于上述实施例一,在本实施例中,上述步骤S10包括:
步骤S11,创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
步骤S12,获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
步骤S13,将原始视频帧纹理缓存于系统编码库生成的绘图层。
具体地,基于Android系统的开放图形库(Open GL),通过Android系统的Camera类,设置相机参数,打开摄像头预览,并创建相机预览窗口(GL Surface View),并为所述相机预览窗口设置渲染器。所述相机预览窗口的创建,能获取相机的原始视频帧。
进一步地,为了获取纹理数据,首先在渲染器中使用开放图形库(Open GL)基于原始视频帧创建表面纹理(Surface Texure)和对应的纹理编号(Texureld),然后通过Camera的set Preview Texture接口传入纹理;这样,通过渲染器的on Draw Frame方法,将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理,并缓存于系统编码库生成的绘图层。
在本实施例提供的技术方案中,进一步提出了通过创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理,并缓存于系统编码库生成的绘图层。借助Android系统中独立于窗口系统、独立于硬件的开放图形库来实现相机预览窗口的创建,在运行各种操作系统的各种计算机上都可以用,优化视频直播体验和效率。
进一步地,请参照图3,基于上述实施例二,在本实施例中,上述步骤S20包括:
步骤S21,创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
步骤S22,根据系统编码线程中的窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
本发明提供的技术方案中,为了完成录制视频和效果数据的合成,需要创建一个绘图窗口,以完成原始视频帧的绘制和效果数据的绘制。
具体地,为了使用绘图窗口绘图,需要创建一个EGL Context和一个EGL Surface;EGL Context就是当前渲染代码所在的线程,EGL Surface是通过系统函数egl CreateWindow Surface创建的,该函数接收系统编码库生成的绘图层作为参数,以建立绘图窗口和绘图层的对应关系。
进一步地,当建立了绘图窗口与绘图层之间的对应关系,需要将缓存于绘图层的原始视频帧纹理绘制于绘图窗口。通过系统编码线程调用EGL Surface.make Current方法完成绘图层与绘图窗口之间的切换,基于开放图形库的绘图流程,将原始视频帧纹理绘制在绘图窗口上。
本实施例中,通过创建绘图窗口,以完成原始视频帧纹理的绘制,进而能在绘图窗口对获取的所述原始视频帧进行纹理绘制,并能将本地系统中的效果数据也绘制于绘图窗口,以实现录制视频与效果数据的合成;所述绘图窗口的创建,独立于相机预览窗口,进而能避免相机预览窗口卡顿等现象的发生,提高系统的处理效率。
进一步地,请参照图4,基于上述实施例三,在本实施例中,上述步骤S30包括:
步骤S31,根据接收的输入指令,从本地系统中获取对应的效果数据;
步骤S32,基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
步骤S33,对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
可以理解地,为了美化视频效果,需要在录制的视频中添加效果数据,且需要将效果数据转换成与原始视频帧纹理相同的格式,以实现将效果数据与原始视频帧纹理的混合。需要说明的是,所述效果数据可以是预存于系统中的数据,例如贴图、动画等,也可以是用户基于系统程序而产生的当前数据并缓存于系统内存中,例如滤镜、美颜图片等。
具体地,根据接收的输入指令,首先读取系统磁盘中png或者jpg格式的图片,并生成bitmap位图数据到内存中,然后基于开放图形库的glTexImage2D函数生成二位图像的效果纹理,并使用相应的坐标和着色器将所述效果纹理绘制于绘图窗口上。绘制完成后,将绘图窗口上的原始视频帧纹理和效果纹理混合编码,生成新的合成视频并输出至网络推流模块,以供接收端解码播放。
本实施例提供的技术方案中,进一步细化了效果数据的处理步骤,将录制的原始视频帧与效果数据在视频录制端合成编码,实现了视频合成的实时传输,播放端只需解码播放即可,减少了播放端的处理流程,优化了直播效率,提高了用户体验。
进一步地,请参照图5,基于上述实施例四,在本实施例中,上述步骤S33包括:
步骤S331,将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
步骤S332,基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
具体地,当完成将效果纹理绘制于绘图窗口的步骤后,将绘图窗口上的原始视频帧纹理和效果纹理混合成新的视频帧,并调用系统中的egl Swap Buffer函数来提交绘制在绘图窗口的当前新的视频帧,输出至与当前绘图窗口对应的绘图层中,系统编码库将以该绘图层作为输出对象,并将绘图层上的当前新的视频帧按照预设的格式编码,输出至网络推流模块,接收端只需解码播放即可。
需要说明的是,本实施例中,通过如下设置以完成将绘图窗口上的原始视频帧纹理和效果纹理的混合:
glEnbale(GL_BLEND);//启用混合
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);//混合函数。
其中GL_SRC_ALPHA是源混合因子sfactor,GL_ONE_MINUS_SRC_ALPHA是目标混合因子dfactor。使用这个设置,实现了由远及近的绘图,在效果纹理的绘制区域,透明部分将显示原始帧,有像素的部分将显示效果纹理。
本实施例提供的技术方案中,通过将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。进一步优化了效果纹理与原始视频帧纹理的处理步骤,以实现录制视频与效果数据的高效同步播放的效果。
本发明还提供一种视频合成装置,参照图6,在一实施例中,本发明提供的视频合成装置包括:
获取模块10,用以获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
可以理解地,视频录制端可以通过多种方式获取相机的原始视频帧;例如,当视频录制端为手机时,可以通过手机自带的相机获取原始视频帧,当视频录制端为电脑时,可以通过电脑外接摄像头来获取原始视频帧。本实施例中,视频录制端为自带有相机的视频录制端,且操作系统为Android系统。
具体地,通过Android系统打开视频录制端的相机,并设置相机参数,例如光圈值、曝光控制、感光度、对焦距离等参数的设置;打开摄像头预览,并创建相机预览窗口(GLSurface View),同时为相机预览窗口设置渲染器(Render),上述步骤均是基于Android系统中开放图形库(Open GL)实现。
所述相机预览窗口用以获取相机的原始视频帧,也就是说,相机每更新一帧数据,系统就会调用一次渲染器的on Draw Frame(GL10)方法为相机预览窗口绘制图像,根据获取的相机每一帧的原始视频帧数据生成开放图形库的原始视频帧纹理。
需要说明的是,纹理就是一个图像或照片,用于在基本图形的表面加入额外的细节。每个二位的纹理都有其自己的坐标空间,其范围是从一个拐角的(0,0)到另一个拐角的(1,1)。当需要把一个纹理应用于一个矩形的时候,因此需要为每个顶点指定一个纹理坐标,以便Open GL知道需要用那个纹理的哪个部分画到矩形上。Android系统中,将以原始的视频帧和贴图作为纹理,使用(0,0)、(1,0)、(0,1)、(1,1)作为四个顶点的纹理坐标,其效果就是将整个图像缩放后,完整地绘制在顶点坐标指定的矩形区域上。
具体地,所述渲染器基于获取的每一原始视屏帧创建表面纹理和对应的纹理编号,这样,在渲染器的on Draw Frame中就可以通过创建的表面纹理(Surface Texure)和纹理编号(Texureld)获取纹理数据和操作纹理了。也就是说,获取的相机的所述原始视频帧通过渲染器on Draw Frame转换为对应的原始视频帧纹理。并通过Android系统编码库(Mediacodec)生成一个绘图层(surface),用以缓存所述原始视频帧纹理,所述编码库将从该绘图层获取待编码的视频流。
绘制模块20,用以创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
基于Android系统创建绘图窗口,用以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;可以理解地,需要建立绘图窗口与绘图层的对应关系。
具体地,为了使用绘图窗口绘图,通过系统函数egl Create Window Surface创建一个EGL Surface,该函数接收编码库生成的绘图层(surface)作为参数,这样就建立了绘图窗口和绘图层的对应关系。
进一步地,Android系统编码线程通过修改“current”来设置EGL Surface,为了使Open GL能够在创建的绘图窗口上绘图,还需要通过系统编码线程调用EGL Surface.makeCurrent方法完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程将绘图层的原始视频帧纹理绘制于绘图窗口。可以理解地,所述绘图参数可以为预设的顶点坐标、纹理坐标和顶点着色器、片段着色器等,根据Open GL的绘图流程,将所述原始视频帧纹理绘制在绘图窗口上。
需要说明的是,所述顶点坐标指的是归一化坐标,用于指定矩形的绘制区域。在Open GL里,需要渲染的一切物体都要映射到x轴和y轴上的[-1,1]的范围内,这个范围内的坐标被称为归一化设备坐标,其独立于屏幕实际的尺寸或形状。Android系统中Open GL占用整个显示屏,因此x轴、y轴的[-1,1]的范围分别映射为屏幕的像素宽和像素高。
可以理解地,图像在绘制之前,需要在Open GL的管道中传递,这就需要称为着色器的子例程,这些着色器会告诉GPU如何绘制数据,有顶点着色器和片段着色器,在绘制任何内容到屏幕之前,需要先定义顶点着色器和片段着色器。
具体地,首先读取原始视频帧的顶点数据,执行顶点着色器,进而可以控制每个顶点,实现渲染、确定顶点位置纹理坐标变换等指令;当顶点的全部属性都被确定后,将顶点组装成图元,然后光栅化图元,负责接收一个图元经过处理的电,并把它转换为片段,每个片段对应屏幕的一个像素;执行片段着色器,进行纹理查找,确定纹理坐标;而后将原始视频帧写入帧缓冲区,即绘图层(surface),最后显示在屏幕上。
编码模块30,用以将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
可以理解地,效果数据可以是美颜、滤镜、趣味贴图、动画效果等。所述效果数据可以是预存于系统中的数据,也可以是用户基于系统程序而产生的当前数据并缓存于系统内存中。
具体地,基于用户输入的控制指令获取系统内存中的效果数据,并与绘图窗口的原始视频帧纹理混合和编码,合成新的视频,并输出到网络推流模块,以供接收端解码播放。
本发明提供的技术方案中,通过获取模块10获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层,绘制模块20再创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口,最后编码模块30将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频,从而基于绘图层在视频发送端将效果数据合成至待发送视频中(即合成视频),合成视频为通用格式,使得不管接收端是何种类型设备,都能对接收的编码视频解码播放,也解决了现有技术中录制视频与增加的装饰效果数据单独发送而造成的不能同步播放的技术问题,提高了用户体验。
进一步地,请参照图7,基于上述实施例一,在本实施例中,所述获取模块10包括:
获取单元11,用以创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
转换单元12,用以获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
缓存单元13,用以将原始视频帧纹理缓存于系统编码库生成的绘图层。
具体地,基于Android系统的开放图形库(Open GL),通过Android系统的Camera类,设置相机参数,打开摄像头预览,并创建相机预览窗口(GL Surface View),并为所述相机预览窗口设置渲染器。所述相机预览窗口的创建,能获取相机的原始视频帧。
进一步地,为了获取纹理数据,首先在渲染器中使用开放图形库(Open GL)基于原始视频帧创建表面纹理(Surface Texure)和对应的纹理编号(Texureld),然后通过Camera的set Preview Texture接口传入纹理;这样,通过渲染器的on Draw Frame方法,将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理,并缓存于系统编码库生成的绘图层。
在本实施例提供的技术方案中,获取单元11通过创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;转换单元12将获取的所述原始视频帧通过渲染器创建的表面纹理和纹理编号转换成原始视频帧纹理,并通过缓存单元13缓存于系统编码库生成的绘图层。借助Android系统中独立于窗口系统、独立于硬件的开放图形库来实现相机预览窗口的创建,在运行各种操作系统的各种计算机上都可以用,优化视频直播体验和效率。
进一步地,请参照图8,基于上述实施例二,在本实施例中,所述绘制模块20包括:
绘图窗口创建单元21,用以创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
绘制单元22,用以根据系统编码线程窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
本发明提供的技术方案中,为了完成录制视频和效果数据的合成,需要创建一个绘图窗口,以完成原始视频帧的绘制和效果数据的绘制。
具体地,为了使用绘图窗口绘图,需要创建一个EGL Context和一个EGL Surface;EGL Context就是当前渲染代码所在的线程,EGL Surface是通过系统函数egl CreateWindow Surface创建的,该函数接收系统编码库生成的绘图层作为参数,以建立绘图窗口和绘图层的对应关系。
进一步地,当建立了绘图窗口与绘图层之间的对应关系,需要将缓存于绘图层的原始视频帧纹理绘制于绘图窗口。通过系统编码线程调用EGL Surface.make Current方法完成绘图层与绘图窗口之间的切换,基于开放图形库的绘图流程,将原始视频帧纹理绘制在绘图窗口上。
本实施例中,通过创建绘图窗口,以完成原始视频帧纹理的绘制,进而能在绘图窗口对获取的所述原始视频帧进行纹理绘制,并能将本地系统中的效果数据也绘制于绘图窗口,以实现录制视频与效果数据的合成;所述绘图窗口的创建,独立于相机预览窗口,进而能避免相机预览窗口卡顿等现象的发生,提高系统的处理效率。
进一步地,请参照图9,基于上述实施例三,在本实施例中,所述编码模块30包括:
效果图片获取单元31,用以根据接收的输入指令,从本地系统中获取对应的效果数据;
效果纹理绘制单元32,用以基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
编码单元33,用以对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
可以理解地,为了美化视频效果,需要在录制的视频中添加效果数据,且需要将效果数据转换成与原始视频帧纹理相同的格式,以实现将效果数据与原始视频帧纹理的混合。需要说明的是,所述效果数据可以是预存于系统中的数据,例如贴图、动画等,也可以是用户基于系统程序而产生的当前数据并缓存于系统内存中,例如滤镜、美颜图片等。
具体地,所述效果图片获取单元31首先获取系统磁盘png或者jpg格式的图片,并生成bitmap位图数据到内存中,然后基于开放图形库的glTexImage2D函数生成二位图像的纹理数据,并使用相应的坐标和着色器将所述效果纹理绘制于绘图窗口上。绘制完成后,将绘图窗口上的原始视频帧纹理和效果纹理混合编码,生成新的合成视频并输出至网络推流模块,以供接收端解码播放。
本实施例提供的技术方案中,进一步细化了效果数据的处理步骤,将录制的原始视频帧与效果数据在视频录制端合成编码,实现了视频合成的实时传输,播放端只需解码播放即可,减少了播放端的处理流程,优化了直播效率,提高了用户体验。
进一步地,请参照图10,基于上述实施例四,在本实施例中,所述编码单元33包括:
混合单元331,用以将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
输出单元332,用以基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
具体地,当完成将效果纹理绘制于绘图窗口的步骤后,将绘图窗口上的原始视频帧纹理和效果纹理混合成新的视频帧,并调用系统中的egl Swap Buffer函数来提交绘制在绘图窗口的当前新的视频帧,输出至与当前绘图窗口对应的绘图层中,系统编码库将以该绘图层作为输出对象,并将绘图层上的当前新的视频帧按照预设的格式编码,输出至网络推流模块,接收端只需解码播放即可。
需要说明的是,本实施例中,通过如下设置以完成将绘图窗口上的原始视频帧纹理和效果纹理的混合:
glEnbale(GL_BLEND);//启用混合
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);//混合函数。
其中GL_SRC_ALPHA是源混合因子sfactor,GL_ONE_MINUS_SRC_ALPHA是目标混合因子dfactor。使用这个设置,实现了由远及近的绘图,在效果纹理的绘制区域,透明部分将显示原始帧,有像素的部分将显示效果纹理。
本实施例提供的技术方案中,通过混合单元331将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;输出单元332通过系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。进一步优化了效果纹理与原始视频帧纹理的处理步骤,以实现录制视频与装饰效果的高效同步的效果。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种视频合成方法,其特征在于,所述视频合成方法包括以下步骤:
获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
2.如权利要求1所述的视频合成方法,其特征在于,所述获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层的步骤包括:
创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
将原始视频帧纹理缓存于系统编码库生成的绘图层。
3.如权利要求2所述的视频合成方法,其特征在于,所述创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口的步骤包括:
创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
根据系统编码线程窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
4.如权利要3所述的视频合成方法,其特征在于,所述将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频的步骤包括:
根据接收的输入指令,从本地系统中获取对应的效果数据;
基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
5.如权利要求4所述的视频合成方法,其特征在于,所述对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频的步骤包括:
将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
6.一种视频合成装置,其特征在于,包括:
获取模块,用以获取相机的原始视频帧,将原始视频帧转换成原始视频帧纹理并缓存于系统编码库生成的绘图层;
绘制模块,用以创建绘图窗口,并建立绘图窗口与所述绘图层的对应关系,以将所述绘图层缓存的原始视频帧纹理绘制于所述绘图窗口;
编码模块,用以将绘图窗口的原始视频帧纹理与本地系统的效果数据混合编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
7.如权利要求6所述的视频合成装置,其特征在于,所述获取模块包括:
获取单元,用以创建相机预览窗口以获取相机的原始视频帧,并为所述相机预览窗口设置渲染器;
转换单元,用以获取所述渲染器基于各个原始视频帧创建的表面纹理和对应的纹理编号,并将获取的所述原始视频帧通过表面纹理和纹理编号转换成原始视频帧纹理;
缓存单元,用以将原始视频帧纹理缓存于系统编码库生成的绘图层。
8.如权利要求7所述的视频合成装置,其特征在于,所述绘制模块包括:
绘图窗口创建单元,用以创建绘图窗口,根据系统函数接收绘图层缓存的原始视频帧纹理,以建立绘图窗口与绘图层的对应关系;
绘制单元,用以根据系统编码线程窗口切换规则,完成绘图层与绘图窗口之间的切换,并根据预设的绘图参数和绘图流程,将绘图层的原始视频帧纹理绘制于绘图窗口中。
9.如权利要求8所述的视频合成装置,其特征在于,所述编码模块包括:
效果图片获取单元,用以根据接收的输入指令,从本地系统中获取对应的效果数据;
效果纹理绘制单元,用以基于系统开放图形库将效果数据转换为对应的效果纹理,并将效果纹理绘制于绘图窗口中;
编码单元,用以对绘图窗口中的原始视频帧纹理和效果纹理进行混合和编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
10.如权利要求9所述的视频合成装置,其特征在于,所述编码单元包括:
混合单元,用以将绘图窗口中的原始视频帧纹理和效果纹理混合成新的视频帧,并输出至与绘图窗口对应的绘图层;
输出单元,用以基于系统编码库将绘图层上当前的新的视频帧按照预设格式编码,生成并输出合成视频,以供接收端解码播放所述合成视频。
CN201611085102.3A 2016-11-28 2016-11-28 视频合成方法及装置 Pending CN106534880A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201611085102.3A CN106534880A (zh) 2016-11-28 2016-11-28 视频合成方法及装置
PCT/CN2016/112917 WO2018094814A1 (zh) 2016-11-28 2016-12-29 视频合成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611085102.3A CN106534880A (zh) 2016-11-28 2016-11-28 视频合成方法及装置

Publications (1)

Publication Number Publication Date
CN106534880A true CN106534880A (zh) 2017-03-22

Family

ID=58354374

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611085102.3A Pending CN106534880A (zh) 2016-11-28 2016-11-28 视频合成方法及装置

Country Status (2)

Country Link
CN (1) CN106534880A (zh)
WO (1) WO2018094814A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449641A (zh) * 2018-03-28 2018-08-24 聚好看科技股份有限公司 播放媒体流的方法、装置、计算机设备和存储介质
CN109922360A (zh) * 2019-03-07 2019-06-21 腾讯科技(深圳)有限公司 视频处理方法、装置及存储介质
CN110278479A (zh) * 2019-06-04 2019-09-24 青岛海信电器股份有限公司 一种图片显示方法及电视机
CN110850983A (zh) * 2019-11-13 2020-02-28 腾讯科技(深圳)有限公司 视频直播中的虚拟对象控制方法、装置和存储介质
CN111614906A (zh) * 2020-05-29 2020-09-01 北京百度网讯科技有限公司 一种图像预处理方法、装置、电子设备及存储介质
CN111754607A (zh) * 2019-03-27 2020-10-09 北京小米移动软件有限公司 图片处理方法及装置、电子设备、计算机可读存储介质
CN112118397A (zh) * 2020-09-23 2020-12-22 腾讯科技(深圳)有限公司 一种视频合成的方法、相关装置、设备以及存储介质
CN112486606A (zh) * 2020-11-19 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于Android系统的云桌面显示优化方法及系统
CN112581575A (zh) * 2020-12-05 2021-03-30 西安翔腾微电子科技有限公司 一种外视频做纹理系统
CN114390354A (zh) * 2020-10-21 2022-04-22 西安诺瓦星云科技股份有限公司 节目制作方法、装置和系统及计算机可读存储介质
CN114900736A (zh) * 2022-03-28 2022-08-12 网易(杭州)网络有限公司 视频生成方法、装置和电子设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110782387B (zh) * 2018-07-30 2023-09-22 阿里巴巴(中国)有限公司 图像处理方法、装置、图像处理器及电子设备
CN112383793B (zh) * 2020-11-12 2023-07-07 咪咕视讯科技有限公司 画面的合成方法、装置、电子设备及存储介质
CN116320597A (zh) * 2022-09-06 2023-06-23 北京字跳网络技术有限公司 直播图像帧处理方法、装置、设备、可读存储介质及产品

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447873A (zh) * 2010-10-13 2012-05-09 张明 哈哈视频网络视频聊天娱乐辅助系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2661737B1 (en) * 2011-01-05 2018-12-05 NDS Limited Coordinated 2-dimensional and 3-dimensional graphics processing
CN103677828B (zh) * 2013-12-10 2017-02-22 华为技术有限公司 一种图层绘制方法、绘图引擎及终端设备
CN105204881A (zh) * 2014-06-25 2015-12-30 中兴通讯股份有限公司 在Android系统上运行J2me应用程序的方法及设备
CN105933724A (zh) * 2016-05-23 2016-09-07 福建星网视易信息系统有限公司 视频制作方法、装置及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102447873A (zh) * 2010-10-13 2012-05-09 张明 哈哈视频网络视频聊天娱乐辅助系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
段同乐等: "基于GPU的大批量目标高速标绘技术研究", 《计算机与网络》 *
裘初等: "可编程图形硬件综述裘", 《北京广播学院学报》 *
贺加川: "基于DirectShow与OpenGL的视频通讯软件设计与实现", 《信息科技辑》 *
赵安荔等: "虚拟战场的特效渲染及表达", 《西安工业大学学报》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449641B (zh) * 2018-03-28 2021-04-27 聚好看科技股份有限公司 播放媒体流的方法、装置、计算机设备和存储介质
CN108449641A (zh) * 2018-03-28 2018-08-24 聚好看科技股份有限公司 播放媒体流的方法、装置、计算机设备和存储介质
CN109922360A (zh) * 2019-03-07 2019-06-21 腾讯科技(深圳)有限公司 视频处理方法、装置及存储介质
CN111754607A (zh) * 2019-03-27 2020-10-09 北京小米移动软件有限公司 图片处理方法及装置、电子设备、计算机可读存储介质
CN110278479A (zh) * 2019-06-04 2019-09-24 青岛海信电器股份有限公司 一种图片显示方法及电视机
CN110278479B (zh) * 2019-06-04 2021-10-29 海信视像科技股份有限公司 一种图片显示方法及电视机
CN110850983A (zh) * 2019-11-13 2020-02-28 腾讯科技(深圳)有限公司 视频直播中的虚拟对象控制方法、装置和存储介质
CN111614906B (zh) * 2020-05-29 2022-02-22 阿波罗智联(北京)科技有限公司 一种图像预处理方法、装置、电子设备及存储介质
CN111614906A (zh) * 2020-05-29 2020-09-01 北京百度网讯科技有限公司 一种图像预处理方法、装置、电子设备及存储介质
US11593908B2 (en) 2020-05-29 2023-02-28 Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd. Method for preprocessing image in augmented reality and related electronic device
CN112118397B (zh) * 2020-09-23 2021-06-22 腾讯科技(深圳)有限公司 一种视频合成的方法、相关装置、设备以及存储介质
CN112118397A (zh) * 2020-09-23 2020-12-22 腾讯科技(深圳)有限公司 一种视频合成的方法、相关装置、设备以及存储介质
CN114390354A (zh) * 2020-10-21 2022-04-22 西安诺瓦星云科技股份有限公司 节目制作方法、装置和系统及计算机可读存储介质
CN114390354B (zh) * 2020-10-21 2024-05-10 西安诺瓦星云科技股份有限公司 节目制作方法、装置和系统及计算机可读存储介质
CN112486606A (zh) * 2020-11-19 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于Android系统的云桌面显示优化方法及系统
CN112581575A (zh) * 2020-12-05 2021-03-30 西安翔腾微电子科技有限公司 一种外视频做纹理系统
CN112581575B (zh) * 2020-12-05 2024-05-03 西安翔腾微电子科技有限公司 一种外视频做纹理系统
CN114900736A (zh) * 2022-03-28 2022-08-12 网易(杭州)网络有限公司 视频生成方法、装置和电子设备

Also Published As

Publication number Publication date
WO2018094814A1 (zh) 2018-05-31

Similar Documents

Publication Publication Date Title
CN106534880A (zh) 视频合成方法及装置
CN109448089A (zh) 一种渲染方法及装置
CN108564646A (zh) 对象的渲染方法和装置、存储介质、电子装置
US20100122168A1 (en) Method and apparatus for enhancing digital video effects (dve)
CN106713988A (zh) 一种对虚拟场景直播进行美颜处理的方法及系统
CN106230841A (zh) 一种基于终端的网络直播中视频实时美颜及推流的方法
CN105233498A (zh) 游戏角色染色方法、装置、用户终端及游戏系统
CN108431886A (zh) 针对特定显示器优化高动态范围图像
CN107111980A (zh) 针对特定显示器优化高动态范围图像
CN103123581B (zh) 一种移动终端的应用界面更换方法和装置、及移动终端
CN104484446A (zh) 一种动态显示统计数据的方法及装置
CN101625848A (zh) 面向嵌入式平台的矢量字库实现方法
CN107483771A (zh) 一种图像生成的方法和图像显示装置
CN104012097A (zh) 用于压缩和解压缩数据的方法与装置
CN107770618A (zh) 一种图像处理方法、装置及存储介质
CN103338235B (zh) 在手机上实现动态壁纸交互式、个性化创作的方法
CN108932745B (zh) 图像绘制方法、装置、终端设备及计算机可读存储介质
CN109102560A (zh) 三维模型渲染方法及装置
CN112102422B (zh) 图像处理方法及装置
CN111080806B (zh) 贴图处理方法及装置、电子设备、存储介质
CN102447839A (zh) 一种基于Quartz Composer的视频制作方法及装置
CN103312981A (zh) 一种多照片合成拍照方法及拍照装置
CN103050090A (zh) 移动终端应用的显示亮度的调节方法及装置
CN104113757A (zh) 颜色缓冲压缩
CN117390322A (zh) 虚拟空间构建方法、装置、电子设备及非易失性存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170322

RJ01 Rejection of invention patent application after publication