流媒体数据传输方法及装置、电子设备和存储介质与流程

专利检索2022-05-10  183


本发明涉及计算机视觉技术领域,具体涉及一种流媒体数据传输方法及装置、电子设备和存储介质。

背景技术

目前,网络直播业务主要采用实时消息传输协议(RTMP,Real Time Messaging Protocol)进行媒体流数据的推送或拉取。但由于RTMP不具有鉴权功能,使得流媒体服务器资源会被第三方随意非法访问,占用资源占用,且对用户数据带来安全隐患。



技术实现要素:

为解决现有存在的技术问题,本发明实施例提供一种流媒体数据传输方法及装置、电子设备和存储介质。

为达到上述目的,本发明实施例的技术方案是这样实现的:

第一方面,本发明实施例提供了一种流媒体数据传输方法,所述方法应用于流媒体服务器中;所述方法包括:接收终端设备的第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;发送第二请求至认证服务器;所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;接收来自所述认证服务器的鉴权结果,向所述终端设备发送所述鉴权结果,以及基于所述鉴权结果确定是否传输流媒体数据。

上述方案中,所述终端设备为第一类终端设备;所述基于所述鉴权结果确定是否传输流媒体数据,包括:在所述鉴权结果为鉴权成功的情况下,接收所述第一类终端推送的流媒体数据。

上述方案中,所述终端设备为第二类终端设备;所述基于所述鉴权结果确定是否传输流媒体数据,包括:在所述鉴权结果为鉴权成功的情况下,向所述第二类终端发送所述第二类终端拉取的流媒体数据。

第二方面,本发明实施例还提供了一种流媒体数据传输方法,所述方法应用于认证服务器中;所述方法包括:接收来自终端设备的第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;获得所述流媒体服务器的地址,以及生成所述终端设备对应的鉴权信息,向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述方法还包括:接收来自所述流媒体服务器的第二请求,所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;对所述鉴权信息进行鉴权,获得鉴权结果,向所述流媒体服务器发送所述鉴权结果。

上述方案中,所述向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息,包括:基于所述流媒体服务器的地址和所述鉴权信息生成组合信息,向所述终端设备发送所述组合信息。

第三方面,本发明实施例还提供了一种流媒体数据传输方法,所述方法应用于终端设备中;所述方法包括:向流媒体服务器发送第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;接收来自所述流媒体服务器的鉴权结果,在所述鉴权结果为鉴权成功的情况下,与所述流媒体服务器之间传输流媒体数据。

上述方案中,所述方法还包括:向认证服务器发送第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息,包括:接收来自所述认证服务器的组合信息,所述组合信息中包括所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述终端设备为第一类终端设备;所述与所述流媒体服务器之间传输流媒体数据,包括:向所述流媒体服务器推送流媒体数据。

上述方案中,所述终端设备为第二类终端设备;所述与所述流媒体服务器之间传输流媒体数据,包括:接收来自所述流媒体服务器的、所述第二类终端拉取的流媒体数据。

第四方面,本发明实施例还提供了一种流媒体数据传输装置,所述装置包括:第一接收单元、第一发送单元和第一控制处理单元;其中,

所述第一接收单元,用于接收终端设备的第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

所述第一发送单元,用于发送第二请求至认证服务器;所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;

所述第一接收单元,还用于接收来自所述认证服务器的鉴权结果;

所述第一发送单元,还用于向所述终端设备发送所述鉴权结果;

所述第一控制处理单元,用于基于所述鉴权结果确定是否传输流媒体数据。

上述方案中,所述终端设备为第一类终端设备;所述第一控制处理单元,用于在所述鉴权结果为鉴权成功的情况下,控制所述第一接收单元接收所述第一类终端推送的流媒体数据。

上述方案中,所述终端设备为第二类终端设备;所述第一控制处理单元,用于在所述鉴权结果为鉴权成功的情况下,控制第一发送单元向所述第二类终端发送所述第二类终端拉取的流媒体数据。

第五方面,本发明实施例还提供了一种流媒体数据传输装置,所述装置包括:第二接收单元、第二控制处理单元和第二发送单元;其中,

所述第二接收单元,用于接收来自终端设备的第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;

所述第二控制处理单元,用于获得所述流媒体服务器的地址,以及生成所述终端设备对应的鉴权信息;

所述第二发送单元,用于向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述第二接收单元,还用于接收来自所述流媒体服务器的第二请求,所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;

所述第二控制处理单元,还用于对所述鉴权信息进行鉴权,获得鉴权结果;

所述第二发送单元,还用于向所述流媒体服务器发送所述鉴权结果。

上述方案中,所述第二控制处理单元,还用于基于所述流媒体服务器的地址和所述鉴权信息生成组合信息;

所述第二发送单元,用于向所述终端设备发送所述组合信息。

第六方面,本发明实施例还提供了一种流媒体数据传输装置,所述装置包括:第三发送单元和第三接收单元;其中,

所述第三发送单元,用于向流媒体服务器发送第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

所述第三接收单元,用于接收来自所述流媒体服务器的鉴权结果;

所述第三发送单元或所述第三接收单元,还用于在所述鉴权结果为鉴权成功的情况下,与所述流媒体服务器之间传输流媒体数据。

上述方案中,所述第三发送单元,还用于向认证服务器发送第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;

所述第三接收单元,还用于接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述第三接收单元,用于接收来自所述认证服务器的组合信息,所述组合信息中包括所述流媒体服务器的地址和所述鉴权信息。

上述方案中,所述装置应用于第一类终端设备;

所述第三发送单元,用于向所述流媒体服务器推送的流媒体数据。

上述方案中,所述装置应用于第二类终端设备;

所述第三接收单元,用于接收来自所述流媒体服务器的、所述第二类终端拉取的流媒体数据。

第七方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明实施例第一方面、第二方面或第三方面所述方法的步骤。

第八方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例第一方面、第二方面或第三方面所述方法的步骤。

本发明实施例提供的流媒体数据传输方法及装置、电子设备和存储介质,通过终端设备向流媒体服务器发送用于请求建立连接的第一请求,所述第一请求中包括鉴权信息;流媒体服务器发送用于请求鉴权的第二请求至认证服务器,所述第二请求中包括所述鉴权信息;接收来自所述认证服务器的鉴权结果,向所述终端设备发送所述鉴权结果,以及基于所述鉴权结果确定是否传输流媒体数据,如此,通过对终端设备的身份进行鉴权认证,实现针对合法的终端设备能够传输流媒体数据,非法的终端设备禁止传输流媒体数据,从而降低被非法占用的流媒体服务器的资源,且有效的提升了用户数据的安全性。

附图说明

图1为本发明实施例的流媒体数据传输方法应用的系统架构示意图;

图2为本发明实施例的流媒体数据传输方法的流程示意图一;

图3为本发明实施例的流媒体数据传输方法的流程示意图二;

图4为本发明实施例的流媒体数据传输方法的流程示意图三;

图5为本发明实施例的流媒体数据传输方法的交互流程示意图;

图6为本发明实施例的流媒体数据传输装置的组成结构示意图一;

图7为本发明实施例的流媒体数据传输装置的组成结构示意图二;

图8为本发明实施例的流媒体数据传输装置的组成结构示意图三;

图9为本发明实施例的电子设备的硬件组成结构示意图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步详细的说明。

图1为本发明实施例的流媒体数据传输方法应用的系统架构示意图;如图1所示,本发明实施例的流媒体数据传输方法应用的系统架构中可包括第一类终端1、第二类终端2、流媒体服务器3和认证服务器4。其中,示例性的,本实施例的流媒体数据传输方法可应用于网络直播的场景,则第一类终端1也可称为主播终端,第一类终端1在采集阶段将封包完成的流媒体数据传输给流媒体服务器3;第二类终端2也可称为观众终端,第二类终端2能够从流媒体服务器3获得第一类终端采集的流媒体数据的内容,显示该内容。

在本实施例中,新增认证服务器4,认证服务器4可以分别与终端(包括第一类终端1和第二类终端2)和流媒体服务器3进行交互。一方面,认证服务器4可在终端(包括第一类终端1和第二类终端2)的请求下,向终端(包括第一类终端1和第二类终端2)发送鉴权信息;终端(包括第一类终端1和第二类终端2)在与流媒体服务器3请求建立连接时,将鉴权信息发送至流媒体服务器3,流媒体服务器3将该鉴权信息发送至认证服务器4,以对该终端(包括第一类终端1和第二类终端2)进行鉴权,在鉴权通过后,方可执行后续的流媒体数据的传输,从而实现了流媒体数据传输之前的鉴权,较少流媒体服务器资源被第三方随意非法访问、占用资源占用,且能够有效的提高用户数据的安全性。

需要说明的是,图1仅为本发明实施例的流媒体数据传输方法应用的系统架构的一种示意,在网络直播场景中,实现网络直播的系统还可包括图1中未示出的设备,这里不做过多描述。

另外,图1仅为本发明实施例的流媒体数据传输方法应用的系统架构的一种可选示意,本发明实施例的流媒体数据传输方法也可应用于其他的系统架构,例如系统架构中也可仅包括一类终端,该类终端可将流媒体数据封包后上传到流媒体服务器,也即本实施例的流媒体数据传输方法可应用于媒体数据发布场景;或者,该类终端可基于流媒体服务器下载或在先观看视频文件,也即可从流媒体服务器下载或缓存预先存储的流媒体数据。

至少基于图1所示的系统架构,提出本发明以下各实施例。

本发明实施例提供了一种流媒体数据传输方法。图2为本发明实施例的流媒体数据传输方法的流程示意图一;如图2所示,所述方法包括:

步骤101:接收终端设备的第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

步骤102:发送第二请求至认证服务器;所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;

步骤103:接收来自所述认证服务器的鉴权结果,向所述终端设备发送所述鉴权结果,以及基于所述鉴权结果确定是否传输流媒体数据。

本实施例的流媒体数据传输方法应用于流媒体服务器中。所述流媒体服务器主要用于对流媒体数据进行获取、缓存、调度以及传输播放。

本实施例中,在流媒体服务器确定是否传输流媒体数据之前,首先接收终端设备的第一请求,以基于第一请求建立与终端设备之间的连接,基于建立的连接实现流媒体服务器与终端设备之间的流媒体数据的传输。

在一些可选实施例中,流媒体服务器接收来自终端设备的第一请求之前,流媒体服务器与终端设备之间进行握手过程。示例性的,流媒体服务器与终端设备之间的握手过程需要传输三个数据块。例如可包括:终端设备发送数据块C1和数据块C2;流媒体服务器接收到数据块C1或数据块C2后,发送数据块S1和数据块S2;终端设备收齐数据块S1和数据块S2后,开始发送数据块C3;流媒体服务器收齐数据块C1和数据块C2,开始发送数据块S3;在终端设备和流媒体服务器分别收到数据块C3和数据块S3后,握手完成。进一步地,在握手完成后,流媒体服务器接收来自终端设备的第一请求。

本实施例中,终端设备预先获得流媒体服务器的地址信息以及鉴权信息,基于此,基于所述流媒体服务器的地址信息,终端设备可向流媒体服务器发送所述第一请求,基于预先获得的鉴权信息,所述第一请求中包括所述鉴权信息,以便于对终端设备的身份进行鉴权认证。

本实施例中,流媒体服务器通过认证服务器对终端设备的身份进行鉴权认证。具体的,流媒体服务器向认证服务器发送用于请求鉴权的第二请求,所述第二请求中包括所述鉴权信息;可选地,所述第二请求中也可包括所述终端设备的相关信息,以便于认证服务器可基于所述终端设备的相关信息和对应的所述鉴权信息对终端设备的身份进行鉴权认证。由于所述鉴权信息是由终端设备预先从认证服务器中获得的,因此,通过这种合法方式获得的鉴权信息,通常会得到鉴权成功的鉴权结果,而非法接入的终端设备,由于并未预先从认证服务器中获得鉴权信息,因此这类终端设备在向流媒体服务器发送的第一请求中,可能会携带错误的鉴权信息,也可能不携带鉴权信息;若第一请求中携带错误的鉴权信息,则认证服务器必然会返回鉴权失败的鉴权结果;对于鉴权失败的鉴权结果,或者第一请求中不携带鉴权信息的情况,则流媒体服务器均会确定不传输流媒体数据,从而降低流媒体服务器资源的非法占用。

在一些可选实施例中,所述终端设备为第一类终端设备;所述基于所述鉴权结果确定是否传输流媒体数据,包括:在所述鉴权结果为鉴权成功的情况下,接收所述第一类终端推送的流媒体数据。

本实施例适用于终端设备为第一类终端(或主播终端)的情况。通常情况下,第一类终端具有图像采集设备(如摄像头)和音频采集设备(如麦克风);通过图像采集设备采集图像数据,通过音频采集设备同步采集音频数据,进而将图像数据和音频数据进行压缩编码后,生成流媒体数据,一方面,通过第一类终端设备发起的第一请求可与流媒体服务器之间建立连接;另一方面,确定鉴权成功后,第一类终端设备可向流媒体服务器推送第一类终端生成的流媒体数据,这个过程也可称为推流。

在另一些可选实施例中,所述终端设备为第二类终端设备;所述基于所述鉴权结果确定是否传输流媒体数据,包括:在所述鉴权结果为鉴权成功的情况下,向所述第二类终端发送所述第二类终端拉取的流媒体数据。

本实施例适用于终端设备为第二类终端(或观众终端)的情况。通常情况下,第二类终端具有显示组件(如显示屏),以通过显示组件(如显示屏)显示拉取的流媒体数据的内容。一方面,通过终端设备发起的第一请求可与流媒体服务器之间建立连接;另一方面,确定鉴权成功后,流媒体服务器可向终端设备发送所述第二类终端拉取的流媒体数据,这个过程也可称为拉流过程。

示例性的,流媒体服务器可接收第二类终端的播放请求,所述播放请求中可包括请求播放的流媒体数据的标识;流媒体服务器根据流媒体数据的标识查找获得对应的流媒体数据,向所述第二类终端发送所述流媒体数据。本示例适用于以下场景:用户通过终端设备上已安装的客户端选择想要播放的某个主播的直播业务,通过操作(如单击操作)进入该主播的直播间时,相当于向流媒体服务器发送上述播放请求;该播放请求中包括用户想要请求的视频内容的标识(也即流媒体数据的标识),流媒体服务器根据流媒体数据的标识查找获得对应的流媒体数据,向客户端发送所述流媒体数据,从而客户端显示想要观看的视频内容。

本实施例中,终端设备与流媒体服务器之间通过RTMP协议进行通信,流媒体数据为实时流媒体数据。

基于上述实施例,本发明实施例还提供了一种流媒体数据传输方法。图3为本发明实施例的流媒体数据传输方法的流程示意图二;如图3所示,所述方法包括:

步骤201:接收来自终端设备的第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;

步骤202:获得所述流媒体服务器的地址,以及生成所述终端设备对应的鉴权信息,向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息。

本实施例的流媒体数据传输方法应用于认证服务器中,所述认证服务器主要用于对终端设备的身份进行鉴权认证。示例性的,所述认证服务器可以是与流媒体服务器属于同一管理方(如同公司运营)的认证服务器,或者,所述认证服务器也可以是信任的第三方的认证服务器。

本实施例中,终端设备在请求建立与流媒体服务器的连接之前,首先从认证服务器获得流媒体服务器的地址以及相关的鉴权信息。示例性的,认证服务器中预先配置流媒体服务器的地址;另一方面,认证服务器中预先配置计算规则,根据该计算规则生成终端设备对应的鉴权信息。示例性的,所述鉴权信息可以基于公钥(publicKey)、令牌(token)和过期时间等信息生成,生成的所述鉴权信息可以是一段字符串。

例如,认证服务器可分配用于生成上述鉴权信息的相关信息,例如公钥(publicKey)、令牌(token)和过期时间,基于分配的信息生成通过一段字符串表示的鉴权信息,

在一些可选实施例中,所述向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息,包括:基于所述流媒体服务器的地址和所述鉴权信息生成组合信息,向所述终端设备发送所述组合信息。

本实施例中,流媒体服务器的地址可通过统一资源定位器(URL,Uniform Resource Locator)表示。认证服务器可将流媒体服务器的地址和鉴权信息进行组合,生成携带有鉴权信息的URL(即组合信息),将携带有鉴权信息的URL发送至终端设备。

在本发明的一些可选实施例中,所述方法还包括:接收来自所述流媒体服务器的第二请求,所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;对所述鉴权信息进行鉴权,获得鉴权结果,向所述流媒体服务器发送所述鉴权结果。

本实施例中,认证服务器接收到的第二请求中包括所述鉴权信息;示例性的,所述第二请求中可包括携带有鉴权信息的URL(即上述组合信息)。认证服务器可基于该鉴权信息对终端设备的身份进行鉴权认证,例如采用如上述鉴权信息的生成规则相反的规则对鉴权信息进行校验,获得鉴权结果,并向所述流媒体服务器发送所述鉴权结果。

基于上述实施例,本发明实施例还提供了一种流媒体数据传输方法。图4为本发明实施例的流媒体数据传输方法的流程示意图三;如图4所示,所述方法包括:

步骤301:向流媒体服务器发送第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

步骤302:接收来自所述流媒体服务器的鉴权结果,在所述鉴权结果为鉴权成功的情况下,与所述流媒体服务器之间传输流媒体数据。

本实施例的流媒体数据传输方法应用于终端设备中。所述终端设备可以是如图1中所示的第一类终端设备或第二类终端设备。

本实施例中,终端设备先向流媒体服务器发送用于请求建立连接的第一请求,以通过第一请求建立与流媒体服务器之间的连接,从而基于连接传输流媒体数据。

在一些可选实施例中,终端设备向流媒体服务器发送第一请求之前,终端设备与流媒体服务器之间进行握手过程。示例性的,终端设备与流媒体服务器之间的握手过程需要传输三个数据块。例如可包括:终端设备发送数据块C1和数据块C2;流媒体服务器接收到数据块C1或数据块C2后,发送数据块S1和数据块S2;终端设备收齐数据块S1和数据块S2后,开始发送数据块C3;流媒体服务器收齐数据块C1和数据块C2,开始发送数据块S3;在终端设备和流媒体服务器分别收到数据块C3和数据块S3后,握手完成。进一步地,在握手完成后,终端设备向流媒体服务器发送第一请求。

本实施例中,终端设备预先获得流媒体服务器的地址信息以及鉴权信息,基于此,基于所述流媒体服务器的地址信息,终端设备可向流媒体服务器发送所述第一请求,基于预先获得的鉴权信息,所述第一请求中包括所述鉴权信息,以便于对终端设备的身份进行鉴权认证。

由于所述鉴权信息是由终端设备预先从认证服务器中获得的,因此,通过这种合法方式获得的鉴权信息,通常会得到鉴权成功的鉴权结果,而非法接入的终端设备,由于并未预先从认证服务器中获得鉴权信息,因此这类终端设备在向流媒体服务器发送的第一请求中,可能会携带错误的鉴权信息,也可能不携带鉴权信息;若第一请求中携带错误的鉴权信息,则认证服务器必然会返回鉴权失败的鉴权结果;对于鉴权失败的鉴权结果,或者第一请求中不携带鉴权信息的情况,则流媒体服务器均会确定不传输流媒体数据,从而降低流媒体服务器资源的非法占用。

在本发明的一些可选实施例中,所述方法还包括:向认证服务器发送第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息。

本实施例中,终端设备可通过开放的应用程序接口(OpenAPI,Open Application Programming Interface)接口,向认证服务器发送第三请求,用于查询流媒体服务器的地址信息。

在一些可选实施例中,所述接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息,包括:接收来自所述认证服务器的组合信息,所述组合信息中包括所述流媒体服务器的地址和所述鉴权信息。

本实施例中,认证服务器可将流媒体服务器的地址和鉴权信息进行组合,生成携带有鉴权信息的URL(即组合信息),将携带有鉴权信息的URL发送至终端设备。

在一些可选实施例中,所述终端设备为第一类终端设备;所述与所述流媒体服务器之间传输流媒体数据,包括:向所述流媒体服务器推送流媒体数据。

本实施例适用于终端设备为第一类终端(或主播终端)的情况。通常情况下,第一类终端具有图像采集设备(如摄像头)和音频采集设备(如麦克风);通过图像采集设备采集图像数据,通过音频采集设备同步采集音频数据,进而将图像数据和音频数据进行压缩编码后,生成流媒体数据,一方面,通过第一类终端设备发起的第一请求可与流媒体服务器之间建立连接;另一方面,确定鉴权成功后,第一类终端设备可向流媒体服务器推送第一类终端生成的流媒体数据,这个过程也可称为推流。

在另一些可选实施例中,所述终端设备为第二类终端设备;所述与所述流媒体服务器之间传输流媒体数据,包括:接收来自所述流媒体服务器的、所述第二类终端拉取的流媒体数据。

本实施例适用于终端设备为第二类终端(或观众终端)的情况。通常情况下,第二类终端具有显示组件(如显示屏),以通过显示组件(如显示屏)显示拉取的流媒体数据的内容。一方面,通过终端设备发起的第一请求可与流媒体服务器之间建立连接;另一方面,确定鉴权成功后,流媒体服务器可向终端设备发送所述第二类终端拉取的流媒体数据,这个过程也可称为拉流过程。

本实施例中,终端设备与流媒体服务器之间通过RTMP协议进行通信,流媒体数据为实时流媒体数据。

采用本发明实施例的技术方案,通过对终端设备的身份进行鉴权认证,实现针对合法的终端设备能够传输流媒体数据,非法的终端设备禁止传输流媒体数据,从而降低被非法占用的流媒体服务器的资源,且有效的提升了用户数据的安全性。

下面结合一个具体的示例对本发明实施例的流媒体数据传输方法进行说明。

图5为本发明实施例的流媒体数据传输方法的交互流程示意图;如图5所示,所述方法包括:

步骤401:终端设备通过OpenAPI接口向认证服务器请求查询获取流媒体服务器的URL。

本步骤相当于前述实施例中,终端设备向认证服务器发送第三请求。

步骤402:认证服务器根据预设计算规则生成携带有鉴权信息的组合URL,向终端设备发送所述携带有鉴权信息的组合URL。

这里,认证服务器可根据如过期时间、publicKey、token等鉴权相关信息确定鉴权信息,进一步将流媒体服务器的URL与鉴权信息进行组合,得到组合URL(所述组合URL也即上述实施例中的组合信息)。

步骤403:终端设备根据组合URL向流媒体服务器请求建立连接,以及建立终端设备与流媒体服务器之间的连接。其中,建立连接请求中可携带组合URL。

本步骤相当于前述实施例中的步骤301。

所述组合URL中携带有流媒体服务器的地址和鉴权信息,则终端设备可根据流媒体服务器的地址定位到流媒体服务器,根据流媒体服务器的地址向流媒体服务器发送建立连接请求,且所述建立连接请求中携带所述鉴权信息。

示例性的,用户可直接点击该组合URL,基于该用户操作,终端设备可直接向流媒体服务器发送携带有鉴权信息的建立连接请求。

步骤404:流媒体服务器将鉴权信息转发到认证服务器,以通过认证服务器进行鉴权认证。

这里,流媒体服务器可接收到来自终端设备的组合URL;则流媒体服务器可直接将该组合URL转发至认证服务器。

步骤405:认证服务器根据内部认证计算规则,对鉴权信息进行鉴权校验,并返回鉴权结果至流媒体服务器。

步骤406:流媒体服务器将鉴权结果返回给终端设备,并根据鉴权结果对推流决定是否放行。

步骤407a:在终端设备为第一类终端的情况下,在鉴权结果为鉴权通过时,终端设备向所述流媒体服务器推送流媒体数据。

步骤407b:在终端设备为第二类终端的情况下,在鉴权结果为鉴权通过时,流媒体服务器向终端设备发送其拉取的流媒体数据。

基于上述实施例,本发明实施例还提供了一种流媒体数据传输装置。图6为本发明实施例的流媒体数据传输装置的组成结构示意图一;如图6所示,所述装置包括:第一接收单元11、第一发送单元12和第一控制处理单元13;其中,

所述第一接收单元11,用于接收终端设备的第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

所述第一发送单元12,用于发送第二请求至认证服务器;所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;

所述第一接收单元11,还用于接收来自所述认证服务器的鉴权结果;

所述第一发送单元12,还用于向所述终端设备发送所述鉴权结果;

所述第一控制处理单元13,用于基于所述鉴权结果确定是否传输流媒体数据。

在本发明的一些可选实施例中,所述终端设备为第一类终端设备;所述第一控制处理单元13,用于在所述鉴权结果为鉴权成功的情况下,控制所述第一接收单元11接收所述第一类终端推送的流媒体数据。

在本发明的一些可选实施例中,所述终端设备为第二类终端设备;所述第一控制处理单元13,用于在所述鉴权结果为鉴权成功的情况下,控制第一发送单元12向所述第二类终端发送所述第二类终端拉取的流媒体数据。

本发明实施例中,所述流媒体数据传输装置应用于流媒体服务器中。所述装置中的第一控制处理单元13,在实际应用中可由中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Signal Processor)、微控制单元(MCU,Microcontroller Unit)或可编程门阵列(FPGA,Field-Programmable Gate Array)实现;所述装置中的第一接收单元11和第一发送单元12,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。

本发明实施例还提供了一种流媒体数据传输装置。图7为本发明实施例的流媒体数据传输装置的组成结构示意图二;如图7所示,所述装置包括:第二接收单元21、第二控制处理单元22和第二发送单元23;其中,

所述第二接收单元21,用于接收来自终端设备的第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;

所述第二控制处理单元22,用于获得所述流媒体服务器的地址,以及生成所述终端设备对应的鉴权信息;

所述第二发送单元23,用于向所述终端设备发送所述流媒体服务器的地址和所述鉴权信息。

在本发明的一些可选实施例中,所述第二接收单元21,还用于接收来自所述流媒体服务器的第二请求,所述第二请求用于请求鉴权,所述第二请求中包括所述鉴权信息;

所述第二控制处理单元22,还用于对所述鉴权信息进行鉴权,获得鉴权结果;

所述第二发送单元23,还用于向所述流媒体服务器发送所述鉴权结果。

在本发明的一些可选实施例中,所述第二控制处理单元22,还用于基于所述流媒体服务器的地址和所述鉴权信息生成组合信息;

所述第二发送单元23,用于向所述终端设备发送所述组合信息。

本发明实施例中,所述流媒体数据传输装置应用于认证服务器中。所述装置中的第二控制处理单元22,在实际应用中可由CPU、DSP、MCU或FPGA实现;所述装置中的第二接收单元21和第二发送单元23,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。

本发明实施例还提供了一种流媒体数据传输装置。图8为本发明实施例的流媒体数据传输装置的组成结构示意图三;如图8所示,所述装置包括:第三发送单元31和第三接收单元32;其中,

所述第三发送单元31,用于向流媒体服务器发送第一请求,所述第一请求用于请求建立连接,所述第一请求中包括鉴权信息;

所述第三接收单元32,用于接收来自所述流媒体服务器的鉴权结果;

所述第三发送单元31或所述第三接收单元32,还用于在所述鉴权结果为鉴权成功的情况下,与所述流媒体服务器之间传输流媒体数据。

在本发明的一些可选实施例中,所述第三发送单元31,还用于向认证服务器发送第三请求,所述第三请求用于请求查询流媒体服务器的地址信息;

所述第三接收单元32,还用于接收来自所述认证服务器的所述流媒体服务器的地址和所述鉴权信息。

在本发明的一些可选实施例中,所述第三接收单元32,用于接收来自所述认证服务器的组合信息,所述组合信息中包括所述流媒体服务器的地址和所述鉴权信息。

在本发明的一些可选实施例中,所述装置应用于第一类终端设备;

所述第三发送单元31,用于向所述流媒体服务器推送流媒体数据。

在本发明的一些可选实施例中,所述装置应用于第二类终端设备;

所述第三接收单元32,用于接收来自所述流媒体服务器的、所述第二类终端拉取的流媒体数据。

本发明实施例中,所述流媒体数据传输装置应用于终端设备中。所述装置中的第三接收单元32和第三发送单元31,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。

需要说明的是:上述实施例提供的流媒体数据传输装置在进行流媒体数据传输时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的流媒体数据传输装置与流媒体数据传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本发明实施例还提供了一种电子设备。图9为本发明实施例的电子设备的硬件组成结构示意图,如图9所示,所述电子设备包括存储器42、处理器41及存储在存储器42上并可在处理器414上运行的计算机程序,所述处理器41执行所述程序时实现本发明实施例前述应用于流媒体服务器中的流媒体数据传输方法的步骤;或者,所述处理器41执行所述程序时实现本发明实施例前述应用于认证服务器中的流媒体数据传输方法的步骤;所述处理器41执行所述程序时实现本发明实施例前述应用于终端设备中的流媒体数据传输方法的步骤。

可选地,电子设备中还包括一个或多个网络接口43。可以理解,电子设备中的各个组件通过总线系统44耦合在一起。可理解,总线系统44用于实现这些组件之间的连接通信。总线系统44除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为总线系统44。

可以理解,存储器42可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器42旨在包括但不限于这些和任意其它适合类型的存储器。

上述本发明实施例揭示的方法可以应用于处理器41中,或者由处理器41实现。处理器41可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器41中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器41可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器41可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器42,处理器41读取存储器42中的信息,结合其硬件完成前述方法的步骤。

在示例性实施例中,电子设备可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、FPGA、通用处理器、控制器、MCU、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。

在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器42,上述计算机程序可由电子设备的处理器41执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例前述应用于流媒体服务器中的流媒体数据传输方法的步骤;该程序被处理器执行时实现本发明实施例前述应用于认证服务器中的流媒体数据传输方法的步骤;该程序被处理器执行时实现本发明实施例前述应用于终端设备中的流媒体数据传输方法的步骤。

本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。

本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。

本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

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

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

转载请注明原文地址:https://win.8miu.com/read-30.html

最新回复(0)