一种多媒体文件的生成、播放方法和系统的制作方法

文档序号:7745594阅读:106来源:国知局
专利名称:一种多媒体文件的生成、播放方法和系统的制作方法
技术领域
本发明涉及多媒体技术领域,具体涉及一种多媒体文件的生成、播放方法和系统。
背景技术
当前电影拍摄会因为上映地区文化的不同而拍摄不同的结局或者对其进行裁剪, 于是网上就存在该电影的不同版本,例如A结局版,B结局版,完整版、裁剪版、加长版之类的。如果观众要观看一部电影的不同版本,就必须下载多个媒体文件或者在网上点播多个版本的链接进行观看。无法做到只下载一个或者只点击一个链接就能观看到不同版本。而视频资源提供商也存在同样的问题,同一部电影因为版本不同需要存储多个媒体文件。导致磁盘空间的浪费和运营成本的上升。同样,一集电视剧或一集动画片会存在片头和片尾或者广告,而对一部分用户来讲,他们并不关心电视剧的片头和片尾或广告,而只关注剧情。而在网络点播的时候,造成用户等待时间的加长和网络流量的浪费。现有技术中,为解决该问题,采用的是将剪辑好的,即去掉片头片尾的片源放在网上供人点播,该方法存在如下缺点,即要么片源出现冗余,有片头片尾的片源保存一份,无片头片尾的保存一份,要么不能实现定制播放,即如果只保存去掉片头片尾的片源供人点播,那么所有的用户都将看不到片头片尾。有的影视作品中,存在着很多的相同片段或画面,目前这些相同的片段或画面就冗余地存在于影视作品中,增大了影视作品的存储空间。以上种种情况,都是通过多媒体文件的冗余来解决问题的。造成以上种种问题的一个最重要的原因是目前多媒体文件播放时都是顺序取帧进行解码播放的,多媒体文件播放时顺序取帧大大限制了多媒体文件的展示。本发明提供一种根据播放拐点跳动取帧的方法。所谓播放拐点即描述从播放路径的一个点跳动到另一个点。

发明内容
本发明的目的是提供一种多媒体文件的生成、播放方法和系统,多媒体文件播放时可以跳动取帧。为实现上述目的,本发明采用了以下技术方案一种多媒体文件的生成方法,包括步骤在多媒体文件的预设跳帧点设置播放拐点,生成播放时可以跳动取帧的多媒体文件;选择播放拐点,按照播放拐点对所述多媒体文件进行跳帧播放。优选的,在多媒体文件的预设跳帧点设置播放拐点具体实现为在预设跳帧点设置文件分支原子,所述文件分支原子描述该媒体文件能够提供的播放路径以及该播放路径下的播放路径拐点。优选的,所述文件分支原子包括若干切换轨道原子,所述切换轨道原子描述一个播放路径的描述信息、拐点数量以及该播放路径上的拐点描述信息。
3
一种播放多媒体文件的方法,包括步骤获取多媒体文件能够提供的多种播放路径信息;将多媒体文件能够提供的多种播放路径信息展现给用户,由用户选择观播放路径;按照用户选择的播放路径播放多媒体文件。优选的,播放路径信息包括播放拐点,所述按照用户选择的播放路径播放多媒体文件包括步骤判断用户选择的播放路径下是否存在当前播放路径的拐点,如果是,则读取拐点跳转后的数据;如果不是,则读取当前拐点的媒体数据。优选的,所述的方法还包括如果用户不选择播放路径,则默认播放第一个播放路径。一种多媒体文件播放系统,包括读取模块和交互模块,其中读取模块,读取多媒体文件前,获取该多媒体文件能够提供的播放路径信息,如果该多媒体文件提供了多种播放路径,则读取模块将这些信息传送给交互模块,以及根据交互模块返回的用户选择的观看路径读取该多媒体文件。交互模块,与读取模块连接,用于将播放路径的信息展现给用户,由用户选择观看播放路径,然后将用户选择的播放路径发送给读取模块。优选的,读取模块判断用户选择的播放路径下是否存在当前播放路径拐点,如果存在则进一步判断当前播放路径拐点的源点是否是当前点,如果是,则读取模块放弃读取当前点的媒体数据,转而读取当前播放拐点的目的点的媒体数据。优选的,所述读取模块还用于判断媒体数据是否读完,如果读完,则退出。优选的,如果该多媒体文件没有提供非顺序播放的路径信息,则读取模块按序取帧播放该多媒体文件。优选的,如果用户不选择播放路径,则读取模块默认播放第一个播放路径。与现有技术相比,本发明将原来的媒体文件播放时只能顺序读取媒体数据帧,改进成媒体文件播放时可以跳动取帧的多媒体文件,多媒体文件播放时可以跳动取帧,同时可以以较小的存储空间达到存储单个或多个版本。


图1为本发明实施例提供的一种多媒体文件的生成方法流程图;图2为本发明实施例提供的一种多媒体文件格式的整体结构示意图;图3为图2中扩展部分b的结构示意图;图4为本发明实施例提供的一种单一多媒体文件多结局的示意图;图5为本发明实施例提供的一种单一多媒体文件支持裁剪播放的示意图;图6为本发明实施例提供的一种支持冗余数据减少的示意图;图7为本发明实施例提供的一种播放多媒体文件的方法流程图;图8为本发明实施例提供的一种播放多媒体文件的系统框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。本发明的核心思想是将原来的媒体文件播放时只能顺序读取媒体数据帧,改进成媒体文件播放时可以跳动取帧的多媒体文件,播放时可以从一个轨道的一个点跳动到另一个点,或者从一个轨道的一个点跳动到另一个轨道的一个点,同时减少了多媒体文件的存储空间。请参阅图1所示,图1为实施例提供的一种多媒体文件的生成方法,包括步骤SlOl 在多媒体文件的预设跳帧点设置播放拐点,生成播放时可以跳动取帧的多媒体文件;S102 选择播放拐点,按照播放拐点对所述多媒体文件进行跳帧播放。请参阅图2和图3所示,步骤S101,本实施例通过在IS0/IEC 14496-12定义的媒体基础格式上进行扩展而成一种私有格式来实现多媒体文件在播放时跳动获取媒体数据帧,该私有格式和目前的标准格式相兼容。本发明提供的私有媒体文件格式是在标准媒体文件格式上扩展了两个原子类型。所述MCF文件包含以下两个部分a部分为IS0/IEC 14496-12定义的文件格式,该部分随着标准格式的更新而更新。b部分为本发明在标准格式上的扩展,如图3所述,文件分支原子(fbrn,file branch box)描述该媒体文件能够提供的播放路径以及该播放路径下的播放路径拐点。所述fbrn包括切换轨道原子(fbst, switch track box)。fbst描述一个播放路径的描述信息、拐点数量以及该播放路径上的拐点描述信息。请参阅图4所示,图4为本实施例提供的一种单一媒体文件可以支持多结局播放的结构示意图。现有技术下,电影存在两个结局(即B结局和C结局),即图4(a)中的A+B, 和图4(b)中的A+C。在两个媒体文件中,占很大比例的数据A是相同的,只有占很小比例的结尾部分B和C不同。基于两个结局,该电影就必须存在两个媒体文件对应这两个结局。 两个媒体文件表示一部电影的两个结局明显存在空间浪费。图4(c)为本实施例提供的一种单媒体文件可以播放多个不同电影结局结构示意图。打开B结局的电影对应的媒体文件,将其他结局的新情节的媒体数据存入该多媒体文件,记录下新情节媒体数据的起始点和结束点,获取多媒体新、旧情节在多媒体文件中不同段的起始点和结束点,根据不同段的起始点、新情节媒体数据的起始点生成新情节的播放拐点,根据新情节媒体数据的结束点,不同段的结束点生成新情节回到原播放路径的拐点。具体的,在图4(c)中,在该多媒体文件的mdat原子(media data box)中加入C 结局的数据。然后添加fbrn,该原子包含两个fbst,第一个fbst描述的是B结局,它的播放路径描述为“B结局版”,播放拐点为零,即从A —直播放到B结束。第二个fbst描述的是C结局。它的播放路径描述为“C结局版”。播放拐点为一个,即从A的结束点直接跳到C 的开始点,播放C结局的内容。添加原子之后,重新生成一个媒体文件。可以看出,该种多媒体文件比现有多媒体文件相比,大大节约了资源占用空间。请参阅图5所示,图5为本实施例提供的一种单一媒体文件可以支持裁剪播放的示意图。现有技术下,电影存在多个版本,即完整版,裁剪版。而相对应存在两个媒体文件。 媒体文件格式如图5(a)、图5(b)所述。而这两个媒体文件中大部分数据是一样的。故存在明显的空间的浪费。
本实施例,打开完整版对应的媒体文件,在该媒体文件中添加一个fbrn,该原子包含两个fbst,第一个fbst描述的是完整版,它的播放路径描述为“完整版”,播放拐点为零, 即从A—直播放到C结束。第二个fbst描述的是裁剪版。它的播放路径描述为“裁剪版”。 播放拐点为一个,即从A的结束点直接跳到C的开始点,跳过B。添加原子之后,重新生成一个媒体文件,生成后的多媒体文件结构如图5(c)所示。请参阅图6所示,图6为本实施例提供的一种单一媒体文件可以支持冗余数据减少的示意图,本实施例中,存在冗余数据的媒体文件可以去掉冗余数据,达到减小存储空间的目的。如图6(a)所述,媒体文件中媒体数据部分中存在两个B数据块,本实施例中,只保留一份B数据块。打开多媒体文件,记录下冗余数据的起始点和结束点,生成一个播放路径拐点,从冗余数据的起始点跳到保留冗余数据的起始点,再生成一个播放路径拐点,从保留冗余数据的结束点跳到待删除冗余数据的结束点。如图6(a)所述,,保留第一个数据块B, 然后增加一个fbrn,该原子下包含一个fbst。该fbst下包含2个播放路径拐点。第一个播放路径拐点是从数据块D的开始点跳转到数据块B的开始点,第二个拐点是从数据块B 的结束点跳转到数据块D的结束点。删除数据块D,生成新的多媒体文件,格式如图6(b)所
7J\ ο如图7所示,图7为本实施例提供的一种播放多媒体文件的方法流程图,包括步骤用户播放本地播放或远程点播该媒体文件。S701 读取模块读取多媒体文件。S702:判断媒体文件是否存在多种播放路径信息,具体的,本实施例中,判断该多媒体文件中是否存在fbrn,如果不存在fbrn,则后续流程与目前的按序取帧播放媒体文件流程一致,跳转到S704。如果存在fbrn,则跳转到S703。S703 遍历fbrn下的fbst,获取该媒体文件所有的播放路径的描述信息,转到 S705。S704 按顺序取帧播放媒体文件。S705 将多种播放路径信息呈现给用户,供用户选择观看哪一播放路径。S706 用户选择要观看的播放路径。如果用户不进行选择,则默认播放第一个影片播放路径。S707 ;读取模块读取媒体数据之前首先判断数据是否已经读完。如果媒体数据已经被读完。则跳到S711,否则转到步骤S708。S708:读取模块在读取当前点的媒体数据之前,先要判断当前播放路径拐点的源点是否当前点,如果是,则跳到S709,否则跳到S710。S709 读取模块读取拐点跳转后的数据,跳转到S707。S710 ;读取模块读取当前数据,跳转到S707。S711 读取结束。上述实施例,单一多媒体文件可以有多个播放路径,用户在观看影视作品的时候可以选择观看的分支,免去用户必须下载多个媒体文件或者点击多个链接的麻烦,从而提高用户体验。视频资源运营商可以减少存储片源,从而节约运营成本。对于有冗余数据的影片来讲,还可以起到节约存储空间的作用。
6
如图8所示,图8为本实施例提供的一种播放多媒体文件的系统框图,系统包括读取模块801和交互模块802,读取模块801读取多媒体文件时,先判断媒体文件是否存在播放路径信息,具体的,本实施例中,判断该多媒体文件中是否存在fbrn,如果不存在fbrn, 则读取模块801按顺序取帧播放媒体文件,流程与目前的按序取帧播放媒体文件一样。如果存在fbrn,则遍历fbrn下的fbst,获取该媒体文件所有的播放路径的描述信息,并将这些信息提供给交互模块802,交互模块802将播放路径信息呈现给用户,供用户选择观看哪一播放路径。用户选择要观看的播放路径。如果用户不进行选择,则默认播放第一个影片播放路径。交互模块802将用户选择的播放路径传递给读取模块801。读取模块801读取媒体数据之前首先判断数据是否已经读完,如果媒体数据已经被读完,则读取结束;如果没有读取完,则读取模块801在读取当前点的媒体数据之前,先要判断当前播放路径拐点的源点是否当前点,如果是,则读取模块801读取拐点跳转后的数据,否则读取模块801读取当前数据。本发明将原来的媒体文件播放时只能顺序读取媒体数据帧,改进成媒体文件播放时可以跳动取帧的多媒体文件,多媒体文件播放时可以跳动取帧,从一个轨道的一个点跳动到另一个点,或者从一个轨道的一个点跳动到另一个轨道的一个点,同时可以以较小的存储空间达到存储单个或多个版本。用户在观看媒体文件的时候可以选择观看的分支,可以免去用户必须下载多个媒体文件或者点击多个链接的麻烦,从而提高用户体验。以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。应当指出,本地播放或者网上点播多媒体文件进行多分支播放都在本发明保护范围之内。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
权利要求
1.一种多媒体文件的生成方法,其特征在于,包括步骤在多媒体文件的预设跳帧点设置播放拐点,生成播放时可以跳动取帧的多媒体文件;选择播放拐点,按照播放拐点对所述多媒体文件进行跳帧播放。
2.根据权利要求1所述的方法,其特征在于,在多媒体文件的预设跳帧点设置播放拐点具体实现为在预设跳帧点设置文件分支原子,所述文件分支原子描述该媒体文件能够提供的播放路径以及该播放路径下的播放路径拐点。
3.根据权利要求2所述的方法,其特征在于,所述文件分支原子包括若干切换轨道原子,所述切换轨道原子描述一个播放路径的描述信息、拐点数量以及该播放路径上的拐点描述信息。
4.一种播放多媒体文件的方法,其特征在于,包括步骤获取多媒体文件能够提供的多种播放路径信息;将多媒体文件能够提供的多种播放路径信息展现给用户,由用户选择观播放路径;按照用户选择的播放路径播放多媒体文件。
5.根据权利要求4所述的方法,其特征在于,播放路径信息包括播放拐点,所述按照用户选择的播放路径播放多媒体文件包括步骤判断用户选择的播放路径下是否存在当前播放路径的拐点,如果是,则读取拐点跳转后的数据;如果不是,则读取当前拐点的媒体数据。
6.根据权利要求5所述的方法,其特征在于,还包括如果用户不选择播放路径,则默认播放第一个播放路径。
7.一种多媒体文件播放系统,其特征在于,包括读取模块和交互模块,其中读取模块,读取多媒体文件前,获取该多媒体文件能够提供的播放路径信息,如果该多媒体文件提供了多种播放路径,则读取模块将这些信息传送给交互模块,以及根据交互模块返回的用户选择的观看路径读取该多媒体文件。交互模块,与读取模块连接,用于将播放路径的信息展现给用户,由用户选择观看播放路径,然后将用户选择的播放路径发送给读取模块。
8.根据权利要求7所述的系统,其特征在于,读取模块判断用户选择的播放路径下是否存在当前播放路径拐点,如果存在则进一步判断当前播放路径拐点的源点是否是当前点,如果是,则读取模块放弃读取当前点的媒体数据,转而读取当前播放拐点的目的点的媒体数据。
9.根据权利要求7所述的系统,其特征在于,所述读取模块还用于判断媒体数据是否读完,如果读完,则退出。
10.根据权利要求7所述的系统,其特征在于,如果该多媒体文件没有提供非顺序播放的路径信息,则读取模块按序取帧播放该多媒体文件。
11.根据权利要求7-10中任一项所述的系统,其特征在于,如果用户不选择播放路径, 则读取模块默认播放第一个播放路径。
全文摘要
本发明公开了一种多媒体文件的生成、播放方法和系统,其中生成方法包括步骤在多媒体文件的预设跳帧点设置播放拐点,生成播放时可以跳动取帧的多媒体文件;选择播放拐点,按照播放拐点对所述多媒体文件进行跳帧播放。播放多媒体文件的方法包括步骤获取多媒体文件能够提供的多种播放路径信息,将多媒体文件能够提供的多种播放路径信息展现给用户,由用户选择观播放路径;按照用户选择的播放路径播放多媒体文件。本发明实施例将在多媒体文件的预设跳帧点设置播放拐点,生成播放时可以跳动取帧的多媒体文件,同时减少了多媒体文件的存储空间。
文档编号H04N7/26GK102215366SQ20101014260
公开日2011年10月12日 申请日期2010年4月2日 优先权日2010年4月2日
发明者孙健, 李加周, 赵宇, 阮亚平 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1