CN111294551B - 进行音视频传输的方法、装置、设备及存储介质 - Google Patents
进行音视频传输的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111294551B CN111294551B CN202010115254.3A CN202010115254A CN111294551B CN 111294551 B CN111294551 B CN 111294551B CN 202010115254 A CN202010115254 A CN 202010115254A CN 111294551 B CN111294551 B CN 111294551B
- Authority
- CN
- China
- Prior art keywords
- audio
- video
- target
- video data
- sdk
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 230000005540 biological transmission Effects 0.000 title claims abstract description 49
- 230000008569 process Effects 0.000 claims abstract description 33
- 230000015654 memory Effects 0.000 claims description 18
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种进行视频传输的方法、装置、设备及存储介质,属于互联网技术领域。所述方法包括:接收目标应用程序中的对应目标音视频源类型的音视频上传指令;确定目标音视频源类型对应的目标应用标识和SDK,其中,每个SDK处理一路音视频数据的上传;调用所述SDK,获取目标音视频源类型对应的目标音视频数据,在目标音视频数据中添加目标应用标识、目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送目标音视频数据。采用本申请可以在不改变现有SDK和SDK服务器的工作机制的前提下,能够使终端中接入现有SDK的应用程序同时向SDK服务器上传多路音视频流。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种进行音视频传输的方法、装置、设备及存储介质。
背景技术
随着互联网技术的发展,多人进行视频进行通话、进行视频会议变得越来越常见。
在现有技术中,多人进行视频通话的技术可通过应用现有的音视频SDK(SoftwareDevelopment Kit,软件开发工具包)进行实现。当软件开发商想在应用程序中实现视频通话技术时,不需要重新编写实现多人视频通话技术的程序,可直接在现有的应用程序中接入音视频SDK,例如直播SDK,从而在应用程序中实现视频通话技术。
在实现本申请的过程中,发明人发现现有技术至少存在以下问题:
现有的音视频SDK要求应用程序在向SDK服务器上传音视频数据时,SDK服务器要求音视频数据的标识字段只能携带应用标识、群组标识和账户标识,这样,一个终端中的一个应用程序只能上传一路音视频流,若要同时上传多路音视频流就会发生冲突,从而导致应用现有的音视频SDK,在不改变SDK及SDK服务器的工作机制的前提下,应用程序只可以向服务器上行一个视频流。
发明内容
本申请实施例提供了一种进行视频传输的方法,能够使接入现有SDK的应用程序同时向SDK服务器上传多路音视频数据流。所述技术方案如下:
第一方面,提供了一种进行音视频传输的方法,应用于第一终端,所述方法包括:
接收目标应用程序中的对应目标音视频源类型的音视频上传指令;
确定所述目标音视频源类型对应的目标应用标识和SDK,其中,每个SDK处理一路音视频数据的上传;
调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送添加所述目标应用标识、所述账户标识、以及所述群组标识的目标音视频数据。
可选的,所述接收目标应用程序中的对应目标音视频源类型的音视频上传指令之前还包括:
在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK。
可选的,所述在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK,包括:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过所述目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
可选的,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
第二方面,提供了一种进行音视频传输的方法,应用于第二终端,包括:
接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据;
基于所述目标应用标识,确定对所述目标音视频数据进行解码的目标SDK,其中,每个SDK解码一路对应音视频源类型的音视频数据;
基于所述目标SDK对所述目标音视频数据进行解码;
在目标应用程序中,播放解码之后的目标音视频数据。
可选的,所述接收SDK服务器发送的添加目标应用标识的目标音视频数据之前,所述方法还包括:
在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,其中,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
可选的,所述在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,包括:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一应用标识对应的第一SDK,通过所述目标应用程序的子进程运行第二应用标识对应的第二SDK。
可选的,所述第一SDK用于解码第一音视频源类型对应的音视频数据,所述第二SDK用于解码第二音视频源类型对应的音视频数据,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
第三方面,提供了一种进行音视频传输的装置,应用于第一终端,包括:
接收模块,被配置为接收目标应用程序中的对应目标音视频源类型的音视频上传指令;
确定模块,被配置为确定所述目标音视频源类型对应的目标应用标识和SDK,其中,每个SDK处理一路音视频数据的上传;
发送模块,被配置为调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送添加所述目标应用标识、所述账户标识、以及所述群组标识的目标音视频数据。
可选的,所述装置还包括运行模块,被配置为:
在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK。
可选的,所述确定模块被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过所述目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
可选的,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
第四方面,提供了一种进行音视频传输的装置,应用于第二终端,包括:
接收模块,被配置为接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据;
确定模块,被配置为基于所述目标应用标识,确定对所述目标音视频数据进行解码的目标SDK,其中,每个SDK解码一路对应音视频源类型的音视频数据;
解码模块,被配置为基于所述目标SDK对所述目标音视频数据进行解码;
播放模块,被配置为在目标应用程序中,播放解码之后的目标音视频数据。
可选的,所述装置还包括启动模块,被配置为:
在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,其中,多个应用标识均为所述目标应用程序的应用标识,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
可选的,所述启动模块,被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一应用标识对应的第一SDK,通过所述目标应用程序的子进程运行第二应用标识对应的第二SDK。
可选的,所述第一SDK用于解码第一音视频源类型对应的音视频数据,所述第二SDK用于解码第二音视频源类型对应的音视频数据,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
第五方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如第一方面或第二方面所述的进行音视频传输的方法所执行的操作。
第六方面,提供了一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如第一方面或第二方面所述的进行音视频传输的方法所执行的操作。
本申请实施例提供的技术方案带来的有益效果是:
通过在应用程序中接入多个SDK,不同的SDK获取不同音视频源类型的音视频数据,对不同音视频源类型的音视频数据添加不同的应用标识,并上传至SDK服务器,而这些不同的应用标识都属于同一应用程序,采用本申请,可以在不改变现有SDK和SDK服务器的工作机制的前提下,能够使一个应用程序同时向SDK服务器上传多个音视频流。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的进行音视频传输的方法流程图;
图3是本申请实施例提供的进行音视频传输的方法流程图;
图4是本申请实施例提供的进行音视频传输的方法流程图;
图5是本申请实施例提供的进行音视频传输的方法示意图;
图6是本申请实施例提供的进行音视频传输的装置结构示意图;
图7是本申请实施例提供的进行音视频传输的装置结构示意图;
图8是本申请实施例提供的计算机设备结构示意图;
图9是本申请实施例提供的服务器结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种实施环境的示意图。参见图1,本申请提供的音视频传输的方法可以通过服务器和终端进行实现。终端中安装有可以实时上传和/或接收音视频数据的应用程序,例如,直播应用程序、聊天应用程序或视频会议应用程序。终端具有显示屏、摄像头麦克风等部件,终端可以是手机、平板电脑、智能穿戴设备、台式计算机、笔记本电脑等。服务器可以是上述应用程序的后台服务器,可以存储数据和处理数据,也可以与其他服务器或终端建立通信关系。该服务器可以是一个单独的服务器也可以是一个服务器组,如果是单独的服务器,该服务器可以负责下述方案中的所有处理,如果是服务器组,服务器组中的不同服务器分别可以负责下述方案中的不同处理,具体的处理分配情况可以由技术人员根据实际需求任意设置,此处不再赘述。
在应用程序中要实现实时上传和/或接收音视频数据的功能,例如,视频通话功能、直播功能等,需要给应用程序接入音视频SDK,从而实现视频通话、直播等功能。当应用程序接入音视频SDK之后,可以通过终端将本地的音视频数据以音视频流的形式上传至音视频SDK对应的服务器,然后由音视频SDK对应的服务器将终端上传的音视频流发送至对应的终端。但由于现有音视频SDK的机制,一个应用程序上传一个音视频流数据到服务器,无法实现同时上传两个或多个音视频数据流到服务器。例如,在通过摄像头与其他终端的用户进行视频会议中,需要把存储在本地的视频与其他用户共享时,则只能先关闭分享摄像头的拍摄的视频数据,才能将本地的视频与其他用户共享。或者,常见的是终端先将摄像头拍摄的视频和需要共享的视频合成为一个视频,再分享给其他终端,但是这样在接收音视频的终端,无法对合成视频中的两个视频播放画面的尺寸进行调整,并且两个视频的画面可能会存在叠加,导致接收音视频的终端无法观看两个视频的完整的画面。而采用本申请实施例提供的音视频传输的方法,可以在应用程序接入现有的音视频SDK的情况下,同时能发送两个或多个音视频数据流给其他终端。在本申请实施例中,以应用程序为音视频会议应用程序为例,以应用程序上传的音视频数据流的个数是两个为例,对方案进行详细说明,其他情况与之类似,不再赘述。
图2是本申请实施例提供的一种进行音视频传输的方法的流程图。该方法应用于第一终端,其中,第一终端可以是多个音视频的发送终端,参见图2,该实施例包括:
步骤201、接收目标应用程序中的对应目标音视频源类型的视频上传指令。
其中,目标应用程序可以是视频会议应用程序,目标音视频源类型对应的音视频可以是存储在本地的音视频数据,或第一终端显示界面的录屏,或是由连接第一终端的摄像头和麦克风获取的音视频数据。另外,目标应用程序可以预先接入多个SDK。
在实施中,用户可以在视频会议应用程序中登录自己的账户,然后在视频会议应用程序建立视频会议创建会议群组,在会议群组中可以包括多个账户,每个账户所登录的终端可以向其他账户所登录的终端发送本地的音视频数据,每个账户所登录的终端可以接收其他账户所登录的终端发送的视频数据。从而实现多个人进行视频会议。一般在进行视频会议的时候,需要第一终端将摄像头拍摄的用户的视频画面以及麦克风收录的音频数据,发送给其他终端,所以可以在创建视频会议时,向运行在视频会议应用程序中的SDK发送音视频上传指令,在该上传指令中可以携带有摄像头的设备标识,SDK可根据上传指令中携带的摄像头的设备标识获取摄像头和对应麦克风获取的音视频数据。另外,在进行视频会议的过程中,当用户想要与其他在会议群组中的用户分享音视频时,用户可以点击视频会议应用程序分享视频的选项,当用户点击分享视频的选项之后,会议应用程序中可以显示一个浏览界面,用户可以在界面选择本地存储的音视频,当用户选择本地存储的音视频之后,可以点击对应的确定选项,之后,视频会议应用程序可以向运行在视频会议应用程序中的SDK发送音视频上传指令,在该上传指令中可以携带有用户所选音视频的存储地址,SDK可根据上传指令中携带的音视频的存储地址存储在本地的音视频数据。
另外,不同的上传指令中可用于指示SDK上传不同音视频源类型的音视频,不同音视频源类型的音视频可以由不同的SDK获取。
可选的,目标应用程序中的运行的SDK可以在目标应用程序启动时进行加载,相应的处理可以如下:在启动目标应用程序时,运行各音视频源类型分别对应的SDK。
在实施中,当视频会议应用程序运行之后,视频会议应用程序运行可加载预先设置的不同的SDK,用于视频会议接收应用程序发送的不同音视频源类型对应的上传指令,不同的上传指令对应不同的SDK,当SDK接收到上传指令,可根据上传指令获取对应音视频源类型的音视频数据。
可选的,可通过目标应用程序中不同的进程加载不同的SDK,相应的处理可如下:在启动目标应用程序时,通过目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
其中,第一音视频源类型对应的音视频数据为本地存储的音视频数据,或,对第一终端的显示画面进行录制的音视频数据,第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
在实施中,在视频会议应用程序中可以预先设置有两个SDK,当视频会议应用程序启动之后,视频会议应用程序可以在运行应用程序的主进程之外,再启动一个子进程,其中,主进程加载第一SDK,子进程加载第二SDK。主进程中加载第一SDK可被设置用于上传第一音视频源类型的音视频,即上传终端本地存储的音视频数据,或是对第一终端的显示画面进行录制的音视频数据。子进程中的第二SDK可被设置用于上传第二音视频源类型对应的音视频数据,即摄像设备拍摄的视频数据以及收音设备收录的音频数据。
步骤202、确定目标音视频源类型对应的目标应用标识和SDK。
其中,不同的音视频源类型对应的应用标识不相同且均为目标应用程序的应用标识,每个SDK处理一路音视频数据的上传。
在实施中,视频会议应用程序中可对应有多个应用标识,并且多个应用程序的标识可以预先在SDK对应的服务器中进行注册。在视频会议应用程序中可设置多个不同的SDK,不同的上传指令可以用于控制不同的SDK获取不同音视频源类型对应的音视频数据。不同的音视频源类型对应有不同的应用标识。即不同的音视频源类型可以对应的不同的应用标识和SDK,不同的上传指令可指示不同的SDK,获取对应的音视频源类型的音视频数据,当应用程序向SDK发送上传指令之后,便可确定对应的目标应用标识和SDK。
步骤203、调用SDK,获取目标音视频源类型对应的目标音视频数据,在目标音视频数据中添加目标应用标识、目标应用程序当前登录的账户的账户标识、以及音视频上传指令对应的群组标识,向SDK服务器发送添加目标应用标识、账户标识、以及群组标识的目标音视频数据。
在实施中,视频会议应用程序中的SDK向SDK服务器上传音视频数据时,需要在上传的音视频数据中添加传输标识,其中,传输标识可以由应用标识、视频群组标识、以及账户标识组成,视频会议应用程序可以通过对应的多个应用标识与当前登录的账户标识和对应的视频群组标识组成多个传输标识。当SDK接收到视频会议应用程序发送的第一个上传指令之后,可根据上传指令获取对应视频源类型对应音视频数据。然后SDK可以对音视频数据进行编码,并在编码之后的音视频数据中添加传输标识,然后将音视频数据上传至SDK服务器。例如,视频会议应用程序向运行在主进程上的第一SDK发送上传指令,SDK可根据上传指令中携带的存储地址获取对应的音视频数据,然后对音视频数据进行转码,并添加对应的传输标识,然后将第一SDK转码之后音视频数据上传至SDK服务器,其中,传输标识中的应用标识为第一音视频源类型对应的应用标识。当SDK接收到视频会议应用程序发送的第二个上传指令之后,可根据上传指令获取对应音视频源类型对应音视频数据。然后SDK可以对音视频数据进行编码,并在编码之后的音视频数据中添加第二个传输标识,然后将音视频数据上传至SDK服务器。例如,视频会议应用程序向运行在子进程上的第二SDK发送上传指令,SDK可根据上传指令中携带的摄像头的设备标识获取对应的音视频数据,然后对音视频数据进行转码,并添加第二个传输标识,然后将第二SDK转码之后的音视频数据上传至SDK服务器,其中,传输标识中的应用标识为第二音视频源类型对应的应用标识。
本申请实施例通过在应用程序中接入多个SDK,不同的SDK获取不同音视频源类型的音视频数据,对不同音视频源类型的音视频数据添加不同的应用标识,并上传至SDK服务器,而这些不同的应用标识都属于同一应用程序,采用本申请,可以在不改变现有SDK和SDK服务器的工作机制的前提下,能够使一个应用程序同时向SDK服务器上传多个音视频流。
图3是本申请实施例提供的一种进行音视频传输的方法的流程图。该方法应用于第二终端,其中,第二终端为可以是多个音视频的接收终端,参见图2,该实施例包括:
步骤301、接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据。
在实施中,可接收SDK服务器发送的多个音视频数据,其中,每个音视频数据中添加有对应的应用标识。
可选的,在接收SDK服务器发送的添加目标应用标识的目标音视频数据之前,目标应用程序可预先运行多个SDK,用于接收SDK服务器发送的音视频数据,相应的处理如下:在启动目标应用程序时,运行多个应用标识分别对应的SDK,其中,多个应用标识均为目标应用程序的应用标识,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
在实施中,当视频会议应用程序启动时,视频会议应用程序运行可加载预先接入在视频会议应用程序中的多个的SDK。并且,在视频会议应用程序中可对应有多个应用标识,并且多个应用程序的标识可以预先在SDK服务器中进行注册。其中,SDK可对应的有唯一的应用标识,每个SDK可对携带其对应的应用标识的音视频源类型对应的音视频数据进行解码。
可选的,可通过目标应用程序中不同的进程加载不同的SDK,相应的处理如下:在启动目标应用程序时,通过目标应用程序的主进程运行第一应用标识对应的第一SDK,通过目标应用程序的子进程运行第二应用标识对应的第二SDK。
其中,第一SDK用于解码第一音视频源类型对应的音视频数据,第二SDK用于解码第二音视频源类型对应的音视频数据,第一音视频源类型对应的音视频数据为本地存储的音视频数据,或,对第一终端的显示画面进行录制的音视频数据,第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
在实施中,在视频会议应用程序中可以预先设置有两个SDK,当视频会议应用程序启动之后,视频会议应用程序可以在运行应用程序的主进程之外,再启动一个子进程,其中,主进程加载第一SDK,子进程加载第二SDK。主进程中加载第一SDK可被设置用于解码第一终端发送的第一音视频源类型对应的音视频数据,即存储在第一终端本地的音视频数据,或是对第一终端的显示画面进行录制的音视频数据。子进程中的第二SDK可被设置用于解码第二音视频源类型对应的音视频数据,即连接第一终端的摄像设备拍摄音视频数据以及收音设备收录的音频数据。
步骤302、基于目标应用标识,确定对目标音视频数据进行解码的目标SDK。
其中,每个SDK解码一路对应音视频源类型的音视频数据。
在实施中,由于在第一终端中不同音视频源类型对应的应用标识不同,所以在第二终端中应用标识可作为音视频源类型标识,区分接收到的音视频对应的音视频源类型。不同音视频源类型的音视频可用不同的SDK进行解码,并且一个SDK只能对一路音视频进行解码。所以当视频会议应用程序接收到SDK服务器发送音视频数据之后,可根据音视频数据中携带的传输标识中的应用标识确定对目标音视频数据进行解码的目标SDK。
步骤303、基于目标SDK对目标音视频数据进行解码。
步骤304、在目标应用程序中,播放解码之后的目标音视频数据。
在实施中,视频会议应用程序中的SDK对接收的音视频数据进行解码之后,视频会议应用程序可通过播放窗口对解码之后的音视频数据进行播放。当视频会议应用程序接收的音视频数据为多个时,可以通过多个播放窗口对解码之后的音视频数据进行播放,其中,每个播放窗口播放一个视频。另外,可以根据音视频数据中携带的传输标识,将用户标识相同的音视频数据对应的播放窗口并列显示,或,根据多个音视频数据中携带的传输标识,将不同应用标识对应的不同音视频源类型的音视频数据对应的窗口进行区分显示。并且,用户可以对多个播放窗口的位置和大小进行自行调节。
本申请实施例通过在应用程序中接入多个SDK,不同的SDK获取不同音视频源类型的音视频数据,对不同音视频源类型的音视频数据添加不同的应用标识,并上传至SDK服务器,而这些不同的应用标识都属于同一应用程序,采用本申请,可以在不改变现有SDK和SDK服务器的工作机制的前提下,能够使一个应用程序同时向SDK服务器上传多个音视频流。
图4为本申请实施例提供的一种进行音视频传输的方法的流程图,用于第一终端、第二终端和SDK服务器,如图4所示,本实施例包括:
步骤401,第一终端向SDK服务器发送添加目标应用标识的目标音视频数据。
其中,在第一终端账户所在的视频会议群组在创建时,可将视频会议群组的标识以及群组中各账户的账户标识发送至SDK服务器,SDK服务器接收视频会议群组的标识以及群组中各账户的账户标识并与视频会议应用程序的对应的应用标识进行存储。视频会议应用程序可对应多个应用标识,则将视频会议群组的标识以及群组中各账户的账户标识与视频会议应用程序对应的多个应用标识进行存储。
步骤402,SDK服务器基于目标应用标识,确定目标音视频数据对应的至少一个接收账户。
在实施中,SDK服务器接收一终端发送的音视频数据之后,可以根据音视频数据中携带的传输标识,确定接收终端。根据每个音视频数据中携带的应用标识和视频群组标识确定每个音视频数据对应的视频会议群组,根据确定的视频会议群组中其他的账户,确定其他的账户所登录的接收终端(即第二终端)。当第一终端发送多个音视频数据时,SDK服务器可根据每个音视频数据中添加的应用标识,确定每个音视频数据对应的视频会议群组,其中,多个视频会议群组中账户均为相同,然后在视频会议群组中确定每路音视频数据对应的接收终端。
步骤403,将添加目标应用标识的目标音视频数据,转发至至少一个接收账户对应的第二终端。
步骤404、第二终端基于目标SDK对目标音视频数据进行解码,播放解码之后的目标音视频数据。
在实施中,第二终端接收SDK服务器发送的添加应用标识的音视频数据之后,基于音视频数据中应用标识,确定对目标音视频数据进行解码的目标SDK,基于目标SDK对目标音视频数据进行解码。应用标识可在第二终端中作为音视频源类型标识,区分接收到的音视频对应的音视频源类型。根据不同的音视频对应的音视频源类型确定对音视频进行解码的SDK。视频会议应用程序中的SDK对接收的音视频数据进行解码之后,视频会议应用程序可通过播放窗口对解码之后的音视频数据进行播放。图5是本申请实例的方法示意图,如图5所示,当第一发送终端和第二发送终端都上传了两路音视频数据,其对应的应用标识分别为appid、appid-Slave。服务器接收第一发送终端和第二发送终端都上传的音视频数据后,将音视频数据转发给接收终端,接收终端可通过不同的SDK对接收的音视频数据进行解码,再通过多个播放窗口对解码之后的音视频数据进行播放。
本申请实施例通过在应用程序中接入多个SDK,不同的SDK获取不同音视频源类型的音视频数据,对不同音源类型的音视频数据添加不同的应用标识,并上传至SDK服务器,而这些不同的应用标识都属于同一应用程序,采用本申请,可以在不改变现有SDK和SDK服务器的工作机制的前提下,能够使一个应用程序同时向SDK服务器上传多个音视频流。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图6为本申请实施例提供的一种进行音视频传输的装置结构示意图,该装置可以是上述实施例中的第一终端,如图6所示,该装置包括:
接收模块610,被配置为接收目标应用程序中的对应目标音视频源类型的音视频上传指令;
确定模块620,被配置为确定所述目标音视频源类型对应的目标应用标识和SDK,其中,每个SDK处理一路音视频数据的上传;
发送模块630,被配置为调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送添加所述目标应用标识、所述账户标识、以及所述群组标识的目标音视频数据。
可选的,所述装置还包括运行模块,被配置为:
在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK。
可选的,所述确定模块620被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过所述目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
可选的,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
图7为本申请实施例提供的一种进行音视频传输的装置结构示意图,该装置可以是上述实施例中的第二终端,如图7所示,该装置包括:
接收模块710,被配置为接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据;
确定模块720,被配置为基于所述目标应用标识,确定对所述目标音视频数据进行解码的目标SDK,其中,每个SDK解码一路对应音视频源类型的音视频数据;
解码模块730,被配置为基于所述目标SDK对所述目标音视频数据进行解码;
播放模块740,被配置为在目标应用程序中,播放解码之后的目标音视频数据。
可选的,所述装置还包括启动模块,被配置为:
在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,其中,多个应用标识均为所述目标应用程序的应用标识,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
可选的,所述启动模块,被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一应用标识对应的第一SDK,通过所述目标应用程序的子进程运行第二应用标识对应的第二SDK。
可选的,所述第一SDK用于解码第一音视频源类型对应的音视频数据,所述第二SDK用于解码第二音视频源类型对应的音视频数据,所述第一音视频源类型对应的音视频数据为所述本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
需要说明的是:上述实施例提供的进行音视频传输的装置在进行音视频传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的进行音视频传输的装置与进行音视频传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图8示出了本申请一个示例性实施例提供的计算机设备的结构框图。该计算机设备可以是终端800,终端800可以是:智能手机、平板电脑、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的进行音视频传输的方法。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、触摸显示屏805、摄像头806、音频电路807、定位组件808和电源809中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在再一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。
定位组件808用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件808可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制触摸显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3D动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器813可以设置在终端800的侧边框和/或触摸显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在触摸显示屏805的下层时,由处理器801根据用户对触摸显示屏805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商Logo时,指纹传感器814可以与物理按键或厂商Logo集成在一起。
光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制触摸显示屏805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏805的显示亮度;当环境光强度较低时,调低触摸显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制触摸显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制触摸显示屏805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图9是本申请实施例提供的一种服务器的结构示意图,该服务器900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central processingunits,CPU)901和一个或一个以上的存储器902,其中,所述存储器902中存储有至少一条指令,所述至少一条指令由所述处理器901加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中进行音视频传输的方法。该计算机可读存储介质可以是非暂态的。例如,所述计算机可读存储介质可以是ROM(Read-OnlyMemory,只读存储器,)、RAM(Random Access Memory,随机存取存储器)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种进行音视频传输的方法,其特征在于,应用于第一终端,所述方法包括:
接收目标应用程序中的对应目标音视频源类型的音视频上传指令;
确定所述目标音视频源类型对应的目标应用标识和SDK,其中,不同的音视频源类型对应的应用标识不相同且均为目标应用程序的应用标识,每个SDK处理一路音视频数据的上传;
调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送添加所述目标应用标识、所述账户标识、以及所述群组标识的目标音视频数据。
2.根据权利要求1所述的方法,其特征在于,所述接收目标应用程序中的对应目标音视频源类型的音视频上传指令之前还包括:
在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK。
3.根据权利要求2所述的方法,其特征在于,所述在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK,包括:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过所述目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
4.根据权利要求3所述的方法,其特征在于,所述第一音视频源类型对应的音视频数据为所述第一终端本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
5.一种进行音视频传输的方法,其特征在于,应用于第二终端,包括:
接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据,所述SDK服务器发送的所述添加目标应用标识、账户标识、以及群组标识的目标音视频数据是由第一终端接收目标应用程序中的对应目标音视频源类型的音视频上传指令,确定所述目标音视频源类型对应的目标应用标识和SDK,调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识后得到的,其中,不同的音视频源类型对应的应用标识不相同且均为目标应用程序的应用标识,每个SDK处理一路音视频数据的上传;
基于所述目标应用标识,确定对所述目标音视频数据进行解码的目标SDK,其中,每个SDK解码一路对应音视频源类型的音视频数据;
基于所述目标SDK对所述目标音视频数据进行解码;
在目标应用程序中,播放解码之后的目标音视频数据。
6.根据权利要求5所述的方法,其特征在于,所述接收SDK服务器发送的添加目标应用标识的目标音视频数据之前,所述方法还包括:
在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,其中,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
7.根据权利要求6所述的方法,其特征在于,所述在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,包括:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一应用标识对应的第一SDK,通过所述目标应用程序的子进程运行第二应用标识对应的第二SDK。
8.根据权利要求7所述的方法,其特征在于,所述第一SDK用于解码第一音视频源类型对应的音视频数据,所述第二SDK用于解码第二音视频源类型对应的音视频数据,所述第一音视频源类型对应的音视频数据为所述第一终端本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
9.一种进行音视频传输的装置,其特征在于,应用于第一终端,包括:
接收模块,被配置为接收目标应用程序中的对应目标音视频源类型的音视频上传指令;
确定模块,被配置为确定所述目标音视频源类型对应的目标应用标识和SDK,其中,不同的音视频源类型对应的应用标识不相同且均为目标应用程序的应用标识,每个SDK处理一路音视频数据的上传;
发送模块,被配置为调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识,向SDK服务器发送添加所述目标应用标识、所述账户标识、以及所述群组标识的目标音视频数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括运行模块,被配置为:
在启动所述目标应用程序时,运行各音视频源类型分别对应的SDK。
11.根据权利要求10所述的装置,其特征在于,所述确定模块被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一音视频源类型对应的第一SDK,通过所述目标应用程序的子进程运行第二音视频源类型对应的第二SDK。
12.根据权利要求11所述的装置,其特征在于,所述第一音视频源类型对应的音视频数据为所述第一终端本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
13.一种进行音视频传输的装置,其特征在于,应用于第二终端,包括:
接收模块,被配置为接收SDK服务器发送的添加目标应用标识、账户标识、以及群组标识的目标音视频数据,所述SDK服务器发送的所述添加目标应用标识、账户标识、以及群组标识的目标音视频数据是由第一终端接收目标应用程序中的对应目标音视频源类型的音视频上传指令,确定所述目标音视频源类型对应的目标应用标识和SDK,调用所述SDK,获取所述目标音视频源类型对应的目标音视频数据,在所述目标音视频数据中添加所述目标应用标识、所述目标应用程序当前登录的账户的账户标识、以及所述音视频上传指令对应的群组标识后得到的,其中,不同的音视频源类型对应的应用标识不相同且均为目标应用程序的应用标识,每个SDK处理一路音视频数据的上传;
确定模块,被配置为基于所述目标应用标识,确定对所述目标音视频数据进行解码的目标SDK,其中,每个SDK解码一路对应音视频源类型的音视频数据;
解码模块,被配置为基于所述目标SDK对所述目标音视频数据进行解码;
播放模块,被配置为在目标应用程序中,播放解码之后的目标音视频数据。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括启动模块,被配置为:
在启动所述目标应用程序时,运行多个应用标识分别对应的SDK,其中,多个应用标识均为所述目标应用程序的应用标识,每个SDK分别用于解码不同的音视频源类型对应的音视频数据。
15.根据权利要求14所述的装置,其特征在于,所述启动模块,被配置为:
在启动所述目标应用程序时,通过所述目标应用程序的主进程运行第一应用标识对应的第一SDK,通过所述目标应用程序的子进程运行第二应用标识对应的第二SDK。
16.根据权利要求15所述的装置,其特征在于,所述第一SDK用于解码第一音视频源类型对应的音视频数据,所述第二SDK用于解码第二音视频源类型对应的音视频数据,所述第一音视频源类型对应的音视频数据为所述第一终端本地存储的音视频数据,或,对所述第一终端的显示画面进行录制的音视频数据,所述第二音视频源类型对应的音视频数据为音视频采集设备采集的音视频数据。
17.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至8任一项所述的进行音视频传输的方法所执行的操作。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至权利要求8任一项所述的进行音视频传输的方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010115254.3A CN111294551B (zh) | 2020-02-25 | 2020-02-25 | 进行音视频传输的方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010115254.3A CN111294551B (zh) | 2020-02-25 | 2020-02-25 | 进行音视频传输的方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111294551A CN111294551A (zh) | 2020-06-16 |
CN111294551B true CN111294551B (zh) | 2021-06-08 |
Family
ID=71029499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010115254.3A Active CN111294551B (zh) | 2020-02-25 | 2020-02-25 | 进行音视频传输的方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111294551B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880865A (zh) * | 2020-07-30 | 2020-11-03 | 广州华多网络科技有限公司 | 多媒体数据推送方法、装置、电子设备及存储介质 |
CN112839239B (zh) * | 2020-12-30 | 2023-03-21 | 广州虎牙科技有限公司 | 一种音视频加工的方法、装置及服务器 |
CN114125357A (zh) * | 2021-10-26 | 2022-03-01 | 北京鸿合爱学教育科技有限公司 | 一种数据获取方法、装置、终端及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357602A (zh) * | 2016-08-18 | 2017-01-25 | 北京奇虎科技有限公司 | 一种直播方法及直播应用服务端、合作应用客户端 |
CN106791189A (zh) * | 2017-01-27 | 2017-05-31 | 北京黑米世纪网络科技有限公司 | 一种设备接入方法及系统 |
CN108696523A (zh) * | 2018-05-14 | 2018-10-23 | 平安科技(深圳)有限公司 | 一种通话服务的响应方法及设备 |
CN109240833A (zh) * | 2018-09-26 | 2019-01-18 | Oppo广东移动通信有限公司 | 资源配置方法、装置、终端及存储介质 |
CN109688416A (zh) * | 2017-10-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 网络直播间的接入方法及网络直播系统 |
CN110213652A (zh) * | 2018-04-13 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种音视频数据传输方法、装置及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102316143A (zh) * | 2010-09-17 | 2012-01-11 | 苏州阔地网络科技有限公司 | 一种实现多路音视频通讯的方法 |
US20160234551A1 (en) * | 2013-12-02 | 2016-08-11 | Dumbstruck, Inc. | Video reaction processing |
CN110545441B (zh) * | 2019-09-09 | 2021-06-18 | 广州三人行壹佰教育科技有限公司 | 一种直播方法、用户设备及服务器 |
-
2020
- 2020-02-25 CN CN202010115254.3A patent/CN111294551B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357602A (zh) * | 2016-08-18 | 2017-01-25 | 北京奇虎科技有限公司 | 一种直播方法及直播应用服务端、合作应用客户端 |
CN106791189A (zh) * | 2017-01-27 | 2017-05-31 | 北京黑米世纪网络科技有限公司 | 一种设备接入方法及系统 |
CN109688416A (zh) * | 2017-10-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 网络直播间的接入方法及网络直播系统 |
CN110213652A (zh) * | 2018-04-13 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种音视频数据传输方法、装置及存储介质 |
CN108696523A (zh) * | 2018-05-14 | 2018-10-23 | 平安科技(深圳)有限公司 | 一种通话服务的响应方法及设备 |
CN109240833A (zh) * | 2018-09-26 | 2019-01-18 | Oppo广东移动通信有限公司 | 资源配置方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111294551A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108401124B (zh) | 视频录制的方法和装置 | |
CN108966008B (zh) | 直播视频回放方法及装置 | |
CN111464830B (zh) | 图像显示的方法、装置、系统、设备及存储介质 | |
CN108881286B (zh) | 多媒体播放控制的方法、终端、音箱设备和系统 | |
CN110533585B (zh) | 一种图像换脸的方法、装置、系统、设备和存储介质 | |
CN109144346B (zh) | 歌曲分享方法、装置及存储介质 | |
CN111294551B (zh) | 进行音视频传输的方法、装置、设备及存储介质 | |
CN111741366A (zh) | 音频播放方法、装置、终端及存储介质 | |
CN112104648A (zh) | 数据处理方法、装置、终端、服务器及存储介质 | |
CN109982129B (zh) | 短视频的播放控制方法、装置及存储介质 | |
CN110839174A (zh) | 图像处理的方法、装置、计算机设备以及存储介质 | |
CN111083526A (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN111818358A (zh) | 音频文件的播放方法、装置、终端及存储介质 | |
CN113204671A (zh) | 资源展示方法、装置、终端、服务器、介质及产品 | |
CN110808021B (zh) | 音频播放的方法、装置、终端及存储介质 | |
CN113141538A (zh) | 媒体资源播放方法、装置、终端、服务器及存储介质 | |
CN112616082A (zh) | 视频预览方法、装置、终端及存储介质 | |
CN108260023B (zh) | 进行直播的方法和装置 | |
CN112669884B (zh) | 音频数据处理方法、装置、设备及存储介质 | |
CN111464829B (zh) | 切换媒体数据的方法、装置、设备及存储介质 | |
CN110996115B (zh) | 直播视频播放方法、装置、设备、存储介质和程序产品 | |
CN111246233B (zh) | 视频直播的方法、装置及系统 | |
CN111372132B (zh) | 进行音视频传输的方法、装置、设备及存储介质 | |
CN109618018B (zh) | 用户头像显示方法、装置、终端、服务器及存储介质 | |
CN111399797A (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 | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20200616 Assignee: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd. Assignor: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd. Contract record no.: X2021440000030 Denomination of invention: Method, device, equipment and storage medium for audio and video transmission License type: Common License Record date: 20210125 |
|
EE01 | Entry into force of recordation of patent licensing contract | ||
GR01 | Patent grant | ||
GR01 | Patent grant |