本发明涉及视频直播领域,尤其涉及一种视频直播方法及直播系统。。
背景技术:
随着视频技术的发展,出现了许多的视频直播技术,目前比较普及的直播技术包括点对点视频直播技术。但是,当前的点对点视频直播,无法对视频直播过程进行控制,客户端和服务端必须同时使用私有软件开发工具包(softwaredevelopmentkit,sdk)进行开发,扩展性低,无法在浏览器中进行连接,服务端的硬件设备、网络带宽等性能有限,不能同时支持多人交互直播。
技术实现要素:
有鉴于此,本发明提出一种视频直播方法及直播系统,以解决上述技术问题。
首先,为实现上述目的,本发明提出一种视频直播方法,应用于直播系统,所述直播系统包括公网服务器、视频服务器、客户端设备和服务端设备;所述方法包括:
所述客户端设备向所述公网服务器发送请求消息,所述请求消息用于请求所述服务端设备获取用于视频直播的音视频数据;
所述公网服务器建立数据接口,通过所述数据接口与所述服务端设备建立通信联系;
所述公网服务器从所述服务端设备获取音视频数据,将所述获取的音视频数据打包成实时消息传输协议rtmp或实时流传输协议rtsp的数据包,并向所述视频服务器发送所述数据包;
所述视频服务器接收所述数据包,并将所述数据包传输给所述客户端设备。
可选地,所述请求消息为超文本传输协议http请求消息。
可选地,所述公网服务器建立数据接口,通过所述数据接口与所述服务端设备建立通信联系的步骤,包括:
所述公网服务器建立点对点p2p数据接口,通过所述点对点p2p数据接口与所述服务端设备建立通信联系。
可选地,所述所述公网服务器从所述服务端设备获取音视频数据的步骤,包括:
所述公网服务器将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端设备;
所述服务端设备根据所述p2p请求消息获取音视频数据,并将所述获取的音视频数据传输给所述公网服务器。
可选地,所述视频服务器接收所述数据包,并将所述数据包传输给所述客户端的步骤之后,所述方法还包括:
所述客户端端接收所述数据包,解析所述数据包中的音视频数据,并播放所述解析到的音视频数据。
此外,为实现上述目的,本发明还提供一种直播系统,所述直播系统包括公网服务器、视频服务器、客户端设备和服务端设备;
所述客户端设备向所述公网服务器发送请求消息,所述请求消息用于请求所述服务端设备获取用于视频直播的音视频数据;
所述公网服务器建立数据接口,通过所述数据接口与所述服务端设备建立通信联系;
所述公网服务器从所述服务端设备获取音视频数据,将所述获取的音视频数据打包成实时消息传输协议rtmp或实时流传输协议rtsp的数据包,并向所述视频服务器发送所述数据包;
所述视频服务器接收所述数据包,并将所述数据包传输给所述客户端设备。
可选地,所述请求消息为http请求消息。
可选地,所述公网服务器建立点对点p2p数据接口,通过所述点对点p2p数据接口与所述服务端设备建立通信联系。
可选地,所述公网服务器将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端设备;
所述服务端设备根据所述p2p请求消息获取音视频数据,并将所述获取的音视频数据传输给所述公网服务器。
可选地,所述客户端端接收所述数据包,解析所述数据包中的音视频数据,并播放所述解析到的音视频数据。
相较于现有技术,本发明所提出的视频直播方法及直播系统,所述方法包括:所述客户端设备向所述公网服务器发送请求消息,所述请求消息用于请求所述服务端设备获取用于视频直播的音视频数据;所述公网服务器建立数据接口,通过所述数据接口与所述服务端设备建立通信联系;所述公网服务器从所述服务端设备获取音视频数据,将所述获取的音视频数据打包成实时消息传输协议rtmp或实时流传输协议rtsp的数据包,并向所述视频服务器发送所述数据包;所述视频服务器接收所述数据包,并将所述数据包传输给所述客户端设备。这样,客户端设备向公网服务器发送请求消息,公网服务器从服务端设备获取音视频数据,并将音视频数据传输给视频服务器,视频服务器将音视频数据传输给客户端设备,能解决现有服务端的硬件设备及网络带宽等性能有限的问题,能同时支持多人交互直播,提高直播效果。
附图说明
图1是本发明实施例提供的一种视频直播方法的流程示意图;
图2是本发明实施例提供的一种直播系统的示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
参阅图1,图1是本发明实施例提供的一种视频直播方法的步骤流程图,所述方法应用于一直播系统中,所述直播系统包括公网服务器、视频服务器、客户端设备和服务端设备,如图1所示,所述视频直播方法包括:
步骤101、所述客户端设备向所述公网服务器发送请求消息,所述请求消息用于请求所述服务端设备获取用于视频直播的音视频数据。
客户端设备可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端。客户端设备上可以安装视频播放应用和/或浏览器。
在本实施例中,所述请求消息为超文本传输协议(hypertexttransferprotocol,http)。所述音视频数据可以为高清、标清或者超高清音视频数据。
步骤102、所述公网服务器建立数据接口,通过所述数据接口与所述服务端设备建立通信联系。
在本实施例中,通过所述数据接口,可以实现公网服务器与服务端设备之间的音视频数据传输。
在本实施例中,服务端设备为具有摄像头的移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端。
具体来说,该步骤102具体包括以下步骤:
所述公网服务器建立点对点(peertopeer,p2p)数据接口,通过所述p2p数据接口与所述服务端设备建立通信联系。
步骤103、所述公网服务器从所述服务端设备获取音视频数据,将所述获取的音视频数据打包成实时消息传输协议rtmp或实时流传输协议rtsp的数据包,并向所述视频服务器发送所述数据包。
具体来说,所述所述公网服务器从所述服务端设备获取音视频数据的步骤,包括:
所述公网服务器将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端设备;
所述服务端设备根据所述p2p请求消息获取音视频数据,并将所述获取的音视频数据传输给所述公网服务器。
这样,可以将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端,实现请求消息的格式转换,扩大客户端设备的种类。
步骤104、所述视频服务器接收所述数据包,并将所述数据包传输给所述客户端设备。
这样,能将客户端设备请求的音视频数据发送给客户端设备,完成音视频数据的传输操作。
在步骤104之后,还可以包括:
所述客户端端接收所述数据包,解析所述数据包中的音视频数据,并播放所述解析到的音视频数据。
这样,客户端设备向公网服务器发送请求消息,公网服务器从服务端设备获取音视频数据,并将音视频数据传输给视频服务器,视频服务器将音视频数据传输给客户端设备,能解决现有服务端的硬件设备及网络带宽等性能有限的问题,能同时支持多人交互直播,提高直播效果。
参见图2,如图2本发明实施例提供的一种直播系统的示意图,所述直播系统包括视频服务器200、服务端设备201、公网服务器202及客户端设备203,其中:
所述203向所述公网服务器202发送请求消息,所述请求消息用于请求所述服务端设备201获取用于视频直播的音视频数据。
客户端设备203可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端。客户端设备上可以安装视频播放应用和/或浏览器。在直播系统中,客户端设备203可以包括两个或者多个,在图2中仅仅示意性的画出一个,在此不做限制。
在本实施例中,所述请求消息为超文本传输协议(hypertexttransferprotocol,http)。所述音视频数据可以为高清、标清或者超高清音视频数据。
所述公网服务器202建立数据接口,通过所述数据接口与所述服务端设备201建立通信联系。
在本实施例中,通过所述数据接口,可以实现公网服务器与服务端设备之间的音视频数据传输。在直播系统中,服务端设备201可以包括两个或者多个,在图2中仅仅示意性的画出一个,在此不做限制。
在本实施例中,服务端设备201为具有摄像头的移动电话、智能电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、导航装置等等的移动终端。
具体来说,所述公网服务器202建立点对点(peertopeer,p2p)数据接口,通过所述p2p数据接口与所述服务端设备201建立通信联系。
所述公网服务器201从所述服务端设备201获取音视频数据,将所述获取的音视频数据打包成实时消息传输协议(realtimemessagingprotocol,rtmp)或实时流传输协议(realtimestreamingprotocol,rtsp)的数据包,并向所述视频服务器发送所述数据包。
具体来说,所述公网服务器202将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端设备;
所述服务端设备根据所述p2p请求消息获取音视频数据,并将所述获取的音视频数据传输给所述公网服务器。
这样,可以将http请求消息转换成点到点p2p请求消息,并将所述p2p请求消息传输给所述服务端,实现请求消息的格式转换,扩大客户端设备的种类。
所述视频服务器200接收所述数据包,并将所述数据包传输给所述客户端设备203。
这样,能将客户端设备请求的音视频数据发送给客户端设备,完成音视频数据的传输操作。
所述客户端端203接收所述数据包,解析所述数据包中的音视频数据,并播放所述解析到的音视频数据。
这样,客户端设备向公网服务器发送请求消息,公网服务器从服务端设备获取音视频数据,并将音视频数据传输给视频服务器,视频服务器将音视频数据传输给客户端设备,能解决现有服务端的硬件设备及网络带宽等性能有限的问题,能同时支持多人交互直播,提高直播效果。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。