流媒体管理方法及系统技术方案

技术编号:11985548 阅读:80 留言:0更新日期:2015-09-02 15:15
本发明专利技术涉及一种流媒体管理方法及系统,对于流媒体数据按照预先设定在流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中,在向终端设备推送时根据终端设备支持的协议,根据索引信息索引相应位置处的流媒体数据并根据情况进行封装处理即可,只需要存储一次流媒体数据,不需要针对每一种协议均存储一份流媒体数据,从而大大减少对存储空间的占用,极大的节省了存储空间,降低了成本。

【技术实现步骤摘要】

本专利技术涉及通信领域,尤其涉及一种流媒体管理方法及系统
技术介绍
随着网络视频的发展,机顶盒可以作为流媒体服务器供多种终端设备进行连接,终端设备只要连接到机顶盒提供的流媒体服务器上,就可以观看媒体资源。但是由于终端设备配置的差别,导致支持的流媒体协议不统一,为了满足不同终端设备的播放需求,流媒体服务器需要同时支持不同协议的流媒体。对于不同协议的流媒体,媒体数据的存储方式不一样,例如HLS协议采取切片的方式存储并推送,HTTP采取整个文件形式的存储并推送。所以,如果服务器需要支持不同的协议,那么对于同一个流媒体,需要提供多种不同协议的存储,这样就造成存储空间的极大浪费,带来额外的开销。同时,终端设备在播放网络视频的时候,由于环境等因素,用户不希望打扰到他人,只需要观看视频,而将音频设置为静音;或者用户处于疲劳状态,只想听音频或者音乐,不需要观看视频;这种情况下,流媒体服务器还是将音视频同时推送到终端设备,这就造成带宽的浪费,且大大降低了传输速度,给用户带来不便。
技术实现思路
有鉴于此,有必要针对上述流媒体服务器为支持不同的协议造成存储空间的极大浪费的问题,提供一种流媒体管理方法及系统。本专利技术提供一种流媒体管理方法,包括如下步骤:SlO:由机顶盒开启流媒体服务器,流媒体服务器创建共享内存;S20:按照预先设定对流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中;S30:获取终端设备所支持的协议,并判断协议是否属于需要封装包头的协议,若不是,则按照协议支持的方式,根据索引信息获取索引所对应位置的流媒体数据发送至终端设备,若是,则根据索引信息获取索引所对应位置的流媒体数据并封装包头后再发送至终端设备。在其中的一个实施方式中,所述步骤S20具体为:流媒体服务器初始化共享内存,并采用多进程通信机制,当接收到终端设备请求后,锁定对应流媒体频点,获取对应的流媒体数据和索引信息存储在共享内存中。在其中的一个实施方式中,所述步骤S20具体为:流媒体服务器检测所连接的终端设备的数量,若数量超过负荷则将暂停接受终端设备的请求。在其中的一个实施方式中,所述方法还包括步骤S40:分别对流媒体数据中的音频和视频位置建立索引并加入索引信息,在终端设备请求时判断终端设备请求的是否只是音频或者视频,若是则根据索引信息只发送音频或者视频至终端设备,若不是则音频和视频全部发送至终端设备。本专利技术还提供一种流媒体管理系统,包括:共享内存创建单元,控制由机顶盒开启流媒体服务器,并控制流媒体服务器创建共享内存;索引信息创建单元,按照预先设定对流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中;流媒体推送单元,获取终端设备所支持的协议,并判断协议是否属于需要封装包头的协议,若不是,则按照协议支持的方式,根据索引信息获取索引所对应位置的流媒体数据发送至终端设备,若是,则根据索引信息获取索引所对应位置的流媒体数据并封装包头后再发送至终端设备。在其中的一个实施方式中,所述索引信息创建单元控制流媒体服务器初始化共享内存,并采用多进程通信机制,当接收到终端设备请求后,锁定对应流媒体频点,获取对应的流媒体数据和索引信息存储在共享内存中。在其中的一个实施方式中,所述流媒体服务器检测所连接的终端设备的数量,若数量超过负荷则将暂停接受终端设备的请求。在其中的一个实施方式中,所述系统还包括:音视频管理单元,分别对流媒体数据中的音频和视频位置建立索引并加入索引信息,在终端设备请求时判断终端设备请求的是否只是音频或者视频,若是则根据索引信息只发送音频或者视频至终端设备,若不是则音频和视频全部发送至终端设备。本专利技术流媒体管理方法及系统,对于流媒体数据按照预先设定在流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中,在向终端设备推送时根据终端设备支持的协议,根据索引信息索引相应位置处的流媒体数据并根据情况进行封装处理即可,只需要存储一次流媒体数据,不需要针对每一种协议均存储一份流媒体数据,从而大大减少对存储空间的占用,极大的节省了存储空间,降低了成本。【附图说明】图1是一个实施例中的流媒体管理方法的流程图;图2是一个实施例中的流媒体管理系统的结构图。【具体实施方式】为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。图1是一个实施例中的流媒体管理方法的流程图,如图1所示,该方法包括如下步骤:SlO:由机顶盒开启流媒体服务器,流媒体服务器创建共享内存。在机顶盒作为流媒体服务器时,如果终端设备需要连接到流媒体服务器,则机顶盒开启流媒体服务器。为能够对流媒体进行更好的存储和推送,在该实施例中,流媒体服务器创建一个单独的共享内存,用于对流媒体进行更好的存储和共享。S20:按照预先设定对流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中。常见的流媒体协议,对流媒体通常主要有两种存储方式,分别为切片进行存储(例如HLS协议)或者是整个文件存储(例如HTTP协议)。由于不同协议的存储方式不同,为避免对同一流媒体资源重复对不同协议进行存储,在该实施例中,根据预先的设定,在流媒体的多个位置建立索引,并将索引构建成索引信息。例如,一段流媒体的长度为5M,HLS协议是将流媒体切片成5个切片文件,每个为1M,那么针对该流媒体,分别在0M、1M、2M、3M、4M处建立索引,对应不同位置,通过索引可以直接索引定位到对应的起止位置,可以由指定位置取出该流媒体的片段,这样就等同于将一个完整流媒体进行切片保存,又不需要对流媒体进行切片,不需要进行多次重复存储,从而大大节省了存储空间。在进一步的实施方式中,该步骤具体为:流媒体服务器初始化共享内存,并采用多进程通信机制,当接收到终端设备请求后,锁定对应流媒体频点,获取对应的流媒体数据和索引信息存储在共享内存中。这样通过多进程通信机制,可以多个进程同时进行,大大提高反应处理效率。同时,在终端设备连接数量过多时,流媒体服务器的压力过大,将导致延时或者卡顿等问题,不能很好的支持终端设备,故该步骤进一步还包括:流媒体服务器检测所连接的终端设备的数量,若数量超过负荷则将暂停接受终端设备的请求。S30:获取终端设备所支持的协议,并判断协议是否属于需要封装包头的协议,若不是,则按照协议支持的方式,根据索引信息获取索引所对应位置的流媒体数据发送至终端设备,若是,则根据索引信息获取索引所对应位置的流媒体数据并封装包头后再发送至终端设备。在获取流媒体数据以及索引信息后,需要将流媒体数据发送至终端设备。由于不同的终端设备支持的协议不同,终端设备对流媒体数据所要求的封装方式也不同。有的协议直接发送流媒体数据即可,有的需要封装包头数据后才能发送至终端设备。故在该实施例中,首先要获取终端设备所支持的协议,然后判断协议是何种类型的协议,如果不是属于需要封装包头的协议,则可以不封装包头而根本文档来自技高网...

【技术保护点】
一种流媒体管理方法,其特征在于,包括如下步骤:S10:由机顶盒开启流媒体服务器,流媒体服务器创建共享内存;S20:按照预先设定对流媒体数据的多个位置建立索引构建索引信息,在终端设备请求时由流媒体服务器解析获取流媒体数据和索引信息并存储在共享内存中;S30:获取终端设备所支持的协议,并判断协议是否属于需要封装包头的协议,若不是,则按照协议支持的方式,根据索引信息获取索引所对应位置的流媒体数据发送至终端设备,若是,则根据索引信息获取索引所对应位置的流媒体数据并封装包头后再发送至终端设备。

【技术特征摘要】

【专利技术属性】
技术研发人员:曾令明
申请(专利权)人:深圳市九洲电器有限公司
类型:发明
国别省市:广东;44

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

1