CN104753971B - 基于远程会议的客户端及媒体源传输方法 - Google Patents
基于远程会议的客户端及媒体源传输方法 Download PDFInfo
- Publication number
- CN104753971B CN104753971B CN201310728158.6A CN201310728158A CN104753971B CN 104753971 B CN104753971 B CN 104753971B CN 201310728158 A CN201310728158 A CN 201310728158A CN 104753971 B CN104753971 B CN 104753971B
- Authority
- CN
- China
- Prior art keywords
- source
- media
- data
- type
- transmission channel
- 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
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于远程会议的客户端及媒体源传输方法,属于网络技术领域。方法包括:媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层;媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包;媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包。本发明在通过软件采集方式采集媒体源数据,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口进行传输,由于对软件采集方式进行了改进,在媒体源改变的场景下,也可实现媒体源数据的无缝采集切换,确保数据传输连续性。
Description
技术领域
本发明涉及网络技术领域,特别涉及一种基于远程会议的客户端及媒体源传输方法。
背景技术
随着互联网业务的不断成熟、终端设备性能的提升及网络覆盖范围的扩大,网络视频会议成为了时下一个颇受青睐的多人实时交流方式。在网络视频会议中,常常需要在如音视频源、白板共享源及本地媒体文件共享源等不同类型媒体源之间进行切换,以满足多元化的交流需求。因此,为了能够顺畅地进行网络视频会议,如何对媒体源进行传输,成为了本领域技术人员较为关注的一个问题。
现有技术当媒体源数据采集层通过软件采集方式采集媒体源数据后,直接将采集到的媒体源数据通过软件采集方式对应的接口传输至媒体源数据编码层。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在进行媒体源传输时,由于通过软件采集方式对应的接口传输至媒体源数据编码层,所以不能实现无缝采集切换,导致了数据传输的不连续性。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种基于远程会议的客户端及媒体源传输方法。所述技术方案如下:
一方面,提供了一种基于远程会议的客户端,所述客户端包括:
媒体源数据采集模块,用于通过软件采集方式采集媒体源数据,将所述媒体源数据发送给本地虚拟摄像头,并通过所述本地虚拟摄像头将所述媒体源数据应用硬件采集设备的***接口发送给媒体源数据编码模块;
媒体源数据编码模块,用于接收所述媒体源数据采集模块通过所述硬件采集设备的***接口发送的所述媒体源数据,并根据所述媒体源的数据类型对所述媒体源数据进行编码,得到媒体源编码数据包;
媒体源数据传输模块,用于通过传输通道向会议对端发送所述媒体源编码数据包。
进一步地,所述媒体源数据采集模块还用于通过硬件采集方式采集媒体源数据,并将媒体源数据通过所述硬件采集设备的***接口发送给所述媒体源数据编码模块。
进一步地,所述传输通道包括至少两条不同类型的传输通道;所述客户端还包括:
功能接口模块,用于在所述媒体源数据传输模块向所述会议对端发送所述媒体源编码数据包之前,建立媒体源的数据类型与传输通道类型的对应关系,并将所述对应关系进行存储;根据所述媒体源的数据类型查找所述对应关系表,从所述对应关系表中获取与所述媒体源的数据类型对应的传输通道类型;将传输通道类型对应的传输通道确定为所述媒体源编码数据包对应的传输通道;
所述媒体源数据传输模块具体用于通过所述媒体源编码数据包对应的传输通道向所述会议对端发送所述媒体源编码数据包。
进一步地,所述传输通道的类型为TCP(Transmission Control Protocol,传输控制协议)类型、UDP(User Datagram Protocol,用户数据包协议)类型、HTTP(HypertextTransfer Protocol,超文本传输协议)类型及HTTP-TUNNEL(Hypertext TransferProtocol-Tunnel超文本传输协议-隧道)类型。
进一步地,所述媒体源数据为音视频数据或桌面共享数据;
所述媒体源数据采集模块具体用于通过物理摄像头、麦克风采集音视频数据,或者通过软件软捕获器采集桌面共享数据;
所述媒体源数据采集模块还用于接收媒体源切换请求,根据所述媒体源切换请求切换采集方式。
另一方面,提供了一种媒体源传输方法,应用于远程会议的客户端,所述远程会议的客户端包括媒体源数据采集层、媒体源数据编码层、功能接口层和媒体源数据传输层,所述媒体源数据采集层、媒体源数据编码层之间具有唯一的硬件采集设备的***接口,所述方法包括:
所述媒体源数据采集层通过软件采集方式采集媒体源数据,将所述媒体源数据发送给本地虚拟摄像头,并通过所述本地虚拟摄像头将所述媒体源数据应用硬件采集设备的***接口传输至所述媒体源数据编码层;
所述媒体源数据编码层根据所述媒体源的数据类型对所述媒体源数据进行编码,得到媒体源编码数据包;
所述媒体源数据传输层通过传输通道向会议对端发送所述媒体源编码数据包。
进一步地,所述根据所述媒体源的数据类型对所述媒体源数据进行编码之前,所述方法还包括:
所述媒体源数据采集层通过硬件采集方式采集媒体源数据,并将媒体源数据通过所述硬件采集设备的***接口发送给所述媒体源数据编码层。
进一步地,所述传输通道包括至少两条不同类型的传输通道;所述媒体源数据传输层通过传输通道向所述会议对端发送所述媒体源编码数据包之前,所述方法还包括:
所述功能接口层建立媒体源的数据类型与传输通道类型的对应关系,并将所述对应关系进行存储;
所述功能接口层根据所述媒体源的数据类型查找所述对应关系表,从所述对应关系表中获取与所述媒体源的数据类型对应的传输通道类型,并将传输通道类型对应的传输通道确定为所述媒体源编码数据包对应的传输通道;
所述媒体源数据传输层通过传输通道向所述会议对端发送所述媒体源编码数据包,包括:
所述媒体源传输层通过所述媒体源编码数据包对应的传输通道向所述会议对端发送所述媒体源编码数据包。
进一步地,所述媒体源数据为音视频数据或桌面共享数据;
所述媒体源数据采集层通过软件采集方式采集媒体源数据,包括:
当所述媒体源数据为桌面共享数据时,所述媒体源数据采集层通过软件软捕获器采集桌面共享数据;
所述媒体源数据采集层通过硬件采集方式采集所述媒体源数据,包括:
当所述媒体源数据为音视频数据时,所述媒体源数据采集层通过物理摄像头、麦克风采集音视频数据。
进一步地,所述方法还包括:
所述媒体源数据采集层接收媒体源切换请求,根据所述媒体源切换请求切换采集方式。
本发明实施例提供的技术方案带来的有益效果是:
在媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层后,媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包,之后,由媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包,由于对软件采集方式进行了改进,所以即便在媒体源改变的场景下,也可实现媒体源数据的无缝采集,切换,确保了数据传输的连续性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种媒体源传输的方法流程图;
图2是本发明实施例二提供的一种媒体源传输***架构图;
图3是本发明实施例二提供的一种媒体源传输的方法流程图;
图4是本发明实施例四提供的第一种基于远程会议的客户端的结构示意图;
图5是本发明实施例四提供的第二种基于远程会议的客户端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种媒体源传输方法,应用于远程会议的客户端,远程会议的客户端包括媒体源数据采集层、媒体源数据编码层、功能接口层和媒体源数据传输层,媒体源数据采集层、媒体源数据编码层之间具有唯一的硬件采集设备的***接口,硬件采集设备的***接口用于传输软件采集入口数据和硬件采集入口数据。参见图1,本实施例提供的方法流程包括:
101、媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层。
在本实施例中,所述硬件采集设备包括物理摄像头、麦克风等设备。所述本地虚拟摄像头具备硬件采集设备的***接口,具体地,本地虚拟摄像头在接收到媒体源数据后,还对接收到的媒体源数据进行处理,使得媒体源数据的格式满足所述***接口传输要求。
102、媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包。
优选地,在本实施例中,所述媒体源数据编码层预先设置有各种数据类型对应的编码器,可以根据媒体源的数据类型进行选择。
103、媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包。
可选地,根据媒体源的数据类型对媒体源数据进行编码之前,该方法还包括:
媒体源数据采集层通过硬件采集方式采集媒体源数据,并将媒体源数据通过硬件采集设备的***接口发送给媒体源数据编码层。
可选地,传输通道包括至少两条不同类型的传输通道;媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包之前,该方法还包括:
功能接口层建立媒体源的数据类型与传输通道类型的对应关系,并将对应关系进行存储;
功能接口层根据媒体源的数据类型查找对应关系表,从对应关系表中获取与媒体源的数据类型对应的传输通道类型,并将传输通道类型对应的传输通道确定为媒体源编码数据包对应的传输通道;
媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包,包括:
媒体源传输层通过媒体源编码数据包对应的传输通道向会议对端发送媒体源编码数据包。
可选地,媒体源数据为音视频数据或桌面共享数据;
媒体源数据采集层通过软件采集方式采集媒体源数据,包括:
当媒体源数据为桌面共享数据时,媒体源数据采集层通过软件软捕获器采集桌面共享数据;
媒体源数据采集层通过硬件采集方式采集媒体源数据,包括:
当媒体源数据为音视频数据时,媒体源数据采集层通过物理摄像头、麦克风采集音视频数据。
可选地,该方法还包括:
媒体源数据采集层接收媒体源切换请求,根据媒体源切换请求切换采集方式。
本实施例提供的方法,在媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层后,媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包,之后,由媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包,由于对软件采集方式进行了改进,使得媒体源数据编码层不再区分媒体源数据是硬件采集还是软件采集,直接通过一个***接口即可获取到采集的媒体源数据,所以即便在媒体源改变的场景下,也可实现媒体源数据的无缝采集切换,确保了数据传输的连续性。
实施例二
本发明实施例提供了一种媒体源传输方法,可用于基于多人的远程会议,结合上述实施例一及图2所示的媒体源传输***架构图,对本实施例提供的媒体源传输方式进行详细地解释说明。而在对本实施例进行阐述之前,先对媒体源传输***架构图进行解释说明。参见图2,媒体源传输***架构图整体分为四层,分别为媒体源数据采集层、媒体源数据编解码层、功能接口层及媒体源数据传输层。其中,媒体源数据采集层用于采集不同类型的媒体源数据,包括硬件采集和软件采集至少两种采集方式;媒体源数据编解码层位于媒体源数据采集层之上,用于对不同类型的媒体源数据进行编码;功能接口层位于媒体源数据编解码层之上,是一个抽象层,是对媒体源数据采集层和媒体源数据编解码层的抽象封装,方便上层使用,通过统一化的接口将媒体源数据编解码层的数据发送给媒体源数据传输层。媒体源数据传输层位于媒体源数据编解码层之上,其不关心媒体源数据的类型,也不关心媒体源数据具体负责什么任务,只负责将媒体源数据发送给会议对端。
现以与会议对端建立TCP传输通道和UDP传输通道、媒体源数据类型为音视频类型及桌面共享类型,客户端的媒体源数据采集层接收到媒体源切换请求为例对本实施例进行说明,参见图3,本实施例提供的方法流程包括:
301、客户端与会议对端建立两条不同类型的传输通道。
为保证媒体源传输的连续性,本实施例提供的方法在会议过程中客户端将与会议对端建立至少两条不同类型的传输通道。其中,不同类型的传输通道包括但不限于:TCP传输通道、UDP传输通道、HTTP传输通道及HTTP-TUNNEL通道等。本实施例仅以TCP传输通道和UDP传输通道为例进行举例说明。其中,TCP传输通道可保证媒体源数据的传输完整性,UDP传输通道可保证媒体源数据的传输实时性。TCP传输通道和UDP传输通道在建立后便会一直存在,不会销毁,相对于现有方案中根据需要临时建立传输通道并在使用后销毁传输通道相比,提高了媒体源传输效率,特别是在多人远程会议的情况下,与现有的方案中需要临时与多个对端建立传输通道相比,本实施例的方法的效果更为明显。。
可选地,客户端在建立两条不同类型的传输通道后,还可通过功能接口层建立媒体源的数据类型与传输通道类型的对应关系,并将对应关系进行存储。
其中,媒体源的数据类型包括但不限于:音视频类型及桌面共享类型。
由于通常情况下,在进行多人远程会议时,对音视频数据的实时性需求较高,因此,音视频数据的传输通道通常设置为UDP传输通道,UDP传输通道会有一定的丢包率,但是在与会议对端进行语音通话或视频时,这并不会对会议对端的人理解语音通话内容或视频内容造成什么影响。而对桌面共享数据的完整性要求较高,因此,桌面共享数据的传输通道通常设置为TCP传输通道,TCP传输通道可完整传输桌面共享数据,不会将桌面数据中的一部分帧丢失,便于会议对端的人理解桌面共享数据所要表达的内容。在建立对应关系表时,可建立形如表1的对应关系表。
表1
媒体源的数据类型 | 传输通道类型 |
音视频类型 | TCP类型 |
桌面共享类型 | UDP类型 |
在存储媒体源的数据类型与传输通道类型的对应关系时,可将该对应关系存储在内存或闪存等存储介质中,本实施例对存储介质的类型不进行具体限定。
需要说明的是,在执行本实施例提供的方法时,上述步骤301无需每次均执行,仅在第一次执行本实施例提供的方法时执行即可。
302、客户端的功能接口层根据当前媒体源的数据类型选择对应传输通道传输当前媒体源编码数据包。
客户端的媒体源数据采集层在检测到客户端用户的媒体源切换操作之前,将采集当前媒体源数据,且可通过软件采集方式采集当前媒体源数据,并将当前媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将当前媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层;之后,媒体源数据编码层对当前媒体源数据进行编码处理,得到当前媒体源编码数据包,并由功能接口层根据当前媒体源的数据类型选择当前媒体源编码数据包对应的传输通道,进而媒体源数据传输层通过当前媒体源编码数据包对应的传输通道传输当前媒体源编码数据包。若当前媒体源的数据类型为音视频类型,则功能接口层选择UDP传输通道传输当前媒体源编码数据包;若当前媒体源的数据类型为桌面共享类型,则功能接口层选择TCP传输通道传输当前媒体源编码数据包。
303、当客户端的媒体源数据采集层检测到客户端用户的媒体源切换操作时,终止采集当前媒体源数据,根据目的媒体源的数据类型,启动对目的媒体源数据的采集。
当媒体源数据采集层检测到客户端用户的媒体源切换操作时,会触发终止采集当前媒体源数据并启动对目的媒体源数据的采集的步骤。而媒体源的数据类型不同,采集媒体源数据的方式也不同。通常情况下,视频数据可通过物理摄像头进行采集;音频数据可通过麦克风进行采集;桌面共享数据可通过软捕获器采集。而所有通过硬件采集设备采集到的媒体源数据统称为硬件采集入口数据,而所有通过软件采集设备采集到的媒体源数据统称为软件采集设备。由于媒体源数据采集层后续在向媒体源数据编码层发送硬件采集入口数据和软件采集入口数据时,需分别从硬件采集设备对应的接口和软件采集设备对应的接口进行发送,不能保证媒体源数据采集层和媒体源数据编码层之间的无关性。所以还需设置一个本地虚拟摄像头,该本地虚拟摄像头与物理摄像头具有相同的***接口,因此,在通过软捕获器采集媒体源数据后,还将采集到的媒体源数据存储在本地虚拟摄像头中,从而本地虚拟摄像头采用与物理摄像头一致的***接口将媒体源数据发送出去,保证了媒体源数据采集层和媒体源数据编码层之间的无关性。
其中,当当前媒体源数据为音视频数据,目的媒体源数据为桌面共享数据时,根据目的媒体源的数据类型,启动对目的媒体源数据的采集,包括但不限于:将媒体源数据采集设备由物理摄像头切换为软捕获器,并通过软捕获器采集目的媒体源数据;将目的媒体源数据存储至本地虚拟摄像头中。
可选地,当当前媒体源数据为音视频数据,目的媒体源数据为本地媒体数据时,可将媒体源数据采集设备由物理摄像头切换为解析器,并通过解析器采集目的媒体源数据;将目的媒体源数据存储至本地虚拟摄像头中。
304、客户端的媒体源数据编码层根据目的媒体源的数据类型对目的媒体源数据进行编码,得到目的媒体源编码数据包。
媒体源数据编码层在对目的媒体源数据进行编码时,根据目的媒体源的数据类型对其进行不同形式的编码。针对音频数据来说,可采用iLBC,AMR,G.711,G.729等编码方式;针对视频数据来说,可采用H.264、VP8等编码方式;针对桌面共享数据来说,可以使用BMP、Jpeg等编码方式。
可选地,在媒体源数据编码层对目的媒体源数据进行编码之前,还可先对目的媒体源数据进行处理,从而降低编码比特率或提高编码质量。针对音频数据来说,在媒体源数据编码层对其进行编码之前,可对音频数据进行静音检测处理、噪声抑制处理、回音消除处理等等;针对视频数据来说,在媒体源数据编码层对其进行编码之前,可对视频数据进行前向纠错处理等。
305、客户端的功能接口层在已建立的至少两条不同类型的传输通道中确定目的媒体源的数据类型对应的传输通道。
在已建立的至少两条不同类型的传输通道中确定目的媒体源的数据类型对应的传输通道的具体实现方式,包括但不限于:
根据目的媒体源的数据类型查找对应关系表,从对应关系表中获取与媒体源的数据类型对应的传输通道类型;
将传输通道类型对应的传输通道确定为目的媒体源编码数据包对应的传输通道。
以媒体源的传输类型为音视频类型为例,则从上述表1中可确定音视频类型对应的传输通道类型为TCP类型。所以将音视频数据对应的传输通道确定为TCP传输通道。
306、客户端的媒体源数据传输层通过目的媒体源数据类型对应的传输通道向会议对端发送目的媒体源编码数据包。
如果目的媒体源的数据类型为音视频数据,则通过TCP传输通道向会议对端发送目的媒体源编码数据包;
如果目的媒体源的数据类型为桌面共享数据,则通过UDP传输通道向会议对端发送目的媒体源编码数据包。
可选地,由当前媒体源切换至目的媒体源时,为了使会议对端提前知晓媒体源切换情况,本实施例提供的方法还可向会议对端发送切换指令,以使会议对端的用户做好相应地适应准备。此外,由于会议对端的TCP通道和UDP通道时时刻刻处于监听状态,所以当媒体源切换时,也会及时地通过相应的通道接收目的媒体源编码数据包。而由于目的媒体源编码数据包中的相应标识示出了媒体源的数据类型,所以会议对端可根据该媒体源的数据类型对目的媒体源编码数据包进行解码,进而根据解码后的媒体源数据获知对方欲表述的内容。
本实施例提供的方法,在媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层后,媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包,之后,由媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包,由于对软件采集方式进行了改进,所以可确保媒体源数据的无缝采集,进而实现了数据的及时传输,确保了数据传输的连续性。进一步地,当媒体源数据采集层检测到客户端用户的媒体源切换操作时,终止采集当前媒体源数据,根据目的媒体源的数据类型,启动对目的媒体源数据的采集后,根据目的媒体源的数据类型对目的媒体源数据进行编码,得到目的媒体源编码数据包,并在已建立的至少两条不同类型的传输通道中确定目的媒体源的数据类型对应的传输通道,进而通过目的媒体源的数据类型对应的传输通道向会议对端发送目的媒体源编码数据包,在媒体源改变的场景下,无需另建目的媒体源的数据类型对应的传输通道,即可实现目的媒体源编码数据包的传输,确保了数据传输的连续性。
实施例三
本发明实施例提供了一种基于远程会议的客户端,参见图4,该客户端包括:
媒体源数据采集模块401,用于通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口发送给媒体源数据编码模块;媒体源数据编码模块402与媒体源数据采集模块401连接;媒体源数据编码模块402,用于接收媒体源数据采集模块401通过硬件采集设备的***接口发送的媒体源数据,并根据媒体源的数据类型对目的媒体源数据进行编码,得到媒体源编码数据包;媒体源数据传输模块403与媒体源编码模块402连接;媒体源数据传输模块403,用于通过传输通道向会议对端发送媒体源编码数据包。
需要说明的是,当媒体源数据采集模块401检测到客户端用户的媒体源切换操作时,媒体源数据采集模块401,用于当检测到客户端用户的媒体源切换操作时,终止采集当前媒体源数据,根据目的媒体源的数据类型,启动对目的媒体源数据的采集;媒体源数据编码模块402,用于接收媒体源数据编码模块发送的目的媒体源数据,并根据目的媒体源的数据类型对目的媒体源数据进行编码,得到目的媒体源编码数据包;媒体源数据传输模块403,用于通过目的媒体源编码数据包对应的传输通道向会议对端发送目的媒体源编码数据包。
进一步地,媒体源数据采集模块401,还用于通过硬件采集方式采集媒体源数据,并将媒体源数据通过硬件采集设备的***接口发送给媒体源数据编码模块。
进一步地,传输通道包括至少两条不同类型的传输通道;参见图5,该客户端还包括:
功能接口模块404,用于在媒体源数据传输模块向会议对端发送媒体源编码数据包之前,建立媒体源的数据类型与传输通道类型的对应关系,并将对应关系进行存储;根据媒体源的数据类型查找对应关系表,从对应关系表中获取与媒体源的数据类型对应的传输通道类型;将传输通道类型对应的传输通道确定为媒体源编码数据包对应的传输通道;
媒体源数据传输模块403具体用于通过媒体源编码数据包对应的传输通道向会议对端发送媒体源编码数据包。
进一步地,传输通道的类型为TCP类型、UDP类型、HTTP类型及HTTP-TUNNEL类型。
进一步地,媒体源数据为音视频数据或桌面共享数据;
媒体源数据采集模块401具体用于通过物理摄像头、麦克风采集音视频数据,或者通过软件软捕获器采集桌面共享数据;
媒体源数据采集模块401还用于接收媒体源切换请求,根据媒体源切换请求切换采集方式。
综上所述,本发明实施例提供的客户端,在媒体源数据采集层通过软件采集方式采集媒体源数据,将媒体源数据发送给本地虚拟摄像头,并通过本地虚拟摄像头将媒体源数据应用硬件采集设备的***接口传输至媒体源数据编码层后,媒体源数据编码层根据媒体源的数据类型对媒体源数据进行编码,得到媒体源编码数据包,之后,由媒体源数据传输层通过传输通道向会议对端发送媒体源编码数据包,进而在媒体源改变的场景下,也可通过对软件采集方式进行改进,实现媒体源的无缝采集切换,确保了数据传输的连续性。
需要说明的是:上述实施例提供的基于远程会议的客户端在进行媒体源传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将客户端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于远程会议的客户端与媒体源传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于远程会议的客户端,其特征在于,所述客户端包括:
媒体源数据采集模块,用于通过软件采集方式采集媒体源数据,将所述媒体源数据发送给本地虚拟摄像头,并通过所述本地虚拟摄像头将所述媒体源数据应用硬件采集设备的***接口发送给媒体源数据编码模块;
所述媒体源数据采集模块还用于通过硬件采集方式采集媒体源数据,并将所述媒体源数据通过所述硬件采集设备的***接口发送给所述媒体源数据编码模块;
媒体源数据编码模块,用于接收通过所述硬件采集设备的***接口发送的所述媒体源数据,并根据所述媒体源的数据类型对所述媒体源数据进行编码,得到媒体源编码数据包;
媒体源数据传输模块,用于通过传输通道向会议对端发送所述媒体源编码数据包。
2.根据权利要求1所述的客户端,其特征在于,所述传输通道包括至少两条不同类型的传输通道;所述客户端还包括:
功能接口模块,用于在所述媒体源数据传输模块向所述会议对端发送所述媒体源编码数据包之前,建立媒体源的数据类型与传输通道类型的对应关系,并将所述对应关系进行存储;根据所述媒体源的数据类型查找所述对应关系表,从所述对应关系表中获取与所述媒体源的数据类型对应的传输通道类型;将传输通道类型对应的传输通道确定为所述媒体源编码数据包对应的传输通道;
所述媒体源数据传输模块具体用于通过所述媒体源编码数据包对应的传输通道向所述会议对端发送所述媒体源编码数据包。
3.根据权利要求2所述的客户端,其特征在于,所述传输通道的类型至少为传输控制协议TCP类型、用户数据包协议UDP类型、超文本传输协议HTTP类型及超文本传输协议-隧道HTTP-TUNNEL类型。
4.根据权利要求1至3中任一项所述的客户端,其特征在于,所述媒体源数据为音视频数据或桌面共享数据;
所述媒体源数据采集模块具体用于通过物理摄像头、麦克风采集音视频数据,或者通过软件软捕获器采集桌面共享数据;
所述媒体源数据采集模块还用于接收媒体源切换请求,根据所述媒体源切换请求切换采集方式。
5.一种媒体源传输方法,其特征在于,应用于远程会议的客户端,所述远程会议的客户端包括媒体源数据采集层、媒体源数据编码层、功能接口层和媒体源数据传输层,所述媒体源数据采集层、媒体源数据编码层之间具有唯一的硬件采集设备的***接口,所述方法包括:
所述媒体源数据采集层通过软件采集方式采集媒体源数据,将所述媒体源数据发送给本地虚拟摄像头,并通过所述本地虚拟摄像头将所述媒体源数据应用硬件采集设备的***接口传输至所述媒体源数据编码层;
所述媒体源数据采集层通过硬件采集方式采集所述媒体源数据,并将所述媒体源数据通过所述硬件采集设备的***接口发送给所述媒体源数据编码层;
所述媒体源数据编码层根据所述媒体源的数据类型对所述媒体源数据进行编码,得到媒体源编码数据包;
所述媒体源数据传输层通过传输通道向会议对端发送所述媒体源编码数据包。
6.根据权利要求5所述的方法,其特征在于,所述传输通道包括至少两条不同类型的传输通道;所述媒体源数据传输层通过传输通道向会议对端发送所述媒体源编码数据包之前,所述方法还包括:
功能接口层建立媒体源的数据类型与传输通道类型的对应关系,并将所述对应关系进行存储;
所述功能接口层根据所述媒体源的数据类型查找所述对应关系表,从所述对应关系表中获取与所述媒体源的数据类型对应的传输通道类型,并将传输通道类型对应的传输通道确定为所述媒体源编码数据包对应的传输通道;
所述媒体源数据传输层通过传输通道向所述会议对端发送所述媒体源编码数据包,包括:
所述媒体源传输层通过所述媒体源编码数据包对应的传输通道向所述会议对端发送所述媒体源编码数据包。
7.根据权利要求5所述的方法,其特征在于,所述媒体源数据为音视频数据或桌面共享数据;
所述媒体源数据采集层通过软件采集方式采集媒体源数据,包括:
当所述媒体源数据为桌面共享数据时,所述媒体源数据采集层通过软件软捕获器采集桌面共享数据;
所述媒体源数据采集层通过硬件采集方式采集所述媒体源数据,包括:
当所述媒体源数据为音视频数据时,所述媒体源数据采集层通过物理摄像头、麦克风采集音视频数据。
8.根据权利要求5至7中任一项所述的方法,其特征在于,所述方法还包括:
所述媒体源数据采集层接收媒体源切换请求,根据所述媒体源切换请求切换采集方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310728158.6A CN104753971B (zh) | 2013-12-25 | 2013-12-25 | 基于远程会议的客户端及媒体源传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310728158.6A CN104753971B (zh) | 2013-12-25 | 2013-12-25 | 基于远程会议的客户端及媒体源传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104753971A CN104753971A (zh) | 2015-07-01 |
CN104753971B true CN104753971B (zh) | 2018-07-20 |
Family
ID=53593074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310728158.6A Active CN104753971B (zh) | 2013-12-25 | 2013-12-25 | 基于远程会议的客户端及媒体源传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104753971B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110290424B (zh) * | 2018-03-19 | 2022-02-15 | 腾讯科技(深圳)有限公司 | 一种音视频源预览方法和相关装置 |
CN111131817B (zh) * | 2019-12-31 | 2023-12-01 | 科大讯飞股份有限公司 | 屏幕共享方法、设备、存储介质及屏幕共享*** |
CN113572836B (zh) * | 2021-07-21 | 2022-07-15 | 腾讯科技(深圳)有限公司 | 一种数据传输方法、装置、服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447998A (zh) * | 2008-12-25 | 2009-06-03 | 广东威创视讯科技股份有限公司 | 桌面共享方法及*** |
CN101764989A (zh) * | 2009-11-05 | 2010-06-30 | 广东威创视讯科技股份有限公司 | 本地计算机桌面图像通过视频会议***远程显示的装置 |
CN102474624A (zh) * | 2009-08-04 | 2012-05-23 | 阿沃森特公司 | 用于静态和视频图像的远程观看的方法和*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647577A (zh) * | 2011-02-16 | 2012-08-22 | 鸿富锦精密工业(深圳)有限公司 | 远程会议管理***及管理方法 |
-
2013
- 2013-12-25 CN CN201310728158.6A patent/CN104753971B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447998A (zh) * | 2008-12-25 | 2009-06-03 | 广东威创视讯科技股份有限公司 | 桌面共享方法及*** |
CN102474624A (zh) * | 2009-08-04 | 2012-05-23 | 阿沃森特公司 | 用于静态和视频图像的远程观看的方法和*** |
CN101764989A (zh) * | 2009-11-05 | 2010-06-30 | 广东威创视讯科技股份有限公司 | 本地计算机桌面图像通过视频会议***远程显示的装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104753971A (zh) | 2015-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103841002A (zh) | 语音传输方法、终端、语音服务器及语音传输*** | |
EP2989800B1 (en) | Data communication system and method | |
CN102882865B (zh) | 基于socks5代理协议实现多媒体代理服务控制的方法 | |
CN104683863A (zh) | 一种多媒体数据传输方法及设备 | |
US9413797B2 (en) | Data communication system and method | |
CN103348657B (zh) | 流媒体播放方法、设备及*** | |
CN102226944A (zh) | 混音方法及设备 | |
US9392082B2 (en) | Communication interface and method for robust header compression of data flows | |
CN104753971B (zh) | 基于远程会议的客户端及媒体源传输方法 | |
JP6285027B2 (ja) | ビデオ電話におけるビデオ中断インジケーション | |
CN103259709A (zh) | 一种基于虚拟专用网络的端到端的手机实时视频传输方法 | |
CN103929681A (zh) | 一种提升低速网络中rtp视频流处理效率的方法 | |
CN102299962A (zh) | 一种基于云服务的VoIP***、装置和方法 | |
CN103686446A (zh) | 视频数据传输的丢包重传方法和*** | |
CN104954724A (zh) | 一种视频通话切换方法、智能电视终端、移动终端和*** | |
CN105430320A (zh) | 基于udp和tcp的音视频媒体数据传输方法 | |
CN104506287A (zh) | 一种td-lte应急通信下的实时语音通信方法 | |
CN104683228B (zh) | 一种基于fpga的数字交换机媒体网关实现方法 | |
CN103684970B (zh) | 媒体数据流的传输方法和瘦终端 | |
CN104105222B (zh) | 建立通信 | |
CN113612759A (zh) | 一种基于sip协议的高性能高并发智能广播***及实现方法 | |
CN109788072A (zh) | 一种将标准Webrtc客户端接入现有***的方法 | |
CN104994067A (zh) | Sip网络访问rtsp监控网络的***及方法 | |
CN101478616A (zh) | 一种即时语音通信方法 | |
CN110445929A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 810, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080 Patentee after: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd. Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A room 602 Patentee before: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd. |