CN102130936B - 一种在动态http流传输方案中支持时移回看的方法和装置 - Google Patents

一种在动态http流传输方案中支持时移回看的方法和装置 Download PDF

Info

Publication number
CN102130936B
CN102130936B CN2010102555660A CN201010255566A CN102130936B CN 102130936 B CN102130936 B CN 102130936B CN 2010102555660 A CN2010102555660 A CN 2010102555660A CN 201010255566 A CN201010255566 A CN 201010255566A CN 102130936 B CN102130936 B CN 102130936B
Authority
CN
China
Prior art keywords
mpd
media
time
client
section
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2010102555660A
Other languages
English (en)
Other versions
CN102130936A (zh
Inventor
乐培玉
袁卫忠
石腾
刘光远
张园园
田永辉
张仁宙
吴凌燕
张楚雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to CN2010102555660A priority Critical patent/CN102130936B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to NO15202848A priority patent/NO3029909T3/no
Priority to ES15202848.6T priority patent/ES2646562T3/es
Priority to HUE14177019A priority patent/HUE027786T2/en
Priority to ES11786124.5T priority patent/ES2524001T3/es
Priority to PL14177019.8T priority patent/PL2797287T3/pl
Priority to ES14177019.8T priority patent/ES2581582T3/es
Priority to EP14177019.8A priority patent/EP2797287B1/en
Priority to PCT/CN2011/075284 priority patent/WO2011147352A1/zh
Priority to EP15202848.6A priority patent/EP3029909B1/en
Priority to PL11786124T priority patent/PL2592809T3/pl
Priority to EP11786124.5A priority patent/EP2592809B1/en
Publication of CN102130936A publication Critical patent/CN102130936A/zh
Priority to US13/768,002 priority patent/US8683071B2/en
Application granted granted Critical
Publication of CN102130936B publication Critical patent/CN102130936B/zh
Priority to US14/162,153 priority patent/US8984570B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet

Abstract

本发明公开了一种在动态HTTP流传输方案中支持时移回看和直播点播无缝切换的方法、装置和系统,采用向媒体服务器发送直播MPD请求消息;接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;确定当前需要请求媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片,使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。

Description

一种在动态HTTP流传输方案中支持时移回看的方法和装置
技术领域
本发明涉及通信技术领域,尤其涉及一种在动态HTTP流传输方案中支持时移回看的方法的方法和装置。
背景技术
用户使用终端设备获取多媒体内容并进行播放的方式有多种,典型的有通过HTTP文件下载或者P2P文件下载到本地磁盘后播放、传统的流媒体方式(数据传输的RTP/RTCP和播放控制RTSP)、P2P流媒体方式的在线直播/点播、HTT渐进式下载(HTTP Progressive Download)等等。在HTTP渐进式下载的基础上,又发展了一种增强型的基于HTTP协议的流化媒体传输的方式,称之为HTTP流(HTTP Streaming)传输方案。由于该方案支持动态码率适配,即在播放的过程中可实时根据客户端到服务器之间可用带宽(Bandwidth)的大小,动态地选择与可用带宽相匹配码率的媒体分片,以提供给用户尽可能高质量的播放体验,因此也有把这种方案称作HTTP动态流(HTTP AdaptiveStreaming,HAS)或动态HTTP流(Adaptive HTTP Streaming)的。在3GPP SA4R9标准中,HTTP动态流方案又可根据内容准备模式(Content-PreparationModes)进一步划分为静态模式(Static Mode)和动态模式(Dynamic Mode)两种:静态内容准备(content preparation)模式:将通过HTTP传输的媒体内容作为静态内容,HTTP服务器不需要以任何方式准备内容,相反,内容准备是提前完成的;动态内容服务模式:HTTP流服务器基于客户端的请求动态地为客户端裁剪(tailor)流内容。
在直播的过程中,由于后面时间的媒体分片还没有产生,因此在媒体展现描述(MPD,Media Presentation Description)或playlist(为简单起见,后续只提及MPD,但也同样适用于playlist)中无法包括后面时间段的媒体分片获取信息如URL等。但如果知道这段时间内媒体分片的相关信息如内容编码格式、封装格式、分辨率、码率和语言等等信息,并且能提前为后面一小段时间的媒体分片分配对应的获取URL地址,也是有可能适当提前一些时间给出未来一段时间媒体分片的描述信息。但由于后续可能需要在直播中插播其他来源的内容、以及可能无法得知直播的确切结束时间,因此也无法提供未来太久时间段的媒体展现描述信息。这就带来一个问题:直播媒体展现未来时间段的媒体展现描述信息很可能无法像点播内容那样在客户端接入时一次性全部提供,而是需要随着时间的推移逐步向MPD中添加后续时间段的媒体展现描述信息,这样客户端需要不断去获取更新后的MPD,以便取得后续时间段的媒体展现描述信息,进而才能有相应的URL去获取媒体分片并播放。
MPD的更新可以有两种不同的方式:(a)在MPD中包括从直播开始以来所有时间段(time-line)的媒体展现描述信息,但这种方式带来的一个问题就是随着时间的推移,MPD中包括的时间段越来越长,相应地,MPD包括的描述信息也就越来越多,MPD的大小将逐渐增加,而且客户端每次请求更新的MPD时都需要获取比前一次更大的MPD。因此这种方式较适合那些时长较短的直播媒体展现;(b)采用滑动窗(Sliding window)方式更新:每次在更新的MPD中只包括当前时间点附近的时间段的媒体分片的描述信息,例如典型的可以只包括最近10分钟到1小时节目的媒体展现描述信息,超过这个时间段的媒体展现描述信息将不再被包括在更新后的MPD中。在这种方式下,如果客户端从直播开始时就已接入,那么可以在本地创建一个播放列表,将不同MPD中所包括的时间段依次添加到本地播放列表中,同样能得到一份从直播开始到当前MPD中包括时间段的完整播放列表,这将达到与上述方式(a)等同的效果。对于上述方式(b),如果客户端是在直播开始以后某个时间才接入的话,其获取到的更新MPD中只包括接入时间点附近时间段的媒体展现描述信息,可能并不包括直播开始部分时间段的媒体展现描述信息。那么当客户端想拖动(seekback)到较早时间时(如时移或回看功能),将无法实现。这样,HTTP流服务器在提供MPD时,就需要权衡在MPD中究竟应该包括多长时间段媒体描述信息:MPD中包括的时间段总长将会影响到直播会话中客户端做播放/暂停和Seek操作的行为。时间总长越长,包括的列表将越长,客户端能够暂停且不丢失它在直播列表中的位置的时间就越长,客户端能够Seek的时间范围就越大。但权衡就是包括更长时间段总长的MPD将带来更大网络负担,由于客户端需要经常更新MPD,因此尽管每个MPD文件一般很小,但每次更新累加起来也非常可观。
发明内容
一种在动态HTTP流传输方案中支持时移回看方法,包括,向媒体服务器发送直播媒体展现描述MPD请求消息;接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;确定当前需要请求媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其他时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的MPD,向媒体服务器请求当前需要请求的媒体分片。
一种在动态HTTP流传输方案中支持时移回看的方法,包括,接收客户端发送的直播MPD请求消息;向所述客户端发送包含当前时间段的MPD的响应消息,所述MPD中包含其它时间段的媒体展现信息;接收所述客户端发送超出所述MPD对应时间段的其他时间段MPD请求消息;根据所述媒体展现信息,将所述媒体展现信息对应的MPD发送给客户端,以便于客户端根据所述媒体展现信息对应的MPD获取相应的媒体分片。
一种客户端,包括,发送模块,用于向媒体服务器发送MPD请求消息;接收模块,用于接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;确定模块,用于确定当前需要请求媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;获取模块,用于根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的MPD,向媒体服务器请求当前需要请求的媒体分片。
一种媒体服务器,包括,所述媒体服务器包括,接收所述客户端发送的MPD信息请求消息;接收模块,用于接收客户端发送的MPD请求消息;发送模块,用于向所述客户端发送包含当前时间段的MPD的响应消息,所述响应消息中包含其它时间段的媒体展现信息;根据所述媒体展现消息,将与所述媒体展现消息对应的MPD发送给客户端,以便于客户端根据所述对应的MPD获取相应的媒体分片。
本发明实施例采用向媒体服务器发送直播MPD请求信息;接收服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;确定当前需要请求的媒体分片超出所述MPD所对应的时间范围,根据所述其它时间段的MPD信息,确定当前需要请求的媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,其中包含所需MPD的URL地址,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片,使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。
附图说明
图1为本发明实施例提供的一种在动态HTTP流传输方案中支持时移回看的方法的流程图;
图2为本发明实施例提供的一种在动态HTTP流传输方案中支持时移回看的方法的流程图;
图3为本发明实施例提供的一种客户端的基本框图;
图4为本发明实施例提供的一种媒体服务器的基本框图;
图5为本发明实施例提供的一种在动态HTTP流传输方案中支持时移回看的方法的具体实现流程图;
图6为本发明实施例提供的一种在动态HTTP流传输方案中超出时移范围时支持时移回看的方法的具体实现流程图;
图7为本发明实施例提供的一种在动态HTTP流传输方案中直播点播无缝切换的方法的具体实现流程图;
图8为本发明实施例提供的一种在动态HTTP流传输方案中直播点播无缝切换的方法的具体实现流程图。
具体实施方式
实施例一:
参阅图1,本发明实施例一提供的一种在动态HTTP流传输方案中支持时移回看或直播点播无缝切换的方法,该方法包括:
A1、向媒体服务器发送直播媒体展现描述MPD请求消息;
客户端请求获取直播MPD,例如根据直播MPD的URL获取地址。由于该MPD经常需更新,此步骤根据需要可重复多次。该客户端,可以设置于移动终端,或者机顶盒,以及其他接收媒体流的用户终端等。
A2、接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;
假定当前时间段为时间区间[a,b],媒体服务器返回当前最新的MPD,客户端处理MPD得到相应的播放列表及获取媒体分片的URL地址,同时MPD中还包括其它时间段的媒体展现信息,这里其它时间段可以细分为两种情况:
(1)客户端完全基于当前获取的最新MPD来创建本地播放列表,那么当前MPD所包括的时间区间[a,b]之外的其他时间段,例如对直播一般为时间点a之前;
(2)客户端创建的本地播放列表除了基于当前获取的最新的MPD,还能基于前面所获取的MPD中包括的时间段。对于一个在直播开始以后才接入的客户端,它最多只能创建从其接收到的第一个MPD到当前最新的MPD所包括的所有时间段范围内的播放列表,假设为时间区间[a’,b](其中a’≤a),那么对于超出区间[a’,b]之外的其它时间段(例如<a’)。又或者,虽然一个直播客户端在直播开始就已经接入,但其维护的本地播放列表有总时长限制(如LocalListDuration),那么其维护的时间区间为[b-LocalListDuration,b],这个区间之外的其他时间都属于其它时间段。
A3、确定当前需要请求的媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息。
客户端首先判断请求媒体分片的时刻是否已超出当前时间范围,例如,客户端维护的播放列表的时间范围是[a,b],若请求的媒体分片开始时间为c(c<a),则超出时间范围;若请求的媒体分片开始时间为d(a≤d≤b),则没有超出时间范围。判断MPD中是否提供了包括请求媒体分片时间的时间段所对应的媒体展现信息,例如对于一个超出时间范围的时间c,若存在一个媒体展现信息覆盖的时间范围[e,f],并满足条件e≤c≤f,则认为存在这样的媒体展现信息。实际应用的实例中进一步可包括,判断MPD中是否存在多个满足包括请求媒体分片时刻的时间段所对应的媒体展现信息,若存在多个,客户端可以根据选择策略从多个MPD获取信息中选择一个。实际应用的实例中,该选择策略可以包括以下情况之一或者组合:(1)如果MPD信息中还包括可访问时间(如availablilityStart,availabilityEnd可选),则当前时间需满足可访问时间的要求;(2)如果媒体展现信息包括的时间段存在重复,则可以选择媒体展现信息中MPD时间段与客户端维护的本地播放列表时间段重合度最小的一个;(3)如果几个MPD与本地播放列表时间段都没有重合或者重合度都一样,则可以随机选择一个,例如满足条件的第一个,或开始时间最接近请求媒体分片时间的,或距离当前时间最远的,等等;(4)其他可能的选择策略。
A4、根据所述当前需要请求的媒体分片所对应的媒体展现信息,获取对应的MPD,并根据所述获取到的MPD,向媒体服务器请求当前需要请求的媒体分片。
客户端从媒体展现信息中获取MPD的URL地址,向服务器请求所述相应时间段的MPD;服务器返回对应的MPD。客户端处理获取到的MPD,得到相应的播放列表及媒体分片的URL地址,并把得到的播放列表添加到(或者替换)本地维护的播放列表中,客户端请求MPD对应的媒体分片,构造媒体分片请求并发送给服务器。进一步可以包括:客户端接收服务器返回的与请求对应的媒体分片;客户端接着该媒体分片依次请求后续的媒体分片,直到遇到用户其他播放控制操作或者播放列表中的媒体分片全部请求并播放完成或者遇到MPD更新。
实施例一采用向媒体服务器发送直播MPD请求信息;接收服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;确定当前需要请求的媒体分片超出所述MPD所对应的时间范围,根据所述其它时间段的MPD信息,确定当前需要请求的媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,其中包含所需MPD的URL地址,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片。
使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。
实施例二:
参阅图2,本发明实施例二提供一种在动态HTTP流传输方案中支持时移回看或直播点播无缝切换的方法,该方法包括:
B1、接收客户端发送的直播MPD请求消息;
由于MPD经常需更新,此步骤根据需要可重复多次。
B2、向所述客户端发送包含当前时间段的MPD的响应消息,所述MPD中包含其它时间段的媒体展现信息;
此步骤已在A2详细描述,这里不在赘述。
B3、接收所述客户端发送的超出时间范围的MPD请求消息;
客户端从媒体展现信息中获取MPD的URL地址,向服务器请求相应时间段的MPD;
B4、根据所述客户端MPD请求消息,将对应的MPD发送给客户端,以便于客户端根据所述对应的MPD获取所需要的媒体分片。
此步骤已在A4详细描述,这里不在赘述。
实施例二采用接收客户端发送的直播MPD请求消息;向所述客户端发送包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;接收所述客户端发送的超出时间范围的MPD请求消息;根据所述客户端MPD请求消息,将对应的MPD发送给客户端,以便于客户端根据所述对应的MPD获取所需要的媒体分片,使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。
实施例三:
参阅图3,本发明实施例三提供一种客户端,该客户端可以设置在用户终端(例如,可以包括移动终端,固定终端机顶盒等)设备中;该客户端包括:
发送模块301,用于向媒体服务器发送直播MPD请求消息;客户端请求获取直播MPD,例如根据直播MPD的URL获取地址。由于MPD经常需更新,此步骤根据需要可重复多次。
接收模块302,用于接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段所对应的媒体展现信息;此步骤已在A2详细描述,这里不在赘述。
确定模块303,用于确定当前需要请求媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;此步骤已在A3详细描述,这里不在赘述。
获取模块304,用于根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片。此步骤已在A4详细描述,这里不在赘述。
在实际应用的实例中所述客户端还可以进一步包括:选择模块305用于判断MPD中是否存在多个满足包括请求媒体分片时刻的时间段所对应的媒体展现信息,若存在多个,客户端可以根据选择策略从多个媒体展现信息中选择一个;具体的选择策略可以包括下述之一或其组合:如媒体展现信息中包括可访问时间,则所述当前时刻需满足可访问时间要求;如媒体展现信息对应的时间段存在重复,则可以选择MPD中时间段与客户端维护的本地播放列表时间段重合度最小的一个;如存在几个MPD与本地播放列表时间段都没有重合或者重合度一样,则随机选择一个。
实施例三采用发送模块301向媒体服务器发送直播MPD请求消息;接收模块302接收服务器返回的包含当前时间段的MPD的响应消息;确定模块303确定当前需要请求的媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;获取模块304根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片。这使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。
实施例四:
参阅图4,本发明实施例二提供一种媒体服务器,该媒体服务器包括:
接收模块401,用于接收客户端发送的直播媒体展现描述MPD请求消息;由于MPD经常需更新,此步骤根据需要可重复多次。所述接收模块还用于接收所述客户端发送的MPD请求消息;当客户端从服务器返回的MPD信息中获取MPD的URL地址并保存,所述接收模块接收相应时间段的MPD请求;
发送模块402,用于向所述客户端发送包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息;此步骤已在A2详细描述,这里不在赘述,所述发送模块402还用于根据客户端发来的MPD请求消息,将所述MPD请求消息对应的MPD发送给客户端,以便于客户端根据所述MPD获取相应的媒体内容,此步骤已在A4详细描述,这里不在赘述。
实施例四采用接收模块401接收客户端发送的直播媒体展现描述信息MPD请求消息;发送模块402向所述客户端发送包含当前时间段的MPD的响应消息,所述响应消息中包含其它时间段的媒体展现信息;接收模块401接收所述客户端发送的MPD媒体展现信息请求消息;发送模块402根据所述MPD请求消息,将所述MPD请求消息对应的MPD发送给客户端,以便于客户端根据所述MPD获取相应的媒体内容,使得客户端支持更长时间范围的时移和回看,同时可将MPD的大小保持在可接受的范围内。
实施例五:
参阅图5,本发明实施例提供一种在动态HTTP流传输方案中更有效支持时移的方法,包括客户端和媒体服务器,具体步骤为:
501、客户端向媒体服务器发送直播MPD请求消息;
客户端请求获取直播MPD,例如根据直播MPD的URL地址构造请求消息;向媒体服务器发送构造后的MPD请求消息。
502、服务器返回当前最新的MPD;
同时在MPD中还包括其它时间段的媒体展现信息,这里其它时间段可以细分为两种情况:
(1)客户端完全基于当前获取的最新MPD来创建本地播放列表,那么当前MPD所包括的时间区间[a,b]之外的其他时间段其它时间段,例如对直播一般为时间点a之前;(2)客户端创建的本地播放列表除了基于当前获取的最新的MPD,还能基于前面所获取的MPD中包括的时间段。对于一个在直播开始以后才接入的客户端,它最多只能创建从其接收到的第一个MPD到当前最新的MPD所包括的所有时间段范围内的播放列表,假设为时间区间[a’,b](其中a’≤a),那么对于超出区间[a’,b]之外的其他时间其它时间段(例如<a’)。又或者,虽然一个直播客户端在直播开始就已经接入,但其维护的本地播放列表有总时长限制(如LocalListDuration),那么其维护的时间区间为[b-LocalListDuration,b],这个区间之外的其他时间都属于其它时间段。
503、客户端向服务器请求媒体分片;
客户端处理MPD得到相应的播放列表及获取媒体分片的URL地址;并根据URL地址向服务器请求媒体分片。
504、服务器向客户端返回与请求对应的媒体分片;
这里501和502,503和504可根据实施情况重复多次。
505、客户端请求时移范围内、但当前MPD不包括的媒体分片,根据其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;
如图6所示,当客户端请求直播服务器支持时移范围内、但当前最新MPD中并不包括时间段的其他时间段中媒体分片时,例如,在当前MPD中只包括了最近10分钟的媒体展现描述信息,但客户端却想从距离现在20分钟的地方开始时移观看,而对于只根据当前MPD创建播放列表的客户端,或者虽可根据所有接收到的MPD创建播放列表但刚刚接入直播的客户端,现有技术方案就无法实现。
601:客户端判断请求媒体分片是否包括在当前MPD中(对于本地播放列表不只根据当前更新的MPD创建的情况,可改为判断请求的媒体分片是否包括在本地播放列表中)。例如,客户端维护的播放列表的时间范围是[a,b],若请求的媒体分片开始时间为c(c<a),则超出时间范围;若请求的媒体分片开始时间为d(a≤d≤b),则没有超出时间范围。
602:判断MPD中是否提供时移范围内除当前MPD中包括时间段之外的其他时间段MPD的媒体展现信息。例如对于一个超出当前MPD时间范围的时间c,若存在一个媒体展现信息覆盖的时间范围[e,f],并满足条件e≤c≤f,则认为在MPD中提供了这样的媒体展现信息,继续下面的处理流程,否则认为没有提供满足条件的MPD信息,客户端提示用户无法支持所述请求时间的媒体分片606。
603:判断MPD中是否存在多个满足包括请求媒体分片时刻的时间段对应的媒体展现信息,若存在多个,客户端根据选择策略从多个MPD信息中选择一个604。这可能要区分多种情况:(1)如果MPD信息中还包括可访问时间(如availablilityStart,availabilityEnd可选),则当前时间需满足可访问时间的要求;(2)如果MPD之间存在时间段的重复,则可以选择MPD中时间段与客户端维护的本地播放列表时间段重合度最小的一个;(3)如果几个MPD与本地播放列表时间段都没有重合或者重合度都一样,则可以随机选择一个,例如满足条件的第一个,或开始时间最接近请求媒体分片时间的,或距离当前时间最远的,等等;(4)其他可能的选择策略。
例如,当前最新的MPD中包括距离直播开始50~60分钟共10分钟的媒体展现描述信息,直播服务器时移支持时长为30分钟,则MPD中所包括的附加MPD信息用XML元素<previousMPD>提供,提供距离直播开始时间30~50分钟其他时间段的媒体展现信息的一个示例如下:
<previousMPD>
    <MPDInfo>
        <interval>
            <startTime>PT30M</startTime>
            <endTime>PT50M</endTime>
      </interval>
      <MPDAddress>http://www.movie.com/Experience/exampleLive preMPD URL.mpd</MPDAd
      dress>
    </MPDInfo>
</previousMPD>
或者先前时间段的每个MPD中只包括10分钟时间段的媒体展现描述信息,则需要包括两个前面MPD的信息,示例如下:
<previousMPD>
    <MPDInfo>
        <interval>
            <startTime>PT30M</startTime>
            <endTime>PT40M</endTime>
      </interval>
      <MPDAddress>http://www.movie.com/Experience/exampleLive preMPD1 URL.mpd</MPDA
      ddress>
  </MPDInfo>
  <MPDInfo>
          <interval>
            <startTime>PT40M</startTime>
            <endTime>PT50M</endTime>
      </interval>
      <MPDAddress>http://www.movie.com/Experience/exampleLive preMPD2 URL.mpd</MPDA
      ddress>
    </MPDInfo>
</previousMPD>
605:客户端根据媒体展现信息获取对应MPD的URL地址。
506、客户端根据上述步骤505所得到的MPD的URL地址,向服务器请求相应时间段的MPD;
客户端根据从上述步骤505中得到的MPD的URL地址,并向服务器请求相应时间段的MPD;
507、服务器向客户端返回与请求相应的MPD;
客户端处理接收的MPD,得到相应的播放列表及获取媒体分片的URL地址,并把得到的播放列表添加到本地维护的播放列表中(或替换本地维护的播放列表)。
508、客户端向服务器请求媒体分片;
客户端首先根据步骤505时所需要请求媒体分片的时刻,构造相应媒体分片请求并发送给服务器。
509、服务器向客户端返回对应的媒体分片。
服务器返回与请求对应的媒体分片。
然后客户端可接着该媒体分片依次请求后续的媒体分片,直到遇到用户其他播放控制操作或者本地播放列表中的媒体分片全部请求并播放完成或者遇到MPD更新等,步骤508和509可根据实施重复多次。
实施例五采用向媒体服务器发送直播MPD请求信息;接收服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含时移范围内其它时间段的媒体展现信息;确定当前需要请求的媒体分片的时刻超出所述MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求的媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片。使得直播服务器提供较长时间段的时移支持,但在MPD中只需包括一小部分时间段的媒体展现描述信息,而将包括其他时间段的媒体分片描述信息的MPD获取等信息包括在媒体展现信息中。在客户端需要时,可以通过这些的媒体展现信息去获取对应时间段的MPD。使得既能支持更长时间范围的时移和回看,同时又将MPD的大小保持在可接受的范围内。
上述实施例给出在MPD提供直播时移范围内、当前最新MPD不包括的时间段的其他时间段的媒体展现信息,这样直播服务器提供的MPD即可支持较大时间范围的时移,同时又不必在MPD中包括时移时长内所有时间段的媒体展现描述信息,实现了支持更大时间范围的时移、同时不显著增加MPD大小和客户端处理的网络开销,例如,减小客户端更新处理MPD的网络负担。在该实施例中,可以由直播服务器来提供所需的先前时间段的MPD以及相应的媒体分片,内容准备服务器在更新的MPD中提供这些附加的MPD信息。
实施例七:
对于客户端回看超过服务器时移范围的时间段的媒体内容,直播服务器可能已无法再提供其维护的时移范围之外的媒体内容,需要由点播(VoD,Videoon Demand)服务器来提供超出时移范围的媒体分片。另外,由于这时直播尚未完全结束,因此暂时还无法提供相应媒体展现的完整点播服务,在这种情况下,可以将已经播出的部分,按照时长进行划分,提供几个不同的点播节目,并将点播节目的MPD获取信息包括在MPD中,客户端可根据这些点播节目的MPD获取信息从直播无缝切换到点播。
参阅图7,本发明实施例提供一种在动态HTTP流传输方案中直播点播无缝切换的方法,包括客户端,直播服务器和点播服务器,具体步骤为:
701、客户端向直播服务器发送直播MPD请求消息;
客户端请求获取直播MPD,例如根据直播MPD的URL获取地址构造MPD请求消息;
702、直播服务器返回当前最新的MPD;
同时MPD中还包括其它时间段的MPD信息,这里其它时间段可以细分为两种情况:
(1)客户端完全基于当前获取的最新MPD来创建本地播放列表,那么当前MPD所包括的时间区间[a,b]之外的其他时间段其它时间段,例如对直播一般为时间点a之前;(2)客户端创建的本地播放列表除了基于当前获取的最新的MPD,还能基于前面所获取的MPD中包括的时间段。对于一个在直播开始以后才接入的客户端,它最多只能创建从其接收到的第一个MPD到当前最新的MPD所包括的所有时间段范围内的播放列表,假设为时间区间[a’,b](其中a’≤a),那么对于超出区间[a’,b]之外的其他时间其它时间段(例如<a’)。又或者,虽然一个直播客户端在直播开始就已经接入,但其维护的本地播放列表有总时长限制(如LocalListDuration),那么其维护的时间区间为[b-LocalListDuration,b],这个区间之外的其他时间都属于其它时间段。
703、客户端向直播服务器请求媒体分片;
客户端处理直播MPD得到相应的播放列表及获取媒体分片的URL地址;并根据URL地址请求媒体分片。
704、直播服务器向客户端返回媒体分片;
这里701和702,703和704可以根据实施情况重复多次。
705、客户端请求超出直播服务器支持时移时长范围的媒体分片时,根据MPD中提供时移范围之外、包括需要请求媒体分片时刻的其他时间段点播MPD的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;当客户端需回看超过直播时移范围的其他时间段的媒体分片,直播服务器可能已无法再提供其维护的时移范围之外的媒体分片,需要由相应的点播服务器来提供超出直播时移范围的媒体分片。但由于这时直播尚未完全结束,因此暂时还无法提供相应媒体展现的完整点播服务,在这种情况下,可以将已经播出的部分,按照时长进行划分,作为几个不同的点播节目提供,并将所述点播节目的媒体展现信息包括在直播MPD中,客户端可根据这些点播节目的媒体展现信息从直播无缝切换到点播。
客户端判断MPD中是否提供时移范围之外、包括需要请求媒体分片时刻的其他时间段点播MPD的媒体展现信息,如果没有提供满足条件的媒体展现信息,则提示用户无法支持所述请求时间的媒体分片;如有符合条件的媒体展现信息,则判断直播MPD中是否存在多个满足条件的媒体展现信息,若存在多个满足条件的媒体展现信息则客户端根据选择策略从多个媒体展现信息中选择一个,这可能要区分多种情况:(1)如果在媒体展现信息中还包括可访问时间(如availablilityStart,availabilityEnd可选),则当前时间需满足可访问时间要求(例如包括完整节目的点播展现在直播没有结束时就无法提供,因此其可访问时间目前无法满足要求);(2)如果多个媒体展现信息所对应的时间段存在重复,则可以选择媒体展现信息对应时间段与客户端维护的本地播放列表时间段重合度最小的一个;(3)如果几个媒体展现信息所对应的时间段与本地播放列表时间段都没有重合或者重合度一样,则可以随机选择一个,例如满足条件的第一个,或开始时间最接近请求媒体分片时间的,或距离当前时间最远的,等等;(4)其他可能的选择策略;
客户端获取该点播MPD的相应URL地址,利用获取的URL,客户端可以进一步获取到与之相应的点播MPD。
一个实施例中,假如直播服务器提供30分钟时移时长,如果30分钟时移时长之前时间段的内容也有相应的点播提供,则包括的附加媒体展现信息可用XML元素<relatedVoD>提供,在直播进行了90分钟之后,提供距直播开始时间到60分钟时间段的点播媒体展现信息的一个示例如下:
<relatedVoD>
<MPDInfo>
      <interval>
          <startTime>PT0S</startTime>
          <endTime>PT60M</endTime>
      </interval>
      <MPDAddress>http://www.movie.com/Experience/exampleVoDpreMPD URL.mpd</MPDAdd
      ress>
    </MPDInfo>
</relatedVoD>
或者在每个点播MPD中只包括30分钟时间段的媒体展现描述信息,则需要包括两个前面时间段的媒体展现信息,示例如下:
<relatedVoD>
    <MPDInfo>
          <interval>
              <startTime>PT0S</startTime>
              <endTime>PT30M</endTime>
        </interval>
        <MPDAddress>http://www.movie.com/Experience/exampleVoD preMPD1 URL.mpd</MPDAd
        dress>
    </MPDInfo>
    <MPDInfo>
        <interval>
            <startTime>PT30M</startTime>
            <endTime>PT60M</endTime>
        </interval>
        <MPDAddress>http://www.movie.com/Experience/exampleVoD preMPD2 URL.mpd</MPDAd
        dress>
    </MPDInfo>
</relatedVoD>
假设直播媒体展现的总时长为4小时(其开始时间为″2010-05-01T18:00:00Z″),也可同时提供包括整个直播媒体展现相应的点播媒体展现信息,但需要包括可访问时间,一个示例如下:
<relatedVoD>
    <MPDInfo>
          <interval>
              <startTime>PT0S</startTime>
              <endTime>PT60M</endTime>
    </interval>
    <MPDAddress>http://www.movie.com/Experience/exampleVoDpreMPD URL.mpd</MPDAdd
    ress
</MPDInfo>
<MPDInfo availablilityStart=″2010-05-01T22:00:00Z″>
            <interval>
                <startTime>PT0S</startTime>
                <endTime>PT4H</endTime>
        </interval>
        <MPDAddress>http://www.movie.com/Experience/exampleCompleteVoD MPD URL.mpd</MP
        DAddress>
    </MPDInfo>
</relatedVoD>
直播服务器和点播服务器可根据需要分开部署,但也可部署在同一台服务器上。
706、客户端向点播服务器请求相应时间段的MPD;
707、点播服务器向客户端返回与请求相应的MPD;
客户端处理接收的点播MPD,得到相应的播放列表及获取媒体分片的URL地址,并把得到的播放列表添加到本地维护的播放列表中(或替换更新本地维护的播放列表)。
708、客户端向点播服务器请求媒体分片;
客户端首先根据步骤705时所需要请求媒体分片的时刻,构造相应媒体分片请求并发送给点播服务器。
709、点播服务器向客户端返回与请求对应的媒体分片。
点播服务器返回与请求对应的媒体分片。
然后客户端可接着该媒体分片依次请求后续的媒体分片,直到遇到用户其他播放控制操作或者播放列表中的媒体分片全部请求并播放完成或者遇到MPD更新等,因此步骤708和709可根据实施情况重复多次。
实施例七采用向直播服务器发送直播MPD请求信息;接收直播服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的点播媒体展现信息;确定当前需要请求的媒体分片的时刻超出所述直播MPD所对应的时间范围,根据所述其它时间段的点播媒体展现信息,确定当前需要请求的媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,获取相应的点播MPD,并根据所述获取到的对应的MPD,向点播服务器请求当前需要请求的媒体分片。使得客户端支持更长时间范围的回看,同时可将MPD的大小保持在可接受的范围内。
另一个实施例八a为,在MPD中既提供直播时移范围内、当前最新MPD不包括的时间段的其他时间段的直播媒体展现信息,也能提供包括时移范围之外、与直播媒体展现相应的前面时间段的点播媒体展现信息(即在MPD中同时包括<previousMPD>元素和<relatedVoD>),客户端可以根据需要请求媒体分片对应的时刻,来选择满足时间段要求的媒体展现信息,获取相应MPD,请求并播放相应的媒体分片。实施例的流程可综合上述实施例六和实施例7,这里不再冗述。
实施例八:
在另外一个实际应用过程中,例如,在直播过程中,用户由于暂停或者时移等操作,等到恢复观看时,已经超出了直播服务器提供业务的截止时间,直播服务器已无法继续提供服务,这时,通过在MPD中包括相关点播媒体展现信息,客户端可以切换到点播服务继续观看。具体请参看下述实施例描述。
参阅图8,本发明实施例提供一种在动态HTTP流传输方案中直播点播无缝切换的方法,包括客户端,直播服务器和点播服务器,具体步骤为:
801、客户端向直播服务器发送直播MPD请求消息;
客户端请求获取直播MPD,例如根据直播MPD的URL地址构造MPD请求消息;
802、直播服务器返回当前最新的MPD;
同时MPD中还包括其它时间段的点播媒体展现信息,这里其它时间段可以细分为两种情况:
(1)客户端完全基于当前获取的最新MPD来创建本地播放列表,那么当前MPD所包括的时间区间[a,b]之外的其他时间段其它时间段,例如对直播一般为时间点a之前;(2)客户端创建的本地播放列表除了基于当前获取的最新的MPD,还能基于前面所获取的MPD中包括的时间段。对于一个在直播开始以后才接入的客户端,它最多只能创建从其接收到的第一个MPD到当前最新的MPD所包括的所有时间段范围内的播放列表,假设为时间区间[a’,b](其中a’≤a),那么对于超出区间[a’,b]之外的其他时间其它时间段(例如≤a’)。又或者,虽然一个直播客户端在直播开始就已经接入,但其维护的本地播放列表有总时长限制(如LocalListDuration),那么其维护的时间区间为[b-LocalListDuration,b],这个区间之外的其他时间都属于其它时间段。
803、客户端向直播服务器请求媒体分片;
客户端处理直播MPD得到相应的播放列表及获取媒体分片的URL地址;根据URL地址请求媒体分片。
804、直播服务器向客户端返回媒体分片;
这里801和802,803和804可以根据实施情况重复多次。
805、客户端暂停或时移后,再次请求媒体分片时超出直播服务的截止时间,根据MPD中提供其他时间段MPD的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;
其详细处理步骤与上述图7中的步骤705非常类似,区别之处为:
(1)客户端的媒体分片请求不再与直播进度直接相关(因为直播已经结束),媒体分片请求将与媒体展现直接相关,即距离该媒体展现开始时间的偏移时间值;(2)如果在MPD中包括了完整媒体展现的点播媒体展现信息,现在已有完整的媒体展现可供使用。
806、客户端向点播服务器请求相应时间段的点播MPD;
807、点播服务器向客户端返回与请求相应的MPD;
客户端处理接收的点播MPD,得到相应的播放列表及获取媒体分片的URL地址,并把得到的播放列表添加到本地维护的播放列表中(或替换更新本地维护的播放列表)。
808、客户端向点播服务器请求媒体分片;
客户端首先根据步骤805时所需要请求媒体分片的时刻,构造相应媒体分片请求并发送给点播服务器。
809、点播服务器向客户端返回与请求对应的媒体分片。
点播服务器返回与请求对应的媒体分片。
然后客户端可接着该媒体分片依次请求后续的媒体分片,直到遇到用户其他播放控制操作或者播放列表中的媒体分片全部请求并播放完成或者遇到MPD更新等。步骤808和809可根据实施情况重复多次。
实施例八采用向直播媒体服务器发送直播MPD请求消息;接收直播服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的点播媒体展现信息;确定当前需要请求媒体分片时已超出所述MPD所对应的直播服务截止时间,根据所述其它时间段的点播媒体展现信息,确定当前需要请求的媒体分片对应的媒体展现信息;根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的点播MPD,并根据所述获取到的对应的MPD,向媒体服务器请求当前需要请求的媒体分片。使得客户端由于暂停或时移等操作,在超出直播服务器提供服务的截止时间后,能从直播无缝切换到点播,仍可继续提供媒体服务。
通过以上的实施方式的描述,本领域普通技术人员可以理解:实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括如上述方法实施例的步骤,所述的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (11)

1.一种在动态HTTP流传输方案中支持时移回看方法,其特征在于,
向媒体服务器发送直播媒体展现描述MPD请求消息;
接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息,所述其它时间段的媒体展现信息包括时间段信息和对应的MPD的获取地址;
确定当前需要请求媒体分片的时刻超出所述当前时间段的MPD所对应的时间范围,根据所述其他时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;
根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的MPD,向媒体服务器请求当前需要请求的媒体分片。
2.如权利要求1所述的方法,其特征在于,所述其它时间段包括至少下述情况之一:
在当前时间段之外且在媒体服务器维护的时移范围之内的时间段;
从直播媒体展现开始后且在直播服务器维护的时移范围之外的时间段;以及
暂停恢复播放后或时移观看过程中超出了提供直播服务的最后截止时间。
3.如权利要求1所述的方法,其特征在于,所述其它时间段的媒体展现信息进一步包括:
所述其他时间段对应的MPD的可访问时间。
4.如权利要求1所述的方法,其特征在于,如果其它时间段所对应的媒体展现信息存在多个,所述的方法进一步包括:
判断MPD中是否存在满足所述需要请求的媒体分片的时间要求的多个其它时间段所对应的媒体展现信息;
若存在,则根据选择策略从所述其它时间段所对应的媒体展现信息中选择一个。
5.如权利要求4所述的方法,其特征在于,所述根据选择策略从所述其它时间段所对应的媒体展现信息中选择一个包括:
如媒体展现信息中包括可访问时间,则所述当前时间段需满足可访问时间要求;
如媒体展现信息对应的时间段存在重复,则可以选择媒体展现信息中时间段与客户端维护的本地播放列表时间段重合度最小的一个;
如存在几个媒体展现信息对应时间段与本地播放列表时间段都没有重合或者重合度一样,则随机选择一个。
6.如权利要求1所述的方法,其特征在于,所述获取相应的MPD具体为:
从直播服务器获取的、在当前MPD对应时间段之外且在媒体服务器维护的时移范围之内的其他时间段直播MPD;
和/或,
从点播服务器获取的、超出直播服务器维护的时间范围之外的其他时间段的点播MPD;
7.一种在动态HTTP流传输方案中支持时移回看的方法,其特征在于,
接收客户端发送的直播MPD请求消息;
向所述客户端发送包含当前时间段的MPD的响应消息,所述MPD中包含其它时间段的媒体展现信息,所述其它时间段的媒体展现信息包括时间段信息和对应的MPD的获取地址;
接收所述客户端发送超出所述当前时间段的MPD对应时间段的其他时间段MPD请求消息;
根据所述其他时间段MPD请求消息,将所述其他时间段对应的MPD发送给客户端,以便于客户端根据所述对应的MPD获取相应的媒体分片。
8.如权利要求7所述的方法,其特征在于,所述其它时间段的媒体展现信息进一步包括所述其他时间段对应的MPD的可访问时间。
9.一种客户端,其特征在于,所述客户端包括,
发送模块,用于向媒体服务器发送MPD请求消息;
接收模块,用于接收媒体服务器返回的包含当前时间段的MPD的响应消息,所述MPD中还包含其它时间段的媒体展现信息,所述其它时间段的媒体展现信息包括时间段信息和对应的MPD的获取地址;
确定模块,用于确定当前需要请求媒体分片的时刻超出所述当前时间段的MPD所对应的时间范围,根据所述其它时间段的媒体展现信息,确定当前需要请求媒体分片对应的媒体展现信息;
获取模块,用于根据所述当前需要请求的媒体分片对应的媒体展现信息,获取对应的MPD,并根据所述获取到的MPD,向媒体服务器请求当前需要请求的媒体分片。
10.如权利要求9所述的客户端,所述客户端进一步包括,
选择模块,用于:如媒体展现信息中包括可访问时间,则所述当前时间段需满足可访问时间要求;如媒体展现信息对应的时间段存在重复,则可以选择媒体展现信息对应的时间段与客户端维护的本地播放列表时间段重合度最小的一个;如存在几个媒体展现信息对应的时间段与本地播放列表时间段都没有重合或者重合度一样,则随机选择一个。
11.一种媒体服务器,其特征在于,所述媒体服务器包括:
接收模块,用于接收客户端发送的直播MPD请求消息,以及接收所述客户端发送超出当前时间段的MPD对应时间段的其他时间段MPD请求消息;
发送模块,用于根据接收的直播MPD请求消息,向所述客户端发送包含当前时间段的MPD的响应消息,所述响应消息中包含其它时间段的媒体展现信息,所述其它时间段的媒体展现信息包括时间段信息和对应的MPD的获取地址;以及根据所述其他时间段MPD请求消息,将与所述其他时间段对应的MPD发送给客户端,以便于客户端根据所述对应的MPD获取相应的媒体分片。
CN2010102555660A 2010-08-17 2010-08-17 一种在动态http流传输方案中支持时移回看的方法和装置 Active CN102130936B (zh)

Priority Applications (14)

Application Number Priority Date Filing Date Title
CN2010102555660A CN102130936B (zh) 2010-08-17 2010-08-17 一种在动态http流传输方案中支持时移回看的方法和装置
PL11786124T PL2592809T3 (pl) 2010-08-17 2011-06-03 Sposób i urządzenie do wspierania przeglądania z przesunięciem czasowym w rozwiązaniu transmisji strumieniowej protokołu dynamicznego przesyłania hipertekstu
HUE14177019A HUE027786T2 (en) 2010-08-17 2011-06-03 Process and equipment for supporting time-shifted playback in adaptive HTTP streaming transmission solutions
ES11786124.5T ES2524001T3 (es) 2010-08-17 2011-06-03 Método y dispositivo para soportar un análisis de desplazamiento temporal en una solución de transmisión en tiempo real del protocolo de transferencia de hipertexto dinámico
PL14177019.8T PL2797287T3 (pl) 2010-08-17 2011-06-03 Sposób i urządzenie do wspierania odtwarzania z przesunięciem czasowym w rozwiązaniu transmisji adaptacyjnego strumieniowania HTTP
ES14177019.8T ES2581582T3 (es) 2010-08-17 2011-06-03 Método y aparato para soportar la reproducción de desplazamiento temporal en una solución de transmisión de flujo continuo de HTTP adaptativo
EP14177019.8A EP2797287B1 (en) 2010-08-17 2011-06-03 Method and apparatus for supporting time shift playback in adaptive HTTP streaming transmission solution
PCT/CN2011/075284 WO2011147352A1 (zh) 2010-08-17 2011-06-03 一种在动态http流传输方案中支持时移回看的方法和装置
NO15202848A NO3029909T3 (zh) 2010-08-17 2011-06-03
ES15202848.6T ES2646562T3 (es) 2010-08-17 2011-06-03 Método y aparato para soportar la reproducción de desplazamiento temporal en una solución de transmisión de flujo continuo de HTTP adaptativo
EP11786124.5A EP2592809B1 (en) 2010-08-17 2011-06-03 Method and device for supporting time shift review in dynamic hypertext transfer protocol streaming transmission solution
EP15202848.6A EP3029909B1 (en) 2010-08-17 2011-06-03 Method and apparatus for supporting time shift playback in adaptive http streaming transmission solution
US13/768,002 US8683071B2 (en) 2010-08-17 2013-02-15 Method and apparatus for supporting time shift playback in adaptive HTTP streaming transmission solution
US14/162,153 US8984570B2 (en) 2010-08-17 2014-01-23 Method and apparatus for supporting time shift playback in adaptive HTTP streaming transmission solution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102555660A CN102130936B (zh) 2010-08-17 2010-08-17 一种在动态http流传输方案中支持时移回看的方法和装置

Publications (2)

Publication Number Publication Date
CN102130936A CN102130936A (zh) 2011-07-20
CN102130936B true CN102130936B (zh) 2013-10-09

Family

ID=44268824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102555660A Active CN102130936B (zh) 2010-08-17 2010-08-17 一种在动态http流传输方案中支持时移回看的方法和装置

Country Status (8)

Country Link
US (2) US8683071B2 (zh)
EP (3) EP3029909B1 (zh)
CN (1) CN102130936B (zh)
ES (3) ES2581582T3 (zh)
HU (1) HUE027786T2 (zh)
NO (1) NO3029909T3 (zh)
PL (2) PL2592809T3 (zh)
WO (1) WO2011147352A1 (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9712891B2 (en) * 2011-11-01 2017-07-18 Nokia Technologies Oy Method and apparatus for selecting an access method for delivery of media
US9270718B2 (en) * 2011-11-25 2016-02-23 Harry E Emerson, III Internet streaming and the presentation of dynamic content
US20130182643A1 (en) * 2012-01-16 2013-07-18 Qualcomm Incorporated Method and system for transitions of broadcast dash service receptions between unicast and broadcast
CN102547481B (zh) * 2012-02-10 2014-08-20 中国联合网络通信集团有限公司 移动流媒体在线播放列表设置以及内容的快速切换方法及系统
KR101667950B1 (ko) * 2012-10-29 2016-10-28 알까뗄 루슨트 모바일 http 적응형 스트리밍을 갖는 무선 네트워크들에서의 정체 관리를 위한 방법들 및 장치들
US9357239B2 (en) 2012-11-16 2016-05-31 Adobe Systems Incorporated Converting live streaming content to video-on-demand streaming content
WO2014113603A2 (en) * 2013-01-16 2014-07-24 Huawei Technologies Co., Ltd. Storing and transmitting content for downloading and streaming
KR20140118667A (ko) 2013-03-29 2014-10-08 삼성전자주식회사 디스플레이장치 및 그 제어방법
US20140298393A1 (en) * 2013-03-29 2014-10-02 Samsung Electronics Co., Ltd. Display apparatus and control method thereof
CN104125516B (zh) * 2013-04-24 2018-09-28 华为技术有限公司 媒体文件接收、媒体文件发送方法和装置及系统
WO2015008775A1 (ja) * 2013-07-19 2015-01-22 ソニー株式会社 情報処理装置および方法
WO2015013687A1 (en) * 2013-07-25 2015-01-29 Futurewei Technologies, Inc. System and method for effectively controlling client behavior in adaptive streaming
CN104462128B (zh) * 2013-09-22 2018-04-13 腾讯科技(深圳)有限公司 多媒体文件处理的方法、装置和终端设备
CN103533444A (zh) * 2013-10-25 2014-01-22 乐视网信息技术(北京)股份有限公司 一种支持时移播放的方法及装置
CN103699583B (zh) * 2013-12-05 2018-08-03 乐视网信息技术(北京)股份有限公司 一种实现直播时移的方法及电子设备
CN104717555B (zh) * 2013-12-11 2018-01-02 华为技术有限公司 视频码流的获取方法及装置
CN103747285A (zh) * 2013-12-27 2014-04-23 乐视网信息技术(北京)股份有限公司 一种节目播放方法和服务端、客户端
CN103813185B (zh) * 2014-01-26 2019-01-25 中兴通讯股份有限公司 一种分段节目快速分发的方法、服务器及客户端
US9900362B2 (en) 2014-02-11 2018-02-20 Kiswe Mobile Inc. Methods and apparatus for reducing latency shift in switching between distinct content streams
US9432431B2 (en) * 2014-03-18 2016-08-30 Accenture Global Servicse Limited Manifest re-assembler for a streaming video channel
US9866608B2 (en) 2014-03-24 2018-01-09 Qualcomm Incorporated Processing continuous multi-period content
CN105025330B (zh) * 2014-04-30 2018-04-10 深圳Tcl新技术有限公司 基于dash协议的媒体文件播控方法和装置
US10057618B2 (en) 2014-06-06 2018-08-21 Microsoft Technology Licensing, Llc System for filtering media manifests using manifest attributes
US10185467B2 (en) 2014-08-28 2019-01-22 Nagravision S.A. Intelligent content queuing from a secondary device
US9894130B2 (en) * 2014-09-23 2018-02-13 Intel Corporation Video quality enhancement
CN104506924B (zh) * 2014-12-23 2018-09-11 成都德芯数字科技股份有限公司 一种高集成度的iptv系统及其工作方法
WO2016110324A1 (en) * 2015-01-07 2016-07-14 Telefonaktiebolaget Lm Ericsson (Publ) An improved method and apparatus for trick-play in abr streaming
US10565248B2 (en) * 2015-03-09 2020-02-18 Verizon Patent And Licensing Inc. Time-shifted playback for over-the-top linear streaming
CN104883625B (zh) * 2015-06-12 2018-03-09 腾讯科技(北京)有限公司 信息展示方法、终端设备、服务器和系统
CN104935595B (zh) * 2015-06-16 2019-10-15 华为技术有限公司 内容项聚合方法和相关装置及通信系统
CN105872721A (zh) * 2015-12-14 2016-08-17 乐视云计算有限公司 起播速度的处理方法及装置
CN107566854B (zh) * 2016-06-30 2020-08-07 华为技术有限公司 一种媒体内容的获取和发送方法及装置
CN107959862B (zh) * 2016-10-14 2020-05-22 上海交通大学 基于广播系统的媒体点播模式控制方法
CN107483974B (zh) * 2017-08-29 2020-04-24 深圳市茁壮网络股份有限公司 一种服务处理方法及系统
CN108419136A (zh) * 2018-03-09 2018-08-17 青岛海信电器股份有限公司 一种网络直播流的seek实现方法及装置
CN110858910B (zh) * 2018-08-23 2022-05-27 广州虎牙信息科技有限公司 直播视频的显示方法、装置、设备及存储介质
CN109729387B (zh) * 2019-01-07 2021-05-14 烽火通信科技股份有限公司 基于hls协议的网络直播在故障恢复后的播放方法及系统
FR3094167B1 (fr) * 2019-03-18 2021-04-23 Ateme Procédé de gestion de contenus multimédia et dispositif pour la mise en œuvre du procédé
US11265586B2 (en) * 2019-05-06 2022-03-01 Apple Inc. Skipping segments in playlists
CN112788353B (zh) * 2020-12-28 2022-06-14 未来电视有限公司 直播时移处理方法、装置、电子设备和可读存储介质
CN113038196A (zh) * 2021-03-17 2021-06-25 大陆投资(中国)有限公司 在通信网络中传输媒体数据的发送方设备和接收方设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101188734A (zh) * 2006-11-15 2008-05-28 中兴通讯股份有限公司 一种流媒体快速播放的方法
CN101459809A (zh) * 2008-11-26 2009-06-17 天柏宽带网络科技(北京)有限公司 一种数字电视节目播放的方法和系统
CN102055773A (zh) * 2009-11-09 2011-05-11 华为技术有限公司 实现基于http的流媒体业务的方法、系统和网络设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9209934B2 (en) * 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9380096B2 (en) * 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) * 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
CN101552796B (zh) * 2008-03-31 2012-07-04 华为技术有限公司 一种时移操作方法和装置
CN101588473B (zh) * 2009-06-18 2011-05-25 北京浪弯融科科技有限责任公司 多媒体时移播放方法及系统
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9917874B2 (en) * 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
CN102055789B (zh) * 2009-11-09 2013-10-09 华为技术有限公司 实现基于http的流媒体业务的方法、系统和网络设备
US8806050B2 (en) * 2010-08-10 2014-08-12 Qualcomm Incorporated Manifest file updates for network streaming of coded multimedia data
WO2012032502A1 (en) * 2010-09-10 2012-03-15 Nokia Corporation A method and apparatus for adaptive streaming
WO2012093202A1 (en) * 2011-01-07 2012-07-12 Nokia Corporation Method and apparatus for signaling presentation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101188734A (zh) * 2006-11-15 2008-05-28 中兴通讯股份有限公司 一种流媒体快速播放的方法
CN101459809A (zh) * 2008-11-26 2009-06-17 天柏宽带网络科技(北京)有限公司 一种数字电视节目播放的方法和系统
CN102055773A (zh) * 2009-11-09 2011-05-11 华为技术有限公司 实现基于http的流媒体业务的方法、系统和网络设备

Also Published As

Publication number Publication date
EP3029909B1 (en) 2017-08-09
ES2646562T3 (es) 2017-12-14
EP2592809B1 (en) 2014-09-10
HUE027786T2 (en) 2016-10-28
EP2592809A1 (en) 2013-05-15
US20130159421A1 (en) 2013-06-20
PL2797287T3 (pl) 2016-09-30
WO2011147352A1 (zh) 2011-12-01
US8984570B2 (en) 2015-03-17
EP2797287A1 (en) 2014-10-29
EP2592809A4 (en) 2013-09-18
CN102130936A (zh) 2011-07-20
US8683071B2 (en) 2014-03-25
ES2581582T3 (es) 2016-09-06
PL2592809T3 (pl) 2015-02-27
US20140137171A1 (en) 2014-05-15
ES2524001T3 (es) 2014-12-03
NO3029909T3 (zh) 2018-01-06
EP3029909A1 (en) 2016-06-08
EP2797287B1 (en) 2016-04-06

Similar Documents

Publication Publication Date Title
CN102130936B (zh) 一种在动态http流传输方案中支持时移回看的方法和装置
EP4080893A2 (en) System for video playback using a server generated manifest
JP5580302B2 (ja) ピアツーピアネットワークのための放送シーディング
CN102055717B (zh) 快速播放的方法、终端及服务器
CN102215116B (zh) 在数字广播系统中提供时间偏移服务的方法、设备及系统
JP6761983B2 (ja) 広告配信サーバ、番組配信サーバ及び再生端末、並びに映像配信システム
US20140150044A1 (en) Generation device, distribution server, generation method, playback device, playback method, playback system, generation program, playback program, recording medium and data structure
WO2013080502A1 (en) Terminal apparatus, server apparatus, information processing method, program, and linking application supply system
CN102055718B (zh) 一种在http streaming系统中实现分层请求内容的方法,装置和系统
CN103002274A (zh) 一种基于离线下载的移动多媒体实时转码播放系统及方法
CN102137137A (zh) 基于http流的媒体内容动态插播方法、装置及系统
CN102640512A (zh) 结合动态广告的视频点播应用的书签校准
CN102196008A (zh) 点对点下载方法、视频设备和内容发送方法
US10484735B2 (en) Method and system for synchronizing media streams
EP3571848A1 (en) Content streaming system and method
CN102984558B (zh) 机顶盒及其频道切换过程中播放画面的方法
KR20170141677A (ko) 수신 장치, 송신 장치 및 데이터 처리 방법
CN109842804A (zh) 音视频数据的处理方法及服务器、计算机存储介质
KR102640835B1 (ko) 송신 장치, 수신 장치, 및 데이터 처리 방법
US9332421B2 (en) Method and apparatus for random access to multimedia content in wireless communication system
CN102172035A (zh) 视频专题制作方法和系统
WO2017080152A1 (zh) 一种同步数据的方法和装置
CN101335851A (zh) 一种可以通过网络观看视频直播的网络电视接收机
WO2011142249A1 (ja) 端末、配信システム、配信サーバ、再生方法、及びプログラム
US20180324480A1 (en) Client and Method for Playing a Sequence of Video Streams, and Corresponding Server and Computer Program Product

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant