媒体播放方法、系统及相关设备技术方案

技术编号:37434934 阅读:22 留言:0更新日期:2023-05-06 09:07
本发明专利技术提供一种媒体播放方法、系统及相关设备,该方法包括:根据接收到的第一播放请求,对待播放音视频进行前置分析,将得到的预设封装格式的播放地址发送至客户端,使客户端接收预设封装格式的播放地址,并在读取到预设封装格式的播放地址对应的预设封装格式的索引后,向服务端发送第二播放请求;接收客户端发送的第二播放请求;根据第二播放请求,查找缓存数据中是否存在ts片段对应的缓存;若是,读取ts片段对应的音视频流;若否,实时编码ts片段对应的音视频流,并缓存音视频流;将音视频流输出至客户端,使客户端在接收到音视频流后,实时解码播放音视频流。通过上述方法使客户端兼容播放各种音视频、服务端实时编解码及全程转码。码。码。

【技术实现步骤摘要】
媒体播放方法、系统及相关设备


[0001]本专利技术涉及流媒体
,尤其涉及一种媒体播放方法、系统及相关设备。

技术介绍

[0002]由于播放终端(客户端)对音视频的解码能力各异,对于涉及到播放(视频预览)的系统,一种方法是通过对原始音视频内容编码,输出统一的视频格式,一般情况下,通过AVC编码封装成mp4、m3u8方式以便最大化覆盖终端设备。另一种方法是在客户端上实现对所有编码格式的支持,但是,该方法导致客户端开发工作量急剧增加,实现难度变大。
[0003]在现有技术中,采用离线转码技术,先按一定的格式和码率,对视频文件进行转码处理,存储后供相应终端访问。常见的做法有:一、现有的视频网站(如芒果TV、腾讯视频、爱奇艺、优酷等)对用户提供的视频内容的方式。在服务端事先对视频进行转码,输出绝大部分终端支持的mp4或者m3u8,为终端提供播放。但是,该方式离线转码耗时很长,内容播出滞后。二、开发全能的播放器,客户端提供超强的解码能力,通过私有协议启动本地播放器实现播放。但是,开发难度大。
[0004]由此可知,在现有的离线转码方式中,客户端无法兼容播放各种音视频,服务端无法实时编解码,而且,离线转码方式为全程转码,容易浪费资源。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种媒体播放方法、系统及相关设备,以实现解决现有技术中客户端无法兼容播放各种音视频、服务端无法实时编解码以及全程转码的问题。
[0006]为实现上述目的,本专利技术实施例提供如下技术方案:
>[0007]本专利技术实施例第一方面公开了一种媒体播放方法,应用于服务端,所述方法包括:
[0008]接收客户端发送的第一播放请求,所述第一播放请求包括必需信息和可选信息,所述必需信息包括待播放音视频的源地址,所述可选信息至少包括所述待播放音视频的分辨率;
[0009]根据所述第一播放请求,对所述待播放音视频进行前置分析,得到前置分析数据,所述前置分析数据至少包括预设封装格式的播放地址;
[0010]将所述预设封装格式的播放地址发送至所述客户端,使所述客户端接收所述预设封装格式的播放地址,并在读取到所述预设封装格式的播放地址对应的预设封装格式的索引后,向所述服务端发送第二播放请求,所述第二播放请求包括请求播放所述预设封装格式的索引对应的ts片段和请求参数;
[0011]接收所述客户端发送的所述第二播放请求;
[0012]根据所述第二播放请求,查找预先存储的缓存数据中是否存在所述ts片段对应的缓存;
[0013]若是,读取所述ts片段对应的音视频流;
[0014]若否,实时编码所述ts片段对应的音视频流,并缓存所述音视频流;
[0015]将所述音视频流输出至所述客户端,使所述客户端在接收到所述音视频流后,实时解码播放所述音视频流。
[0016]可选的,还包括:
[0017]当获取到所述客户端存在seek操作时,确定所述seek操作对应区间,并确定所述seek操作对应区间以外的所需ts片段;
[0018]读取所述所需ts片段对应的音视频流,并向所述客户端输出所述所需ts片段对应的音视频流。
[0019]可选的,还包括:
[0020]当接收到所述客户端发送的播放回退请求时,确定需回退的ts片段;
[0021]读取所述需回退的ts片段对应的音视频流,并向所述客户端输出所述需回退的ts片段对应的音视频流。
[0022]可选的,所述若否,实时编码所述ts片段对应的音视频流,并缓存所述音视频流,包括:
[0023]若否,通过预先配置的内部进程,实时编码所述ts片段对应的音视频流;
[0024]根据所述请求参数,生成所述ts片段对应的编码参数,将所述ts片段对应的音视频流和编码参数进行存储。
[0025]本专利技术实施例第二方面公开了一种服务端,所述服务端包括:
[0026]第一接收模块,用于接收客户端发送的第一播放请求,所述第一播放请求包括必需信息和可选信息,所述必需信息包括待播放音视频的源地址,所述可选信息至少包括所述待播放音视频的分辨率;
[0027]前置分析模块,用于根据所述第一播放请求,对所述待播放音视频进行前置分析,得到前置分析数据,所述前置分析数据至少包括预设封装格式的播放地址;
[0028]发送模块,用于将所述预设封装格式的播放地址发送至所述客户端,使所述客户端接收所述预设封装格式的播放地址,并在读取到所述预设封装格式的播放地址对应的预设封装格式的索引后,向所述服务端发送第二播放请求,所述第二播放请求包括请求播放所述预设封装格式的索引对应的ts片段和请求参数;
[0029]第二接收模块,用于接收所述客户端发送的所述第二播放请求;
[0030]查找模块,用于根据所述第二播放请求,查找预先存储的缓存数据中是否存在所述ts片段对应的缓存,若是,执行读取模块,若否,执行编码模块;
[0031]所述第一读取模块,用于读取所述ts片段对应的音视频流;
[0032]所述编码模块,用于实时编码所述ts片段对应的音视频流,并缓存所述音视频流;
[0033]输出模块,用于将所述音视频流输出至所述客户端,使所述客户端在接收到所述音视频流后,实时解码播放所述音视频流。
[0034]可选的,还包括:
[0035]第一确定模块,用于当获取到所述客户端存在seek操作时,确定所述seek操作对应区间,并确定所述seek操作对应区间以外的所需ts片段;
[0036]第二读取模块,用于读取所述所需ts片段对应的音视频流,并向所述客户端输出所述所需ts片段对应的音视频流。
[0037]可选的,还包括:
[0038]第二确定模块,用于当接收到所述客户端发送的播放回退请求时,确定需回退的ts片段;
[0039]第三读取模块,用于读取所述需回退的ts片段对应的音视频流,并向客户端输出所述需回退的ts片段对应的音视频流。
[0040]本专利技术实施例第三方面公开了一种媒体播放系统,所述媒体播放系统包括:客户端和服务端;
[0041]所述客户端,用于向所述服务端发送第一播放请求,接收所述服务端发送的根据所述第一播放请求得到的预设封装格式的播放地址,在读取到所述预设封装格式的播放地址对应的预设封装格式的索引后,向所述服务端发送第二播放请求,并在接收所述服务端输出的根据所述第二播放请求得到的所述ts片段对应的音视频流后,实时解码播放所述音视频流;
[0042]所述服务端,用于接收所述客户端发送的所述第一播放请求,根据所述第一播放请求,对所述待播放音视频进行前置分析,得到前置分析数据,将所述预设封装格式的播放地址发送至所述客户端,接收所述客户端发送的所述第二播放请求,根据所述第二播放请求,查找预先存储的缓存数据中是否存在所述ts片段对应的缓存,若是,读取所述ts片段对应的音视频流,若否,实时编码所述ts片段对应的音视频流,并缓存所述音本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种媒体播放方法,其特征在于,应用于服务端,所述方法包括:接收客户端发送的第一播放请求,所述第一播放请求包括必需信息和可选信息,所述必需信息包括待播放音视频的源地址,所述可选信息至少包括所述待播放音视频的分辨率;根据所述第一播放请求,对所述待播放音视频进行前置分析,得到前置分析数据,所述前置分析数据至少包括预设封装格式的播放地址;将所述预设封装格式的播放地址发送至所述客户端,使所述客户端接收所述预设封装格式的播放地址,并在读取到所述预设封装格式的播放地址对应的预设封装格式的索引后,向所述服务端发送第二播放请求,所述第二播放请求包括请求播放所述预设封装格式的索引对应的ts片段和请求参数;接收所述客户端发送的所述第二播放请求;根据所述第二播放请求,查找预先存储的缓存数据中是否存在所述ts片段对应的缓存;若是,读取所述ts片段对应的音视频流;若否,实时编码所述ts片段对应的音视频流,并缓存所述音视频流;将所述音视频流输出至所述客户端,使所述客户端在接收到所述音视频流后,实时解码播放所述音视频流。2.根据权利要求1所述的方法,其特征在于,还包括:当获取到所述客户端存在seek操作时,确定所述seek操作对应区间,并确定所述seek操作对应区间以外的所需ts片段;读取所述所需ts片段对应的音视频流,并向所述客户端输出所述所需ts片段对应的音视频流。3.根据权利要求1所述的方法,其特征在于,还包括:当接收到所述客户端发送的播放回退请求时,确定需回退的ts片段;读取所述需回退的ts片段对应的音视频流,并向所述客户端输出所述需回退的ts片段对应的音视频流。4.根据权利要求1所述的方法,其特征在于,所述若否,实时编码所述ts片段对应的音视频流,并缓存所述音视频流,包括:若否,通过预先配置的内部进程,实时编码所述ts片段对应的音视频流;根据所述请求参数,生成所述ts片段对应的编码参数,将所述ts片段对应的音视频流和编码参数进行存储。5.一种服务端,其特征在于,所述服务端包括:第一接收模块,用于接收客户端发送的第一播放请求,所述第一播放请求包括必需信息和可选信息,所述必需信息包括待播放音视频的源地址,所述可选信息至少包括所述待播放音视频的分辨率;前置分析模块,用于根据所述第一播放请求,对所述待播放音视频进行前置分析,得到前置分析数据,所述前置分析数据至少包括预设封装格式的播放地址;发送模块,用于将所述预设封装格式的播放地址发送至所述客户端,使所述客户端接收所述预设封装格式的播放地址,并在读取到所述预设封装格式的播放地址对应的预设封
装格式的索引后,向所述服务端发送第二播放请求,所述第二播放请求包括请求播放所述预设封装格式的索引对应的ts片段和请求参数;第二接收模块,用于接收所述客户端发送的所述第二播放请求;查找...

【专利技术属性】
技术研发人员:吴坚强李云龙陈亮张文兵冯斌王进波
申请(专利权)人:湖南快乐阳光互动娱乐传媒有限公司
类型:发明
国别省市:

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

1