一种直播方法及系统与流程

文档序号:14410811阅读:201来源:国知局
一种直播方法及系统与流程

本申请涉及计算机技术、通信技术、视频直播技术领域,尤其是涉及一种直播方法及系统。



背景技术:

视频直播是指通过网络观看远端正在进行的现场音视频实况。观众收看到的视频具有较高的实时性。目前,直播设备和播放设备越来越多样化。在传统的视频接入,播放平台中,视频都是通过手机,pc设备来进行直播。随着观众对内容的质量需求越来越高的情况下,通过专业设备去进行开播的需要日益增加,如利用gopro等专业摄像机进行开播。但是,对于如何在任意环境下拉取外部摄像设备的视频流通过手机,pc把本来不能直播,不能分享的视频变得能够分享。目前尚无成熟可用的技术方法。



技术实现要素:

本申请实施例提供一种直播方法及系统,用来实现在任意环境下拉取外部摄像设备的视频流,通过手机,pc设备把本来不能直播,不能分享的视频变得能够分享。

本发明提供了一种直播方法,该方法包括:

终端通过模拟登录外部摄像设备完成验证操作,所述终端接收来自所述外部摄像设备的视频流;

所述终端将从所述外部摄像设备接收的所述视频流解码,并根据直播协议重新编码后发送到服务器。

优选地,所述终端通过模拟登录外部摄像设备完成验证操作,所述终端接收来自所述外部摄像设备的视频流包括:

所述终端连接所述外部摄像设备的无线网络热点;

所述终端向所述外部摄像设备发送认证请求,tcp三次握手成功,所述终端和所述外部摄像设备建立通信连接;

所述终端接收所述外部摄像设备返回的认证结果;

所述终端发送http请求;

所述终端在获取到所述外部摄像设备返回的设备信息后向所述外部摄像设备发送控制指令;

所述终端接收所述外部摄像设备根据所述控制指令推送的视频流。

优选地,所述所述终端将从所述外部摄像设备接收的所述视频流解码,并根据直播协议重新编码后发送到服务器包括:

所述终端将接收的视频流解码后与本地视频流合成,合成时通过ip地址来区分流的来向;

所述终端将合成后的视频流按照直播协议能够支持的编码格式重新编码后发送到服务器。

优选地,该直播方法还包括:

所述终端从所述外部摄像设备接收到所述视频流后向所述外部摄像设备定时发送心跳包来模拟所述终端和所述外部摄像设备一直保持连接。

优选地,所述所述终端将接收的视频流解码后与本地视频流合成包括:

所述终端将时间轴上相对应的解码后的视频帧和本地视频帧拼接为一个视频帧;其中,所述解码后的视频帧的显示格式为360p或720p,所述本地的视频帧的显示格式为360p或720p。

优选地,所述接收的所述视频流为传输流;所述重新编码后的视频流为h.264流、h.265流或者flv流。

本发明还提供了一种直播系统,所述系统包括终端和外部摄像设备;

所述终端,用于通过模拟登录外部摄像设备完成验证操作;

所述终端,还用于接收来自所述外部摄像设备的视频流;

所述终端,还用于将从所述外部摄像设备接收的所述视频流解码,并根据直播协议重新编码后发送到服务器。

优选地,所述终端,还用于连接所述外部摄像设备的无线网络热点;向所述外部摄像设备发送认证请求;与所述外部摄像设备建立tcp连接;

所述终端,还用于接收所述外部摄像设备返回的认证结果;

所述终端,还用于发送http请求;

所述终端,还用于在获取到所述外部摄像设备返回的设备信息后向所述外部摄像设备发送控制指令;

所述终端,还用于接收所述外部摄像设备根据所述控制指令推送的视频流。

优选地,所述终端,还用于将接收的视频流解码后与本地视频流合成,合成时通过ip地址来区分流的来向;

所述终端,还用于将合成后的视频流按照直播协议能够支持的编码格式重新编码后发送到服务器。

优选地,所述终端,还用于从所述外部摄像设备接收到所述视频流后向所述外部摄像设备定时发送心跳包来模拟所述终端和所述外部摄像设备一直保持连接。

本发明能够实现在任意环境下拉取外部摄像设备的视频流,通过手机、pc设备来对外部摄像设备的视频流进行直播。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本发明提供的计算机系统结构图;

图2为本发明的一种直播方法的流程图;

图3为本发明的一种直播系统的结构示意图。

具体实施方式

为使本申请的目的、技术方法和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方法进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为计算机系统结构图,其中示出了计算机的主要部件。图1中,处理器110、内部存储器105、总线桥120以及网络接口115接入系统总线140,总线桥120用于桥接系统总线140和i/o总线145,i/o接口接入i/o总线145,usb接口以及外部存储器与i/o接口连接。图1中,处理器110可以为一个或多个处理器,每个处理可以具有一个或者多个处理器内核,处理器110可以用于执行本发明实施例的一种直播方法;内部存储器105为易失性存储器,例如寄存器、缓存器、各种类型的随机存取存储器等;在计算机开机运行的时候,内部存储器105中的数据包括操作系统和应用程序;网络接口115可以为以太网接口、光纤接口等;系统总线140可以用来传送数据信息、地址信息、以及控制信息;总线桥120可以用来进行协议转换,将系统总线协议转换为i/o协议或者将i/o协议转换为系统总线协议以实现数据传输;i/o总线145用来数据信息和控制信息,还可以总线终结电阻或电路来降低信号反射干扰;i/o接口130主要与各种外部设备连接,例如键盘、鼠标、传感器等等,闪存可以通过usb接口接入i/o总线,外部存储器为非易失性存储器,例如硬盘、光盘等。在计算机开机之后,处理器可以将存储于外部存储其中的数据读取到内部存储器中,并对内部存储其中的计算机指令进行处理,完成操作系统以及应用程序的功能。该示例计算机可以为台式机、笔记本电脑、平板电脑、智能手机等。

图2为本发明提供的一种直播方法的流程图,该流程图包括:

步骤205,终端通过模拟登录外部摄像设备完成验证操作,所述终端接收来自所述外部摄像设备的视频流;

在具体应用本发明的过程中,终端包括手机,pc,平板电脑及其他终端设备。终端执行步骤205之前,可以进行拉流的准备工作。外部摄像设备可以支持wifi协议或者lan协议,通过无线局域网或者有限局域网连接到终端。外部摄像设备作为wifi服务发射器,提供相应的wifi信号,终端连接到外部摄像设备的无线网络热点;终端通过模拟登录外部摄像设备完成验证操作,外部摄像设备需要连接到无线网络热点的终端向其发送认证请求,认证请求中包括终端的ip地址及其他信息,tcp三次握手成功,终端和所述外部摄像设备建立通信连接,外部摄像设备才能与终端进行数据传输。连接成功后,终端可以向外部摄像设备进行拉流工作。终端用0表示外部摄像设备是处于视频模式,用1表示外部摄像设备是处于拍照模式。终端向外部摄像设备发送http请求后,外部摄像设备返回设备详细情况,当返回的详细情况为1时,即表示外部摄像设备处于拍照模式;当返回的详细情况为0时,即表示外部摄像设备处于视频模式,外部摄像设备准备开启推流端口;终端在获取外部摄像设备详细情况,当详细情况为1时,终端不会进行拉流工作;当详细情况为0时,终端向外部摄像设备发送控制指令,进行拉流工作。由于gopro有自己特定的一套通讯系统,在终端接收到视频流之后向gopro定时发送一定的心跳包来模拟终端和gopro一直保持连接。外部摄像设备接收到控制指令后将采集到的视频流通过udp协议推送到终端,视频流为ts流。所述终端接收来自所述外部摄像设备的视频流。

步骤210,所述终端将从所述外部摄像设备接收的所述视频流解码,并根据直播协议重新编码后发送到服务器;

在具体应用本发明的过程中,终端成功进行拉流工作后,需要对拉取到的视频流进行解码、与本地视频流合成、重新编码等操作。终端将接收的视频流通过解码器来解析传输过来的视频显示格式为360p或720p的视频流,解码器包括ffmpeg解码器或quicktime解码器,但不限于这两种解码器;终端将时间轴上相对应的解码后的视频显示格式为360p或720p的视频帧和本地的视频显示格式为360p或720p的视频帧拼接为一个视频帧,视频显示格式不限于360p或720p这两种,合成时通过ip地址来区分流的来向;终端将合成后的视频流按照直播协议能够支持的编码格式重新编码,以将合成后的视频流转换成能通过互联网进行直播的视频格式,重新编码后的视频流为h.264流、h.265流或者flv流中的任一种视频流,但不限于这三种视频流,直播协议是rtmp协议或者hls协议中的任一种协议,但不限于这两种协议;终端将重新编码后的视频流发送到服务器。

服务器通过sdk授权将接收到的重新编码后的视频流推送到直播频道。用户可以在浏览器地址栏输入rtmp地址观看直播或下载app观看直播,还可以去视频网站观看直播。观看直播的方式不限于这三种。

图3为本发明的一种直播系统的结构示意图,该结构示意图包括:

终端305,用于通过模拟登录外部摄像设备完成验证操作;

在具体应用本发明的过程中,所述终端包括手机,pc,平板电脑及其他终端设备。终端执行步骤205之前,可以进行拉流的准备工作。外部摄像设备可以支持wifi协议或者lan协议,通过无线局域网或者有限局域网连接到终端。外部摄像设备作为wifi服务发射器,提供相应的wifi信号,终端连接到外部摄像设备的无线网络热点;终端通过模拟登录外部摄像设备完成验证操作,外部摄像设备需要连接到无线网络热点的终端向其发送认证请求,认证请求中包括终端的ip地址及其他信息,tcp三次握手成功,终端和所述外部摄像设备建立通信连接,外部摄像设备才能与终端进行数据传输。

终端305,还用于接收来自所述外部摄像设备的视频流;

在具体应用本发明的过程中,终端与外部摄像设备连接成功后,终端可以向外部摄像设备进行拉流工作。终端用0表示外部摄像设备是处于视频模式,用1表示外部摄像设备是处于拍照模式。终端向外部摄像设备发送http请求后,外部摄像设备返回设备详细情况,当返回的详细情况为1时,即表示外部摄像设备处于拍照模式;当返回的详细情况为0时,即表示外部摄像设备处于视频模式,外部摄像设备准备开启推流端口;终端在获取外部摄像设备详细情况,当详细情况为1时,终端不会进行拉流工作;当详细情况为0时,终端向外部摄像设备发送控制指令,进行拉流工作。由于gopro有自己特定的一套通讯系统,在终端接收到视频流之后向gopro定时发送一定的心跳包来模拟终端和gopro一直保持连接。外部摄像设备接收到控制指令后将采集到的视频流通过udp协议推送到终端,视频流为ts流。所述终端接收来自所述外部摄像设备的视频流。

终端305,还用于将从所述外部摄像设备接收的所述视频流解码,并根据直播协议重新编码后发送到服务器;

在具体应用本发明的过程中,终端成功进行拉流工作后,需要对拉取到的视频流进行解码、与本地视频流合成、重新编码等操作。终端将接收的视频流通过解码器来解析传输过来的视频显示格式为360p或720p的视频流,解码器包括ffmpeg解码器或quicktime解码器,但不限于这两种解码器;终端将时间轴上相对应的视频显示格式为360p或720p的视频帧和视频显示格式为360p或720p的视频帧拼接为一个视频帧,视频显示格式不限于360p或720p这两种,合成时通过ip地址来区分流的来向;终端将合成后的视频流按照直播协议能够支持的编码格式重新编码,以将合成后的视频流转换成能通过互联网进行直播的视频格式,重新编码后的视频流为h.264流、h.265流或者flv流中的任一种视频流,但不限于这三种视频流,直播协议是rtmp协议或者hls协议中的任一种协议,但不限于这两种协议;终端将重新编码后的视频流发送到服务器。

服务器接收重新编码后的视频流并通过sdk授权将重新编码后的视频流推送到直播频道。用户可以在浏览器地址栏输入rtmp地址观看直播或在app观看直播,还可以去视频网站观看直播。观看直播的方式不限于这三种。

本发明能够实现在任意环境下拉取外部摄像设备的视频流,通过手机、pc设备来对外部摄像设备的视频流进行直播。

在一个典型的配置中,计算机系统包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可和非可媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

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

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