CN102143384B - 一种媒体文件生成方法、装置及*** - Google Patents
一种媒体文件生成方法、装置及*** Download PDFInfo
- Publication number
- CN102143384B CN102143384B CN201110007856.8A CN201110007856A CN102143384B CN 102143384 B CN102143384 B CN 102143384B CN 201110007856 A CN201110007856 A CN 201110007856A CN 102143384 B CN102143384 B CN 102143384B
- Authority
- CN
- China
- Prior art keywords
- content
- file
- speed file
- burst
- client
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明公开了一种媒体文件生成方法、装置及***,所述方案包括:视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。本发明还提供了对应于上述方法的一种视频服务器、客户端以及一种媒体播放的***。本发明技术方案的实现,在基于HTTP adaptive streaming的媒体播放方案中,视频服务器能够向客户端提供快进快退的倍速文件,从而在客户端在接收到用户发出的快进或快退命令时,能够实现视频播放的快进快退功能。
Description
技术领域
本发明涉及多媒体技术领域,更具体的说,涉及一种媒体文件生成方法、装置及***。
背景技术
目前,在Internet视频解决方案中,基于HTTP(HyperText TransferProtocol,超文本传输协议)的adaptive streaming(自适应流媒体)是近期比较风行的视频流化方式。服务器通过针对同一视频提供不同码率的多个视频文件,在视频播放过程中能够根据用户端的能力、网络状态等多种因素,动态地选择适合当前码率的视频播放给用户,给用户带来最佳的体验。例如:针对同一视频内容,当手机用户播放时,看到的可能是350k码率或200k码率的视频;对于宽带用户来说,在网络质量较高时,看到的可能是2M或更高码率的高清视频,当网络质量较差时,用户看到的可能会是降低到1.5M或更低码率的视频。
现有技术中对上述播放功能均推出了定义直播和点播内容的正常播放协议定义及文件定义标准。例如:现有的Microsoft silverlight-SmoothStreaming是利用MP4文件格式中的box将各个切片组织到一个文件中,每种码率对应生成一个MP4文件,且各种码率文件中相对应的切片在时间上对齐,客户端能够根据计算出的网络带宽、CPU处理能力以及其它因素动态地选择最合适的切片进行播放。
现有的http live stream中的Manifest文件是扩展的m3u格式文件,通过扩展的EXT-X-STREAM-INF标签将码率与码率对应的playlist关联起来,客户端通过解析m3u文件获取各码率的playlist,在选取码率后,按照对应的playlist请求和播放视频。
现有Adobe http streaming中,manifest文件是f4m文件,该f4m文件中描述了存在的各种码率及对应的文件URL;bootstrap文件主要用于快速启动,给出了每个segment(节目章节)和fragment(章节的进一步分片)对应的内容时长,属于manifest的一部分。
在目前各个厂家推出的协议标准中,主要是针对直播和点播内容的正常播放的协议定义和文件定义标准定义的,用户只能通过向前或向后拖动播放进度条来实现当前视频的跳转。
发明内容
本发明的实施例提供了一种媒体文件生成方法、装置及***,通过在视频服务器端增设具有快进快退功能的倍速文件,能够实现视频播放的快进或快退功能。
本发明实施例提供了一种媒体文件生成方法,包括:
针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
记录所述快进快退文件每个分片内容在所述正常速率文件内容中的播放时长。
本发明实施例提供了一种视频服务器,包括:
文件生成模块,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
文件管理模块,用于记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
本发明实施例提供了一种获取媒体文件的方法,包括
在接收到快进或快退的命令后,在从视频服务器获取的内容清单中确定与所述命令对应倍速文件;所述内容清单中记录有下述信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
向所述视频服务器发送分片下载请求,所述请求中包括当前播放时间点所在分片的位置。
本发明实施例提供了一种客户端,包括
命令执行模块,用于在接收到快进或快退的命令后,在从视频服务器获取的内容清单中确定与所述命令对应的倍速文件;所述内容清单中记录有下述信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
内容确定模块,用于通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
内容获取模块,用于向所述视频服务器发送分片下载请求,所述请求中包括当前播放时间点所在分片的位置。
本发明实施例提供了一种媒体播放***,包括:
视频服务器,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;记录所述快进快退文件每个分片内容在所述正常速率文件内容中的播放时长;
客户端,用于在接收快进或快退的命令后,从视频服务器获取内容清单,并在所述内容清单中确定与所述命令对应的倍速文件;通过累加所述倍速文件每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;向所述视频服务器发送分片下载请求,所述请求中包含当前播放时间点所在分片的位置。
由上述本发明的实施例提供的技术方案可以看出,视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件,并记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。在视频服务器具有多码率文件的基础上,实现了增加多种倍速的快进快退文件的发明目的,能够满足客户端的需求。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种媒体文件生成方法的流程图;
图2为本发明实施例一种获取媒体文件的方法的流程图;
图3为本发明实施例一种视频服务器的结构示意图;
图4为本发明实施例一种客户端的结构示意图;
图5为本发明实施例一种媒体播放***结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例针对基于HTTP adaptive streaming的现有媒体播放方案推出的协议标准中,没有针对快进快退业务提出的实现方式定义和相关的协议定义,因此用户只能通过向前或向后拖动播放进度条来实现视频内容跳转的问题,提出了一种媒体文件处理方法、装置及***,视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;并记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。通过在视频服务器端增设针对不同码率的倍速文件,使得本发明实施例技术方案应用在现有媒体播放方案中,能够实现媒体文件的快进或快退功能,提高了用户体验。
为了进一步理解本发明实施例提出的技术方案,下面结合附图及具体实施方式进行说明。
本发明实施例提出的技术方案是建立在多码率文件的基础上实现的,可以应用在Internet视频解决方案的基于HTTP adaptive streaming视频流化方式的应用场景中。
如图1所示,本发明实施例基于视频服务器的角度,提出一种媒体文件生成方法,技术方案可以包括:
步骤101:视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
步骤102:记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
由于视频服务器中没有对应各种码率的倍速文件,因此,用户只能依靠播放进度条进行视频播放内容的调整,由上述方案可知,本发明实施例中通过在视频服务器端,增设与多码率文件对应的多种倍速的快进快退文件,使得在客户端接收到用户发送的快进或快退命令时,能够根据所述播放时长确定当前播放时间点所在分片的位置,从而能够在视频服务器中获取到当前播放点所在的分片,播放给用户。
需要说明的是,在实际应用中,可以针对每种码率的视频文件对应生成至少一种倍速的倍速文件,在客户端接收到用户发送的快进或快退命令时,所述客户端通过向视频服务器获取与该命令对应的倍速文件提供给用户;此外,也可以在多种码率的正常速率文件中,选择其中几种正常速率的文件,对应的生成倍速文件,当客户端接收到用户发送的快进或快退请求时,在已生成倍速文件的码率文件中,选择与当前码率最接近的倍速文件提供给客户端。例如:针对200k码率和400k码率,分别生成与200k码率及400k码率对应的2倍速快进文件和4倍速快进文件,当客户端在接收到2倍速快进命令时,在当前码率为350k的情况下,由于视频服务器端没有针对350k码率生成倍速文件,可以将400k码率生成的倍速文件提供给客户端。
针对上述方案具体的说,在相同码率下,与该码率对应的倍速文件每个分片播放时间间隔,与该码率对应的正常速率文件的每个分片播放时间间隔相同;例如:正常速率文件和2倍速率文件每个分片播放时间的间隔都是2秒;相同码率下,倍速文件每个分片在相同时间间隔中,播放的内容要比正常速率文件播放的内容多,例如:正常速率文件和2倍速率文件每个分片播放时间的间隔都是2秒时,2倍速率文件每个分片内容,在正常速率文件内容中要对应4秒的内容,因此,本发明实施例中,要用2倍速文件每个分片在正常速率文件中对应的实际内容的时长(4秒),来标识该2倍速率文件每个分片的内容,以便客户端在接收到用户发送的快进或快退命令后,能够根据倍速文件每个分片的播放时长确定当前播放点所在分片的位置。
需要说明的是,本发明实施例中涉及的倍速文件是指对应多种倍速的快进或快退文件。
针对上述方案,所述方法还可以包括:
为所述倍速文件增设倍速文件标识,用于区分所述倍速文件与正常速率文件。
针对上述方案,所述方法还可以包括:
将下述信息中的至少一种记录在内容清单中,所述信息包括:所述至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设倍速文件标识以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
具体的说,上述内容清单在Microsoft silverlight-Smooth Streaming方案中指的是manifest文件;在http live stream中内容清单是扩展的m3u格式文件;在Adobe公司提出的Adobe http streaming中内容清单是f4m文件。
对于现有的媒体播放方案的实现中,大多要使用内容清单来记录每种媒体文件与各种码率之间的对应关系,在本发明实施例中,将上述每种码率与多种倍速文件的对应关系,以及所述播放时长信息记录在内容清单中,以便视频服务器和客户端能够及时确定与快进或快退命令对应的播放文件。
针对上述方案,所述方法还可以包括:
接收客户端发送的所述内容清单获取请求;
根据所述内容清单获取请求,将所述内容清单发送给所述客户端,以使所述客户端在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
针对上述方案,所述方法还可以包括:
在所述客户端接收到快进或快退命令后,接收所述客户端发送的分片下载请求,所述请求中包括当前播放时间点所在分片的位置,其中,所述客户端通过累加所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;将所述当前播放时间点所在分片提供给所述客户端。
具体的说,由于内容清单中记录了每种码率与多种倍速文件的对应关系,因此客户端在接收到所述快进或快退的命令后,需要在内容清单中确定与该命令对应的倍速文件;如果当前码率不存在对应的倍速文件时,将最接近当前码率的码率文件所对应的倍速文件,提供给客户端。
上述图1实施例所述方法适用于基于HTTP ada ptive streaming的视频播放方案的应用场景中。
如图2所示,基于上述图1所示的方法实施例,本发明实施例基于客户端的角度,提出一种获取媒体文件的方法,技术方案可以包括:
步骤201:在接收到快进或快退的命令后,在从视频服务器获取的内容清单中确定与所述命令对应的倍速文件;所述内容清单中记录有下述信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
步骤202:通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
步骤203:向所述视频服务器发送分片下载请求,所述请求中包括所述当前播放时间点所在分片的位置。
所述方法还可以包括:
向所述视频服务器获取所述内容清单,以便在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
上述图2实施例所述方法适用于基于HTTP ada ptive streaming的视频播放方案的应用场景中。
需要说明的是,由于本发明实施例是基于上述图1实施例的方法获得的,因此包含了与图1方法实施例中相同或相应的技术特征,同时,本发明实施例提出的一种实现媒体文件播放的方法是建立在图1所示的方法实施例上实现的,因此本发明实施例涉及的具体技术方案可以参见上述图1实施例中的相关描述。
如图3所示,基于上述图1所示的方法实施例,本发明实施例提出一种视频服务器,包括下述功能模块:
文件生成模块31,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
文件管理模块32,用于记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
进一步的说,所述服务器还可以包括:
信息记录模块33,用于针对所述倍速文件增设倍速文件标识,用于区分所述倍速文件与正常速率文件,将下述信息中的至少一种记录在内容清单中,所述信息包括:所述至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
进一步的说,所述服务器还可以包括:
请求处理模块34,用于接收客户端发送的内容清单获取请求,并将所述内容清单发送给所述客户端,以使所述客户端在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
进一步的说,所述服务器还可以包括:
文件提供模块35,用于接收所述客户端发送的分片下载请求,所述请求中包括当前播放时间点所在的分片的位置,其中,所述客户端通过累加所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,确定当前播放点所在分片的位置;
将所述当前播放时间点所在分片提供给所述客户端。
上述图3实施例所述视频服务器,适用于基于HTTP ada ptive streaming的视频播放方案的应用场景中。
需要说明的是,由于本发明实施例是基于上述图1实施例的方法获得的视频服务器,因此包含了与图1方法实施例中相同的技术特征,本发明实施例涉及的具体技术方案可以参见上述图1实施例中的相关描述,在此不作一一赘述。
如图4所示,基于上述图2所示的方法实施例,本发明实施例提出一种客户端,包括下述功能模块:
命令执行模块41,用于在接收到快进或快退命令后,在从视频服务器获取的内容清单中,确定与所述命令对应的倍速文件;所述内容清单中记录有下述信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
内容确定模块42,用于通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
内容获取模块43,用于向所述视频服务器发送分片下载请求,所述请求中包括所述当前播放时间点所在分片的位置。
进一步的说,所述客户端还可以包括:
信息获取模块44,用于向所述视频服务器获取所述内容清单;
功能提供模块45,用于在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
上述图4实施例所述客户端,适用于基于HTTP ada ptive streaming的视频播放方案的应用场景中。
需要说明的是,由于本发明实施例是基于上述图2实施例的方法获得的视客户端,包含了与图2方法实施例中相同的技术特征,本发明实施例涉及的具体技术方案可以参见上述图2实施例中的相关描述,在此不作一一赘述。
如图5所示,基于上述图1所示的方法实施例,本发明实施例提供了一种媒体播放***,包括,:
如图3所示的视频服务器51,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;记录所述快进快退文件每个分片内容在所述正常速率文件内容中的播放时长;
如图4所示的客户端52,用于在接收快进或快退的命令后,从视频服务器获取内容清单,并在所述内容清单中确定与所述命令对应的倍速文件;通过累加所述倍速文件每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;向所述视频服务器发送分片下载请求,所述请求中包含当前播放时间点所在分片的位置。
需要说明的是,由于本发明实施例包含了与图3所示的视频服务器与图4所示的客户端相同的技术特征,因此,本发明实施例涉及的具体技术方案可以参见上述实施例中的相关描述,在此不作一一赘述。
为了说明本发明实施例提出的技术方案,下面以三种adaptive streaming的视频播放方案的改进进行举例说明。
本发明实施例一:
以现有基于HTTP adaptive streaming视频流化方式中Microsoft silverlight-Smooth Streaming的技术方案为例,对本发明实施例的技术方案进行说明。
(1)视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
倍速文件形式举例如下:
NBA_50000_F2.ismv:2倍速快进(表示码率为50000k的2倍速的快进文件)
NBA_50000_F4.ismv:4倍速快进(表示码率为50000k的4倍速的快进文件)
NBA_50000_B1.ismv:1倍速快退(表示码率为50000k的1倍速的快退文件)
NBA_50000_B2.ismv:2倍速快退(表示码率为50000k的2倍速的快退文件)
(2)针对所述倍速文件增设倍速文件标识,并记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
(3)将所述至少一种码率与生成的至少一种倍速文件之间的对应关系,以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,记录在内容清单中;
在本发明实施例中,内容清单为manifest文件。通常一个silverlight视频文件组成包括:
*.ismv:用于表示不同码率的视频和音频文件,或仅有视频;
*.isma:用于表示不同码率的音频文件;
*.ism:Server(服务器)manifest file:为XML格式,用于描述媒体文件和码率之间的对应关系,只被server使用;
*.ismc:Client(客户端)manifest file:为XML格式,用于描述Client可以请求的媒体信息,包括:码率、分辨率、codec类型等,Client在实现播放功能时,需要首先请求该文件。
在本发明实施例中,针对所述倍速文件增设倍速文件标识,具体是在*.ism中增加对倍速文件的描述,可以用modetype标识代表播放速率,用modetype对所述倍速文件的播放速率进行描述,若不存在该标识则表示该媒体文件为正常速率的媒体文件:
在*.ismc中同样要为每种倍速增加Streamlndex标签来标识,如:用modetype标识代表播放速率,用modetype对所述倍速文件的播放速率进行描述,若不存在该标识则为正常速率的媒体文件;
针对所述倍速文件每个分片,要用每个分片内容在所述正常速率文件内容中的播放时长,来对每个分片进行标识,倍速文件每个分片内容的持续时长为其内容在正常速率文件中对应的正常播放时长,而非该倍速文件每个分片的实际播放时长;
(4)视频服务器接收客户端获取manifest文件的请求;
(5)所述客户端接收所述视频服务器发送的manifest文件,通过判断所述manifest文件中是否有倍速文件标识来确定是否有倍速文件,在存在倍速文件时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏;
(6)在所述客户端接收到用户发送的快进或快退命令后,所述客户端在manifest文件中确定与当前码率对应的多种倍速文件的Streamlndex,并确定与该命令对应的倍速文件;
客户端通过累加所述倍速文件每个分片内容,在所述正常速率文件中对应内容的播放时长获得当前播放时间点所在分片的位置;
(7)视频服务器接收所述客户端发送的分片下载请求,所述请求中包含当前播放时间点所在分片的位置;
将所述当前播放时间点所在分片提供给所述客户端。
具体的,在本发明实施例一中客户端视频快进的请求格式可以采用如下方式实现:
Url=″*.ism/QualityLevels({bitrate})/Fragments(video={starttime})/Modetype(forward={times})″
客户端视频快退的请求格式可以采用如下方式实现::
Url=″*.ism/QualityLevels({bitrate})/Fragments(video={starttime})/Modetype(backward={times})″
由上述实施例可以看出,将本发明实施例的技术方案应用在Microsoftsilverlight-Smooth Streaming的技术方案中,能够实现视频播放时的快进或快退功能。
本发明实施例二:
以现有Apple live stream方案为例,对本发明实施例的技术方案进行说明。
需要说明的是,Apple live stream的内容清单是扩展的m3u格式文件,包括一个总的m3u文件及对应每个码率playlist的m3u文件;
(1)视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
(2)针对所述倍速文件增设倍速文件标识,并记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
(3)将所述至少一种码率与生成的至少一种倍速文件之间的对应关系,以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,记录在内容清单中;
具体的,在本发明实施例二中,通过扩展EXT-X-STREAM-INF tag来标识倍速文件,用于区分正常播放速率playlist与倍速文件playlist,具体通过如下方式实现:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=550000
inlet_550000.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=850000
inlet_850000.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2950000
inlet_2950000.m3u8
#EXT-X-STREAM-
INF:PROGRAMID=1,BANDWIDTH=550000,FORWARD=2
inlet_550000_F2.m3u8(该标识中增加了FORWARD=2,因此该文件标识2倍速的快进文件)
#EXT-X-STREAM-INF:PROGRAM-
ID=1,BANDWIDTH=550000,BACKWARD=2(该标识中增加了FORWARD=2,因此该文件标识2倍速的快退文件)inlet_550000_B2.m3u8
针对倍速文件的playlist,每个分片同样要标明实际内容在正常速率文件中中对应内容的播放时长;本发明实施例二中标识所述播放时长的方式与图1方法实施例中的方法相同;
例如:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:4,no desc
inlet_550000_F2.ts?start=0&end=2
#EXTINF:4,no desc
inlet_550000_F2.ts?start=2&end=4
#EXTINF:4,no desc
inlet_550000_F2.ts?start=4&end=6
#EXTINF:4.no desc
inlet_550000_F2.ts?start=8&end=10
#EXTINF:4,no desc
inlet_550000_F2.ts?start=10&end=12
(5)视频服务器接收客户端发送的m3u文件下载请求;
(6)客户端接收视频服务器发送的m3u文件,通过判断所述m3u文件中是否有倍速文件标识来确定是否有倍速文件,在存在倍速文件时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏;
(7)当客户端接收到用户发送的快进或快退命令时,客户端在获取到的m3u文件中,根据当前码率找到对应的倍速文件的playlist,并确定与该命令对应的playlist,通过累加每个分片的内容时长计算出当前时间点所在分片的位置;
(8)视频服务器接收所述客户端发送的分片下载请求,所述请求中包含当前播放时间点所在分片的位置;
将所述当前播放时间点所在分片提供给所述客户端。
本发明实施例三:
以Adobe http streaming为例,对本发明实施例的技术方案进行说明。
需要说明的是,在Adobe http streaming中,内容清单是f4m文件,所述f4m文件中描述了存在的各种码率及对应的文件url;bootstrap文件主要用于快速启动,它给出了每个segment和fragment对应的内容时长,是manifest的一部分。
(1)视频服务器针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
(2)针对所述倍速文件增设倍速文件标识,并记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
(3)将所述至少一种码率与生成的至少一种倍速文件之间的对应关系,以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,记录在内容清单中;
具体的说,针对Adobe http streaming通过在f4m中,通过扩展倍速文件标识(modetype)来区分倍速文件与正常播放文件,以支持快进快退播放功能,例如:
在本发明实施例三中,针对每种倍速单独对应一个bootstrap文件,并标识出bootstrap文件每个分片内容在正常速率文件中对应的实际内容的播放时长;本发明实施例三中标识所述播放时长的方式与图1方法实施例中的方法相同;
(4)视频服务器接收客户端f4m文件下载请求;
(5)客户端接收视频服务器发送的f4m文件,通过判断所述f4m文件中是否有倍速文件标识来确定是否有倍速文件,在存在倍速文件时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏;
(6)当客户端接收到用户发送的快进快退命令时,客户端首先确定与该命令对应倍速的bootstrap,并通过累加每个分片内容时长计算出当前时间点所在分片的位置,并向视频服务器请求该分片;
(7)视频服务器将该分片提供给客户端,以使所述客户端将该分片播放给用户。
综上所述,采用本发明提出的一种媒体文件的处理方法、装置及***,本发明技术方案的实现,在基于HTTP adaptive streaming视频流化方式的应用场景中,实现了媒体播放过程中的快进快退功能,是对快进快退业务的一个有效的补充,同时增加了HTTP adaptive streaming方案的易用性,同时也提高了用户体验。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (12)
1.一种媒体文件生成方法,其特征在于,包括:
针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
所述媒体文件生成方法还包括:针对所述倍速文件增设倍速文件标识,用于区分所述倍速文件与正常速率文件;
所述媒体文件生成方法还包括:
将下述信息中的至少一种记录在内容清单中,所述信息包括:所述至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收客户端发送的内容清单获取请求;
根据所述内容清单获取请求,将所述内容清单发送给所述客户端,以使所述客户端在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述客户端发送的分片下载请求,所述分片下载请求中包括当前播放时间点所在分片的位置,其中,所述客户端通过累加所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,确定所述当前播放时间点所在分片的位置;
将所述当前播放时间点所在分片提供给所述客户端。
4.根据权利要求1所述的方法,其特征在于,所述方法适用于基于HTTPadaptive streaming的视频播放方案的应用场景中。
5.一种视频服务器,其特征在于,包括:
文件生成模块,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;
文件管理模块,用于记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
所述服务器还包括:
信息记录模块,用于针对所述倍速文件增设倍速文件标识,用于区分所述倍速文件与正常速率文件;并将下述信息中的至少一种记录在内容清单中,所述信息包括:所述至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长。
6.根据权利要求5所述的视频服务器,其特征在于,所述服务器还包括:
请求处理模块,用于接收客户端发送的内容清单获取请求,并根据所述内容清单获取请求,将所述内容清单发送给所述客户端,以使所述客户端在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
7.根据权利要求6所述的视频服务器,其特征在于,所述服务器还包括:
文件提供模块,用于接收所述客户端发送的分片下载请求,所述分片下载请求中包括当前播放时间点所在分片的位置,其中,所述客户端通过累加所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长,确定所述当前播放时间点所在分片的位置;
将所述当前播放时间点所在分片提供给所述客户端。
8.一种获取媒体文件的方法,其特征在于,包括
在接收到快进或快退的命令后,在从视频服务器获取的内容清单中确定与所述命令对应的倍速文件;所述内容清单中记录有如下信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
向所述视频服务器发送分片下载请求,所述请求中包含当前播放时间点所在分片的位置。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
向所述视频服务器获取所述内容清单,以便在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
10.一种客户端,其特征在于,包括
命令执行模块,用于在接收快进或快退的命令后,在从视频服务器获取的内容清单中确定与所述命令对应的倍速文件;所述内容清单中记录有如下信息中的至少一种,所述信息包括:至少一种码率与生成的至少一种倍速文件之间的对应关系,为所述倍速文件增设的倍速文件标识以及所述倍速文件每个分片内容在正常速率文件内容中的播放时长;
内容确定模块,用于通过累加所述每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;
内容获取模块,用于向所述视频服务器发送分片下载请求,所述请求中包含当前播放时间点所在分片的位置。
11.根据权利要求10所述的客户端,其特征在于,所述客户端还包括:
信息获取模块,用于向所述视频服务器获取所述内容清单;
功能提供模块,用于在判断所述内容清单中有倍速文件标识时,在播放器上提供快进快退功能按键,否则,将播放器上的快进快退功能按键隐藏。
12.一种媒体播放***,其特征在于,包括:
视频服务器,用于针对同一内容的至少一种码率的正常播放文件,生成与所述码率对应的至少一种倍速文件;所述倍速文件的每个分片播放时间间隔与所述码率对应的正常速率文件的每个分片播放时间间隔相同;记录所述倍速文件每个分片内容在所述正常速率文件内容中的播放时长;
客户端,用于在接收快进或快退的命令后,从视频服务器获取内容清单,并在所述内容清单中确定与所述命令对应的倍速文件;通过累加所述倍速文件每个分片内容在正常速率文件内容中的播放时长,确定当前播放时间点所在分片的位置;向所述视频服务器发送分片下载请求,所述请求中包含当前播放时间点所在分片的位置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110007856.8A CN102143384B (zh) | 2010-12-31 | 2010-12-31 | 一种媒体文件生成方法、装置及*** |
PCT/CN2011/083916 WO2012089014A1 (zh) | 2010-12-31 | 2011-12-14 | 一种媒体文件生成方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110007856.8A CN102143384B (zh) | 2010-12-31 | 2010-12-31 | 一种媒体文件生成方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102143384A CN102143384A (zh) | 2011-08-03 |
CN102143384B true CN102143384B (zh) | 2013-01-16 |
Family
ID=44410563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110007856.8A Active CN102143384B (zh) | 2010-12-31 | 2010-12-31 | 一种媒体文件生成方法、装置及*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102143384B (zh) |
WO (1) | WO2012089014A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143384B (zh) * | 2010-12-31 | 2013-01-16 | 华为技术有限公司 | 一种媒体文件生成方法、装置及*** |
CN102843351B (zh) * | 2012-03-31 | 2016-01-27 | 华为技术有限公司 | 一种流媒体业务的处理方法、流媒体服务器及*** |
CN102769787B (zh) * | 2012-08-02 | 2018-10-19 | 中兴通讯股份有限公司 | 手机终端频道的时移方法及频道时移设备 |
US9549000B2 (en) * | 2013-03-15 | 2017-01-17 | Arris Enterprises, Inc. | Streaming media from a server delivering individualized content streams to clients |
CN103428213A (zh) * | 2013-08-08 | 2013-12-04 | 深圳市同洲电子股份有限公司 | 一种多媒体文件生成的方法及多媒体设备 |
CN103581711B (zh) * | 2013-10-31 | 2017-01-11 | 广州西维尔计算机***有限公司 | 快进快退播放视频数据的方法及装置 |
CN103702190A (zh) * | 2013-12-12 | 2014-04-02 | 乐视网信息技术(北京)股份有限公司 | 一种智能终端及其控制视频客户端的方法 |
CN105306966B (zh) * | 2014-07-30 | 2018-12-14 | 深圳国微技术有限公司 | 一种直播视频数据处理方法、装置及*** |
CN104284204B (zh) * | 2014-09-25 | 2019-02-15 | 中兴通讯股份有限公司 | 一种频道快速切换方法、***及终端、服务器 |
CN104581229B (zh) | 2015-01-16 | 2018-08-03 | 京东方科技集团股份有限公司 | 一种流媒体数据传输装置、方法和*** |
EP3311577B1 (en) * | 2015-06-16 | 2020-05-27 | Intel IP Corporation | A dynamic adaptive streaming over hypertext transfer protocol (dash) assisting network element (dane) transcoding media content based on a set of metric and status messages received from the dash client and corresponding dash client device |
CN106550263A (zh) * | 2015-09-16 | 2017-03-29 | 深圳市腾讯计算机***有限公司 | 媒体播放方法及装置 |
CN107193841B (zh) * | 2016-03-15 | 2022-07-26 | 北京三星通信技术研究有限公司 | 媒体文件加速播放、传输及存储的方法和装置 |
CN106331824B (zh) * | 2016-08-31 | 2020-02-14 | 杭州当虹科技股份有限公司 | 一种以可变速率播放流媒体视频文件的方法 |
CN106454417B (zh) * | 2016-11-11 | 2019-08-09 | 青岛海信宽带多媒体技术有限公司 | 流媒体倍速播放方法及装置 |
CN110446080B (zh) * | 2019-05-10 | 2022-03-25 | 咪咕文化科技有限公司 | 视频播放方法和装置 |
CN112135173B (zh) * | 2020-10-10 | 2023-03-21 | Vidaa美国公司 | 一种改善流媒体起播码率的方法及显示设备 |
CN112770170A (zh) * | 2020-12-31 | 2021-05-07 | 百视通网络电视技术发展有限责任公司 | 一种ott电视业务中的视频广告投放方法、介质及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018323A (zh) * | 2007-02-08 | 2007-08-15 | 华为技术有限公司 | 一种快进快退播放视频数据的方法和流媒体服务器 |
CN101600092A (zh) * | 2009-06-12 | 2009-12-09 | 中兴通讯股份有限公司 | 网络视频录像的生成和播放方法及*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075949A (zh) * | 2006-05-15 | 2007-11-21 | 中兴通讯股份有限公司 | 一种改变流媒体文件播放速度的方法 |
KR20080020868A (ko) * | 2006-09-01 | 2008-03-06 | 삼성전자주식회사 | 스트리밍 컨텐츠 기록과 재생에 관한 장치 및 방법 |
JP4405523B2 (ja) * | 2007-03-20 | 2010-01-27 | 株式会社東芝 | コンテンツ配信システム、このコンテンツ配信システムで使用されるサーバ装置及び受信装置 |
CN102143384B (zh) * | 2010-12-31 | 2013-01-16 | 华为技术有限公司 | 一种媒体文件生成方法、装置及*** |
-
2010
- 2010-12-31 CN CN201110007856.8A patent/CN102143384B/zh active Active
-
2011
- 2011-12-14 WO PCT/CN2011/083916 patent/WO2012089014A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018323A (zh) * | 2007-02-08 | 2007-08-15 | 华为技术有限公司 | 一种快进快退播放视频数据的方法和流媒体服务器 |
CN101600092A (zh) * | 2009-06-12 | 2009-12-09 | 中兴通讯股份有限公司 | 网络视频录像的生成和播放方法及*** |
Also Published As
Publication number | Publication date |
---|---|
WO2012089014A1 (zh) | 2012-07-05 |
CN102143384A (zh) | 2011-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102143384B (zh) | 一种媒体文件生成方法、装置及*** | |
JP6081541B2 (ja) | データ伝送方法及び装置 | |
US9998775B2 (en) | Enforcement of trick-play disablement in adaptive bit rate video content delivery | |
JP5748765B2 (ja) | メインコンテンツに他のコンテンツを挿入して動作するストリーミング方法及び装置 | |
JP5794998B2 (ja) | 適応的なストリーミング方法及びその装置 | |
US9277252B2 (en) | Method and apparatus for adaptive streaming based on plurality of elements for determining quality of content | |
JP7078697B2 (ja) | トリックプレイ再生の間にオーディオコンテンツを提供するためのシステムおよび方法 | |
CN109328384A (zh) | 用于在特技播放模式中提供可变速度的***和方法 | |
US20120066338A1 (en) | Recording variable-quality content stream | |
CN110073341A (zh) | 用于数字视频流传输的自适应缓冲的***和方法 | |
US20090037948A1 (en) | Multicast television system | |
US20240080518A1 (en) | Insertion of targeted content in real-time streaming media | |
WO2017029990A1 (ja) | 受信装置、送信装置、およびデータ処理方法 | |
JP2004159057A (ja) | 再生情報配信システム及び再生情報配信方法 | |
JP2009060411A (ja) | Vodシステムおよびvodシステムにおけるコンテンツ配信方法 | |
CN107835180A (zh) | 一种视频倍数播放的方法和*** | |
US20230144200A1 (en) | Methods, Devices, and Systems for Publishing Key Pictures | |
CN110324700A (zh) | 应用于显示设备的电路及相关的控制方法 |
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 |