一种基于hls协议的视频广告投放方法及其装置制造方法

文档序号:7777579阅读:680来源:国知局
一种基于hls协议的视频广告投放方法及其装置制造方法
【专利摘要】本发明提供一种基于HLS协议的视频广告投放方法及其装置,应用在多媒体播放器上,所述多媒体播放器根据媒体数据索引m3u8文件下载视频数据并进行播放。所述方法包括:接收云服务器通过HLS私有协议投放的视频广告信息,并根据所述视频广告信息修改当前正在播放的视频的m3u8文件,将所述视频广告信息插入所述m3u8文件中;根据修改后的所述m3u8文件从所述云服务器上下载视频数据,所述视频数据包括所述视频广告信息对应的视频广告;播放所述下载的视频数据。本发明通过将视频广告信息插入到播放器当前正在播放的视频的m3u8文件中,使得广告投放相对于播放器透明,减少插播广告中由于播放器频繁关闭与重启所带来的时延。
【专利说明】一种基于HLS协议的视频广告投放方法及其装置
【技术领域】
[0001]本发明涉及视频通讯【技术领域】,尤其涉及一种基于HLS协议的视频广告投放方法及其装置。
【背景技术】
[0002]随着互联网多媒体技术的发展,观看在线视频已经逐渐成为人们工作、学习、娱乐以及生活中非常重要的一部分。各大视频网站的主要盈利方式是广告,比如在某一段视频播放前、播放中、暂停或者播放后加入与该段视频不相关的广告内容,一般长度为15秒到60秒,这是当前最为常见的广告形态之一。诸如土豆网、优酷网等分享性视频网站大多采用这种方式。
[0003]在各大视频网站目前所使用的传输协议中,流媒体传输协议HLS (Http livestreaming)占据了重要的地位。HLS协议是苹果公司实现的基于超文本传输协议Http的流媒体传输协议,HLS协议将容量巨大的连续媒体数据进行分段,分割为数量众多的小文件进行传递,迎合了网页服务器的文件传输性,并采用一个不断更新的轻量级索引文件来控制分割后小媒体文件的下载和播放,可以实现流媒体的直播和点播。
[0004]现有的广告播放方式是广告商直接在需要播放视频广告的时候,将视频广告投放给播放器,播放器在收到视频广告后,先关闭当前正在播放视频的播放器,重新启动后播放广告,在广告播放完成后再重启播放器继续播放视频。由此看出,在插播广告的过程中,播放器通常需要经过多次关闭与重启等这样的切换过程,而在切换的过程中往往会出现黑条,甚至是黑屏的情况,从而造成图像不连续。

【发明内容】

[0005]有鉴于此,本发明提供一种基于HLS协议的视频广告投放方法及其装置,可以避免播放器在插播广告的过程中频繁的关闭与重启。
[0006]具体地,所述方法应用在多媒体播放器上,所述多媒体播放器根据媒体数据索引m3u8文件下载视频数据并进行播放。所述方法包括:
[0007]接收云服务器通过HLS私有协议投放的视频广告信息,并根据所述视频广告信息修改当前正在播放的视频的m3u8文件,将所述视频广告信息插入所述m3u8文件中;
[0008]根据修改后的所述m3u8文件从所述云服务器上下载视频数据,所述视频数据包括所述视频广告信息对应的视频广告;
[0009]播放所述下载的视频数据。
[0010]进一步地,所述视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。
[0011]进一步地,所述m3u8文件中包括至少一个统一资源定位符URL,其中,每一个URL对应唯一的一个视频数据;
[0012]根据所述视频广告信息修改m3u8文件的过程包括,根据所述视频广告的插播时间将所述视频广告的URL插入到m3u8文件中所述视频广告插播时间对应的位置,并将所述视频广告时长添加到所述视频广告的URL对应的字段中。
[0013]进一步地,根据所述视频广告信息修改m3u8文件的过程还包括,如果所述视频广告的插播时间在所述m3u8文件中视频数据播放的过程中,则将所述视频广告的URL插入到该视频数据的URL之后。
[0014]进一步地,所述方法还包括:
[0015]在所述视频广告的URL中添加广告字段,所述广告字段用于记录广告信息;
[0016]根据修改后的所述m3u8文件播放所述视频数据的过程还包括:在发现所述广告字段时,将该广告字段对应的广告信息上报计费服务器。
[0017]所述装置应用在多媒体播放器上,所述多媒体播放器根据媒体数据索引m3u8文件下载视频数据并进行播放,具体地,该装置包括:
[0018]索引解析模块,用于接收云服务器通过HLS私有协议投放的视频广告信息,并根据所述视频广告信息修改当前正在播放的视频的m3u8文件,将所述视频广告信息插入所述m3u8文件中;
[0019]视频下载模块,用于根据修改后的所述m3u8文件从所述云服务器上下载视频数据,所述视频数据包括所述视频广告信息对应的视频广告;
[0020]视频播放模块,用于播放所述下载的视频数据。
[0021]进一步地,所述视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。
[0022]进一步地,所述m3u8文件中包括至少一个统一资源定位符URL,其中,每一个URL对应唯一的一个视频数据;
[0023]所述索引解析模块根据所述视频广告信息修改m3u8文件的过程包括,根据所述视频广告的插播时间将所述视频广告的URL插入到m3u8文件中所述视频广告插播时间对应的位置,并将所述视频广告时长添加到所述视频广告的URL对应的字段中。
[0024]进一步地,所述索引解析模块根据所述视频广告信息修改m3u8文件的过程还包括,如果所述视频广告的插播时间在所述m3u8文件中视频数据播放的过程中,则将所述视频广告的URL插入到该视频数据的URL之后。
[0025]进一步地,所述索引解析模块,进一步用于在所述视频广告的URL中添加广告字段,所述广告字段用于记录广告信息;
[0026]所述视频播放模块根据修改后的m3u8文件播放所述视频数据的过程还包括:在发现所述广告字段时,将该广告字段对应的广告信息上报计费服务器。
[0027]相对于现有技术,本发明将视频广告信息插入到播放器当前正在播放的视频的m3u8文件中,由于播放器只是按照m3u8文件对视频数据进行下载和播放,不会判断m3u8文件中的内容是否发生变化,所以对于播放器而言,不会感知到上述修改。同时虽然原来的m3u8文件的内容已经发生了变化,但并不是换了一个新的m3u8文件,所以这个过程对于播放器是透明的,播放器继续下载和播放修改后的m3u8文件,即,下载并播放了云服务器下发的视频广告信息对应的视频广告。整个过程播放器不需要重新启动,减少了插播广告中由于播放器频繁关闭与重新启动所带来的延时、黑屏等问题。【专利附图】

【附图说明】
[0028]图1是本发明一种实施方式中视频广告投放方法流程示意图;
[0029]图2是本发明一种实施方式中m3u8文件示意图;
[0030]图3是本发明一种实施方式中加入视频广告信息的m3u8文件示意图;
[0031]图4是本发明一种实施方式中加入视频广告信息的m3u8文件示意图;
[0032]图5是本发明一种实施方式中视频广告投放装置的结构图。
【具体实施方式】
[0033]通过HLS协议,视频数据经处理后分为视频数据ts文件以及媒体数据索引m3u8文件,并存在于服务器上。m3u8文件实际上只是一种文件组的组织形式,将视频数据以播放列表的形式组织在一起以供多媒体播放器下载播放。m3u8文件中通常包括多个视频数据ts的多个统一资源定位符URL。多媒体播放器获取m3u8文件后,进而按照其中的URL下载对应的ts文件并进行播放。
[0034]针对现有技术中存在的播放广告时播放器频繁重启的问题,本发明提供一种基于HLS协议的视频广告投放方法,应用在多媒体播放器上,该多媒体播放器包括:智能电视、平板电脑、手机等能够播放视频的终端。为进一步说明本发明,提供下列实施例:
[0035]实施例一
[0036]请参考图1,本实施例的基于HLS协议的视频广告投放方法包括以下步骤:
[0037]步骤101,接收云服务器通过HLS私有协议投放的视频广告信息,并根据该视频广告信息修改当前正在播放的视频的m3u8文件,将视频广告信息插入该m3u8文件中。
[0038]步骤102,根据修改后的m3u8文件从所述云服务器上下载视频数据,该视频数据包括上述视频广告信息对应的视频广告。
[0039]步骤103,播放上述下载的视频数据。
[0040]本发明中,云服务器根据预定的广告下发规则投放视频广告信息。该预定的广告下发规则通常由广告商和视频网站运营商协商而定。本发明从接收到的HLS私有协议中解析出该视频广告信息,然后对正在播放的视频的m3u8文件进行修改,将该视频广告信息插入到m3u8文件中。进而可以根据修改后的m3u8文件下载视频数据,该下载的视频数据中就包括了云服务器下发的视频广告信息所对应视频广告。进一步地,根据下载的视频数据进行播放,也就实现了视频广告的投放和播放过程。
[0041]由此可见,本发明提供的基于HLS协议的视频广告投放方法,将视频广告信息插入到正在播放的视频的m3u8文件中。由于播放器只是按照m3u8文件对视频数据进行下载和播放,不会判断m3u8文件中的内容是否发生变化,所以对于播放器而言,不会感知到上述修改。同时虽然原来的m3u8文件的内容已经发生了变化,但并不是换了一个新的m3u8文件,所以这个过程对于播放器是透明的,播放器继续下载和播放修改后的m3u8文件,即,下载并播放了云服务器下发的视频广告信息对应的视频广告。整个过程播放器不需要重新启动,减少了重新启动所带来的延时、黑屏等问题。
[0042]实施例二
[0043]本实施例在实施例一的基础上进一步限定了上述基于HLS协议的视频广告投放方法的优选实施方式。[0044]具体地,步骤101中的视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。其中,视频广告的URL对应视频广告的地址。视频广告的插播时间,t匕如,在视频播放前插播或者是在视频播放过程中的某个时间点插播。管理员根据预定的广告下发规则,在云服务器上进行相关的配置。通过下发丰富的视频广告信息,可以更加准确的实现视频广告的投放。
[0045]步骤101中根据视频广告信息修改m3u8文件的过程包括,根据视频广告的插播时间将该视频广告的URL插入到m3u8文件中视频广告插播时间对应的位置,并将视频广告时长添加到视频广告的URL对应的字段中。下面做具体说明:
[0046]依据HLS协议,用户请求视频播放的时候,首先从云服务器上下载用户想要播放的视频的m3u8文件,该m3u8文件中包括至少一个URL,其中,每一个URL对应唯一的一个视频数据。然后根据该m3u8文件中的URL从云服务器上下载对应的视频数据ts文件并进行播放。
[0047]请参考图2所示的m3u8文件内容,其中:
[0048]#EXTM3U:表示m3u文件头,放在第一行。
[0049]#EXT-X-TARGETDURATION:表示指定的最大视频数据时长,单位是秒。
[0050]#EXTINF:表示每个视频数据ts文件的时长,仅对其后的URL有效,#EXTINF中指定的时长必须小于等于#EXT-X-TARGETDURATION中指定的时长。
[0051]http://218.30.13.36/sample_100k_l.ts:表不视频数据 ts 文件的 URL。
[0052]#EXT-X-ENDLIST:表示 m3u8 文件的结束符。
[0053]根据图2中所示的m3u8文件,多媒体播放器会依次下载视频数据sample_100k_l.ts, sample_100k-2.ts 以及 sample_100k_3.ts 并播放。
[0054]本实施例中,接收到云服务器下发的视频广告信息,比如,该视频广告信息中视频广告的URL是http://218.30.13.36/ad_001.ts,视频广告的时长是15秒,视频广告的插播时间是视频数据播放前。依据该视频广告的插播时间,将该视频广告的URL插入到图2所示的m3u8 文件中视频数据 sample_100k_l.ts 的 URL-http://218.30.13.36/sample_100k-l.ts之前,并将时长15秒添加到对应的#EXTINF字段中,形成如图3所示的m3u8文件。播放器会依据该 m3u8 文件依次下载 ad_001.ts、sample_100k-l.ts、sample_100k-2.ts 以及sample_100k-3.ts 并进行播放。
[0055]进一步地,如果该视频广告的插播时间在m3u8文件中视频数据播放的过程中,则将该视频广告的URL插入到该视频数据的URL之后,以符合HLS协议的规定,同时避免了广告插播时间不准确所引发的m3u8文件修改错误的问题。比如,该视频广告信息中视频广告的URL还是http://218.30.13.36/ad_001.ts,视频广告的时长也还是15秒,视频广告的插播时间是第45秒。45秒在m3u8文件中sample_100k_2.ts视频数据的播放过程中,则将视频广告的URL插入到视频数据sample_100k-2.ts的URL之后,形成如图4所示的m3u8文件。
[0056]进一步地,为了统计广告的投放情况以便于视频网站向广告商收取广告费用,在根据视频广告信息修改m3u8文件的过程中还包括:在视频广告的URL中添加广告字段。比如,在视频广告的URL中增加字段&type=ad,形成带有广告字段的视频广告的URL:http://218.30.13.36/ad_001.ts&type=ad。播放器在发现该广告字段时,上报计费服务器。优选地,还可以在该广告字段中增加广告信息,比如:“&ads=”用于标记广告商信息,“&adc=”用于标记广告内容。播放器发现广告字段后,将上述广告信息上报计费服务器,以便于统计广告费用。
[0057]由上述步骤可以看出,本发明通过将视频广告信息添加到视频数据的m3u8文件中,播放器只需要和原来一样按照m3u8文件执行下载以及播放。云服务器投放的视频广告对于播放器而言是透明的,进而在根本上避免了播放器关闭与重启所带来的黑条,甚至是黑屏等问题,减少了视频广告切换的时延。
[0058]实施例三
[0059]对应上述方法,本发明提供一种基于HLS协议的视频广告投放装置,应用在多媒体播放器上。该多媒体播放器包括:智能电视、平板电脑、手机等能够播放视频的终端。该装置可以用计算机软件实现,但本发明并不排除其他实现方式,比如可编程逻辑器件、固件甚至是专用硬件。请参考图5,本发明提供的视频广告投放装置包括:索引解析模块510、视频下载模块520以及视频播放模块530。
[0060]索引解析模块510,用于接收云服务器通过HLS私有协议投放的视频广告信息,并根据该视频广告信息修改当前正在播放的视频的m3u8文件,将视频广告信息插入m3u8文件中;
[0061]视频下载模块520,用于根据修改后的m3u8文件从云服务器上下载视频数据,该视频数据包括视频广告信息对应的视频广告;
[0062]视频播放模块530,用于播放上述已下载的视频数据。
[0063]进一步地,上述视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。
[0064]进一步地,依据HLS协议,m3u8文件中包括至少一个统一资源定位符URL,其中,每一个URL对应唯一的一个视频数据;
[0065]索引解析模块510根据视频广告信息修改m3u8文件的过程包括,根据视频广告的插播时间将视频广告的URL插入到m3u8文件中该视频广告插播时间对应的位置,并将该视频广告时长添加到视频广告的URL对应的字段中。
[0066]进一步地,索引解析模块510根据视频广告信息修改m3u8文件的过程还包括,如果视频广告的插播时间在m3u8文件中视频数据播放的过程中,则将视频广告的URL插入到该视频数据的URL之后。
[0067]进一步地,索引解析模块510,还用于在视频广告的URL中添加广告字段,该广告字段用于记录广告信息;
[0068]视频播放模块530根据修改后的m3u8文件播放视频数据的过程还包括:在发现所述广告字段时,将该广告字段对应的广告信息上报计费服务器。
[0069]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种基于HLS协议的视频广告投放方法,应用在多媒体播放器上,所述多媒体播放器根据媒体数据索引m3u8文件下载视频数据并进行播放,其特征在于,所述方法包括: 接收云服务器通过HLS私有协议投放的视频广告信息,并根据所述视频广告信息修改当前正在播放的视频的m3u8文件,将所述视频广告信息插入所述m3u8文件中; 根据修改后的所述m3u8文件从所述云服务器上下载视频数据,所述视频数据包括所述视频广告信息对应的视频广告; 播放所述下载的视频数据。
2.根据权利要求1所述的方法,其特征在于,所述视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。
3.根据权利要求2所述的方法,其特征在于,所述m3u8文件中包括至少一个统一资源定位符URL,其中,每一个URL对应唯一的一个视频数据; 根据所述视频广告信息修改m3u8文件的过程包括,根据所述视频广告的插播时间将所述视频广告的URL插入到m3u8文件中所述视频广告插播时间对应的位置,并将所述视频广告时长添加到所述视频广告的URL对应的字段中。
4.根据权利 要求3所述的方法,其特征在于,根据所述视频广告信息修改m3u8文件的过程还包括,如果所述视频广告的插播时间在所述m3u8文件中视频数据播放的过程中,则将所述视频广告的URL插入到该视频数据的URL之后。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括: 在所述视频广告的URL中添加广告字段,所述广告字段用于记录广告信息; 根据修改后的所述m3u8文件播放所述视频数据的过程还包括:在发现所述广告字段时,将该广告字段对应的广告信息上报计费服务器。
6.一种基于HLS协议的视频广告投放装置,应用在多媒体播放器上,所述多媒体播放器根据媒体数据索引m3u8文件下载视频数据并进行播放,其特征在于,所述装置包括: 索引解析模块,用于接收云服务器通过HLS私有协议投放的视频广告信息,并根据所述视频广告信息修改当前正在播放的视频的m3u8文件,将所述视频广告信息插入所述m3u8文件中; 视频下载模块,用于根据修改后的所述m3u8文件从所述云服务器上下载视频数据,所述视频数据包括所述视频广告信息对应的视频广告; 视频播放模块,用于播放所述下载的视频数据。
7.根据权利要求6所述的装置,其特征在于,所述视频广告信息包括:视频广告的URL、视频广告的插播时间以及视频广告时长。
8.根据权利要求7所述的装置,其特征在于,所述m3u8文件中包括至少一个统一资源定位符URL,其中,每一个URL对应唯一的一个视频数据; 所述索引解析模块根据所述视频广告信息修改m3u8文件的过程包括,根据所述视频广告的插播时间将所述视频广告的URL插入到m3u8文件中所述视频广告插播时间对应的位置,并将所述视频广告时长添加到所述视频广告的URL对应的字段中。
9.根据权利要求8所述的装置,其特征在于, 所述索引解析模块根据所述视频广告信息修改m3u8文件的过程还包括,如果所述视频广告的插播时间在所述m3u8文件中视频数据播放的过程中,则将所述视频广告的URL插入到该视频数据的URL之后。
10.根据权利要求7所述的装置,其特征在于, 所述索引解析模块,进一步用于在所述视频广告的URL中添加广告字段,所述广告字段用于记录广告信息; 所述视频播放模块根据修改后的m3u8文件播放所述视频数据的过程还包括:在发现所述 广告字段时,将该广告字段对应的广告信息上报计费服务器。
【文档编号】H04N21/2668GK103686255SQ201310603141
【公开日】2014年3月26日 申请日期:2013年11月22日 优先权日:2013年11月22日
【发明者】苍鹏, 李强 申请人:乐视致新电子科技(天津)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1