一种转码方法、服务器和计算机可读存储介质技术

技术编号:21518101 阅读:17 留言:0更新日期:2019-07-03 10:10
本发明专利技术实施例涉及互联网技术领域,公开了一种转码方法、服务器和计算机可读存储介质。本申请的部分实施例中,转码方法包括:接收推流请求;其中,推流请求中包括推送的数据流,以及数据流的标识信息;在确定接收到数据流的拉流请求后,对数据流进行转码处理;其中,拉流请求所拉取的数据流的标识信息与推流请求中的数据流的标识信息相同,拉流请求拉取到的数据为数据流转码处理后得到的数据。该实现中,在接收到数据流的拉流请求的情况下,才对该数据流进行转码处理,避免了对没有人访问的数据流进行转码处理而造成的转码资源的消耗,提高了转码资源的利用效率。

A Transcoding Method, Server and Computer Readable Storage Media

【技术实现步骤摘要】
一种转码方法、服务器和计算机可读存储介质
本专利技术实施例涉及互联网
,特别涉及一种转码方法、服务器和计算机可读存储介质。
技术介绍
目前,绝大部分的直播提供厂商都选择内容分发网络(ContentDeliveryNetwork,CDN)或者云服务商进行直播加速。而转码服务是CDN的一项基础服务。当前,CDN厂商一般采用推流主动转码的方式,以提供转码服务。推流主动转码的服务模式下,由推流器将直播流推流到CDN的边缘服务器,边缘服务器将直播流转推到CDN的源服务器,源服务器根据参数或者配置的模板进行主动转码,比如转封装格式,窄带高清,水印等转码流。然而,专利技术人发现现有技术中至少存在如下问题:传统CDN的推流主动转码方式存在不必要的资源浪费问题。如何在提供转码服务的同时,降低转码带来的成本消耗成为制约CDN厂商发展的关键要素。需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
本专利技术实施方式的目的在于提供一种转码方法、服务器和计算机可读存储介质,使得能够避免主动转码带来的不必要的资源浪费。为解决上述技术问题,本专利技术的实施方式提供了一种转码方法,包括以下步骤:接收推流请求;其中,推流请求中包括推送的数据流,以及数据流的标识信息;在确定接收到数据流的拉流请求后,对数据流进行转码处理;其中,拉流请求所拉取的数据流的标识信息与推流请求中的数据流的标识信息相同,拉流请求拉取到的数据为数据流转码处理后得到的数据。本专利技术的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上述实施方式提及的转码方法。本专利技术的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述实施方式提及的转码方法。本专利技术实施方式相对于现有技术而言,在接收到数据流的拉流请求的情况下,才对该数据流进行转码处理,避免了对没有人访问的数据流进行转码处理而造成的转码资源的消耗,提高了转码资源的利用效率。另外,在对数据流进行转码处理之后,转码方法还包括:若确定推流请求断开,停止对数据流的转码处理。该实现中,避免了转码资源的消耗,进一步提高了整个转码资源的利用率。另外,在停止对数据流的转码处理之前,转码方法还包括:确定推流请求断开的时长超过第一预设值。该实现中,避免由于网络不稳定导致推流请求断开的情况下,源站服务器频繁判断是否对数据流进行转码处理而造成的资源浪费。另外,在对数据流进行转码处理之后,转码方法还包括:若确定数据流的所有拉流请求均断开,停止对数据流的转码处理。该实现中,避免了转码资源的消耗,进一步提高了整个转码资源的利用率。另外,在停止对数据流的转码处理之前,转码方法还包括:确定所有拉流请求均断开的时长超过第二预设值。该实现中,避免了客户端需要拉取该数据流,但由于网络不稳定导致拉流请求频繁断开的情况下,源站服务器频繁地判断是否对数据流进行转码处理的判断而造成的资源浪费。另外,在确定接收到数据流的拉流请求之前,转码方法还包括:确定推送请求中包括转码指令,转码指令指示对数据流进行转码处理。该实现中,避免了对无转码需求的数据流进行后续操作所造成的计算资源浪费。另外,在接收推流请求之后,转码方法还包括:若确定未接收到数据流的拉流请求,将数据流的状态记录为第一状态;其中,第一状态为推流接入且待转码状态。另外,在接收推流请求之后,转码方法还包括:若确定接收到数据流的拉流请求,将数据流的状态变更为第二状态;其中,第二状态为推流接入且正在转码状态。该实现中,使得源站服务器能够获知数据流的推流情况和拉流情况。另外,在停止对数据流的转码处理之后,转码方法还包括:将数据流的状态变更为第三状态;其中,第三状态为推流未接入且待转码状态。另外,在停止对数据流的转码处理之后,转码方法还包括:将数据流的状态变更为第一状态;其中,第一状态为推流接入且待转码状态。另外,在接收推流请求之前或之后,转码方法还包括:接收拉流请求;判断数据流的状态是否为第一状态或第二状态;第一状态为推流接入且待转码,第二状态为推流接入且正在转码状态;若确定是,发送数据流的转码数据至发送拉流请求的客户端;若确定不是,将数据流的状态变更为第四状态;其中,第四状态为拉流接入且未转码状态。另外,确定是否接收到数据流的拉流请求的方法为:判断数据流的状态是否为第二状态或第四状态;其中,第四状态为拉流接入且未转码状态;若确定是,则判定为接收到数据流的拉流请求;若确定不是,则判定为未接收到数据流的拉流请求。附图说明一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。图1是本专利技术的第一实施方式的转码方法的流程图;图2是本专利技术的第二实施方式的转码方法的流程图;图3是本专利技术的第二实施方式的直播系统架构示意图;图4是本专利技术的第三实施方式的服务器的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本专利技术各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。本专利技术的第一实施方式涉及一种转码方法,应用于CDN领域、流媒体领域或其他领域的服务器,如源站服务器。本实施方式中,以该转码方法在CDN领域中的应用为例,对该转码方法进行说明,该转码方法在其他领域的应用可参考本实施方式中的相关内容。如图1所示,该转码方法还包括:步骤101:接收推流请求。具体地说,推流是指把本地采集的语音视频推送到源站服务器,推流请求中包括推送的数据流,以及数据流的标识信息,用于将数据流推送至源站服务器。其中,数据流包括本地采集的语音,和/或,视频。在一个例子中,推流请求可以由直播端发送给推流器,推流器发送给边缘服务器,边缘服务器发送给源站服务器。步骤102:判断是否接收到数据流的拉流请求。具体地说,拉流请求所拉取的数据流的标识信息与推流请求中的数据流的标识信息相同,拉流请求拉取到的数据为数据流转码处理后得到的数据。源站服务器在确定接收到数据流的拉流请求后,则执行步骤103,否则,继续等待拉流请求接入,即继续执行步骤102。在一个例子中,数据流的标识信息为数据流的流名。直播端推送的数据流的流名和客户端访问的数据流的流名是一致的,但是客户端访问到的数据流是经过转码处理的。比如,推流请求中的数据流的流名和拉流请求所拉取的数据流的流名都为livestream(直播流),但是拉流到的livestream是经过转码处理得到的。专利技术人发现,采用主动转码方式时,如果不接收到客户端对推流请求所推送的数据流发起拉流请求,源站服务器仍然会对该推流请求中的数据流进行转码,这将浪费转码资源。而本实施方式中,在确定接收到数据流的拉流请求后,即有客户端拉取数据流后,再对推本文档来自技高网...

【技术保护点】
1.一种转码方法,其特征在于,包括:接收推流请求;其中,所述推流请求中包括推送的数据流,以及所述数据流的标识信息;在确定接收到所述数据流的拉流请求后,对所述数据流进行转码处理;其中,所述拉流请求所拉取的数据流的标识信息与所述推流请求中的数据流的标识信息相同,所述拉流请求拉取到的数据为所述数据流转码处理后得到的数据。

【技术特征摘要】
1.一种转码方法,其特征在于,包括:接收推流请求;其中,所述推流请求中包括推送的数据流,以及所述数据流的标识信息;在确定接收到所述数据流的拉流请求后,对所述数据流进行转码处理;其中,所述拉流请求所拉取的数据流的标识信息与所述推流请求中的数据流的标识信息相同,所述拉流请求拉取到的数据为所述数据流转码处理后得到的数据。2.根据权利要求1所述的转码方法,其特征在于,在所述对所述数据流进行转码处理之后,所述转码方法还包括:若确定所述推流请求断开,停止对所述数据流的转码处理。3.根据权利要求2所述的转码方法,其特征在于,在所述停止对所述数据流的转码处理之前,所述转码方法还包括:确定所述推流请求断开的时长超过第一预设值。4.根据权利要求1所述的转码方法,其特征在于,在所述对所述数据流进行转码处理之后,所述转码方法还包括:若确定所述数据流的所有拉流请求均断开,停止对所述数据流的转码处理。5.根据权利要求4所述的转码方法,其特征在于,在所述停止对所述数据流的转码处理之前,所述转码方法还包括:确定所有拉流请求均断开的时长超过第二预设值。6.根据权利要求1至5中任一项所述的转码方法,其特征在于,在确定接收到所述数据流的拉流请求之前,所述转码方法还包括:确定所述推送请求中包括转码指令,所述转码指令指示对所述数据流进行转码处理。7.根据权利要求1至5中任一项所述的转码方法,其特征在于,在所述接收推流请求之后,所述转码方法还包括:若确定未接收到所述数据流的拉流请求,将所述数据流的状态记录为第一状态;其中,所述第一状态为推流接入且待转码状态。8.根据权利要求1至5中任一项所述的转码方法,其特征在于,在所述接收推流请求之后,所述转码方法还包括:若确定接收到所述数据流的拉流请求,将所述数据流的状态...

【专利技术属性】
技术研发人员:庄晓川林小强
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1