声波纹直播方法、装置、服务器、客户端设备及存储介质与流程

文档序号:21398793发布日期:2020-07-07 14:31阅读:224来源:国知局
声波纹直播方法、装置、服务器、客户端设备及存储介质与流程

本申请涉及互联网应用领域,具体而言,涉及一种声波纹直播方法、装置、服务器、客户端设备及存储介质。



背景技术:

随着移动互联网的不断发展,通过语音交流实现多人互动直播的技术在各种应用场景(例如,线上语音会议、线上语音交友等)中的应用愈发广泛,而在具体的语音互动直播过程中,通常需要在主播所持终端设备上实时显示每个主播在发声时的声波纹信息,以提示终端设备当前播放的音频信息属于哪个主播。但就目前而言,终端设备在语音互动直播过程中通常存在音频播放与声波纹显示不同步的现象,其表达出的被播音频与发声主播的关联关系存在准确度不高的问题。



技术实现要素:

有鉴于此,本申请的目的在于提供一种声波纹直播方法、装置、服务器、客户端设备及存储介质,其能够在语音互动直播过程中实现音频播放与声波纹显示的同步直播操作,准确表达被播音频与发声主播之间的关联关系。

为了实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请实施例提供一种声波纹直播方法,应用于直播管理系统,所述直播管理系统包括服务器及多个客户端设备,所述方法包括:

所述服务器获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号;

所述服务器根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中所述待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息;

所述服务器将所述待直播音频流传输给所述互动直播间内每个主播对应的目标客户端设备;

所述目标客户端设备对接收到的所述待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

第二方面,本申请实施例提供一种声波纹直播方法,应用于直播管理系统中的服务器,所述方法包括:

获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号;

根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中所述待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息;

将所述待直播音频流传输给所述互动直播间内每个主播对应的目标客户端设备,使所述目标客户端设备在对所述待直播音频流中的每个待直播音频帧进行音频播放时,按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

第三方面,本申请实施例提供一种声波纹直播方法,应用于直播管理系统中的客户端设备,所述方法包括:

向服务器上传所述客户端设备在互动直播间中发出的待直播语音信号;

接收所述服务器根据接收到的与所述互动直播间对应的待直播语音信号生成的待直播音频流,其中所述待直播音频流的每个待直播音频帧记录有与自身音频内容对应的待直播语音信号的主播信息及音量信息;

对接收到的所述待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

第四方面,本申请实施例提供一种声波纹直播装置,应用于直播管理系统中的服务器,所述装置包括:

语音获取模块,用于获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号;

音频生成模块,用于根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中所述待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息;

音频传输模块,用于将所述待直播音频流传输给所述互动直播间内每个主播对应的目标客户端设备,使所述目标客户端设备在对所述待直播音频流中的每个待直播音频帧进行音频播放时,按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

第五方面,本申请实施例提供一种声波纹直播装置,应用于直播管理系统中的客户端设备,所述装置包括:

语音上传模块,用于向服务器上传所述客户端设备在互动直播间中发出的待直播语音信号;

音频接收模块,用于接收所述服务器根据接收到的与所述互动直播间对应的待直播语音信号生成的待直播音频流,其中所述待直播音频流的每个待直播音频帧记录有与自身音频内容对应的待直播语音信号的主播信息及音量信息;

播放显示模块,用于对接收到的所述待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

第六方面,本申请实施例提供一种服务器,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令,以实现前述实施方式所述的声波纹直播方法。

第七方面,本申请实施例提供一种客户端设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令,以实现前述实施方式所述的声波纹直播方法。

第八方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式所述的声波纹直播方法。

本申请具有以下有益效果:

本申请通过服务器获取同一互动直播间中至少一个主播通过自身的目标客户端设备上传的待直播语音信号,并由服务器基于获取到的待直播语音信号以及每个待直播语音信号的音量信息及主播信息生成对应的待直播音频流,使该待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息,而后将该待直播音频流传输给该互动直播间所对应的每个目标客户端设备,由目标客户端对接收到的待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案,从而达到音频播放与声波纹显示的同步直播效果,准确表达了被播音频与发声主播的关联关系。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的直播管理系统的系统组成示意图;

图2为本申请实施例提供的服务器的结构组成示意图;

图3为本申请实施例提供的客户端设备的结构组成示意图;

图4为本申请实施例提供的声波纹直播方法的流程示意图之一;

图5为本申请实施例提供的位于客户端设备处的一种声波纹直播示例图;

图6为图4中的步骤s320包括的子步骤的流程示意图;

图7为图4中的步骤s340包括的子步骤的流程示意图;

图8为本申请实施例提供的声波纹直播方法的流程示意图之二;

图9为图8中的步骤s420包括的子步骤的流程示意图;

图10为本申请实施例提供的声波纹直播方法的流程示意图之三;

图11为图10中的步骤s530包括的子步骤的流程示意图;

图12为本申请实施例提供的第一声波纹直播装置的功能模块示意图;

图13为本申请实施例提供的第二声波纹直播装置的功能模块示意图。

图标:10-直播管理系统;11-服务器;12-客户端设备;111-第一存储器;112-第一处理器;113-第一通信单元;121-第二存储器;122-第二处理器;123-第二通信单元;124-拾音单元;125-显示单元;126-播音单元;100-第一声波纹直播装置;200-第二声波纹直播装置;110-语音获取模块;120-音频生成模块;130-音频传输模块;210-语音上传模块;220-音频接收模块;230-播放显示模块。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

发明人通过辛苦调研发现,目前行业主流在语音互动直播过程中实现声波纹显示时,通常是由主播通过自身的终端设备向服务器上传其语音信号,由服务器对属于同一直播间的至少一个主播所发出的语音信号进行筛选,确定出同一直播间内不同主播所发出的语音信号的音量信息,而后由该服务器对同一直播间的语音信号进行混音后通过音频传输途径传输到该直播间所涉及的每个主播处进行音频播放,同时由该服务器采用另外的通讯通道(比如,信令通道)传输该直播间所对应的每个语音信号的主播信息及音量信息到各主播处进行声波纹显示。其中,主播信息用于表示对应主播的身份信息,音量信息用于表示对应语音信号被采集到时所表现出的音量大小。

在此过程中,声波纹的具体显示情况是与音量信息的大小正相关的,因经服务器混音并传输给主播的音频信息是属于一路音频,而被传输的音量信息是多路语音信号各自对应的内容,主播处的终端设备无法确定在播放某段音频信息时应该选择哪个主播的音量信息进行声波纹显示,也无法确定应该选择何等大小的音量信息来控制声波纹显示幅度,因此存在音频播放与声波纹显示不同步的现象,其表达出的被播音频与发声主播的关联关系存在准确度不高的问题。同时,也因服务器需划分两条不同的传输路径并消耗双份的信息传输资源来分别传输音频信息和各主播的音量信息给同一主播,存在信号传输损耗大、信号传输成本高的问题。

因此,如何提供一种能够在语音互动直播过程中实现音频播放与声波纹显示的同步直播操作,准确表达被播音频与发声主播之间的关联关系,同时降低信号传输损耗及信号传输成本的声波纹直播显示方案,便是对本领域技术人员而言亟需解决的技术问题。为此,发明人通过提供本申请所对应的声波纹直播方法、装置、服务器、客户端设备及存储介质解决上述技术问题。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请参照图1,图1是本申请实施例提供的直播管理系统10的系统组成示意图。在本申请实施例中,所述直播管理系统10可用于实现多人语音互动直播,其包括服务器11及多个客户端设备12。其中,所述服务器11用于对各客户端设备12的直播内容进行管控,所述客户端设备12用于采集主播语音信号、显示发声主播的声波纹以及播放互动音频信息,以实现语音互动直播操作及声波纹显示操作。

在本实施例中,同一直播管理系统10下的客户端设备12为安装有同款直播应用软件(比如,虎牙直播app、龙珠直播app等)的终端设备。主播可通过在自身的客户端设备12上登录其主播账号,而后通过该客户端设备12加入到其他主播开启的互动直播间中进行语音互动,或通过该客户端设备12开启一个互动直播间,并等待其他主播加入该互动直播间进行语音互动。客户端设备12所显示的声波纹图案是与其获取到的主播信息及音量信息对应的,不同主播的声波纹图案在形状、颜色及大小中的任意一项或多项组合上存在差异,不同音量大小对应声波纹的不同波动幅度,音量越大则对应波动幅度越大。当音量为0时不显示声波纹,而当音量数值达到预设音量上限时,对应的声波纹的波动幅度最大。其中所述终端设备可以是,但不限于,包括显示屏的智能手机、平板电脑及个人计算机等。在本实施例的一种实施方式中,所述预设音量上限为100。

在本实施例中,所述服务器11与多个登录有主播账号的客户端设备12通信连接,用以获取每个客户端设备12上传的对应主播的语音信号,并确定出属于同一互动直播间的至少一个客户端设备12所上传的语音信号,以及该互动直播间下的每个语音信号所属的主播信息及音量信息,从而针对获取到的同一互动直播间的所有语音信号进行音频整合、相关信息填充及音频封装,得到同时记录有具体音频内容及其相关信息的音频流,其中上述相关信息即为对应音频内容所属的主播信息及音量信息。

接着,所述服务器11会将处理得到的音频流传输给该互动直播间所对应的所有客户端设备12,使每个接收到音频流的客户端设备12能够一帧帧地对该音频流进行音频播放,并在播放该音频流中的每一个音频帧时,通过显示屏针对与该音频帧的音频内容对应的主播信息及音量信息执行匹配的声波纹图案显示操作,达到音频播放操作与声波纹显示操作同步直播的效果,并准确地表达被播音频与实际发声主播的关联关系。其中,因所述服务器11传输给客户端设备12的音频流属于音频信息、主播信息及音量信息一体化的数据,只需占用一条通讯通道即可针对单个主播完成数据传输任务,从而降低了服务器11与客户端设备12之间的信号传输损耗及信号传输成本。

可选地,请参照图2,图2是本申请实施例提供的服务器11的结构组成示意图。在本申请实施例中,所述服务器11包括第一声波纹直播装置100、第一存储器111、第一处理器112及第一通信单元113。所述第一存储器111、所述第一处理器112及所述第一通信单元113各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述第一存储器111、所述第一处理器112及所述第一通信单元113这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,所述第一存储器111可用于存储程序,所述第一处理器112在接收到执行指令后,可相应地执行所述程序。其中,所述第一存储器111可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,所述第一存储器111还可用于存储已创建的互动直播间的房间标识,以及每个互动直播间与各主播账号之间的关联关系,其中所述房间标识用于表示对应互动直播间的身份标识,所述互动直播间与各主播账号之间的关联关系用于表示对应主播是否参与到该互动直播间中进行语音互动直播。

在本实施例中,所述第一处理器112可以是一种具有信号的处理能力的集成电路芯片。所述第一处理器112可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)及网络处理器(networkprocessor,np)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。

在本实施例中,所述第一通信单元113用于通过网络建立所述服务器11与其他电子设备之间的通信连接,并通过网络进行数据交互。

在本实施例中,所述第一声波纹直播装置100包括至少一个能够以软件或固件的形式存储于所述第一存储器111中或固化在所述服务器11的操作系统中的软件功能模块。所述第一处理器112可用于执行所述第一存储器111存储的可执行模块,例如所述第一声波纹直播装置100所包括软件功能模块及计算机程序等。所述服务器11通过所述第一声波纹直播装置100获取同一互动直播间内至少一个主播上传的语音信号,并确定该互动直播间下的每个语音信号所属的主播信息及音量信息,而后针对该互动直播间的所有语音信号生成同时记录音频内容及对应的主播信息和音量信息的音频流,并将该音频流传输到该互动直播间下的每个主播处,使每个主播通过自身的客户端设备12一帧帧地对该音频流进行音频播放,并在播放该音频流中的每一个音频帧时,通过显示屏实时针对与该音频帧的音频内容对应的主播信息及音量信息执行匹配的声波纹图案显示操作,达到音频播放操作与声波纹显示操作同步直播的效果,准确地表达被播音频与实际发声主播的关联关系,并降低了服务器11在语音互动直播过程中的信号传输损耗及信号传输成本。

可以理解的是,图2所示的方框示意图仅为服务器11的一种结构组成示意图,所述服务器11还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

可选地,请参照图3,图3是本申请实施例提供的客户端设备12的结构组成示意图。在本申请实施例中,所述客户端设备12包括第二声波纹直播装置200、第二存储器121、第二处理器122、第二通信单元123、拾音单元124、显示单元125及播音单元126。所述第二存储器121、所述第二处理器122、所述第二通信单元123、所述拾音单元124、所述显示单元125及所述播音单元126各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述第二存储器121、所述第二处理器122、所述第二通信单元123、所述拾音单元124、所述显示单元125及所述播音单元126这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,所述第二存储器121与上述第一存储器111的器件选取可以相同,也可以不同。所述第二存储器121也可用于存储程序,所述第二处理器122在接收到执行指令后,可相应地执行所述程序。其中,所述第二存储器121还可用于存储对应客户端设备12针对语音互动直播业务所登录的主播账号。

在本实施例中,所述第二处理器122如上述第一处理器112一般,也可以是一种具有信号的处理能力的集成电路芯片。所述第二处理器122可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)及网络处理器(networkprocessor,np)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。

在本实施例中,所述第二通信单元123用于通过网络建立所述客户端设备12与其他电子设备之间的通信连接,并通过网络进行数据交互。

在本实施例中,所述拾音单元124包括麦克风,所述拾音单元124通过所述麦克风对主播进行语音信号采集。

在本实施例中,所述显示单元125包括显示屏,所述显示单元125通过所述显示屏为主播提供可视化界面,并在该可视化界面上针对主播选定的互动直播间进行声波纹显示操作。

在本实施例中,所述播音单元126包括扬声器,所述播音单元126通过所述扬声器进行音频播放。

在本实施例中,所述第二声波纹直播装置200包括至少一个能够以软件或固件的形式存储于所述第二存储器121中或固化在所述客户端设备12的操作系统中的软件功能模块。所述第二处理器122可用于执行所述第二存储器121存储的可执行模块,例如所述第二声波纹直播装置200所包括软件功能模块及计算机程序等。所述客户端设备12在接收到服务器11发送的同时记录音频内容及对应的主播信息和音量信息的音频流时,可通过所述第二声波纹直播装置200协调所述显示单元125与所述播音单元126的工作状况,针对获取到的音频流按照一帧帧地进行音频播放,并在播放音频帧时通过显示屏实时针对与该音频帧的音频内容对应的主播信息及音量信息执行匹配的声波纹图案显示操作,达到音频播放操作与声波纹显示操作同步直播的效果,准确地表达被播音频与实际发声主播的关联关系。

可以理解的是,图3所示的方框示意图仅为客户端设备12的一种结构组成示意图,所述客户端设备12还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。

在本申请中,为确保上述直播管理系统10能够在语音互动直播过程中实现音频播放与声波纹显示的同步直播操作,准确展现被播音频与发声主播之间的关联关系,并降低直播过程中的信号传输损耗及信号传输成本,本申请通过提供应用于上述直播管理系统10的声波纹直播方法实现上述功能。下面对本申请提供的声波纹直播方法进行相应描述。

请参照图4,图4是本申请实施例提供的声波纹直播方法的流程示意图之一。在本申请实施例中,图4所示的声波纹直播方法可以包括步骤s310~步骤s340。

步骤s310,服务器获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号。

在本实施例中,所述目标客户端设备12为处于同一互动直播间的所有主播各自持有的客户端设备12。以图1中的客户端设备a、客户端设备b及客户端设备c为例,若主播a与主播b处于同一互动直播间1,则客户端设备a与客户端设备b即为互动直播间1所对应的目标客户端设备12,而当主播a与主播c处于同一互动直播间2,则客户端设备a与客户端设备c即为互动直播间2所对应的目标客户端设备12。

其中,主播可通过自身持有的客户端设备12向服务器11申请创建一个目标互动直播间或申请加入某个已创建的目标互动直播间,此时服务器11会建立该客户端设备12所登录的主播账号与目标互动直播间的房间信息之间的对应关系,而后向该客户端设备12传输与目标互动直播间对应的可视化界面内容及语音互动信息进行直播展示。当主播通过自身所持客户端设备12在目标互动直播间内发出语音时,该客户端设备12会采集主播的语音信号,并在该语音信号上加载主播信息及目标互动直播间的房间信息,而后将加载后的语音信号上传给所述服务器11,由服务器11对接收到的每个语音信号进行音频解码、房间信息识别及主播信息识别,以确定其接收到的语音信号是属于哪个互动直播间下的哪个主播。在此过程中,所述服务器11可能在同一时间仅接收到同一互动直播间下的一个主播的语音信号,也可能会在同一时间接收到同一互动直播间下的多个主播的语音信号。

以图1中的客户端设备a、客户端设备b及客户端设备c为例,若主播a、主播b及主播c均处于同一互动直播间3,则当主播a通过客户端设备a发出语音时,客户端设备a会采集主播a发出的语音信息,并在语音信息上加载主播a的主播账号及互动直播间3的房间号,得到对应的待直播语音信号,而后由客户端设备a将产生的待直播语音信号发送给服务器11,使服务器11通过对该待直播语音信号进行主播账号识别及房间号识别,确定该待直播语音信号是互动直播间3下的主播a发送的。

步骤s320,服务器根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息。

在本实施例中,所述服务器11在确定每个待直播语音信号所属的主播信息的过程中,也会相应地确定出该待直播语音信号的音量信息,其中因语音信号是由至少一个语音帧组成的,不同语言帧所对应的音量强度可以相同,也可以不同,则一个语音信号的音量信息包括该语音信号中每个语音帧的音量信息。所述服务器11在确定出其当前接收到的每个待直播语音信号的主播信息、房间信息及音量信息后,会根据房间信息对属于同一互动直播间的所有待直播语音信号进行音频整合,并在音频整合过程中将每个待直播语音信号在不同语音帧的音量信息及主播信息加载到音频内容匹配的音频帧中,最后对完成信息加载的所有音频帧进行音频封装,得到当前的与该互动直播间对应的同时记录有语音互动内容及对应的主播信息和音量信息的待直播音频流,使所述待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息。其中,若某个音频帧在音频整合过程中是由多个语音帧整合得到的,则该音频帧的音频内容表现了这多个语音帧的音频内容,此时需要将这多个语音帧各自对应的主播信息及音量信息加载到该音频帧中。

以图1中的客户端设备a、客户端设备b及客户端设备c为例,若主播a、主播b及主播c均处于同一互动直播间3,则当某一时刻仅主播a通过客户端设备a发出语音时,所述服务器11在接收到来自客户端设备a的待直播语音信号后,会直接确定该待直播语音信号所对应的主播信息是主播a,以及该待直播语音信号的每个语音帧的音量强度,接着针对该待直播语音信号在每个对应的语音帧中加载主播a的主播信息及音量强度,而后执行音频封装操作,得到当前的待直播音频流。

而当某一时刻主播a与主播b均发出有语音时,所述服务器11在接收到来自客户端设备a与客户端设备b的两个待直播语音信号后,会直接确定两个待直播语音信号各自对应的主播信息,以及每个待直播语音信号下的每个语音帧的音量强度,接着将两个待直播语音信号进行音频混合得到多个音频帧,并在每个音频帧中加载其音频内容所涉及到的语音帧的主播信息及音量强度,而后执行音频封装操作,得到当前的待直播音频流。

在本实施例的一种实施方式中,上述待直播音频流可采用flv流媒体格式封装得到,其中该待直播音频流中每帧待直播音频帧的具体音频内容可封装在flv流媒体格式的音频标签内,并可将对应的主播信息及音量信息封装在flv流媒体格式的脚本标签内。其中,主播信息与音量信息在被封装到待直播音频流中时可采用字符串“主播账号_音量强度”的形式进行表达,没有发出语音的主播或音量强度为0的情况无需封装。

步骤s330,服务器将待直播音频流传输给互动直播间内每个主播对应的目标客户端设备。

在本实施例中,所述服务器11在确定出某个互动直播间当前的待直播音频流后,会将该待直播音频流传输给登录有与该互动直播间存在关联关系的主播账号的目标客户端设备12,以通过同一通讯通道传递具体的音频内容及发声主播的主播信息和音量信息,降低直播过程中的信号传输损耗及信号传输成本。

步骤s340,目标客户端设备对接收到的待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

在本实施例中,所述服务器11通过直接将音频内容与发声主播的主播信息和音量信息进行绑定,并通过向客户端设备12传输由音频内容、主播信息及音量信息一体化得到的待直播音频流,使客户端设备12在对待直播音频流进行播放的过程中,会一边播放待直播音频帧的音频内容,一边显示与该待直播音频帧的音频内容绑定的主播信息及音量信息所匹配的声波纹图案,达到播放操作与声波纹显示操作同步直播的效果,准确地表达被播音频与实际发声主播的关联关系。其中,若某个待直播音频帧的音频内容涉及多个主播,则该待直播音频帧被播放时会相应地显示这多个主播各自的声波纹图案。

在本申请实施例中,所述直播管理系统10通过执行上述声波纹直播方法,确保音频播放操作与声波纹显示操作能够在语音互动直播过程中达到同步直播的效果,能够在合适的时间点准确地表达出当时播放的音频与发声主播之间的关联关系,同时在一定程度上降低服务器11向客户端设备12传递音频内容、发声主播的主播信息及音量信息的信号传输损耗及信号传输成本。

下面以图5结合图1为例,对上述声波纹显示方法进行举例说明,其中图5是本申请实施例提供的位于客户端设备12处的一种声波纹直播示例图。当直播管理系统10是基于虎牙直播app实现语音互动直播业务,且主播“傲姑娘”、“青柚”、“搞搞”、“甜汐”、“拾柒”、“小猫妤”、“晚晚”及“阿西”各自通过客户端设备12加入了虎牙直播间77213时,如果主播“傲姑娘”与主播“阿西”在同一时间点通过各自的客户端设备12发出了语音,则主播“傲姑娘”处的客户端设备12会采集主播“傲姑娘”的待直播语音信号发送给服务器11,主播“阿西”处的客户端设备12会采集主播“阿西”的待直播语音信号发送给服务器11。

此时,所述服务器11会对接收到所有待直播语音信号进行房间号识别,确定出与虎牙直播间77213对应的来自主播“傲姑娘”及主播“阿西”的待直播语音信号,而后根据这两个待直播语音信号以及各自的音量信息和主播信息生成同时记录有主播“傲姑娘”与主播“阿西”的语音音频内容、主播信息及音量信息的待直播音频流,而后所述服务器11会将该待直播音频流发送给虎牙直播间77213的每个主播。虎牙直播间77213的每个主播可通过各自的客户端设备12对该待直播音频流的音频内容进行播放,并在每个音频帧被播放时在显示屏上对该音频帧所涉及到的主播“傲姑娘”与主播“阿西”的声波纹图案进行显示(如图5所示),其中声波纹图案的波动幅度与各自主播发声的音量大小相关。

在本申请中,为确保所述直播管理系统10中的服务器11能够生成音频信息、主播信息及音量信息一体化的待直播音频流,使每个待直播音频帧能够在记录其音频内容的同时记录其对应的发声主播信息和具体音量信息,保证客户端设备12处的音频播放操作与声波纹显示操作的同步直播效果,本申请通过提供应用于所述直播管理系统10中的服务器11的音频流生成方案实现上述功能,下面对所述音频流生成方案进行相应描述。

请参照图6,图6是图4中的步骤s320包括的子步骤的流程示意图。在申请实施例中,步骤s320包括子步骤s321~子步骤s325。

子步骤s321,根据每个待直播语音信号中的每个语音帧的显示时间戳,按照时间先后顺序对所有语音帧进行帧排序。

在本实施例中,所述显示时间戳(presentationtimestamp,pts)用于指示对应报文帧被设备播放时的时间点。所述服务器11在从接收到的语音信号中确定出同一互动直播间的待直播语音信号后,会对该互动直播间所对应的所有待直播语音信号的语音帧按照显示时间戳进行时间排序,得到与该互动直播间对应的帧排序结果。

子步骤s322,根据帧排序结果计算相邻两个语音帧的显示时间戳之间的时长差值。

在本实施例中,相邻两个语音帧的显示时间戳之间的时长差值用于体现相邻两个语音帧的发声时刻的临近情况。

子步骤s323,将相邻的对应时长差值不大于预设时差阈值的多个语音帧混音成一个音频数据,并将对应时长差值大于预设时差阈值的语音帧单独作为一个音频数据。

在本实施例中,若存在至少两个相邻的语音帧各自对应的所有时长差值不大于预设时差阈值,则表明这至少两个相邻的语音帧可以混音并共用同一个显示时间戳;若某个语音帧与相邻的语音帧对应的时长差值均大于预设时长阈值,则表明该语音帧无法混音。比如,当帧排序结果按照时间先后顺序体现为语音帧1、语音帧2、语音帧3、语音帧4、语音帧5时,如果语音帧1与语音帧2各自的显示时间戳之间的时长差值小于预设时差阈值,语音帧2与语音帧3各自的显示时间戳之间的时长差值小于预设时差阈值,语音帧3与语音帧4各自的显示时间戳之间的时长差值大于预设时差阈值,语音帧4与语音帧5各自的显示时间戳之间的时长差值大于预设时差阈值,那么语音帧1、语音帧2、语音帧3可以混音为一个音频数据,而语音帧4直接作为一个音频数据存在,语音帧5不与语音帧4混音。

子步骤s324,针对每个音频数据,根据该音频数据涉及到的每个语音帧的显示时间戳,计算其对应的目标显示时间戳。

在本实施例中,若某个音频数据是由多个语音帧混音得到时,可选择这多个语音帧各自的显示时间戳中的任意一个显示时间戳作为该音频数据的目标显示时间戳,也可直接选取这多个语音帧在帧排序结果中排序最前面的那个语音帧的显示时间戳作为该音频数据的目标显示时间戳,还可采用这多个语音帧的显示时间戳之间的均值作为该音频数据的目标显示时间戳,具体的时间戳确定方式可根据需求进行相应的配置。若某个音频数据是单独的一个语音帧构成,则可直接将该语音帧的显示时间戳作为该音频数据的目标显示时间戳。

子步骤s325,针对每个音频数据,对该音频数据以及其对应的目标显示时间戳和语音帧的主播信息及音量信息进行音频封装,得到待直播音频流中的一个待直播音频帧。

在本实施例中,所述服务器11通过在同一音频帧格式中封装一份音频数据、该音频数据的目标显示时间戳,以及该音频数据所对应的语音帧的主播信息和音量信息的方式,构建形成一个待直播音频帧。在本实施例的一种实施方式中,当待直播音频帧采用flv流媒体格式构建时,其对应的目标显示时间戳、主播信息和音量信息会同时封装在该flv流媒体格式的脚本标签内。

在本申请实施例中,所述服务器11可通过执行图6所示的各个子步骤,构建音频信息、主播信息及音量信息一体化的待直播音频流,使每个待直播音频帧能够在记录其音频内容的同时记录其对应的发声主播信息和具体音量信息,保证客户端设备12处的音频播放操作与声波纹显示操作的同步直播效果。

在本申请中,为确保所述直播管理系统10中的客户端设备12在接收到音频信息、主播信息及音量信息一体化的待直播音频流时,能够正确地对该待直播音频流进行直播处理,以达到音频播放操作与声波纹显示操作的同步直播效果,准确地表达被播音频与实际发声主播的关联关系,本申请通过提供应用于所述直播管理系统10中的客户端设备12的音频流处理方案实现上述功能,下面对所述音频流处理方案进行相应描述。

请参照图7,图7是图4中的步骤s340包括的子步骤的流程示意图。在本申请实施例中,步骤s340包括子步骤s341~子步骤s343。

子步骤s341,按照待直播音频流中每个待直播音频帧的目标显示时间戳,依次对每个待直播音频帧进行音频播放。

在本实施例中,所述客户端设备12在接收到待直播音频流后,会对其进行解码,得到每个待直播音频帧的具体音频内容、目标显示时间戳、发声主播信息及每个发声主播在该音频帧处的音量大小信息,而后开启一个定时器,以通过该定时器检测当前时刻是否到达每个待直播音频帧的目标显示时间戳,并在到达一个待直播音频帧的目标显示时间戳时,通过播音单元126对该待直播音频帧的具体音频内容进行播放。

子步骤s342,针对每个处于播放状态的待直播音频帧,实时计算真实播放时刻与该待直播音频帧的目标显示时间戳之间的真实播放时差。

在本实施例中,所述真实播放时刻为客户端设备12在进行音频播放过程中的真实当前时刻,其数值是随时更新的。所述客户端设备12在对当前的某个待直播音频帧进行音频播放时,便会确定当前时刻与该音频帧的目标显示时间戳之间的真实播放时差,以通过该真实播放时差判断是否即将开启下一待直播音频帧的音频播放。

子步骤s343,若真实播放时差不小于该待直播音频帧所对应的音频播放时差,则回调下一个待直播音频帧的主播信息及音量信息进行声波纹图案显示。

在本实施例中,所述音频播放时差是随着音频帧播放随时更新的,其数值与服务器11和客户端设备12之间的通信状况相关,用于表示客户端设备12播放对应音频帧时的音频播放延迟状况。所述客户端设备12在确定出当前播放的待直播音频帧所对应的真实播放时差后,通过将该真实播放时差与所述待直播音频帧所对应的音频播放时差进行比较,判断下一待直播音频帧是否要开始播放。

如果真实播放时差不小于对应的音频播放时差,则表明下一待直播音频帧的音频内容即将播放,此时所述客户端设备12可通过回调下一个待直播音频帧的主播信息及音量信息进行声波纹图案显示,以确保声波纹显示操作与音频播放操作能够达到同步直播的效果,声波纹显示操作能够准确表达被播音频与发声主播之间的关联关系。

在本申请实施例中,所述客户端设备12可通过执行图7所示的各个子步骤,对接收到的待直播音频流进行正确地直播处理,以确保声波纹显示操作与音频播放操作能够达到同步直播的效果,最终的声波纹显示操作能够准确表达被播音频与发声主播之间的关联关系。

在本申请中,为确保所述服务器11能够配合同一直播管理系统10下的各个客户端设备12,在语音互动直播过程中实现声波纹显示操作与音频播放操作的同步直播效果,确保声波纹显示操作能够准确表达被播音频与实际发声主播的关联关系,并降低直播过程中的信号传输损耗及信号传输成本,本申请通过提供直接应用于所述服务器11的声波纹直播方法实现上述功能。下面对应用于所述服务器11的声波纹直播方法进行相关描述。

请参照图8,图8是本申请实施例提供的声波纹直播方法的流程示意图之二。在本申请实施例中,图8所示的声波纹直播方法可以包括步骤s410~步骤s430。

步骤s410,获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号。

步骤s420,根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息。

步骤s430,将待直播音频流传输给互动直播间内每个主播对应的目标客户端设备,使目标客户端设备在对待直播音频流中的每个待直播音频帧进行音频播放时,按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

在本申请实施例中,上述步骤s410~步骤s430的执行过程可参照上文中对图4所示的各项步骤的相关描述,在此就不再赘述了。所述服务器11通过执行上述步骤s410~步骤s430,配合同一直播管理系统10下的各个客户端设备12实现声波纹显示操作与音频播放操作的同步直播效果,并准确表达被播音频与实际发声主播的关联关系,降低直播过程中的信号传输损耗及信号传输成本。

在本申请实施例中,为确保所述服务器11在执行图8所示的声波纹直播方法的过程中能够正常生成音频信息、主播信息及音量信息一体化的待直播音频流,本申请实施例通过提供上述步骤s420的具体执行细节实现上述功能。下面对上述步骤s420的具体执行细节进行相关描述。

请参照图9,图9是图8中的步骤s420包括的子步骤的流程示意图。在本实施例中,步骤s420可以包括子步骤s421~子步骤s425。

子步骤s421,根据每个待直播语音信号中的每个语音帧的显示时间戳,按照时间先后顺序对所有语音帧进行帧排序。

子步骤s422,根据帧排序结果计算相邻两个语音帧的显示时间戳之间的时长差值。

子步骤s423,将相邻的对应时长差值不大于预设时差阈值的多个语音帧混音成一个音频数据,并将对应时长差值大于预设时差阈值的语音帧单独作为一个音频数据。

子步骤s424,针对每个音频数据,根据该音频数据涉及到的每个语音帧的显示时间戳,计算其对应的目标显示时间戳。

子步骤s425,针对每个音频数据,对该音频数据以及其对应的目标显示时间戳和语音帧的主播信息及音量信息进行音频封装,得到待直播音频流中的一个待直播音频帧。

在本实施例中,上述子步骤s421~子步骤s425的具体执行过程可参照上文对子步骤s321~子步骤s325的详细描述,在此就不再赘述了。所述服务器11通过执行上述子步骤s421~子步骤s425正常生成音频信息、主播信息及音量信息一体化的待直播音频流,使每个待直播音频帧能够在记录其音频内容的同时记录其对应的发声主播信息和具体音量信息,保证客户端设备12处的音频播放操作与声波纹显示操作的同步直播效果。

在本申请中,为确保所述客户端设备12能够配合同一直播管理系统10下的服务器11,在语音互动直播过程中实现声波纹显示操作与音频播放操作的同步直播效果,确保自身执行的声波纹显示操作能够准确表达被播音频与实际发声主播的关联关系,本申请通过提供直接应用于所述客户端设备12的声波纹直播方法实现上述功能。下面对应用于所述客户端设备12的声波纹直播方法进行相关描述。

请参照图10,图10是本申请实施例提供的声波纹直播方法的流程示意图之三。在本申请实施例中,图10所示的声波纹直播方法可以包括步骤s510~步骤s530。

步骤s510,向服务器上传客户端设备在互动直播间中发出的待直播语音信号。

步骤s520,接收服务器根据接收到的与互动直播间对应的待直播语音信号生成的待直播音频流,其中待直播音频流的每个待直播音频帧记录有与自身音频内容对应的待直播语音信号的主播信息及音量信息。

步骤s530,对接收到的待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

在本申请实施例中,上述步骤s510~步骤s530的执行过程可参照上文中对图4所示的各项步骤的相关描述,在此就不再赘述了。所述客户端设备12通过执行上述步骤s510~步骤s530,配合同一直播管理系统10下的服务器11实现声波纹显示操作与音频播放操作的同步直播效果,确保自身执行的声波纹显示操作能够准确表达被播音频与实际发声主播的关联关系。

在本申请实施例中,为确保所述客户端设备12在执行图10所示的声波纹直播方法的过程中能够正常处理待直播音频流,本申请实施例通过提供上述步骤s530的具体执行细节实现上述功能。下面对上述步骤s530的具体执行细节进行相关描述。

请参照图11,图11是图10中的步骤s530包括的子步骤的流程示意图。在本实施例中,步骤s530可以包括子步骤s531~子步骤s533。

子步骤s531,按照待直播音频流中每个待直播音频帧的目标显示时间戳,依次对每个待直播音频帧进行音频播放。

子步骤s532,针对每个处于播放状态的待直播音频帧,实时计算真实播放时刻与该待直播音频帧的目标显示时间戳之间的真实播放时差。

子步骤s533,若真实播放时差不小于该待直播音频帧所对应的音频播放时差,则回调下一个待直播音频帧的主播信息及音量信息进行声波纹图案显示。

在本实施例中,上述子步骤s531~子步骤s533的具体执行过程可参照上文对子步骤s341~子步骤s343的详细描述,在此就不再赘述了。所述客户端设备12通过执行上述子步骤s531~子步骤s533正常处理待直播音频流,以在语音互动直播过程中实现声波纹显示操作与音频播放操作的同步直播效果,确保自身执行的声波纹显示操作能够准确表达被播音频与实际发声主播的关联关系。

在本申请中,为确保所述服务器11所包括的第一声波纹直播装置100能够正常实施,本申请通过对所述第一声波纹直播装置100进行功能模块划分的方式实现其功能。下面对本申请提供的第一声波纹直播装置100的具体组成进行相应描述。

请参照图12,图12为本申请实施例提供的第一声波纹直播装置100的功能模块示意图。在本申请实施例中,所述第一声波纹直播装置100可以包括语音获取模块110、音频生成模块120及音频传输模块130。

语音获取模块110,用于获取同一互动直播间内至少一个主播通过对应的目标客户端设备上传的待直播语音信号。

音频生成模块120,用于根据每个待直播语音信号的音量信息及主播信息,对获取到的所有待直播语音信号进行音频整合及音频封装,得到对应的待直播音频流,其中待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息。

音频传输模块130,用于将待直播音频流传输给互动直播间内每个主播对应的目标客户端设备,使目标客户端设备在对待直播音频流中的每个待直播音频帧进行音频播放时,按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

需要说明的是,本申请实施例所提供的第一声波纹直播装置100,其基本原理及产生的技术效果与前述应用于服务器11的声波纹直播方法相同,为简要描述,本实施例部分未提及之处,可参考上述的针对声波纹直播方法的描述内容。

在本申请中,为确保所述客户端设备12所包括的第二声波纹直播装置200能够正常实施,本申请通过对所述第二声波纹直播装置200进行功能模块划分的方式实现其功能。下面对本申请提供的第二声波纹直播装置200的具体组成进行相应描述。

请参照图13,图13是本申请实施例提供的第二声波纹直播装置200的功能模块示意图。在本申请实施例中,所述第二声波纹直播装置200可以包括语音上传模块210、音频接收模块220及播放显示模块230。

语音上传模块210,用于向服务器上传客户端设备在互动直播间中发出的待直播语音信号。

音频接收模块220,用于接收服务器根据接收到的与互动直播间对应的待直播语音信号生成的待直播音频流,其中待直播音频流的每个待直播音频帧记录有与自身音频内容对应的待直播语音信号的主播信息及音量信息。

播放显示模块230,用于对接收到的待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案。

需要说明的是,本申请实施例所提供的第二声波纹直播装置200,其基本原理及产生的技术效果与前述应用于客户端设备12的声波纹直播方法相同,为简要描述,本实施例部分未提及之处,可参考上述的针对声波纹直播方法的描述内容。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,在本申请实施例提供的一种声波纹直播方法、装置、服务器、客户端设备及存储介质中,本申请通过服务器获取同一互动直播间中至少一个主播通过自身的目标客户端设备上传的待直播语音信号,并由服务器基于获取到的待直播语音信号以及每个待直播语音信号的音量信息及主播信息生成对应的待直播音频流,使该待直播音频流中的每个待直播音频帧记录有与自身音频内容对应的主播信息及音量信息,而后将该待直播音频流传输给该互动直播间所对应的每个目标客户端设备,由目标客户端对接收到的待直播音频流进行音频播放,并在每个待直播音频帧被播放时按照其记录的主播信息及音量信息显示对应主播的声波纹图案,从而达到音频播放与声波纹显示的同步直播效果,准确表达了被播音频与发声主播的关联关系。同时,通过使服务器传输给客户端设备的音频流属于音频信息、主播信息及音量信息一体化的数据,只需占用一条通讯通道即可针对单个主播完成数据传输任务,从而降低了服务器与客户端设备之间的信号传输损耗及信号传输成本。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1