发明内容
本发明的示例性实施方式涉及实时下载播放MP4文件的方法和系统。
根据本发明的实施方式,公开了一种实时传输MP4文件的方法,该方法包括:传输该MP4文件的压缩的头部;以及实时传输该MP4文件除该头部之外的其他部分。
优选地,在该方法中,在传输该MP4文件的该压缩的头部之前,压缩该MP4文件的该头部以生成该压缩的头部。
优选地,在该方法中,该MP4文件包括以下文件中的至少一种:MP4音频文件和MP4视频文件。
根据本发明的实施方式,还公开了一种实时下载播放MP4文件的方法,该方法包括:解压缩该MP4文件的压缩的头部;实时下载该MP4文件除该头部之外的其他部分;以及实时播放该MP4文件。
优选地,在该方法中,在解压缩该MP4文件的该压缩的头部之前,下载该MP4文件的该压缩的头部。
优选地,在该方法中,在传输该MP4文件的该压缩的头部之前,压缩该MP4文件的该头部。
根据本发明的实施方式,还公开了一种实时传输MP4文件的装置,包括第一数据传输装置,配置用于传输该MP4文件的压缩的头部;以及第二数据传输装置,配置用于实时传输该MP4文件的除该头部之外的其他部分。
优选地,在该实时传输MP4文件的装置中,还包括MP4文件头部压缩装置,配置用于压缩该MP4文件的该头部以生成该压缩的头部。
优选地,在该实时传输MP4文件的装置中,还包括请求接收装置,配置用于接收针对实时下载播放该MP4文件的请求。
优选地,在该实时传输MP4文件的装置中,还包括验证装置,配置用于对接收的该请求进行验证以决定是否进行后续操作。
优选地,在该实时传输MP4文件的装置中,该MP4文件包括以下文件中的至少一种:MP4音频文件和MP4视频文件。
根据本发明的实施方式,还公开了一种实时下载播放MP4文件的装置,包括:第一数据接收装置,配置用于接收所述MP4文件的压缩的头部;以及第二数据接收装置,配置用于实时接收用于实时下载播放的该MP4文件的除该头部之外的其他部分;MP4文件头部解压缩装置,配置用于对所接收的该MP4文件的该压缩的头部进行解压缩,以生成该头部;以及播放装置,配置用于实时播放该MP4文件。
优选地,在该实时下载播放MP4文件的装置中,还包括请求发送装置,配置用于发出针对实时下载播放该MP4文件的请求。
优选地,在该实时下载播放MP4文件的装置中,该MP4文件包括以下文件中的至少一种:MP4音频文件和MP4视频文件。
本发明的优点包括:对于移动网络而言,可以节省实时下载播放MP4文件所需的流量;对于固定网络而言,可以加速实时下载播放MP4文件。
具体实施方式
以下参考附图详细描述本发明的各个示例性实施方式。附图中的流程图和框图示出了根据本发明的各种实施方式的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施方式中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
应当理解,给出这些示例性实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
参照图1,其为根据本发明的示例性实施方式的实时下载播放MP4文件的方法100的流程图。
根据本发明的各种示例性实施方式,本说明书中提及的MP4文件包括MP4音频文件和MP4视频文件。
根据图1所示,在步骤S101中,客户端向服务器发出针对实时下载播放MP4文件的请求。
根据本发明的各种示例性实施方式,客户端通过通信网络向服务器发出针对下载播放MP4文件的请求。本说明书中提及的通信网络可以包括各类网络,包括但不限于局域网(“LAN”)、无线局域网(WLAN)、广域网(“WAN”),根据IP协议的网络(例如,因特网)、公共交换电话网(PSTN)、端对端网络(例如,ad hoc对等网络)以及其它无线网络和可以用来互连信息操纵系统的任何其它网络拓扑。
继续参照图1,根据本发明的某些示例性实施方式,在方法100中,还可以包括可选步骤S102。在步骤S102中,服务器对在步骤S101中从客户端接收的请求进行验证,当验证结果为允许实时下载播放该MP4文件时,进入步骤S103,否则方法100的过程结束。
继续参照图1,在步骤S103中,服务器按照在步骤S101中由客户端发送的请求中的指示获取对应的MP4文件,提取该MP4文件的头部,并压缩该头部以生成压缩的头部。在采用适当压缩方式的情况下,可以将MP4文件的头部压缩为原有头部大小的1/3以下。本领域技术人员可以理解,可以按照现有的诸如RAR或者ZIP之类的形式以及将来可能开发的任何压缩方式对MP4文件的头部进行压缩。
继续参照图1,在步骤S104中,服务器通过通信网络向客户端传输客户端所请求的MP4文件的压缩的头部。
根据本发明的各种示例性实施方式,服务器可以采用包括但不限于HTTP和FTP之类的网络传输协议通过通信网络向客户端传输客户端所请求的MP4文件的压缩的头部。
继续参照图1,在步骤S105中,服务器开始通过通信网络向客户端实时传输用于由客户端实时下载播放的该MP4文件的除头部之外的其他部分。
同样,如上所述,服务器可以采用包括但不限于HTTP和FTP之类的网络传输协议通过通信网络向客户端实时传输该MP4文件的除头部之外的其他部分。
继续参照图1,在步骤S106中,客户端对所接收的、由服务器传输的所请求的MP4文件的压缩的头部进行解压缩,以生成所请求的MP4文件的原始头部。本领域技术人员可以理解,在本步骤S106中,采用与步骤S103中所采用的压缩所请求的MP4文件的压缩方式相对应的解压缩方式对所接收的压缩的头部进行解压缩。
继续参照图1,在步骤S107中,客户端解析在步骤S106中通过解压缩而生成的MP4文件的头部,并结合由服务器实时传输的用于由客户端实时下载播放的该MP4文件的除头部之外的其他部分,对该MP4文件进行实时播放。
以上参照图1描述了根据本发明的示例性实施方式的实时下载播放MP4文件的方法。应当理解,尽管按照特定顺序(步骤S101、步骤S102、步骤S103、步骤S104、步骤S105、步骤S106、步骤S107)描述了该方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。例如,在某些实施方式中,步骤S104与步骤S105可以按照任意顺序或者同时执行,可以省略步骤S102,可以将步骤S103与步骤S104合并为一个步骤执行,和/或将步骤S103分解为获取对应的MP4文件的步骤S103a、提取该MP4文件的头部的步骤S103b以及压缩该头部以生成压缩的头部的步骤S103c。
参照图2,其为根据本发明的示例性实施方式的实时下载播放MP4文件的系统10的框图。
根据图2所示,实时下载播放MP4文件的系统10包括服务器110和客户端120。
根据图2所示,服务器110包括MP4文件存储装置111、请求接收装置112、MP4文件头部压缩装置113和数据传输装置114。其中,MP4文件存储装置111配置用于存储MP4文件;请求接收装置112配置用于接收由客户端120向服务器110发出针对实时下载播放MP4文件的请求;MP4文件头部压缩装置113配置用于按照由客户端120发送的请求中的指示从MP4文件存储装置111获取对应的MP4文件,提取该MP4文件的头部,并压缩该头部以生成压缩的头部;数据传输装置114配置用于通过通信网络向客户端120传输客户端所请求的MP4文件的压缩的头部以及实时传输用于由客户端120实时下载播放的该MP4文件的除头部之外的其他部分。
本领域技术人员可以理解,MP4文件存储装置111可以在服务器110中或者服务器110以外,其实现的功能为存储MP4文件,无论其是否位于服务器110中,均不影响本发明的实时下载播放MP4文件的系统10的正常运作。
继续参照图2,根据本发明的某些示例性实施方式,服务器110还可以包括可选的验证装置115,其配置用于对从客户端120接收的请求进行验证,当验证结果为允许实时下载播放该MP4文件时允许MP4文件头部压缩装置113和数据传输装置114进行后续操作,否则禁止MP4文件头部压缩装置113和数据传输装置114进行后续操作。
MP4文件存储装置111、请求接收装置112、MP4文件头部压缩装置113、数据传输装置114和验证装置115的操作方式与以上关于实时下载播放MP4文件的方法所描述的相同,在此不再赘述。
继续参照图2,根据图2所示,客户端120包括请求发送装置121、MP4文件头部解压缩装置122、数据接收装置123和播放装置124。其中,请求发送装置121配置用于向服务器110发出针对实时下载播放MP4文件的请求;MP4文件头部解压缩装置122配置用于对所接收的、由服务器110传输的所请求的MP4文件的压缩的头部进行解压缩,以生成所请求的MP4文件的原始头部;数据接收装置123配置用于通过通信网络从服务器110接收所请求的MP4文件的压缩的头部以及实时接收用于由客户端120实时下载播放的该MP4文件的除头部之外的其他部分;播放装置124配置用于实时播放MP4文件。
请求发送装置121、MP4文件头部解压缩装置122、数据接收装置123和播放装置124的操作方式与以上关于实时下载播放MP4文件的方法所描述的相同,在此不再赘述。
应当注意,本发明的示例性实施方式可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的系统及其模块不仅可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如固件)来实现。
应当注意,尽管在上文的详细描述中提及了系统的若干装置或子装置,但是这种划分仅仅是示例性而非强制性的。实际上,根据本发明的示例性实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化,例如可以将请求发送装置121和MP4文件头部解压缩装置122等结合为一个处理装置125以实现相同的功能。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化,例如可以将MP4文件头部压缩装置113划分为用于按照由客户端120发送的请求中的指示从MP4文件存储装置111获取对应的MP4文件的MP4文件获取装置113a,用于提取该MP4文件的头部的MP4文件头部提取单元113b和用于压缩该头部以生成压缩的头部的压缩装置113c。同样,例如可以将数据传输装置114划分为配置用于通过通信网络向客户端120传输客户端所请求的MP4文件的压缩的头部的第一数据传输装置114a以及配置用于实时传输用于由客户端120实时下载播放的该MP4文件的除头部之外的其他部分的第二数据传输装置114b。再次,例如可以将数据接收装置123划分为配置用于接收所请求的MP4文件的压缩的头部的第一数据接收装置123a以及配置用于实时接收用于由客户端120实时下载播放的该MP4文件的除头部之外的其他部分的第二数据接收装置123b。
下面参考图3,其示出了适于用来实践本发明实施方式的移动终端300的更为详细的示意性框图。
根据本发明的示意性实施方式,移动终端300通常可以作为客户端120使用。但是,应当理解,本发明并不排除将移动终端300作为服务器110使用的情况
在图3所示的示例中,移动终端300是一个具有无线通信能力的移动设备。然而,可以理解,这仅仅是示例性而非限制性的。其他类型的移动终端也可以容易地采用本发明的实施方式,诸如便携式数字助理(PDA)、寻呼机、移动计算机、移动电视、游戏设备、膝上型计算机、照相机、录像机、GPS设备以及其他类型的语音和文本通信系统。固定式移动终端同样可以容易地使用本发明的实施方式。
移动终端300包括一个或多个天线312,其可操作地与发射机314和接收机316进行通信。移动终端300还包括处理器312或者其他处理元件,其分别提供去往发射机314的信号和接收来自接收机316的信号。信号包括按照适当蜂窝系统的空中接口标准的信令信息,并且还包括用户语音、接收的数据和/或用户生成的数据。在此方面,移动终端300能够利用一个或多个空中接口标准、通信协议、调制类型以及接入类型来进行操作。作为示范,移动终端300能够根据多个第一代、第二代、第三代和/或第四代通信协议等中的任何协议来进行操作。例如,移动终端300可以能够按照第二代(G)无线通信协议IS-136(TDMA)、GSM和IS-95(CDMA)来进行操作,或者按照诸如UMTS、CDMA2000、WCDMA和TD-SCDMA的第三代(G)无线通信协议来进行操作,或者按照第四代(4G)无线通信协议和/或类似协议进行操作。
可以理解,处理器312包括实现移动终端300的功能所需的电路。例如,处理器312可以包括数字信号处理器设备、微处理器设备、各种模数转换器、数模转换器和其他支持电路。移动终端300的控制和信号处理功能按照这些设备各自的能力在其间分配。处理器312由此还可以包括在调制和传输之前对消息和数据进行卷积编码和交织的功能。处理器312还可以另外包括内部语音编码器,并且可以包括内部数据调制解调器。此外,处理器312可以包括对可以存储在存储器中的一个或多个软件程序进行操作的功能。例如,处理器312可以能够操作连接程序,诸如传统的Web浏览器。连接程序继而可以允许移动终端300例如按照无线应用协议(WAP)、超文本传输协议(HTTP)等来发射和接收Web内容(诸如基于位置的内容和/或其他web页面内容)。
移动终端300还可以包括用户接口,其例如可以包括耳机或者扬声器324、振铃器322、麦克风326、显示屏328以及输入接口331,所有这些设备都耦合至处理器312。移动终端300可以包括小键盘330。小键盘330可以包括传统的数字键(0-9)和相关键(#、*),以及用于操作移动终端300的其他键。备选地,小键盘330可以包括传统的QWERTY小键盘布置。小键盘330还可以包括与功能相关联的各种软键。移动终端300还可以包括相机模块336,用于捕获静态和/或动态图像。
特别地,显示屏328可以包括触摸式屏幕和/或邻近式屏幕,用户可以通过直接操作屏幕而操作移动终端300。此时,显示屏328同时充当输入设备和输出设备二者。在这样的实施方式中,输入接口331可以配置用于接收用户通过例如普通的笔、专用触笔和/或手指在显示屏328上提供的输入,包括指点输入和手势输入。处理器312可配置用于检测此类输入,并且识别出用户的手势。
此外,移动终端300可以包括诸如操纵杆的接口设备或者其他用于输入接口。移动终端300还包括电池334,诸如振动电池组,用于为操作移动终端300所需的各种电路供电,以及可选地提供机械振动作为可检测输出。
移动终端300可以进一步包括用户标识模块(UIM)338。UIM 338通常是具有内置处理器的存储器设备。UIM 338例如可以包括订户标识模块(SIM)、通用集成电路卡(UICC)、通用订户标识模块(USIM)、可移动用户标识模块(R-UIM)等。UIM 338通常存储与移动订户相关的信元。
移动终端300还可以具有存储器。例如,移动终端300可以包括易失性存储器340,例如包括用于数据临时存储的高速缓存区域的易失性随机存取存储器(RAM)。移动终端300还可以包括其他非易失性存储器342,其可以是嵌入式的和/或可移动的。非易失性存储器342可以附加地或者可选地包括例如EEPROM和闪存等。存储器可以存储移动终端300所使用的多个信息片段和数据中的任意项,以实现移动终端300的功能。例如,存储器340和342可以配置用于存储用于实现上文结合图1描述的实时下载播放MP4文件的方法的计算机程序指令。
应当理解,图3所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
下面参考图4,其示出了适于用来实践本发明实施方式的计算机系统400的示意性框图。如图4所示,计算机系统400可以包括:CPU(中央处理单元)401、RAM(随机存取存储器)402、ROM(只读存储器)403、系统总线404、硬盘控制器405、键盘控制器406、串行接口控制器407、并行接口控制器408、显示控制器409、硬盘410、键盘411、串行外部设备412、并行外部设备413和显示器414。在这些设备中,与系统总线404耦合的有CPU 401、RAM 402、ROM403、硬盘控制器405、键盘控制器406、串行控制器407、并行控制器408和显示控制器409。硬盘410与硬盘控制器405耦合,键盘411与键盘控制器406耦合,串行外部设备412与串行接口控制器407耦合,并行外部设备413与并行接口控制器408耦合,以及显示器414与显示控制器409耦合。应当理解,图4所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
虽然已经参考若干具体实施方式描述了本发明,但是应该理解,本发明并不限于所公开的具体实施方式。本发明旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。