[go: up one dir, main page]

CN105916052A - 一种视频画面的绘制方法及装置 - Google Patents

一种视频画面的绘制方法及装置 Download PDF

Info

Publication number
CN105916052A
CN105916052A CN201510934280.8A CN201510934280A CN105916052A CN 105916052 A CN105916052 A CN 105916052A CN 201510934280 A CN201510934280 A CN 201510934280A CN 105916052 A CN105916052 A CN 105916052A
Authority
CN
China
Prior art keywords
picture
video
renderer
rendering
stream
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
CN201510934280.8A
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.)
Leshi Zhixin Electronic Technology Tianjin Co Ltd
Original Assignee
Leshi Zhixin Electronic Technology Tianjin 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 Leshi Zhixin Electronic Technology Tianjin Co Ltd filed Critical Leshi Zhixin Electronic Technology Tianjin Co Ltd
Priority to CN201510934280.8A priority Critical patent/CN105916052A/zh
Priority to PCT/CN2016/088195 priority patent/WO2017101303A1/zh
Publication of CN105916052A publication Critical patent/CN105916052A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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/440263Processing 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 altering the spatial resolution, e.g. for displaying on a connected PDA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例提供一种视频画面的绘制方法及装置,其中,所述方法包括:创建GLSurface View以及与所述GLSurface View相对应的第一渲染器和第二渲染器;为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。本发明实施例提供一种视频画面的绘制方法及装置,能够减少对手机资源的占用,以保证视频通话的质量。

Description

一种视频画面的绘制方法及装置
技术领域
本发明实施例涉及图像处理技术领域,尤其涉及一种视频画面的绘制方法及装置。
背景技术
从计算机诞生的那天开始,对现实世界的真实模拟就是图形学领域追求的最终目标。渲染技术在计算机绘图中,是指用软件从模型生成图像的过程。在图形显示操作中,渲染是最后一项重要步骤,通过它得到模型与动画最终显示效果。渲染技术被广泛用于计算机与视频游戏、模拟、电影或者电视特效以及可视化设计等实际应用场景。针对渲染显示的方式不同,可以大致分为两类:预渲染(pre-rendering或者offlinerendering)和实时渲染(real-timerendering或者onlinerendering)。其中,预渲染就是由开发人员将待渲染内容预先放置在服务器上进行渲染,预渲染的计算强度很大,通常用于复杂场景处理,比如酷炫的3D电影制作等。实时渲染要求实时体验,经常用于各类3D游戏等场景,通常需要依靠硬件加速器完成这个过程。
目前通常可以采用本地渲染或云端渲染技术来实现对画面的绘制。本地渲染技术就是用户设备(UserEquipment,UE)的硬件设备,如:中央处理器(CentralProcessingUnit,CPU)、图形处理器(GraphicProcessingUnit,GPU)对模型进行渲染,渲染结束后,显示设备调取渲染结果进行显示。云端渲染技术就是将用户设备的操作移到云端运行,然后把最终的结果,通过图片方式传送给用户设备进行显示。
随着通信技术的不断发展,人们已经越来越习惯于利用手机进行视频通话。在视频通话的过程中也会涉及上述的图像渲染技术。视频通话往往涉及视频通话的发起方以及视频通话的接收方。现在技术中对于视频通话中画面的绘制可以如下所述:
首先,可以针对视频通话的发起方和接收方分别建立不同的GLSurfaceView,然后通过这两个GLSurfaceView分别对视频通话发起方和接收方的图像进行绘制,从而可以实现视频通话的过程。
然而上述的现有技术中会存在这样的缺陷:创建两个GLSurfaceView无疑会消耗更多的内存并且会占用更多的cpu使用率,从而造成手机资源的浪费,另外,基于两个GLSurfaceView来进行画面的绘制,得到的画面位置往往都不方便进行调节。
发明内容
本发明实施例提供一种视频画面的绘制方法及装置,能够减少对手机资源的占用,以保证视频通话的质量。
本发明实施例提供一种视频画面的绘制方法,包括:创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器;为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
本发明实施例提供的一种视频画面的绘制装置,包括:渲染器创建单元,用于创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器;第一渲染参数配置单元,用于为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;第二渲染参数配置单元,用于为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;绘制单元,用于当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
本发明实施例提供的视频画面的绘制方法及装置,仅设置一个GLSurfaceView,同时在该GLSurfaceView下生成对应的两个渲染器。其中一个渲染器用来渲染视频通话发起方的画面,另一个渲染器则用来渲染视频通话接收方的画面。通过预先设置的视频通话发起方的画面位置和画面尺寸以及视频接收方的画面位置和画面尺寸,从而可以限定渲染得到的画面的位置和尺寸。这样,通过一个GLSurfaceView便可以实现视频通话双方画面的绘制过程,节省了手机的资源。进一步地,通过对视频通话过程中的网络状态进行监测,从而可以根据实际的网络状态,对分辨率或者帧率进行调节,以保证视频通话的顺畅。此外,通过监测手机触摸屏上的触控指令,从而可以根据触控指令对视频通话双方的画面位置进行调节,保证了视频通话过程的便捷性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图逐一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种视频画面的绘制方法流程图;
图2为本申请实施例提供的一种视频画面的绘制装置功能模块图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本申请实施例提供的一种视频画面的绘制方法流程图。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。如图1所示,所述方法可以包括:
S1:创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器。
所述的GLSurfaceView是一个视图,其内嵌的surface可以负责OpenGL渲染。所述GLSurfaceView往往可以提供以下特性:
1)管理一个surface,该surface可以为一块内存,能够直接排版到Android的视图上;
2)管理一个EGL display,该EGL display能够将内容渲染到上述的surface上;
3)支持用户自定义渲染器;
4)让渲染器在独立的线程里运作,将渲染器运作的线程与UI线程分离;
5)支持按需渲染(on-demand)和连续渲染(continuous)。
在创建了所述GLSurfaceView之后,可以对所述GLSurfaceView进行初始化。具体地,由于GLSurfaceView在创建时往往会具备一些默认的配置,这些默认的配置往往可以不进行修改。因此在初始化的过程中,主要是在所述GLSurfaceView中设置预设数量的渲染器,以分别对视频通话的发起方和接收方进行画面渲染。具体地,本申请实施例可以通过setRenderer(Renderer)指令设置一个渲染器。
另外,所述GLSurfaceView会默认创建像素格式为PixelFormat.RGB_565的surface。当然,用户可以根据实际需求对该像素格式进行更改,例如可以通过调用getHolder().setFormat(PixelFormat.TRANSLUCENT)指令来更改透明效果。透明的surface的像素格式都是32位的,每个色彩单元都是8位深度,这就说明该像素格式可能是ARGB或者RGBA。
在Android设备中往往支持多种EGL配置,在本申请实施例中可以使用不同数目的通道(channel),也可以指定每个通道具有不同数目的位(bits)深度。因此,在渲染器工作之前就应该指定EGL的配置。所述GLSurfaceView默认EGL配置的像素格式为RGB_656,16位的深度缓存(depth buffer),默认不开启遮罩缓存(stencil buffer)。当然,如果需要选择不同的EGL配置,则可以调用setEGLConfigChooser指令进行更换。
在对所述GLSurfaceView中的配置参数进行修改以及设置预设数量的渲染器后,便可以指定渲染器的渲染模式,在本申请实施例中由于需要对视频通话的画面进行实时渲染,因此可以将渲染器的渲染模式都设置为连续渲染。
在使用GLSurfaceView对视频通话的画面进行绘制时,可以通过交互式或者非交互式的方法进行绘制。具体地,所述非交互式的绘制方法得到的视频通话画面不能够与用户进行互动,例如不能响应于用户的触控指令进行相应的调整。在本申请一优选实施例中,为了能够根据用户的触控指令对视频画面的位置进行调节,可以采用交互式的绘制方法对视频通话的画面进行绘制。具体地,由于渲染的对象是在独立进程中,当需要对渲染的对象进行交互时,则需要采用跨线程的机制来进行事件的处理。具体地,在本申请实施例中可以使用queueEvent(Runnable)指令来进行设置。这样,由所述GLSurfaceView绘制的视频画面便可以响应于用户的触控指令,与用户进行交互。
在本申请实施例中,可以在GLSurfaceView中设置第一渲染器和第二渲染器,其中,所述第一渲染器可以为本地渲染器,用于渲染本地采集的视频信息;所述第二渲染器可以为远程渲染器,用于渲染视频通话的接收方远程发来的视频信息。
S2:为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸。
在设置了第一渲染器之后,可以为所述第一渲染器配置第一渲染参数。所述第一渲染参数是对视频信息进行渲染的规则,例如渲染后的画面位于什么位置以及渲染后的画面大小是多少。所述第一渲染参数中至少可以包括视频发起方的画面位置和画面尺寸。所述视频发起方的视频信息可以由本地的摄像头采集后送入所述第一渲染器中,并由所述第一渲染器进行渲染,成为本地的视频画面。所述本地的视频画面的位置以及尺寸则可以由所述第一渲染参数进行限定。例如,本地的视频画面可以位于整体画面的左下角,大小为整体画面的1/8。
本地的摄像头在采集到视频信息后,会将采集到的视频信息按照一定的帧率发送至所述第一渲染器。所述第一渲染器对接收到的每一帧视频信息均进行渲染成像,并将渲染后的画面按照同样的帧率展示给用户,从而给用户提供视频通话的画面。
S3:为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸。
同样的,在设置了第二渲染器之后,可以为所述第二渲染器配置第二渲染参数。所述第二渲染参数同样是对视频信息进行渲染的规则,例如渲染后的画面位于什么位置以及渲染后的画面大小是多少。所述第二渲染参数中至少可以包括视频接收方的画面位置和画面尺寸。所述视频接收方的视频信息可以由本地的摄像头采集后,通过网络发送至视频发起方所在的通讯地址。这样,当所述视频接收方的视频信息到达视频发起方时,可以由所述第二渲染器对其进行渲染,渲染后的画面便可以呈现给视频通话的发起方进行观看。所述视频通话接收方的画面位置以及尺寸则可以由所述第二渲染参数进行限定。例如,视频通话接收方的视频画面可以在整体画面的正中间,大小为铺满整体画面。
所述视频通话的接收方的视频信息同样可以按照一定的帧率发送至视频通话的发起方,在经过所述第二渲染器进行渲染后,便可以按照同样的帧率呈现给视频通话的发起方,从而形成视频通话的画面。
S4:当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
在视频通话的接收方接收了视频通话请求后,在视频通话发起方和视频通话接收方之间便建立了视频通话,此时,首先可以根据视频接收方的画面位置和画面尺寸对所述第二渲染器接收的每一帧图片进行绘制,得到第二图片流。该第二图片流中的图片是按照预设帧率进行传输,该预设帧率例如可以为24帧/秒或者30帧/秒。在得到所述第二图片流之后,可以根据视频发起方的画面位置和画面尺寸对所述第一渲染器接收的每一帧图片进行绘制,得到第一图片流。同样的,该第一图片流中的图片也是按照预设帧率进行传输,该预设帧率例如可以为24帧/秒或者30帧/秒。在进行视频通话的过程中,所述第二图片流往往可以作为背景铺满视频通话的窗口,而所述第一图片流则可以悬浮在所述第二图片流上,这样所述第二图片流便不会遮挡住所述第一图片流。也就是说,在得到第二图片流和第一图片流后,可以将所述第一图片流加载于所述第二图片流之上,构成视频画面。如上所述,所述可以作为背景铺满视频通话的窗口,而所述第一图片流则可以位于视频通话窗口的左下角,并且占整个窗口的1/8大小。
在进行视频通话的过程中,每一帧画面的分辨率和相邻两帧之间传输的帧率往往会决定视频画面的质量。每一帧画面的分辨率越高,那么视频画面则越清晰,但同时也会占用较多的网络资源,对网络状态的要求较高。同样地,相邻两帧之间传输的帧率越高,视频画面就会越流畅,但同时同样会占用较多的网络资源,对网络状态的要求较高。因此,在本申请一优选实施例中,为了保证视频通话的顺畅,可以根据网络状态的不同,对所述视频接收方的画面进行相应的调整。具体地,本申请实施例可以监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面分辨率调节为预设分辨率。例如,当所述网络状态较好,其网络延迟低于预设阈值时,可以将当前画面的分辨率调高,以增加画面的清晰度。相反的,当所述网络状态较差,其网络延迟高于预设阈值时,可以将当前画面的分辨率调低,以保证画面的流畅度。
同样的,本申请实施例还可以监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面渲染帧率按照预设规则进行调节。例如,当所述网络状态较好,其网络延迟低于预设阈值时,可以将当前画面的帧率调高,以增加画面的流畅度。相反的,当所述网络状态较差,其网络延迟高于预设阈值时,可以将当前画面的帧率调低,以保证画面不至于中断。实际上,为了保证动态图像的画面渲染质量在可控范围内,还可以限定画面渲染所用的帧率处于最小帧率和最大帧率之间,其中最大帧率是能够完美地运行动态图像所需要的最大帧率值,最小帧率是运行动态图像时可以容忍的最小帧率值。即,将画面渲染所用的帧率同该最小帧率及最大帧率进行比较,如果上述画面渲染所用的帧率小于该最小帧率,则将上述画面渲染所用的帧率设定成该最小帧率;如果上述画面渲染所用的帧率大于该最大帧率,则将上述画面渲染所用的帧率设定成该最大帧率。所述的最小帧率例如可以为20帧/秒,所述的最大帧率例如可以为60帧/秒。
在本申请一优选实施中,可以按照下述公式对所述视频接收方的画面渲染帧率进行调节:
δ = I N T ( 1000 * N T ) * k
其中,INT为取整函数,δ为调节后的画面渲染帧率,N为每次渲染时的画面帧数,T为渲染N帧画面所需的时间,k为调节系数。所述调节系数可以根据网络状态进行调整,其范围为0.1至1之间。本申请实施例可以建立网络延迟与所述调节系数之间的关系,该关系可以用反比例函数来表示,当网络延迟越高时,其对应的调节系数则越小;当网络延迟越低时,其对应的调节系数则越大。
由上可见,本发明实施例提供的视频画面的绘制方法,仅设置一个GLSurfaceView,同时在该GLSurfaceView下生成对应的两个渲染器。其中一个渲染器用来渲染视频通话发起方的画面,另一个渲染器则用来渲染视频通话接收方的画面。通过预先设置的视频通话发起方的画面位置和画面尺寸以及视频接收方的画面位置和画面尺寸,从而可以限定渲染得到的画面的位置和尺寸。这样,通过一个GLSurfaceView便可以实现视频通话双方画面的绘制过程,节省了手机的资源。进一步地,通过对视频通话过程中的网络状态进行监测,从而可以根据实际的网络状态,对分辨率或者帧率进行调节,以保证视频通话的顺畅。此外,通过监测手机触摸屏上的触控指令,从而可以根据触控指令对视频通话双方的画面位置进行调节,保证了视频通话过程的便捷性。
本申请实施例还提供一种视频画面的绘制装置。图2为本申请实施例提供的一种视频画面的绘制装置功能模块图。如图2所示,所述装置可以包括:
渲染器创建单元100,用于创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器;
第一渲染参数配置单元200,用于为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;
第二渲染参数配置单元300,用于为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;
绘制单元400,用于当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
在本申请一优选实施例中,所述绘制单元400具体包括:
第二图片流获取模块,用于当视频通话建立时,根据视频接收方的画面位置和画面尺寸对所述第二渲染器接收的每一帧图片进行绘制,得到第二图片流;
第一图片流获取模块,用于根据视频发起方的画面位置和画面尺寸对所述第一渲染器接收的每一帧图片进行绘制,得到第一图片流;
加载模块,用于将所述第一图片流加载于所述第二图片流之上,构成视频画面。
其中,在所述加载模块之后,所述装置还包括:
触控指令监测模块,用于监测所述视频画面上的触控指令,并响应于监测到的触控指令,将所述第一图片流或者第二图片流的位置进行移动。
在本申请另一优选实施例中,所述装置还可以包括:
分辨率调节单元,用于监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面分辨率调节为预设分辨率。
在本申请另一优选实施例中,所述装置还可以包括:
帧率调节单元,用于监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面渲染帧率按照预设规则进行调节。
具体地,在本申请实施例中可以按照下述公式对所述视频接收方的画面渲染帧率进行调节:
δ = I N T ( 1000 * N T ) * k
其中,INT为取整函数,δ为调节后的画面渲染帧率,N为每次渲染时的画面帧数,T为渲染N帧画面所需的时间,k为调节系数。
需要说明的是,本申请实施例上述各个功能模块的具体实现方式与步骤S1至S4中一致,这里便不再赘述。
由上可见,本发明实施例提供的视频画面的绘制装置,仅设置一个GLSurfaceView,同时在该GLSurfaceView下生成对应的两个渲染器。其中一个渲染器用来渲染视频通话发起方的画面,另一个渲染器则用来渲染视频通话接收方的画面。通过预先设置的视频通话发起方的画面位置和画面尺寸以及视频接收方的画面位置和画面尺寸,从而可以限定渲染得到的画面的位置和尺寸。这样,通过一个GLSurfaceView便可以实现视频通话双方画面的绘制过程,节省了手机的资源。进一步地,通过对视频通话过程中的网络状态进行监测,从而可以根据实际的网络状态,对分辨率或者帧率进行调节,以保证视频通话的顺畅。此外,通过监测手机触摸屏上的触控指令,从而可以根据触控指令对视频通话双方的画面位置进行调节,保证了视频通话过程的便捷性。
在本说明书中,诸如第一和第二这样的形容词仅可以用于将一个元素或动作与另一元素或动作进行区分,而不必要求或暗示任何实际的这种关系或顺序。在环境允许的情况下,参照元素或部件或步骤(等)不应解释为局限于仅元素、部件、或步骤中的一个,而可以是元素、部件、或步骤中的一个或多个等。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
最后应说明的是:上面对本申请的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本申请的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本申请旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。

Claims (10)

1.一种视频画面的绘制方法,其特征在于,包括:
创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器;
为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;
为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;
当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
2.根据权利要求1所述的视频画面的绘制方法,其特征在于,所述第一渲染器为本地渲染器,所述第二渲染器为远程渲染器。
3.根据权利要求1所述的视频画面的绘制方法,其特征在于,当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制具体包括:
当视频通话建立时,根据视频接收方的画面位置和画面尺寸对所述第二渲染器接收的每一帧图片进行绘制,得到第二图片流;
根据视频发起方的画面位置和画面尺寸对所述第一渲染器接收的每一帧图片进行绘制,得到第一图片流;
将所述第一图片流加载于所述第二图片流之上,构成视频画面。
4.根据权利要求3所述的视频画面的绘制方法,其特征在于,在得到第二图片流之后,所述方法还包括:
监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面分辨率调节为预设分辨率。
5.根据权利要求3所述的视频画面的绘制方法,其特征在于,在得到第二图片流之后,所述方法还包括:
监测视频发起方的网络状态,当所述网络状态满足预设条件时,将所述视频接收方的画面渲染帧率按照预设规则进行调节。
6.根据权利要求5所述的视频画面的绘制方法,其特征在于,按照下述公式对所述视频接收方的画面渲染帧率进行调节:
δ = I N T ( 1000 * N T ) * k
其中,INT为取整函数,δ为调节后的画面渲染帧率,N为每次渲染时的画面帧数,T为渲染N帧画面所需的时间,k为调节系数。
7.根据权利要求3所述的视频画面的绘制方法,其特征在于,在将所述第一图片流加载于所述第二图片流之上,构成视频画面之后,所述方法还包括:
监测所述视频画面上的触控指令,并响应于监测到的触控指令,将所述第一图片流或者第二图片流的位置进行移动。
8.一种视频画面的绘制装置,其特征在于,包括:
渲染器创建单元,用于创建GLSurfaceView以及与所述GLSurfaceView相对应的第一渲染器和第二渲染器;
第一渲染参数配置单元,用于为所述第一渲染器配置第一渲染参数,所述第一渲染参数至少包括视频发起方的画面位置和画面尺寸;
第二渲染参数配置单元,用于为所述第二渲染器配置第二渲染参数,所述第二渲染参数至少包括视频接收方的画面位置和画面尺寸;
绘制单元,用于当视频通话建立时,所述第一渲染器和所述第二渲染器分别根据所述第一渲染参数和所述第二渲染参数,对接收的每一帧图片进行绘制。
9.根据权利要求8所述的视频画面的绘制装置,其特征在于,所述绘制单元具体包括:
第二图片流获取模块,用于当视频通话建立时,根据视频接收方的画面位置和画面尺寸对所述第二渲染器接收的每一帧图片进行绘制,得到第二图片流;
第一图片流获取模块,用于根据视频发起方的画面位置和画面尺寸对所述第一渲染器接收的每一帧图片进行绘制,得到第一图片流;
加载模块,用于将所述第一图片流加载于所述第二图片流之上,构成视频画面。
10.根据权利要求9所述的视频画面的绘制装置,其特征在于,在所述加载模块之后,所述装置还包括:
触控指令监测模块,用于监测所述视频画面上的触控指令,并响应于监测到的触控指令,将所述第一图片流或者第二图片流的位置进行移动。
CN201510934280.8A 2015-12-15 2015-12-15 一种视频画面的绘制方法及装置 Pending CN105916052A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510934280.8A CN105916052A (zh) 2015-12-15 2015-12-15 一种视频画面的绘制方法及装置
PCT/CN2016/088195 WO2017101303A1 (zh) 2015-12-15 2016-07-01 一种视频画面的绘制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510934280.8A CN105916052A (zh) 2015-12-15 2015-12-15 一种视频画面的绘制方法及装置

Publications (1)

Publication Number Publication Date
CN105916052A true CN105916052A (zh) 2016-08-31

Family

ID=56744080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510934280.8A Pending CN105916052A (zh) 2015-12-15 2015-12-15 一种视频画面的绘制方法及装置

Country Status (2)

Country Link
CN (1) CN105916052A (zh)
WO (1) WO2017101303A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124637A (zh) * 2017-05-18 2017-09-01 北京视博云科技有限公司 在轻终端上进行信息通告的方法及装置、计算机存储介质
CN107888970A (zh) * 2017-11-29 2018-04-06 天津聚飞创新科技有限公司 视频处理方法、装置、嵌入式设备及存储介质
CN108184054A (zh) * 2017-12-28 2018-06-19 上海传英信息技术有限公司 一种用于智能终端拍摄图像的预处理方法及预处理装置
CN114071229A (zh) * 2021-12-08 2022-02-18 四川启睿克科技有限公司 一种解决SurfaceView渲染器重载视频解码时回收延迟的方法
CN115619911A (zh) * 2022-10-26 2023-01-17 润芯微科技(江苏)有限公司 基于Unreal Engine的虚拟形象生成方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109285211B (zh) * 2018-10-29 2023-03-31 Oppo广东移动通信有限公司 画面渲染方法、装置、终端及存储介质
CN111626915B (zh) * 2020-05-29 2024-03-26 大陆汽车车身电子系统(芜湖)有限公司 一种图像显示方法
CN115942131B (zh) * 2023-02-09 2023-09-01 蔚来汽车科技(安徽)有限公司 保障车辆环视功能的方法、座舱系统及车辆、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1901668A (zh) * 2005-07-19 2007-01-24 腾讯科技(深圳)有限公司 多人视频数据显示处理方法及系统
US20140173507A1 (en) * 2012-12-19 2014-06-19 Barco N.V. Display wall layout optimization
CN103916621A (zh) * 2013-01-06 2014-07-09 腾讯科技(深圳)有限公司 视频通信方法及装置
US20140237405A1 (en) * 2011-10-26 2014-08-21 Huawei Device Co., Ltd Method and Apparatus for Taking Screenshot of Screen of Application in Mobile Terminal
CN104811785A (zh) * 2015-04-01 2015-07-29 乐视致新电子科技(天津)有限公司 智能终端的显示图形用户界面的控制方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014184956A1 (ja) * 2013-05-17 2014-11-20 三菱電機株式会社 映像合成装置および方法
US9901822B2 (en) * 2014-01-09 2018-02-27 Square Enix Holding Co., Ltd. Video gaming device with remote rendering capability

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1901668A (zh) * 2005-07-19 2007-01-24 腾讯科技(深圳)有限公司 多人视频数据显示处理方法及系统
US20140237405A1 (en) * 2011-10-26 2014-08-21 Huawei Device Co., Ltd Method and Apparatus for Taking Screenshot of Screen of Application in Mobile Terminal
US20140173507A1 (en) * 2012-12-19 2014-06-19 Barco N.V. Display wall layout optimization
CN103916621A (zh) * 2013-01-06 2014-07-09 腾讯科技(深圳)有限公司 视频通信方法及装置
CN104811785A (zh) * 2015-04-01 2015-07-29 乐视致新电子科技(天津)有限公司 智能终端的显示图形用户界面的控制方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124637A (zh) * 2017-05-18 2017-09-01 北京视博云科技有限公司 在轻终端上进行信息通告的方法及装置、计算机存储介质
CN107888970A (zh) * 2017-11-29 2018-04-06 天津聚飞创新科技有限公司 视频处理方法、装置、嵌入式设备及存储介质
CN108184054A (zh) * 2017-12-28 2018-06-19 上海传英信息技术有限公司 一种用于智能终端拍摄图像的预处理方法及预处理装置
CN108184054B (zh) * 2017-12-28 2020-12-08 上海传英信息技术有限公司 一种用于智能终端拍摄图像的预处理方法及预处理装置
CN114071229A (zh) * 2021-12-08 2022-02-18 四川启睿克科技有限公司 一种解决SurfaceView渲染器重载视频解码时回收延迟的方法
CN115619911A (zh) * 2022-10-26 2023-01-17 润芯微科技(江苏)有限公司 基于Unreal Engine的虚拟形象生成方法
CN115619911B (zh) * 2022-10-26 2023-08-08 润芯微科技(江苏)有限公司 基于Unreal Engine的虚拟形象生成方法

Also Published As

Publication number Publication date
WO2017101303A1 (zh) 2017-06-22

Similar Documents

Publication Publication Date Title
CN105916052A (zh) 一种视频画面的绘制方法及装置
TWI803590B (zh) 藉由所關注區域之制定的異步時間及空間翹曲
US10818081B2 (en) Dynamic lighting for objects in images
WO2020108081A1 (zh) 视频处理方法、装置、电子设备和计算机可读介质
CN112235626B (zh) 视频渲染方法、装置、电子设备及存储介质
WO2020108061A1 (zh) 视频处理方法、装置、电子设备以及存储介质
US11119719B2 (en) Screen sharing for display in VR
JP7359521B2 (ja) 画像処理方法および装置
US10269100B1 (en) Accelerated skin smoothing effect
JP6563024B2 (ja) 出力デバイスへのクラウドゲームデータストリーム及びネットワーク特性の動的な調節
US10298903B2 (en) Method and device for processing a part of an immersive video content according to the position of reference parts
CN105005426A (zh) 触屏终端截屏、数据分享的方法及系统
WO2022262618A1 (zh) 一种屏保交互方法、装置、电子设备和存储介质
CN113521728B (zh) 云应用的实现方法、装置、电子设备和存储介质
JP2021170769A (ja) 周辺イメージを処理する方法及びデバイス
CN112017101A (zh) 可变光栅化率
CN113691737B (zh) 视频的拍摄方法、设备、存储介质
CN112884665A (zh) 一种动画播放方法、装置、计算机设备及存储介质
WO2021249358A1 (zh) 渲染方法、设备以及系统
US12100102B2 (en) Image based sampling metric for quality assessment
US20210360236A1 (en) System and method for encoding a block-based volumetric video having a plurality of video frames of a 3d object into a 2d video format
US10152818B2 (en) Techniques for stereo three dimensional image mapping
EP4485357A2 (en) Image processing method and apparatus, electronic device, and storage medium
CN111327863A (zh) 一种视频通话处理方法及装置
WO2021052040A1 (zh) 视频图像的增强方法、装置、设备、芯片及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160831

WD01 Invention patent application deemed withdrawn after publication