CN113824982A - 一种直播方法、装置、计算机设备及存储介质 - Google Patents

一种直播方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN113824982A
CN113824982A CN202111062910.9A CN202111062910A CN113824982A CN 113824982 A CN113824982 A CN 113824982A CN 202111062910 A CN202111062910 A CN 202111062910A CN 113824982 A CN113824982 A CN 113824982A
Authority
CN
China
Prior art keywords
model
virtual character
live broadcast
character model
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.)
Granted
Application number
CN202111062910.9A
Other languages
English (en)
Other versions
CN113824982B (zh
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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202111062910.9A priority Critical patent/CN113824982B/zh
Publication of CN113824982A publication Critical patent/CN113824982A/zh
Application granted granted Critical
Publication of CN113824982B publication Critical patent/CN113824982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • 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/4781Games
    • 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/485End-user interface for client configuration
    • 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/485End-user interface for client configuration
    • H04N21/4854End-user interface for client configuration for modifying image parameters, e.g. image brightness, contrast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8173End-user applications, e.g. Web browser, game

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请实施例公开了一种直播方法、装置、计算机设备及存储介质。本方案在虚拟角色模型程序中设计虚拟角色编辑窗口与虚拟角色展示窗口,通过虚拟角色编辑窗口对虚拟角色模型进行编辑处理,通过虚拟角色展示窗口展示编辑处理后的虚拟角色模型,进一步的,当通过直播平台进行直播时,以便将虚拟角色展示窗口直接叠加在直播平台播放的直播画面进行显示,可以提高直播效率。

Description

一种直播方法、装置、计算机设备及存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种直播方法、装置、计算机设备及存储介质。
背景技术
网络直播作为一种新的媒介形态,以其多元化互动体验越来越受到用户欢迎。而随着计算机技术的迅速发展,一种新兴的网络直播方式--虚拟角色直播,也逐渐被用户接受。虚拟角色直播指的是用虚拟对象来代替真人角色在直播画面上做出反应,虚拟角色直播目前在各大直播平台都有广泛的应用,比如用于直播游戏等。
相关技术中,在进行虚拟角色直播时,通过指定应用生成虚拟对象模型,然后将虚拟对象模型导入直播应用,首先通过直播应用对虚拟对象模型进行处理,然后在直播画面上展示虚拟对象,操作步骤繁琐,从而影响直播效率。
发明内容
本申请实施例提供一种直播方法、装置、计算机设备及存储介质,可以提高直播效率。
本申请实施例提供了一种直播方法,包括:
确定待编辑虚拟角色模型;
获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
相应的,本申请实施例还提供了一种直播装置,包括:
确定单元,用于确定待编辑虚拟角色模型;
第一显示单元,用于获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
第二显示单元,用于当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
在一些实施例中,第一显示单元包括:
驱动子单元,用于通过所述模型驱动参数驱动所述待编辑虚拟角色模型作出反应,得到所述目标虚拟角色模型;
第一显示子单元,用于当接收到显示指令时,在所述用户操作界面上显示所述目标虚拟角色模型。
在一些实施例中,第一显示子单元具体用于:
在所述用户操作界面展示所述指定应用的展示窗口,通过所述展示窗口显示所述目标虚拟角色模型。
在一些实施例中,第一显示子单元具体还用于:
通过透明着色器对所述展示窗口的窗口背景进行透明处理,得到透明处理后展示窗口。
在一些实施例中,第一显示子单元还具体用于:
通过所述透明处理后展示窗口显示所述目标虚拟角色模型。
在一些实施例中,第一显示单元包括:
第一获取子单元,用于获取所述待编辑虚拟角色模型在所述编辑窗口中的状态信息,以及所述展示窗口的配置信息;
第一确定子单元,用于基于所述状态信息和所述配置信息确定所述模型驱动参数;
第二显示子单元,用于根据所述模型驱动参数在所述展示窗口中显示所述目标虚拟角色模型。
在一些实施例中,第一显示单元还包括:
第五获取子单元,用于获取所述编辑窗口的第一端口标识,以及所述展示窗口的第二端口标识;
建立子单元,用于基于所述第一端口标识与所述第二端口标识建立所述编辑窗口与所述展示窗口的连接。
在一些实施例中,第二显示单元具体用于:
对所述模型驱动参数进行序列化操作,得到传输数据;
将所述传输数据传输推送至所述展示窗口;
对所述传输数据进行反序列化操作,得到所述模型驱动参数;
根据所述模型驱动参数在所述展示窗口显示所述目标虚拟角色模型。
在一些实施例中,该装置还包括:
移动单元,用于当接收到对所述展示窗口的移动指令时,根据所述移动指令移动所述展示窗口。
在一些实施例中,该装置还包括:
接收单元,用于当接收到直播指令时,获取直播内容,并在所述用户操作界面上显示所述直播内容。
在一些实施例中,第二显示单元包括:
第三显示子单元,用于根据所述待编辑虚拟角色模型以及所述模型驱动参数,在所述直播内容上叠加显示所述目标虚拟角色模型。
在一些实施例中,第二显示单元包括:
识别子单元,用于对所述待直播内容进行识别处理,得到多个候选区域,其中,不同候选区域包括不同的直播内容;
第二确定子单元,用于基于内容类型从所述多个候选区域中确定目标区域;
第一叠加子单元,用于通过所述目标区域将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第二显示单元包括:
第二获取子单元,用于获取所述指定区域中显示的内容,得到所述待直播内容;
第二叠加子单元,用于将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第二显示单元包括:
第三获取子单元,用于获取所述目标应用的应用界面内容,以及所述指定应用的编辑窗口;
第三叠加子单元,用于将所述编辑窗口叠加在所述应用界面内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第一显示单元包括:
采集子单元,用于采集当前用户的动作信息和声音信息;
构建子单元,用于基于所述动作信息和所述声音信息构建所述模型驱动参数。
在一些实施例中,第一显示单元包括:
选择子单元,用于基于用户对所述模型编辑页面的选择操作,从所述多个选择控件中确定目标选择控件;
第四获取子单元,用于获取所述目标选择控件对应的预设动作信息,得到目标动作信息;
生成子单元,用于根据所述目标动作信息生成所述模型驱动参数。
相应的,本申请实施例还提供了一种计算机设备,包括存储器,处理器及存储在储存器上并可在处理器上运行的计算机程序,其中,处理器执行本申请实施例任一提供的直播方法。
相应的,本申请实施例还提供了一种存储介质,存储介质存储有多条指令,指令适于处理器进行加载,以执行如上的直播方法。
本申请实施例在虚拟角色模型程序中设计虚拟角色编辑窗口与虚拟角色展示窗口,通过虚拟角色编辑窗口对虚拟角色模型进行编辑处理,通过虚拟角色展示窗口展示编辑处理后的虚拟角色模型,进一步的,当通过直播平台进行直播时,以便将虚拟角色展示窗口直接叠加在直播平台播放的直播画面进行显示,可以提高直播效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种直播方法的流程示意图。
图2为本申请实施例提供的一种直播方法的应用场景示意图。
图3为本申请实施例提供的另一种直播方法的应用场景示意图。
图4为本申请实施例提供的另一种直播方法的流程示意图。
图5为本申请实施例提供的另一种直播方法的应用场景示意图。
图6为本申请实施例提供的另一种直播方法的应用场景示意图。
图7为本申请实施例提供的另一种直播方法的应用场景示意图。
图8为本申请实施例提供的另一种直播方法的应用场景示意图。
图9为本申请实施例提供的另一种直播方法的应用场景示意图。
图10为本申请实施例提供的另一种直播方法的应用场景示意图。
图11为本申请实施例提供的另一种直播方法的应用场景示意图。
图12为本申请实施例提供的一种直播装置的结构框图。
图13为本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种直播方法、装置、存储介质及计算机设备。具体地,本申请实施例的直播方法可以由计算机设备执行,其中,该计算机设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、个人计算机(PC,PersonalComputer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
例如,该计算机设备可以是终端,该终端可以确定待编辑虚拟角色模型;获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
基于上述问题,本申请实施例提供第一种直播方法、装置、计算机设备及存储介质,可以提高直播效率。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本申请实施例提供一种直播方法,该方法可以由终端或服务器执行,本申请实施例以直播方法由终端执行为例来进行说明。
请参阅图1,图1为本申请实施例提供的一种直播方法的流程示意图。该直播方法的具体流程可以如下:
101、确定待编辑虚拟角色模型。
其中,确定待编辑虚拟角色模型可以通过用户在用户操作界面的操作,确定待编辑虚拟角色模型。
其中,用户操作界面也即用户界面,用户界面(User Interface,简称UI,亦称使用者界面)是***和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。用户界面是介于用户与硬件而设计彼此之间交互沟通相关软件,目的在使得用户能够方便有效率地去操作硬件以达成双向之交互,完成所希望借助硬件完成之工作,用户界面定义广泛,包含了人机交互与图形用户接口,凡参与人类与机械的信息交流的领域都存在着用户界面。
具体的,通过在用户操作界面的操作指的是用户在用户操作界面的操作,可以包括多种操作形式,如,触控操作,键鼠操作等方式。
其中,用户操作界面可以包括多个虚拟角色模型,通过用户对用户操作界面中的虚拟角色模型的选择操作,从多个虚拟角色模型中确定用户选择操作对应的虚拟角色模型,得到待编辑虚拟角色模型。
例如,用户操作界面包括的虚拟角色模型可以包括:模型1、模型2、模型3、模型4等,当检测到用户对模型1的触控操作或者键鼠操作,可以确定用户选中模型1,得到待编辑虚拟角色模型为:模型1。
102、获取模型驱动参数,根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型。
其中,模型驱动参数用于控制虚拟角色模型作出类似真实用户反应,该反应可以包括多种类型,比如,动作反应和声音反应等。其中,动作反应指的是仿照用户动作进行移动,声音反应指的是仿照用户声音进行发言等。
具体的,模型驱动参数可以包括动作参数和声音参数等,不同的动作参数值对应不同的动作,不同的声音参数值对应不同的发言。
在一些实施例中,为了提高虚拟角色模型的反应效果,步骤“获取模型驱动参数”可以包括以下操作:
采集当前用户的动作信息和声音信息;
基于动作信息和声音信息构建所述模型驱动参数。
其中,当前用户指的是对待编辑虚拟角色模型进行编辑处理的本端用户。在本申请实施例中,终端可以安装有图像采集设备(如,摄像头)和声音采集设备(如麦克风)等。
具体的,可以启动图像采集设备采集当前用户的动作信息,启动声音采集设备采集当前用户的声音信息。
其中,对于采集到的动作信息,提取动作特征,基于动作特征分析得到用户动作类型,将用户动作类型转换为动作参数。对于采集到的声音信息,提取声音特征,基于声音特征分析得到用户声音以及用户发言文本,将用户声音以及用户发言文本转换为声音参数。根据动作参数和声音参数,得到模型驱动参数。
在一些实施例中,为了方便用户对虚拟角色模型的自定义操作,步骤“获取模型驱动参数”,可以包括以下操作:
基于用户对模型编辑页面的选择操作,从多个选择控件中确定目标选择控件;
获取目标选择控件对应的预设动作信息,得到目标动作信息;
根据目标动作信息生成模型驱动参数。
在本实施例中,用户操作界面可以展示有模型编辑页面,该模型编辑页面可以包括多个选择控件,不同选择控件用于选择不同预设动作信息。其中,预设动作信息指的是终端预先设置的动作信息,比如,预先采集用户动作,生成动作信息并进行存储。
例如,请参阅图2,图2为本申请实施例提供的一种直播方法的应用场景示意图。在图2所示的用户操作界面中包括:模型编辑区域和模型展示区域。其中,模型编辑区域展示有多个选择控件,包括:眨眼控件、摇头控件、鼓掌控件、闭眼控件、点头控件、伸手控件、捂嘴控件和低头控件。模型展示区域展示有待编辑虚拟角色模型。
进一步的,用户可以对模型编辑区域的选择控件进行选择操作,根据选择操作确定用户操作的目标选择控件。比如,用户可以对模型编辑区域中的捂嘴控件进行选择操作,则确定目标选择控件为捂嘴控件,则可以调用捂嘴控件对应的动作信息,也即捂嘴动作对应的动作参数值,进一步的,根据该动作参数值可以得到模型驱动参数。
在一些实施例中,为了提高对编辑后虚拟角色模型的展示效果,步骤“根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型”,可以包括以下操作:
通过模型驱动参数驱动待编辑虚拟角色模型作出反应,得到目标虚拟角色模型;
当接收到显示指令时,在用户操作界面上显示目标虚拟角色模型。
具体的,获取模型驱动参数中的动作参数值以及声音参数值,根据动作参数值控制待编辑虚拟角色模型进行移动,根据声音参数值控制待编辑虚拟角色模型进行发言,即可以得到目标虚拟角色模型。
例如,模型驱动参数中可以包括:第一动作参数值和第一声音参数值。其中,第一动作参数值指示待编辑虚拟角色模型进行眨眼的动作,第一声音参数值指定待编辑虚拟角色模型进行发言,发言内容可以为“好可爱”,则得到目标虚拟角色模型为进行眨眼动作并说“好可爱”。
其中,显示指令通过用户对用户操作界面的操作触发,显示指令指示在用户操作界面上显示目标虚拟角色模型。
在一些实施例中,为了提高对虚拟角色模型的编辑效率,步骤“在用户操作界面上显示目标虚拟角色模型”,可以包括以下操作:
在用户操作界面展示指定应用的展示窗口,通过展示窗口显示目标虚拟角色模型。
其中,用户操作界面展示指定应用的编辑窗口,通过该指定编辑窗口显示待编辑虚拟角色模型。指定应用用于对虚拟角色模型进行编辑,展示,等一系列操作。
当接收到显示指令时,启动指定应用的展示窗口,通过展示窗口展示目标虚拟角色模型。其中,展示窗口与编辑窗口为互相独立的窗口,展示窗口可以设置为透明背景。
在一些实施例中,为了保证模型展示效果,在步骤“通过展示窗口显示目标虚拟角色模型”之前,还可以包括以下步骤:
通过透明着色器对展示窗口的窗口背景进行透明处理,得到透明处理后展示窗口;
则步骤“通过展示窗口显示目标虚拟角色模型”,可以包括以下操作:
通过透明处理后展示窗口显示目标虚拟角色模型。
其中,透明着色器能够使物体不可见,而且它只有一个输入点:颜色。具体的,透明着色器用于全透明或半透明对象。通过使用基础纹理的Alpha通道,可确定对象的区域的透明度高于或低于其他区域。这种着色器可为玻璃、HUD(抬头显示)界面或科幻场景带来很好的效果。
在对展示窗口进行初始化时,可以调用操作***API,也即应用程序接口指令,将展示窗口设置成置顶、无边框样式,以及使用透明着色器将展示窗口的窗口背景预设的背景颜色的Alpha值设置为0,得到透明处理后展示窗口,从而可以实现展示窗口的窗口背景透明。
进一步的,通过透明处理后展示窗口对目标虚拟角色模型进行展示,以使目标虚拟角色模型可以叠加展示在用户操作界面的各个区域上方,提高模型展示效果。
请参阅图3,图3为本申请实施例提供的另一种直播方法的应用场景示意图。在图3所示的用户操作界面中,展示有指定应用的编辑窗口以及指定应用的展示窗口。其中,编辑窗口中展示有待编辑虚拟角色模型以及用于对该待编辑虚拟角色模型进行编辑的多个编辑控件,如第一控件、第二控件、第三控件。展示窗口中展示有编辑处理后的目标虚拟角色模型,通过在指定应用中设置展示窗口独立于编辑窗口显示,将展示窗口的背景设置为透明,有利于用户更清楚的查看虚拟角色模型的编辑效果,可以根据编辑效果实时进行调整,以快速调整得到满意的虚拟角色模型,从而提高模型编辑效率。
在一些实施例中,为了实时将编辑窗口中的模型信息同步至展示窗口中进行展示,步骤“获取模型驱动参数,根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型”,可以包括以下操作:
获取待编辑虚拟角色模型在编辑窗口中的状态信息,以及展示窗口的配置信息;
基于状态信息和配置信息确定模型驱动参数;
根据模型驱动参数在展示窗口中显示目标虚拟角色模型。
在本申请实施例中,指定应用运行时可以包括:编辑窗口进程和展示窗口进程。当完成对虚拟角色模型的编辑处理后,在编辑窗口进程中创建TCP(Transmission ControlProtocol,传输控制协议)Socket,监听预设的端口号。
进一步的,根据用户计算机设备性能或用户设置的捕捉帧率,不断获取虚拟角色模型的状态信息和配置信息,将这些信息封装成Socket传输信息。其中,状态信息可以包括:3D模型每个骨骼节点的位移、旋转、缩放属性,面部蒙皮BlendShapes中的各项表情数值;或者Live2D模型中:各个控制节点运动的节点名称和数值以及Live2D组的名称和透明度数据,配置信息包括模型名称、展示窗口宽高、是否显示窗口、是否显示绿幕,事件类型:用来告诉展示窗口每一信息对应的事件。
然后,对于获取到的状态信息和配置信息进行序列化,将状态信息和配置信息中的数据转换成传输数据,等待展示窗口加入,若有展示窗口发送连接加入,则编辑窗口进程主动向展示窗口推送传输数据。
在一些实施例中,编辑窗口可以呼叫展示窗口,展示窗口调用透明窗口模块和着色器,将自身样式设置为透明、无边框、置顶样式,并配合操作***API(ApplicationProgram Interface,应用程序接口)提供窗口拖拽的功能。
当检测到用户触发对展示窗口的展示指令时,展示窗口进程创建TCP Socket,根据预设端口号连接编辑窗口,被动接收编辑窗口发送的传输数据。然后,展示窗口进程对传输数据进行反序列化,也即将传输数据转换为虚拟角色模型的状态信息和配置信息,并根据状态信息和配置信息在展示窗口显示目标虚拟角色模型。
在一些实施例中,为了实时将编辑窗口中的模型信息同步至展示窗口中进行展示,在步骤“根据模型驱动参数在展示窗口中显示目标虚拟角色模型”之前,还可以包括以下步骤:
获取编辑窗口的第一端口标识,以及展示窗口的第二端口标识;
基于第一端口标识与第二端口标识建立编辑窗口与展示窗口的连接。
其中,第一端口标识指的是编辑窗口的预设端口号,第二端口标识指的是展示窗口的预设端口号。具体的,编辑窗口的预设端口号以及展示窗口的预设端口号可以预先设定,且编辑窗口的预设端口号以及展示窗口的预设端口号不相同。
进一步的,根据第一端口标识与第二端口标识创建TCP Socket,建立展示窗口与编辑窗口之间的连接。
在一些实施例中,为了保证展示窗口与编辑窗口的数据同步性,步骤“根据模型驱动参数在展示窗口中显示目标虚拟角色模型”,可以包括以下操作:
对模型驱动参数进行序列化操作,得到传输数据;
将传输数据传输推送至展示窗口;
对传输数据进行反序列化操作,得到模型驱动参数;
根据模型驱动参数在展示窗口显示目标虚拟角色模型。
具体的,将模型驱动参数进行序列化,也即将状态信息和配置信息中的数据转换成传输数据,编辑窗口进程主动向展示窗口推送传输数据,展示窗口被动接收编辑窗口发送的传输数据。
然后,展示窗口进程对传输数据进行反序列化,也即将传输数据转换为虚拟角色模型的状态信息和配置信息,并根据状态信息和配置信息在展示窗口显示目标虚拟角色模型。
在一些实施例中,为了满足用户需求,该方法还可以包括以下步骤:
当接收到对展示窗口的移动指令时,根据移动指令移动展示窗口。
其中,展示窗口支持窗口拖拽功能,用户可以对展示窗口进行拖拽操作。例如,通过用户对用户操作界面的拖拽操作触发对展示窗口的移动指令,然后根据该移动指令移动展示窗口,用户可以将展示窗口移动至用户操作界面合适的区域,从而满足对展示窗口的移动需求。
在一些实施例中,为了方便用户操作,在步骤“根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型”之前,还可以包括以下步骤:
当接收到直播指令时,获取直播内容,并在用户操作界面上显示直播内容;
则步骤“根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型”,可以包括以下操作:
根据待编辑虚拟角色模型以及模型驱动参数,在直播内容上叠加显示目标虚拟角色模型。
其中,直播指令指示终端启动直播应用,通过直播应用执行直播功能。直播内容表示的是用户需要进行直播的内容,比如,直播内容可以为终端中任一应用界面的内容,或者终端显示屏幕部分显示区域的内容。
进一步的,获取当前用户需要进行直播的直播内容,在用户操作窗口展示直播应用界面,将直播内容在直播应用界面进行显示,以实现对直播内容进行直播。
在直播过程中,执行对待编辑虚拟角色模型的编辑时,则可以直接根据待编辑虚拟角色模型以及模型驱动参数,在直播内容上叠加显示目标虚拟角色模型,无需用户手动启动指定应用的展示窗口,便捷用户操作。
103、当接收到直播指令时,获取直播内容,基于待直播内容和目标虚拟角色模型进行直播。
在一些实施例中,为了提高用户直播体验,步骤“基于待直播内容和目标虚拟角色模型生成直播画面”可以包括以下操作:
对待直播内容进行识别处理,得到多个候选区域,其中,不同候选区域包括不同的直播内容;
基于内容类型从多个候选区域中确定目标区域;
通过目标区域将目标虚拟角色模型叠加在直播内容上,得到直播画面,并对直播画面进行直播。
其中,待直播内容为需要进行直播的内容,比如,待直播内容可以为游戏画面等。
例如,带直播内容可以为游戏画面,对该游戏画面进行识别处理,具体的,对游戏画面中包括的游戏元素进行识别分类,将当前游戏画面中的游戏元素按照元素类型划分为多个元素集合,根据相同游戏元素在游戏画面的区域将游戏画面划分为多个候选区域,也即不同候选区域包括有不同的游戏元素。
进一步的,根据游戏元素在游戏画面中显示的重要等级对多个候选区域进行排序,比如,可以按照游戏元素重要等级的由低到高对候选区域进行排序,则可以确定排序靠前的候选区域为非重要显示区域,也即目标区域,然后将目标虚拟角色模型叠加展示在游戏画面的目标区域中,以实现自动展示虚拟角色模型,减少用户操作步骤。
在一些实施例中,为了满足不同直播方式的虚拟角色模型展示需求,步骤“获取所述用户操作界面上的待直播内容,基于直播内容和目标虚拟角色模型进行直播”可以包括以下操作:
获取指定区域中显示的内容,得到待直播内容;
将目标虚拟角色模型叠加在待直播内容上,得到直播画面,并对直播画面进行直播。
在本实施例中,直播指令指示对用户操作界面中指定区域的内容进行直播,也即截屏直播方式,则指定区域为用户在用户操作界面设定的截屏直播区域。
其中,指定区域中显示的内容,也即用户在用户操作界面设定的截屏直播区域的显示内容,比如,用户设定用户操作界面中:第500-600(像素宽度)x第300-400(像素高度)的区域为指定区域,则可以获取用户操作界面中:第500-600(像素宽度)x第300-400(像素高度)中的显示内容,得到待直播内容。
进一步的,在确定待直播内容后,即可以将目标虚拟角色模型叠加在待直播内容上,得到直播画面,并对直播画面进行直播,具体叠加方式可以参见上述步骤,在此不多做赘述。
在一些实施例中,为了满足不同直播方式的虚拟角色模型展示需求,步骤“获取所述用户操作界面上的待直播内容,基于直播内容和目标虚拟角色模型进行直播”可以包括以下操作:
获取目标应用的应用界面内容,以及指定应用的编辑窗口;
将编辑窗口叠加在应用界面内容上,得到直播画面,并对直播画面进行直播。
在本实施例中,直播指令指示对指定应用和至少一个目标应用进行直播。其中,指定应用用于对虚拟角色模型进行编辑和展示等操作,指定应用包括编辑窗口,编辑窗口可以展示待编辑虚拟角色模型;
其中,目标应用指的是用于进行直播展示的应用,比如,用户开启直播应用,然后通过直播应用关联指定应用和目标应用,则直播应用可以同时对指定应用的应用界面以及目标应用的应用界面进行直播。
进一步的,为了减小直播画面,方便终端屏幕较小的用户观看直播,可以在直播应用中设定指定应用和目标应用叠加显示,且本方案中,指定应用的编辑窗口与展示窗口相互独立,则可以设置展示窗口与目标应用界面叠加在直播画面,对展示窗口与目标应用界面进行直播,满足用户直播需求,且无需通过直播应用对虚拟角色模型进行处理也可以实现对虚拟角色模型进行直播的效果。
本申请实施例公开了一种直播方法,该方法包括:确定待编辑虚拟角色模型;获取模型驱动参数,根据待编辑虚拟角色模型以及模型驱动参数在用户操作界面上显示目标虚拟角色模型;当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于待直播内容和目标虚拟角色模型进行直播。通过创建透明的虚拟角色模型展示窗口,以使直播用户可以直观的看见虚拟角色模型和直播画面融合的效果,还可以实时确认虚拟角色模型在直播画面中呈现出的效果,营造更强的沉浸感,从而提高直播效率。
根据上述介绍的内容,下面将举例来进一步说明本申请的直播方法。请参阅图4,图4为本申请实施例提供的另一种直播方法的流程示意图,以该直播方法应用于终端为例,具体流程可以如下:
201、终端接收用户通过用户操作界面触发的模型编辑指令,根据模型编辑指令在用户操作界面展示指定应用的第一窗口。
在本申请实施例中,终端可以安装有指定应用,该指定应用可以用于对虚拟角色模型进行编辑处理。比如,该虚拟角色工具可以为指定应用。虚拟角色模型指的是代替用户真人在画面上作出反应的虚拟对象,虚拟角色模型可以包括多种形式,比如,Live2D(一种应用于电子游戏的绘图渲染技术,通过一系列的连续图像和人物建模来生成一种类似三维模型的二维图像)和3D(三维图像)。
其中,模型编辑指令指示通过指定应用对虚拟角色模型进行编辑处理,比如,编辑处理可以包括:调整虚拟角色模型的尺寸,为虚拟角色模型添加动作等。
具体的,当终端检测到用户对指定应用的启动指令时,启动该指定应用,并在用户操作界面展示该指定应用的第一窗口。其中,第一窗口也即虚拟角色配置窗口,通过用户对第一窗口的操作完成对虚拟角色模型的编辑处理。
例如,请参阅图5,图5为本申请实施例提供的另一种直播方法的应用场景示意图。图5展示的是指定应用的第一窗口,该第一窗口的顶端显示有多个控件,包括:模型控件、调节控件、录播控件、直播控件以及设置控件。其中,模型控件可以用于加载模型,也即选择需要进行编辑处理的虚拟角色模型;调节控件可以用于对选中的虚拟角色模型进行编辑处理,比如,用户可以为虚拟角色模型自定义编辑动作、开启面部图像捕捉、调节面部图像捕捉参数等;录播控件可以用于对编辑后的虚拟角色模型进行录制保存;直播控件可以用于将编辑后的虚拟角色模型应用于直播平台;设置控件可以用于对指定应用的功能参数进行调节等。
如图5所示,用户可以点击模型控件,触发终端在第一窗口中展示模型加载区域,模型加载区域包括有模型选择列表和加载模型控件,其中,模型选择列表展示有该指定应用中预设的虚拟角色模型,包括:模型1、模型2、模型3和模型4;加载模型控件可以用于加载终端本地存储的虚拟角色模型进行编辑处理。
202、终端通过用户在第一窗口的选择操作,从多个候选虚拟角色模型中确定目标虚拟角色模型。
其中,选择操作指的是用户对第一窗口中模型加载区域中的虚拟角色模型进行选择。
例如,请参阅图6,图6为本申请实施例提供的另一种直播方法的应用场景示意图。在图6中,模型加载区域中包括多个候选虚拟角色模型:模型1、模型2、模型3和模型4,当用户选择模型1,即可以确定目标虚拟角色模型为模型1,则可以在第一窗口中的模型展示区域展示模型1。
203、终端采集用户的动作信息和声音信息,并根据动作信息和声音信息对目标虚拟角色模型进行处理,得到处理后虚拟角色模型。
当用户选择目标虚拟角色模型,通过第一窗口展示目标虚拟角色模型之后,可以对目标虚拟角色模型进行编辑处理。
其中,动作信息指的是当前用户的肢体动作信息,声音信息指的是当前用户的说话声音信息。动作信息可以通过摄像头进行采集,声音信息可以通过麦克风进行采集。
在本申请实施例中,指定应用可以调用摄像头功能和麦克风功能。请参阅图7,图7为本申请实施例提供的另一种直播方法的应用场景示意图。当检测到用户对调节控件的选择操作,即可以展示调节区域,也即图7中第一窗口左侧所示的调节区域,该调节区域包括:面部校准控件、动作配置控件以及背景样式控件。其中,面部校准控件可以用于触发开启摄像头采集用户动作信息;动作配置控件可以用于从指定应用预设的多个角色动作中为目标虚拟角色模型添加角色动作;背景样式可以用于为目标虚拟角色模型设置展示时的背景样式。
进一步的,当用户对第一窗口的面部校准控件进行选择操作,则可以在第一窗口展示面部校准区域,如图7中国第一窗口的面部校准区域,包括:目标虚拟角色模型的昵称,目标虚拟角色模型的缩略图,用于开启摄像头的开关控件,用于选择摄像头的选择框,用于捕捉头部动作的开关控件以及用于捕捉面部动作的开关控件。当用户开启摄像头,并选择摄像头之后,即可以在第一窗口展示摄像头的监控画面。
具体的,根据动作信息和声音信息对目标虚拟角色模型进行处理,也即为目标虚拟角色模型添加动作信息和声音信息,以实现目标虚拟角色代替用户在画面上作出各种反应。
例如,摄像头采集到当前用户存在眨眼的动作,则终端同步为目标虚拟角色模型添加眨眼的动作,本申请方案不限于此,对于摄像头采集到的所有用户的肢体动作都可以添加至虚拟角色模型中进行展示,以此,得到目标虚拟角色模型。
在一些实施例中,若用户想要自定义为虚拟角色模型添加动作,也可以通过指定应用进行实现。请参阅图8,图8为本申请实施例提供的另一种直播方法的应用场景示意图。当检测到用户对录播控件的选择操作,即可以展示表情配置区域和动作配置区域,也即图8中第一窗口中的表情配置区域和动作配置区域。
其中,表情配置区域包括多个预设的表情:悲伤、流眼泪、眯眼笑、睁大眼;动作配置区域包括多个预设的动作:比心心、伸手抱抱、鼓掌、点头。用户可以通过对表情配置区域中的预设表情进行选择,得到目标表情,还可以通过对动作配置区域中的预设动作进行选择,得到目标动作,对于用户选中的目标表情和/或目标动作,添加至目标虚拟角色模型上进行展示,以满足用户自定义模型需求。
在本申请实施例中,用户在对目标虚拟角色模型配置动作时,除了可以从指定应用中预设的动作中进行选择,还可以通过其他方式载入其他动作对目标虚拟角色进行编辑,比如,载入终端本地存储的配置动作,或者从网上下载的配置动作等。
204、终端检测到用户对指定应用的第二窗口的启动指令时,通过第二窗口展示处理后虚拟角色模型。
其中,第二窗口也即虚拟角色展示窗口,通过第二窗口可以对编辑处理后的目标虚拟角色模型进行展示。
请参阅图9,图9为本申请实施例提供的另一种直播方法的应用场景示意图。用户可以在第一窗口选择直播控件,进入直播设置区域,也即图9左侧所示的直播设置区域,包括有:启用透明背景的开关控件以及推流界面预览的开关控件。其中,启用透明背景的控件用于控制第二窗口是否透明显示;推流界面预览的开关控件控制是否展示第二窗口。当用户将启用透明背景的开关控件以及推流界面预览的开关控件打开后,参见图9下侧的窗口图,也即可以在当前用户操作界面展示第二窗口,第二窗口显示有目标虚拟角色模型,且第二窗口的背景为透明。
在本申请实施例中,第二窗口的创建实现具体如下:
当检测到用户点击推流预览按钮时,创建第二窗口进程并唤醒,该指定应用最终打包目录下包含两个可执行程序VI.exe(第一窗口)和VIFrame.exe(第二窗口),VIFrame.exe位于根目录的下一级目录,主进程即第一窗口,根据相对路径创建VIFrame进程并唤醒。
进一步的,第二窗口初始化,调用操作***API,将第二窗口设置成置顶、无边框样式,使用透明着色器将预设的背景颜色的Alpha(α)值设置为0,以实现第二窗口透明,监听Unity UI(基于GNOME桌面环境的用户界面)中的拖拽事件,在开始拖拽事件中记录鼠标初始位置,接着调用操作***获取鼠标的API获取当前的鼠标位置,根据与初始值的差值调用操作***设置窗口位置的API设置窗口位置,从而实现窗体拖拽。
然后,第二窗口初始化,创建TCP(Transmission Control Protocol,传输控制协议)Socket(编程接口),连接预设端口号(默认可以是7789),创建新线程被动接收来自第一窗口的数据。
具体的,可以采集第一窗口数据,根据计算机设备性能或用户设定的帧率(如,每秒60帧),对虚拟角色模型的状态信息和配置信息进行采集,将虚拟对象的状态信息转换为可序列化的数据。其中,状态信息包括:3D虚拟角色模型每个骨骼节点的位移、旋转、缩放属性,面部蒙皮BlendShapes中的各项表情数值,Live2D虚拟角色模型各个控制节点运动的节点名称和数值以及Live2D组的名称和透明度数据。配置信息包括模型名称、第二窗口宽高、是否显示窗口、是否显示绿幕,事件类型:用于告知第二窗口每一信息对应的事件。
其中,3D虚拟角色模型的信息包括:每个骨骼节点的位移、旋转、缩放属性,3D模型面部蒙皮BlendShapes。在加载3D虚拟角色模型时将使用DFS(深度优先搜索)存储模型每个节点,节点属性是Unity原生不可序列化的Vector3变量,在运行时可以按上述帧率从节点数组中读取数据,将Vector3转换为浮点数数组来进行存储,每9位表示一个节点,分别存储的是位移、旋转、缩放属性的x、y、z值,BlendShapes使用可序列化的Dictionary进行存储,其中key用来存储表情参数名,value用来存储表情参数数值。
其中,Live2D虚拟角色模型在运行时同样可以按照上述帧率,调用Live2D API获取模型的参数名和对应数值,它的属性使用Dictionary进行存储,其中key用来存储Live2D参数名和Live2D组名,value用来存储Live2D参数数值和组透明度值。
在构建第一窗口和第二窗口的连接之后,即可以进行数据传输。首先可以创建ChatData对象,然后基于上述步骤中采集到的状态信息和配置信息的数据,对创建的ChatData对象一一赋值,具体赋值如下:
+type:int
+greenScreen:bool
+selectedBackgroundlmagePath:string
+UseCameraCircleMask:bool+name:string
+shouldUpdateModelConfig:bool
+State:Dictionary<string,float>+TransformDataList:List<float>+transform:float[]
+show:bool
+quit:bool
+width:int
+height:int
其中,type:事件类型,用来描述本次数据的事件类型,比如同步模型状态、更新窗口属性、窗口显示隐藏,第二窗口根据事件类型执行不同的方法。greenScreen:是否使用绿幕。name:模型名称,第二窗口根据模型名称来加载相应模型。State:模型状态数据,用来存储Live2D模型的展示数据和3D模型的BlendShapes数据。
其中,TransformDataList:用来存储3D模型每个骨骼节点的属性,每9位表示1个节点。transform:模型根节点的位移、旋转、缩放属性,用来控制模型的整体的位移、旋转、缩放。
进一步的,将上述封装好的ChatData序列化为byte[]即字节数组,Socket传输字节数组。第二窗口进程将接收到的byte[]反序列化为ChatData,根据ChatData中的type即事件类型去调用不同的预设方法去解析数据。type即事件类型可以包括模型同步事件和窗口状态事件。
在一些实施例中,若type为模型同步事件,则调用模型同步方法,读取name、State、TransformDataList、transform模型状态相关字段,根据name加载模型,调用模型类封装好状态同步方法。状态同步方法可以包括:3D模型状态同步方法,Live2D模型同步方法。
其中,3D模型状态同步方法:在模型加载时使用DFS存储模型节点,解析TransformDataList按照每9位表示一个节点的规则对模型节点的位移、旋转、缩放的x、y、z进行赋值,解析State根据key为BlendShapes参数名value为数值的规则进行赋值,解析transform对模型根节点属性进行赋值,实现了对3D模型的状态同步。
其中,Live2D模型同步方法:解析State,根据key为Live2D参数名value为数值的规则,调用Live2D API,对模型数值进行改变,实现了对Live2D模型的状态同步。
在一些实施例中,若type为窗口状态事件,读取show、quit、width、height属性,根据show、width、height调用操作***API调整窗口大小和显示隐藏,根据quit调用UnityAPI关闭应用。
205、终端接收直播指令,根据直播指令在用户操作界面展示直播页面。
在本申请实施例中,终端可以安装有直播应用,该直播应用可以用于用户进行直播,比如,当前用户通过中终端开启直播应用,截取屏幕画面,推送屏幕画面,其他用户则可以在网页端的直播间可以看见当前用户的直播画面。
例如,请参阅图10,图10为本申请实施例提供的另一种直播方法的应用场景示意图。当前用户可以进行游戏直播,也即通过直播应用对游戏画面进行直播,在图10所示的直播页面中展示有当前用户的游戏画面。
206、终端根据用户对第二窗口的移动操作,将直播页面与第二窗口在所述用户操作界面叠加展示。
在当期用户操作界面可以展示有指定应用的第一窗口、第二窗口,以及直播应用展示的直播页面。为了满足用户直播需求,也即对应直播时观众的评论及时作出反应,用户可以将第二窗口移动至直播页面,将第二窗口与直播页面叠加显示。
例如,请参阅图11,图11为本申请实施例提供的另一种直播方法的应用场景示意图。在图11所示的直播页面上叠加显示第二窗口,也即在直播页面上展示目标虚拟角色模型。由于第二窗口的背景可以设置为透明,因此将第二窗口叠加在直播页面上进行展示可以减少占用游戏画面,使得用户在直播时可以直观地看见虚拟角色模型和直播页面融合的效果,可以实时确认虚拟角色模型呈现出的效果,营造更强的沉浸感,从而提高用户直播体验。
本申请实施例公开了一种直播方法,该方法包括:终端接收用户通过用户操作界面触发的模型编辑指令,根据模型编辑指令在用户操作界面展示指定应用的第一窗口,通过用户在第一窗口的选择操作,从多个候选虚拟角色模型中确定目标虚拟角色模型,采集用户的动作信息和声音信息,并根据动作信息和声音信息对目标虚拟角色模型进行处理,得到处理后虚拟角色模型,检测到用户对指定应用的第二窗口的启动指令时,通过第二窗口展示处理后虚拟角色模型,接收直播指令,根据直播指令在用户操作界面展示直播页面,根据用户对第二窗口的移动操作,将直播页面与第二窗口在所述用户操作界面叠加展示。以此,可以提高直播效率。
为便于更好的实施本申请实施例提供的直播方法,本申请实施例还提供一种基于上述直播方法的直播装置。其中名词的含义与上述直播方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图12,图12为本申请实施例提供的一种直播装置的结构框图,该装置包括:
确定单元301,用于确定待编辑虚拟角色模型;
第一显示单元302,用于获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
第二显示单元303,用于当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
在一些实施例中,第一显示单元302可以包括:
驱动子单元,用于通过所述模型驱动参数驱动所述待编辑虚拟角色模型作出反应,得到所述目标虚拟角色模型;
第一显示子单元,用于当接收到显示指令时,在所述用户操作界面上显示所述目标虚拟角色模型。
在一些实施例中,第一显示子单元具体可以用于:
在所述用户操作界面展示所述指定应用的展示窗口,通过所述展示窗口显示所述目标虚拟角色模型。
在一些实施例中,第一显示子单元具体还用于:
通过透明着色器对所述展示窗口的窗口背景进行透明处理,得到透明处理后展示窗口。
在一些实施例中,第一显示子单元还具体用于:
通过所述透明处理后展示窗口显示所述目标虚拟角色模型。
在一些实施例中,第一显示单元302可以包括:
第一获取子单元,用于获取所述待编辑虚拟角色模型在所述编辑窗口中的状态信息,以及所述展示窗口的配置信息;
第一确定子单元,用于基于所述状态信息和所述配置信息确定所述模型驱动参数;
第二显示子单元,用于根据所述模型驱动参数在所述展示窗口中显示所述目标虚拟角色模型。
在一些实施例中,第一显示单元302还可以包括:
第五获取子单元,用于获取所述编辑窗口的第一端口标识,以及所述展示窗口的第二端口标识;
建立子单元,用于基于所述第一端口标识与所述第二端口标识建立所述编辑窗口与所述展示窗口的连接。
在一些实施例中,第二显示子单元具体可以用于:
对所述模型驱动参数进行序列化操作,得到传输数据;
将所述传输数据传输推送至所述展示窗口;
对所述传输数据进行反序列化操作,得到所述模型驱动参数;
根据所述模型驱动参数在所述展示窗口显示所述目标虚拟角色模型。
在一些实施例中,该装置还可以包括:
移动单元,用于当接收到对所述展示窗口的移动指令时,根据所述移动指令移动所述展示窗口。
在一些实施例中,该装置还可以包括:
接收单元,用于当接收到直播指令时,获取直播内容,并在所述用户操作界面上显示所述直播内容。
在一些实施例中,第二显示单元303可以包括:
第三显示子单元,用于根据所述待编辑虚拟角色模型以及所述模型驱动参数,在所述直播内容上叠加显示所述目标虚拟角色模型。
在一些实施例中,第二显示单元303可以包括:
识别子单元,用于对所述待直播内容进行识别处理,得到多个候选区域,其中,不同候选区域包括不同的直播内容;
第二确定子单元,用于基于内容类型从所述多个候选区域中确定目标区域;
第一叠加子单元,用于通过所述目标区域将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第二显示单元303可以包括:
第二获取子单元,用于获取所述指定区域中显示的内容,得到所述待直播内容;
第二叠加子单元,用于将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第二显示单元303可以包括:
第三获取子单元,用于获取所述目标应用的应用界面内容,以及所述指定应用的编辑窗口;
第三叠加子单元,用于将所述编辑窗口叠加在所述应用界面内容上,得到直播画面,并对所述直播画面进行直播。
在一些实施例中,第一显示单元302可以包括:
采集子单元,用于采集当前用户的动作信息和声音信息;
构建子单元,用于基于所述动作信息和所述声音信息构建所述模型驱动参数。
在一些实施例中,第一显示单元302可以包括:
选择子单元,用于基于用户对所述模型编辑页面的选择操作,从所述多个选择控件中确定目标选择控件;
第四获取子单元,用于获取所述目标选择控件对应的预设动作信息,得到目标动作信息;
生成子单元,用于根据所述目标动作信息生成所述模型驱动参数。
本申请实施例公开了一种直播装置,该装置包括:获取单元301确定待编辑虚拟角色模型;第一显示单元302获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;第二显示单元303当接收到直播指令时,获取直播内容,基于所述直播内容和所述目标虚拟角色模型进行直播。以此,可以提高直播效率。
相应的,本申请实施例还提供一种计算机设备,该计算机设备可以为终端。如图13所示,图13为本申请实施例提供的计算机设备的结构示意图。该计算机设备500包括有一个或者一个以上处理核心的处理器501、有一个或一个以上计算机可读存储介质的存储器502及存储在存储器502上并可在处理器上运行的计算机程序。其中,处理器501与存储器502电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器501是计算机设备500的控制中心,利用各种接口和线路连接整个计算机设备500的各个部分,通过运行或加载存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备500的各种功能和处理数据,从而对计算机设备500进行整体监控。
在本申请实施例中,计算机设备500中的处理器501会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能:
确定待编辑虚拟角色模型;获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图13所示,计算机设备500还包括:触控显示屏503、射频电路504、音频电路505、输入单元506以及电源507。其中,处理器501分别与触控显示屏503、射频电路504、音频电路505、输入单元506以及电源507电性连接。本领域技术人员可以理解,图13中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏503可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏503可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、引导信息、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器501,并能接收处理器501发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器501以确定触摸事件的类型,随后处理器501根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏503而实现输入和输出功能。但是在某些实施例中,触控面板与显示面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏503也可以作为输入单元506的一部分实现输入功能。
射频电路504可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
音频电路505可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路505可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路505接收后转换为音频数据,再将音频数据输出处理器501处理后,经射频电路504以发送给比如另一计算机设备,或者将音频数据输出至存储器502以便进一步处理。音频电路505还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
输入单元506可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源507用于给计算机设备500的各个部件供电。可选的,电源507可以通过电源管理***与处理器501逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源507还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图13中未示出,计算机设备500还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的计算机设备,确定待编辑虚拟角色模型;获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种直播方法中的步骤。例如,该计算机程序可以执行如下步骤:
确定待编辑虚拟角色模型;
获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种直播方法中的步骤,因此,可以实现本申请实施例所提供的任一种直播方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种直播方法、装置、存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (16)

1.一种直播方法,其特征在于,所述方法包括:
确定待编辑虚拟角色模型;
获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
2.根据权利要求1所述的方法,其特征在于,所述根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型,包括:
通过所述模型驱动参数驱动所述待编辑虚拟角色模型作出反应,得到所述目标虚拟角色模型;
当接收到显示指令时,在所述用户操作界面上显示所述目标虚拟角色模型。
3.根据权利要求2所述的方法,其特征在于,所述用户操作界面展示指定应用的编辑窗口,通过所述编辑窗口显示所述待编辑虚拟角色模型;
所述在所述用户操作界面上显示所述目标虚拟角色模型,包括:
在所述用户操作界面展示所述指定应用的展示窗口,通过所述展示窗口显示所述目标虚拟角色模型。
4.根据权利要求3所述的方法,其特征在于,在所述通过所述展示窗口显示所述目标虚拟角色模型之前,还包括:
通过透明着色器对所述展示窗口的窗口背景进行透明处理,得到透明处理后展示窗口;
所述通过所述展示窗口显示所述目标虚拟角色模型,包括:
通过所述透明处理后展示窗口显示所述目标虚拟角色模型。
5.根据权利要求3所述的方法,其特征在于,所述获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型,包括:
获取所述待编辑虚拟角色模型在所述编辑窗口中的状态信息,以及所述展示窗口的配置信息;
基于所述状态信息和所述配置信息确定所述模型驱动参数;
根据所述模型驱动参数在所述展示窗口中显示所述目标虚拟角色模型。
6.根据权利要求5所述的方法,其特征在于,在所述根据所述模型驱动参数在所述展示窗口中显示所述目标虚拟角色模型之前,还包括:
获取所述编辑窗口的第一端口标识,以及所述展示窗口的第二端口标识;
基于所述第一端口标识与所述第二端口标识建立所述编辑窗口与所述展示窗口的连接;
所述根据所述模型驱动参数在所述展示窗口中显示所述目标虚拟角色模型,包括:
对所述模型驱动参数进行序列化操作,得到传输数据;
将所述传输数据传输推送至所述展示窗口;
对所述传输数据进行反序列化操作,得到所述模型驱动参数;
根据所述模型驱动参数在所述展示窗口显示所述目标虚拟角色模型。
7.根据权利要求3所述的方法,其特征在于,在所述通过所述展示窗口显示所述目标虚拟角色模型之后,还包括:
当接收到对所述展示窗口的移动指令时,根据所述移动指令移动所述展示窗口。
8.根据权利要求1所述的方法,其特征在于,在所述根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型之前,还包括:
当接收到直播指令时,获取直播内容,并在所述用户操作界面上显示所述直播内容;
所述根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型,包括:
根据所述待编辑虚拟角色模型以及所述模型驱动参数,在所述直播内容上叠加显示所述目标虚拟角色模型。
9.根据权利要求1所述的方法,其特征在于,所述基于所述待直播内容和所述目标虚拟角色模型进行直播,包括:
对所述待直播内容进行识别处理,得到多个候选区域,其中,不同候选区域包括不同的直播内容;
基于内容类型从所述多个候选区域中确定目标区域;
通过所述目标区域将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
10.根据权利要求1所述的方法,其特征在于,所述直播指令指示对所述用户操作界面中指定区域的内容进行直播;
所述获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播,包括:
获取所述指定区域中显示的内容,得到所述待直播内容;
将所述目标虚拟角色模型叠加在所述待直播内容上,得到直播画面,并对所述直播画面进行直播。
11.根据权利要求1所述的方法,其特征在于,所述直播指令指示对指定应用和至少一个目标应用进行直播,其中,所述指定应用包括编辑窗口,所述编辑窗口展示所述目标虚拟角色模型;
所述获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播,包括:
获取所述目标应用的应用界面内容,以及所述指定应用的编辑窗口;
将所述编辑窗口叠加在所述应用界面内容上,得到直播画面,并对所述直播画面进行直播。
12.根据权利要求1所述的方法,其特征在于,所述获取模型驱动参数,包括:
采集当前用户的动作信息和声音信息;
基于所述动作信息和所述声音信息构建所述模型驱动参数。
13.根据权利要求1所述的方法,其特征在于,所述用户操作界面展示有模型编辑页面,所述模型编辑页面包括:多个选择控件,不同选择控件用于选择不同预设动作信息;
所述获取模型驱动参数,包括:
基于用户对所述模型编辑页面的选择操作,从所述多个选择控件中确定目标选择控件;
获取所述目标选择控件对应的预设动作信息,得到目标动作信息;
根据所述目标动作信息生成所述模型驱动参数。
14.一种直播装置,其特征在于,所述装置包括:
确定单元,用于确定待编辑虚拟角色模型;
第一显示单元,用于获取模型驱动参数,根据所述待编辑虚拟角色模型以及所述模型驱动参数在用户操作界面上显示目标虚拟角色模型;
第二显示单元,用于当接收到直播指令时,获取所述用户操作界面上的待直播内容,并基于所述待直播内容和所述目标虚拟角色模型进行直播。
15.一种计算机设备,包括存储器,处理器及存储在存储器上并在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至13任一项所述的直播方法。
16.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至13任一项所述的直播方法。
CN202111062910.9A 2021-09-10 2021-09-10 一种直播方法、装置、计算机设备及存储介质 Active CN113824982B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111062910.9A CN113824982B (zh) 2021-09-10 2021-09-10 一种直播方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111062910.9A CN113824982B (zh) 2021-09-10 2021-09-10 一种直播方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN113824982A true CN113824982A (zh) 2021-12-21
CN113824982B CN113824982B (zh) 2024-07-09

Family

ID=78921945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111062910.9A Active CN113824982B (zh) 2021-09-10 2021-09-10 一种直播方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN113824982B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114827652A (zh) * 2022-05-18 2022-07-29 上海哔哩哔哩科技有限公司 虚拟形象开播方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197385A (zh) * 2017-05-31 2017-09-22 珠海金山网络游戏科技有限公司 一种实时虚拟偶像直播方法及***
CN108449640A (zh) * 2018-03-26 2018-08-24 广州虎牙信息科技有限公司 直播视频输出控制方法、装置及存储介质、终端
CN109120985A (zh) * 2018-10-11 2019-01-01 广州虎牙信息科技有限公司 直播中的形象展示方法、装置和存储介质
CN110650354A (zh) * 2019-10-12 2020-01-03 苏州大禹网络科技有限公司 虚拟动漫角色直播方法、***、设备及存储介质
CN111629225A (zh) * 2020-07-14 2020-09-04 腾讯科技(深圳)有限公司 虚拟场景直播的视角切换方法、装置、设备及存储介质
WO2021047420A1 (zh) * 2019-09-11 2021-03-18 广州华多网络科技有限公司 虚拟礼物特效的渲染方法和装置、直播***
CN113132707A (zh) * 2021-04-16 2021-07-16 中德(珠海)人工智能研究院有限公司 一种人物与虚拟装修环境实时动态叠加的方法及***
US20210264563A1 (en) * 2019-04-26 2021-08-26 Tencent Technology (Shenzhen) Company Limited Method and apparatus for displaying face of virtual role, computer device, and readable storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197385A (zh) * 2017-05-31 2017-09-22 珠海金山网络游戏科技有限公司 一种实时虚拟偶像直播方法及***
CN108449640A (zh) * 2018-03-26 2018-08-24 广州虎牙信息科技有限公司 直播视频输出控制方法、装置及存储介质、终端
CN109120985A (zh) * 2018-10-11 2019-01-01 广州虎牙信息科技有限公司 直播中的形象展示方法、装置和存储介质
US20210264563A1 (en) * 2019-04-26 2021-08-26 Tencent Technology (Shenzhen) Company Limited Method and apparatus for displaying face of virtual role, computer device, and readable storage medium
WO2021047420A1 (zh) * 2019-09-11 2021-03-18 广州华多网络科技有限公司 虚拟礼物特效的渲染方法和装置、直播***
CN110650354A (zh) * 2019-10-12 2020-01-03 苏州大禹网络科技有限公司 虚拟动漫角色直播方法、***、设备及存储介质
CN111629225A (zh) * 2020-07-14 2020-09-04 腾讯科技(深圳)有限公司 虚拟场景直播的视角切换方法、装置、设备及存储介质
CN113132707A (zh) * 2021-04-16 2021-07-16 中德(珠海)人工智能研究院有限公司 一种人物与虚拟装修环境实时动态叠加的方法及***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114827652A (zh) * 2022-05-18 2022-07-29 上海哔哩哔哩科技有限公司 虚拟形象开播方法及装置

Also Published As

Publication number Publication date
CN113824982B (zh) 2024-07-09

Similar Documents

Publication Publication Date Title
KR101894573B1 (ko) 3d 디지털 액터형 스마트폰 인터페이스 운용시스템
WO2018153267A1 (zh) 群组视频会话的方法及网络设备
JP2019145108A (ja) 顔に対応する3次元アバターを用いて顔の動きが反映された3dアバターを含むイメージを生成する電子装置
CN110286756A (zh) 视频处理方法、装置、***、终端设备及存储介质
JP2021192222A (ja) 動画インタラクティブ方法と装置、電子デバイス、コンピュータ可読記憶媒体、及び、コンピュータプログラム
KR101306221B1 (ko) 3차원 사용자 아바타를 이용한 동영상 제작장치 및 방법
CN113099298B (zh) 虚拟形象的改变方法、装置和终端设备
US20230419582A1 (en) Virtual object display method and apparatus, electronic device, and medium
WO2020007182A1 (zh) 个性化场景图像的处理方法、装置及存储介质
CN112233211A (zh) 动画制作的方法、装置、存储介质及计算机设备
CN113766168A (zh) 一种互动处理方法、装置、终端及介质
CN112261481A (zh) 互动视频的创建方法、装置、设备及可读存储介质
CN113342435A (zh) 一种表情处理方法、装置、计算机设备及存储介质
US20240248546A1 (en) Controlling augmented reality effects through multi-modal human interaction
CN108415561A (zh) 基于虚拟人的手势交互方法及***
CN114904279A (zh) 数据预处理方法、装置、介质及设备
CN113824982B (zh) 一种直播方法、装置、计算机设备及存储介质
CN112449098B (zh) 一种拍摄方法、装置、终端及存储介质
CN108388399A (zh) 虚拟偶像的状态管理方法及***
CN112149599A (zh) 表情追踪方法、装置、存储介质和电子设备
CN116071452A (zh) 一种风格图像生成方法、装置、计算机设备和存储介质
CN114979789B (zh) 一种视频展示方法、装置以及可读存储介质
EP4314999A1 (en) User-defined contextual spaces
CN108255308A (zh) 一种基于虚拟人的手势交互方法及***
CN114004922B (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
GR01 Patent grant
GR01 Patent grant