CN105528346B - 提供媒体内容信息的方法及装置 - Google Patents

提供媒体内容信息的方法及装置 Download PDF

Info

Publication number
CN105528346B
CN105528346B CN201410510540.4A CN201410510540A CN105528346B CN 105528346 B CN105528346 B CN 105528346B CN 201410510540 A CN201410510540 A CN 201410510540A CN 105528346 B CN105528346 B CN 105528346B
Authority
CN
China
Prior art keywords
cluster
media
media content
file
identification information
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
CN201410510540.4A
Other languages
English (en)
Other versions
CN105528346A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410510540.4A priority Critical patent/CN105528346B/zh
Publication of CN105528346A publication Critical patent/CN105528346A/zh
Priority to HK16110288.2A priority patent/HK1222238A1/zh
Application granted granted Critical
Publication of CN105528346B publication Critical patent/CN105528346B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请公开了提供媒体内容信息的方法及装置,所述方法应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,所述方法包括:根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;确定在所述采样时间点正在被读取的媒体内容被播放的时间;接收到终端设备发送的信息获取请求时,根据所述采用时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息;将所述目标标识信息返回。通过本申请,使得用户更加方便的获得与大屏幕设备播放的内容相关的信息。

Description

提供媒体内容信息的方法及装置
技术领域
本申请涉及媒体信息处理技术领域,特别是涉及提供媒体内容信息的方法及装置。
背景技术
在当今的信息化时代,人们获取信息的途径也日渐丰富。例如,在商场、品牌店、地铁、飞机场等公共场所内,大屏幕播放设备比比皆是,其中往往承载着大量的多媒体内容。然而,用户在上述公共场所内看到大屏幕上播放的媒体内容时,往往又具有获取更多与正在播放的媒体内容关联的内容的需求。
例如,当消费者在地铁站上看到其大屏幕上正播放关于某商品的视频,并且对该商品比较感兴趣,希望获取关于该商品更丰富的信息。此时,该消费者一般只能用其手机等便携设备登陆网络,利用关键字搜索相关的商品,并从纷繁复杂的信息中找到真正关切的商品信息。在这个过程中,可能会发生从广告到最终的消费行为之间的转化,但是由于路径比较长,转化率会有所损失;并且,对于用户而言,操作的过程也比较繁琐,对于网络系统而言,也意味着大量网络资源的浪费。
为了解决上述问题,现有技术中常用的方式是,在大屏幕播放的图像画面中插入二维码,消费者可以利用便携终端中安装的App对二维码进行扫码,以获取与当前播放的内容相关联的信息。
这种方式能够便于用户进行信息的获取,但是,该方式至少存在以下缺陷:在画面中植入二微码图片,会影响画面的完整性,影响美观和视频效果。并且,扫描二维码需要时间较长,存在风险,例如扫描未结束二维码页面已经消失,等等。再者,由于扫描需要对准二维码区,因此,很难保证多人同时扫码的效果。而且在公众大屏幕上,屏幕距离用户行动区域的位置一般比较远,用户难以有效获取二维码信息。
总之,如何使得用户更加方便的获得与大屏幕设备播放的内容关联的内容,成为迫切需要本领域技术人员解决的技术问题。
发明内容
本申请提供了提供媒体内容信息的方法及装置。
本申请提供了如下方案:
一种提供媒体内容信息的方法,所述方法应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放,所述方法包括:
在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
通过所述无线通讯模块接收到终端设备发送的信息获取请求时,根据所述采用时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
通过所述无线通讯模块将所述目标标识信息返回。
一种提供媒体内容信息的装置,所述装置应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放,所述装置包括:
读取信息确定单元,用于在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
播放时间确定单元,用于根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
目标标识信息确定单元,用于通过所述无线通讯模块接收到终端设备发送的信息获取请求时,根据所述采用时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
目标标识信息返回单元,用于通过所述无线通讯模块将所述目标标识信息返回。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
通过本申请实施例,由于存储设备中保存的媒体文件在预置位置附着了其关联内容的标识信息,存储设备可以根据存储设备数据区的被读取情况,确定当前正在播放的媒体内容对应的关联内容的目标标识信息,进而就可以利用该标识信息与用户的终端设备进行多屏互动,可以使得用户更加方便的获得与大屏幕设备播放的内容相关的信息。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的方法的流程图;
图2是本申请实施例提供的装置的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中,为了便于用户针对地铁、机场等大屏幕上播放的媒体内容获取到更多的相关内容,可以采用“多屏互动”的形式来实现。其中,所谓的多屏互动,是指在通过大尺寸屏幕设备观看某节目时,能够同时通过其他的便携设备与大屏幕内容进行互动交流,这种便携设备可以包括平板电脑或智能手机等。例如,电视等大屏幕上播放的节目、电影、音乐或者视频游戏等在便携设备上也会有同步的相关内容显示。
现有技术中,这种多屏互动一般是通过在线(一般基于局域网)的方式实现的。例如,用户可以将家中的智能电视与自己的智能手机通过WiFi的方式接入同一局域网,这样,智能电视与智能手机之间可以基于局域网内异构设备之间分享多媒体数据的通信协议进行数据的相互传输,以此实现智能电视与智能手机之间的多屏互动。其中,具体的通信协议可以包括DLNA(Digital Living Network Alliance,数字生活网络联盟)、airplay等。
但是,由于前述的地铁站、飞机场等处安装的大屏幕播放设备大多是离线状态,并未接入局域网,播放的媒体内容大多是保存在设备本地(例如,通过U盘等方式传输到播放设备中),因此,在这种情况下,无法基于局域网实现与智能手机等便携终端设备的多屏互动。可见,具体如何针对离线设备实现与其他便携终端之间的多屏互动,是需要解决的问题。而本申请实施例就是针对该问题给出了具体的解决方案。下面进行详细介绍。
首先需要说明的是,从设备配置上,离线媒体播放主要有两种常见实现方式:(1)自带播放器的显示设备加存储介质,例如U盘、SD卡等;(2)显示设备加独立播放装置,这种独立播放装置可以包括影(电视)棒、媒体盒子、PC等。本申请实施例主要针对第一种实现方式进行升级改造,使得离线媒体播放设备能够与用户的终端设备之间进行多屏互动。
也就是说,在本申请实施例中,媒体内容的播放设备与存储设备共同组成“大屏幕设备”。当播放设备需要播放媒体内容时,需要从存储设备中读取具体的媒体内容,然后再进行播放。
由于在大屏幕设备与用户终端设备进行互动时,用户终端设备需要获取的信息,往往是与大屏幕设备中正在播放的媒体内容相关联的一些内容,例如,假设大屏幕设备中当前正在播放关于某商品的广告,则此时,用户需要获知的可能是关于该商品的具体介绍、收藏信息、购买信息,等等。为此,在进行多屏互动时,“大屏幕设备”可以向用户的终端设备发送与当前正在播放的媒体内容关联的内容的标识信息。用户终端设备可以根据这种标识信息确定出关联内容的网络地址等信息,并通过访问该网络地址,获取到具体的关联内容。
本申请实施例在具体实现时,在媒体文件准备方面以及大屏幕、用户终端设备的软硬件支持方面,都进行相应的改进。
其中,在媒体文件准备方面,可以直接将媒体内容关联的内容的标识信息添加到媒体文件中,例如,为了避免影响媒体文件的正常播放,可以将这种标识信息添加到媒体文件的尾部。或者,一般的媒体文件中,会有一些描述信息在文件的头部,用于描述文件的类型、大小等。并且,有些文件的头部可能会预留一些字段,此时,也可以将前述关联内容的标识信息添加到头部的这些字段中,等等。总之,每个媒体文件的数据中都携带有媒体内容的关联内容的标识信息,以用于进行与用户终端设备之间的多屏互动,这些标识信息一般位于文件的头部或者尾部等固定的位置处。
具体的,关联内容的标识信息可以有多种表达方式。例如,可以是关联内容的名称信息(例如广告的名称等),将这种信息提供给用户客户端之后,用户客户端可以启动预置的搜索引擎对该名称进行搜索,获取关联内容的详细内容;或者,也可以是关联内容的网络地址(例如,URL等),将该信息提供给用户客户端之后,用户客户端可以通过访问该URL,直接获取到关联内容的详细内容,更加方便。当然,在实际应用中,有些通讯协议对报文内容的大小是有一定限制的,例如,有的可能要求不超过31个字节,再去掉一些开销,能够用于传输数据的字节数目非常有限,通常只有二十几个字节。然而,关联内容的URL则往往会比较长,尤其是一些电子商务平台中关于某商品对象的详情页面的URL,一般是无法用几十个字节就能够表达的。在这种情况下,可以将URL进行分片,并添加一定的起始结束标识,通过多个报文的方式来发送给终端设备。但是,在这种方式下,分片等操作同样会造成时间上的延误,并且在多个终端设备请求并发的情况下,可能会造成拥塞出错等情况。
为此,在优选的实现方式下,还可以通过预先为媒体内容分配的ID信息来表达关联内容的标识信息。也就是说,可以预先为媒体内容分配ID,并作为关联内容的标识信息存入媒体文件数据,此时,存储设备向用户终端设备传输的就是这种ID信息。由于ID信息的长度是可以控制的,例如可以控制在8字节到16字节之间,这样,可以通过同一个报文传输给终端设备,而不用再进行分片操作,有利于进一步提高获取信息的效果。当然,由于终端设备获得的只是一个ID,该ID可能是毫无意义的,无法直接利用该ID获取到关联内容。因此,在这种情况下,还可以通过服务器的配合,帮助终端设备获得关联内容。具体的,可以在服务器保存一份配置文件,该配置文件中记录有ID与关联内容的网络地址之间的关联关系,这样,在终端设备获取到媒体内容的ID之后,就可以向服务器发送请求,服务器可以返回与该ID关联的关联内容的网络地址,这样,终端设备就可以利用该网络地址,获取到关联内容的详细内容了。
上述在存储设备与用户终端设备之间通过传输ID进行互动的方式,另一个好处在于:由于存储设备与用户终端设备中之间采用低功耗蓝牙协议进行互动,而一些通信协议中,交互双方并没有互相进行配对的过程,因此,存储设备与用户终端设备之间交互的信息可能会存在被篡改的风险。这样,如果直接在两者之间传输媒体内容关联内容的网络地址,则可能会被黑客篡改为其他信息的网络地址,这样就会将用户引导至篡改后的网址,达到为该网址带来流量等目的;但是,如果双方之间传输的是ID,则黑客就无法通过篡改ID的方式来达到上述目的,这样可以保证多屏互动过程中信息的安全性。
在硬件支持方面,为了能够实现与用户终端设备在离线状态下的多屏互动,可以基于蓝牙等无线通信技术来实现。考虑到配对操作、功耗等原因,在优选的实施例中,可以是基于低功耗蓝牙(BLE4.0)技术来实现。这样,由于BLE4.0支持广播,并且数据传输双方之间不需要进行配对等操作,因此,更适合在地铁站、飞机场等人员密集的场所使用。
其中,对于用户终端设备而言,由于目前已有越来越多的终端设备配置有低功耗无线通讯装置,例如,iPhone4S及其以上的版本,以及操作系统为Android 4.3及其以上版本的终端设备,一般都配备有低功耗蓝牙,因此,用户终端设备侧一般不需要做特殊的硬件方面的改进。但是,对于大屏幕播放设备而言,现有技术的产品中一般并未配备低功耗无线通讯装置,因此,需要对其硬件方面进行改进。具体的,由于播放设备属于整个大屏幕设备的主机部分,其承担了绝大部分的任务,如果对播放设备进行改进,则工作量会比较大。为了避免对播放设备的硬件做大的改动,也为了避免对已经安装使用的大屏幕设备进行更换导致的成本激增,在本申请实施例中,可以通过对外接的存储设备进行硬件改造来实现。也即,可以在外接的存储设备上配备低功耗蓝牙等无线通讯模块,并向外发送蓝牙等无线信号。另外,存储设备还需要确定播放设备中正在播放的是哪个具体的媒体内容,并进一步确定出与该媒体内容关联的内容的标识信息,之后还需要通过无线通讯装置发送给用户的终端,从而大屏幕设备与用户的终端之间的多屏互动。为此,还可在存储设备中预设微处理器,该微处理器中可以运行相关程序,从而可以通过软件程序的方式,实现上述获取标识信息等操作。
因此,在软件层面上,主要需要在存储设备侧提供实现上述功能的程序。如前文所述,存储设备具体如何实现与其他终端设备的多屏互动,是重点需要解决的技术问题。下面对此进行详细介绍。
实施例一
参见图1,本申请实施例一首先提供了一种提供媒体内容信息的方法,该方法应用于存储设备中,如前文所述,存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的关联内容的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放。具体的,该方法可以包括以下步骤:
S101:在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
一般情况下,存储设备包括多个簇,媒体文件的包括多个数据单元,每个数据单元按照在媒体文件中的先后顺序进行编号,并保存到存储设备数据区的多个簇中,其中,媒体内容对应的标识信息记录在预置序号的数据单元中。
对于存储设备侧,在一个媒体文件被读取时,由于被读取的数据存储在该存储设备上,因此,存储设备可以感知到当前被读取数据单元所在的第一目标簇标识。也就是说,在某簇中的数据单元被读取时,存储设备侧可以首先获知该簇的标识。
由于播放设备一般会预先读取缓存接下去要播放的内容,有时候可达几十兆内容之多,因此,可能出现的情况是,在片段1还没有结束播放的时候片段2就已经被读取。可见,如果仅依靠检测片段2起始内容被读取的时间作为片段2起始播放的时间会存在较大的误差。因此,在确定出某时刻正在被读取的媒体内容的标识信息之后,还需要根据播放设备从读取到播放之间的时间差,才能确定该时刻正在被读取的媒体内容实际被播放的时间。
也就是说,在实际应用中,在某时刻确定出某媒体内容正在被读取之后,还可能需要向后延迟一定的时间,才是该媒体内容实际被播放的时间。因此,如果需要确定的是当前正在播放的媒体内容对应的标识信息,则可提前确定出该媒体内容被读取的时间。为此,在本申请实施例中,可以预置一些采样时间点,例如,从整个媒体文件开始播放时起,每隔5S作为一个采样时间点,在每个采样点确定出正在被读取的媒体内容对应的标识信息。具体的,就可以首先确定出在采样时间点被读取数据单元所在的第一目标簇标识。
也就是说,可以首先根据存储设备数据区的被读取情况,确定在各采样时间点正在被读取的媒体内容对应的标识信息,然后根据所述播放设备从读取到播放之间的时间差,确定当前正在播放的媒体内容对应的目标标识信息。
具体实现时,本申请实施例还提供了一种确定存储设备中被读取数据所属媒体信息的方法,在该方法中,存储设备包括多个簇,媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,媒体文件的数据包括多个数据单元,每个数据单元按照在媒体文件中的先后顺序进行编号,并保存到存储设备数据区的多个簇中,媒体内容对应的标识信息记录在预置序号的数据单元中;该方法可以包括以下步骤:
步骤一:在所述媒体文件被读取的过程中,确定数据区中当前被读取数据单元所在的第一目标簇标识;
在播放媒体文件的过程中,在主机侧(也即播放设备)的操作系统层面上面对的是文件系统相关的概念,如文件句柄/定位/读写操作等,但在到达存储设备时,会被翻译成对数据区块的操作,这样,在存储设备侧,面对的是针对块信息的读写操作。也就是说,播放设备的访问请求在到达存储设备时,虽然存储设备能够感知到该访问请求,但是,此时存储设备只能获知播放设备请求访问的是哪个数据区块中的数据,而不能准确知道当前播放的是哪个文件,因此,不能准确地确定需要进行互动的标识信息,该需要进行互动的标识信息与正在播放的内容相关联。其中,在存储设备的数据区,一般是以簇为单位进行数据的存储,则存储设备在接收到播放设备的访问请求时,可以获知到请求访问的第一目标簇的标识(例如,簇的编号,简称簇号)。后续可以根据这种簇的标识来获取具体的关联内容的标识信息。
步骤二:根据文件系统的文件分配表,确定所述第一目标簇标识对应的第二目标簇标识,其中,所述第一目标簇中的数据单元与所述第二目标簇的数据单元属于同一目标媒体文件,所述第二目标簇中保存有该目标媒体文件中所述预置序号的数据单元;
存储设备无法直接根据该簇号为用户终端设备提供有效信息。因此,当存储设备检测到主机侧访问某一个簇的内容时,如何能够反向查找到这个簇相关的文件的信息,即感知到主机侧对文件的访问信息,是需要解决的问题。例如,某media.avi文件,其在存储设备(一般为FAT32格式)上占用了{C(4),(C(7),C(8)….C(n))的簇,当存储设备检测到C(m)被访问时,需要推算出该簇中保存的数据所属媒体文件的相关信息。
为了便于理解,下面首先对存储设备中的数据存储原理进行简单的介绍。
在存储设备中,数据是存储在磁盘的分区中,其中,一个分区会分成同等大小的簇,也就是连续空间的小块。簇的大小随着FAT文件系统的类型以及分区大小而不同,典型的簇大小介于2KB到32KB之间。每个文件根据它的大小可能占有一个或者多个簇;这样,一个文件就由这些簇链(称为单链表)所表示。然而,这些链并不一定一个接着一个在磁盘上存储,它们经常是在整个数据区域零散的储存。但是,在分配簇的过程中,还会生成文件分配表(例如FAT表),其为映射到分区每个簇的条目列表。其中,在将某文件的数据分配到某些簇中的同时,可以在FAT表中记录该文件的簇链信息。其中,文件的第一个数据单元所在簇的编号会写入到FAT表的根目录条目中,后续各数据单元所在簇的编号信息会分别被写入FAT的其他具体条目中,并且这些具体条目中总是保存一个簇链中下一个簇的地址。其中,FAT表中记录的簇的编号相对于实际簇的实际编号会有一个偏移量,一般为2。
例如,假设某文件的数据被分配到第1号、第2号、第3号、第5号、第8号、第9号以及第24号簇中,则在向FAT中写入该簇链的信息时,第一个数据单元被分配到了1号簇这一信息会写入到FAT表的根目录中。之后,由于第一个数据单元被分配到了第1号簇,在加上偏移量2之后,得到的数字是3,因此,会从FAT表的第3号条目开始写入该簇链中下一个簇的地址,也即,在该FAT表的第3号条目中,记录的是下一个数据单元所在簇的编号,如前述例子中,第二个数据单元被分配到第2号簇,则在加上偏移量2之后,得到的数字是4,因此,在FAT表中,写入3号条目的信息就是数字4。同时,可以在FAT表的4号条目中记录第三个数据单元所在簇的地址,由于第三个数据单元在第3号簇,加上2之后得到的数字是5,因此,在FAT表的4号条目中记录的信息是数字5。以此类推,该文件的簇链信息会分别被写入FAT表的第3、4、5、7、10、11及26号条目。其中,在第3、4、5、7、10、11号条目中记录的数字分别为4、5、7、10、11、26,第26号条目记录的信息是一个结尾标志,代表该文件的最后一个数据单元。这样,通过该FAT表中记录的上述信息,即可获知该文件的第一个数据单元记录在1号簇中,第二个数据单元记录在2号簇中,……,最后一个数据单元记录在24号簇中。
例如,FAT表的结构可以如下:
表1
0xF8FFFF0F 0xFFFFFFFF 根目录 4 5 7 0
10 0 0 11 26 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0x0FFFFFFF 0
其中,表1中的每个单元格都对应着FAT表的一个条目,各个条目从0开始进行编号,例如,“0xF8FFFF0F”所在的条目为0号,“0xFFFFFFFF”所在条目的编号为1,“根目录”所在条目的编号为2,“4”所在条目的编号为3,以此类推。
通过上述介绍可见,在存储设备感知到播放设备正在访问的数据的簇号之后,实际上是可以通过FAT表中记录的分配信息,定位到该数据所在文件的第一个数据单元、最后一个数据单元等分别位于哪个簇中,并且,如前文所述,由于已经在每个媒体文件的头部或者尾部等处写入了关联内容标识,因此,就可以通过读取预置序号的数据单元中的数据,确定与当前正在读取的媒体内容关联的内容的标识信息。
其中,在已知当前正在被读取的簇号的情况下,定位该簇号对应的数据所属文件中预置序号的数据单元所在簇的地址时,可以有多种方式。但是,由于FAT表中的结果本质上是一个单向链表,在给定任意一个簇号的情况下,无法获知前一个簇号,因此,要想实现上述定位过程并不是一件显而易见的事。例如,在一种方式下,可以通过遍历FAT表的方式来进行定位查找。例如,可以将FAT表项以每一个扇区为单位读进内存进行分析,在内存中记录下一个链表中的各个项,如有检测到c(m)(当前正在被访问数据所在的簇号),则获得c(1),继续往下遍历直到文件结尾c(n)。在C(1)→C(m)的查找过程中,由于不确定遍历序列中能否找到C(m),需要在内存中存放所有文件的序列,故这个算法内存消耗会非常大,在低内存要求情况下基本上不可行。如果不把遍历结果放入内存,又面临找到C(m)之后的回溯IO问题,性能会非常差。
为了实现在低内存要求下,进行根据当前被读取的数据所在的簇号定位到所属文件的第一个以及最后一个数据单元所在的簇号,在本申请的优选实施例中,可以通过以下方式来实现:可以在存储设备中生成一与FAT表对应的快速索引表,并保存。进一步地,为了避免该快速索引表被误删,可以在存储设备中建立一隐藏分区,将该快速索引表保存在该隐藏分区中。
其中,该快速索引表可以是通过遍历FAT表来建立的,当前该遍历FAT表的过程在存储设备每次加电后执行一次即可,后续每次发现某簇的数据被读取时,就可以通过查询该快速索引表的方式,来确定该簇中保存的数据所属文件的第一个、最后一个数据单元所在的簇地址等信息。因此,该快速数据表的各个条目中可以保存有各个簇标识对应的目标簇标识,其中,同一条目中,各个簇标识对应的数据单元属于同一媒体文件,且目标簇中保存有该媒体文件中预置序号的数据单元(也即媒体内容对应的标识信息所在的数据单元)。例如,数据区中各个簇对应媒体文件的第一个数据单元所在的簇地址,最后一个数据单元所在的簇地址,等等。当然,在有些特殊情况下,在可能还需要获知当前访问的数据单元在对应的媒体文件中的位置(例如,某AVI文件有10M,则确定出的当前访问的数据在该文件的位置可能是位于第5M至第6M,等等)等信息,为此,还可以在快速索引表中记录以下信息:各个簇标识在对应媒体文件中的序号,也即每个簇对应媒体文件中的第几个数据单元。例如,假设标识信息所在的位置为媒体文件的最后一个数据单元,则对应于表1中的FAT表,生成的快速索引表可以如以下表2所示:
表2
可见,在得知当前正在访问的数据所在的簇号(例如,5号)的情况下,直接通过查询上述快速索引表即可确定出对应数据所属文件的第一个数据单元所在的簇号为1号,最后一个数据单元所在的簇号为24号,并且该5号簇中保存的数据为所属文件中的第4个数据单元。
需要说明的是,在表2中,每个簇号都对应有所属媒体文件的第一个数据单元所在的簇号,但是,只有第一个数据单元所在的簇号才对应有最后一个数据单元所在的簇号。这是因为,在对FAT表进行遍历的过程中,只有在检测到了文件末尾才获得最后一个数据单元所在的簇号,如果为每个簇号都对应写入最后一个数据单元所在的簇号,则需要重新进行回溯,而回溯的过程则需要花费很长的时间。为此,在本申请的优选实施例中,最后一个数据单元的簇号信息只需回写到第一个数据单元的簇号这一行。同一文件的其他簇号的数据被读取时,可以首先从该簇号所在行,确定出第一个数据单元的簇号,然后从第一个数据单元的簇号所在的行中,确定出最后一个数据单元的簇号即可。在这种情况下,具体在生成上述快速索引表时,针对各个簇号,可以首先通过遍历FAT表,确定出各自对应的数据所属文件的第一个数据单元所在的簇号,在检测到该所属文件的最后一个数据单元所在的簇号之后,再将其作为结束簇号,写入到该所属文件的第一个数据单元的簇号所在的行即可。
也就是说,在优选的实施方式中,在建立快速索引表时,可以首先遍历文件分配表,确定数据区内各个簇标识中保存的数据单元所属媒体文件的起始簇标识(起始簇用于保存该所属媒体文件的第一个数据单元);然后,可以在各个簇标识所在快速索引表条目的第一字段中记录所述所属媒体文件的起始簇标识;之后,如果在遍历的过程中,确定出某簇标识为所属媒体文件的结束簇(用于保存所述所属媒体文件的最后一个数据单元),则将该簇标识记录在该媒体文件的起始簇所在快速索引表条目的第二字段中。这样,具体在根据预先建立的快速索引表,确定目标簇中保存的数据单元所属媒体文件中预置序号的数据单元所在的簇的标识时,可以如下进行:确定所述第一目标簇标识所在的第一目标条目;从该第一目标条目的所述第一字段中确定出该第一目标簇对应媒体文件的起始簇标识;确定该起始簇标识所在的第二目标条目;从该第二目标条目的所述第二字段中确定出该第一目标簇对应媒体文件的结束簇标识,将该结束簇标识确定为所述第二目标簇标识,也即目标位置处的数据单元所在的簇标识。
以上快速索引表的建立,可以大大提高从被读取的簇号定位到所属文件预置序号的数据单元所在簇的效率。然而,虽然该快速索引表的建立可以是在存储设备被连接到所述播放设备上开始加电时进行,而不是在实际与用户终端设备进行互动的过程中,但是,如果建立快速索引表的过程需要耗费比较长的时间,也会影响到用户的正常使用。因此,为了避免建表过程延迟太长时间,可以采用以下方式来实现:首先针对符合预置条件的簇标识,建立第一快速索引表,在该第一快速索引表建立起来之后,就可以开始接收用户终端设备的互动请求,在此过程中,在以后台计算的方式对该第一快速索引表进行完善,生成包含有完整信息的第二快速索引表。也就是说,第一快速索引表相对于第二快速索引表而言,粒度比较粗,其中包含的条目比较少,后续逐步完善之后,就可以得到第二快速索引表,也即粒度更细的索引表。因此,也可以将第一快速索引表称为“粗粒度表”,将第二快速索引表称为“细粒度表”。
其中,所谓的粗粒度表,也即在对FAT表进行遍历的过程中,仅对部分符合预置条件的簇标识生成表2所示的信息,其他簇标识暂时忽略。例如,由于FAT表的根目录项中保存有各个文件的第一个数据单元所在的簇号,另外,FAT表中对于文件中最后一个数据单元会用特殊的标志信息进行记录,因此,哪些簇号属于文件的起始簇或者结束簇,是很容易确定出来的(只是此时还不知道起始簇与结束簇之间的对应关系),因此,可以首先针对这部分簇号建立粗粒度表,也即为属于起始簇或者结束簇的簇标识建立第一快速索引表。或者,还可以预置一间隔,按照该间隔读取簇标识,并建立粗粒度的快速索引表,也即按照预置的间隔读取簇标识,并建立第一快速索引表。例如,取该簇号间隔的整数倍的数字对应的簇号,建立粗粒度表。如,该簇号间隔可以为100,则可以将100号、200号、300号等等簇号建立快速索引表,其他簇号的快速索引信息可以通过后台的方式进行完善。需要说明的是,无论是建立粗粒度表还是细粒度表,获取每个簇号对应的索引信息的方法都可以是相同的。另外,在粗粒度表建立后,如果细粒度表尚未完善,则至少当粗粒度表中的簇号被读取时,可以定位到所属文件的结束簇,如果有其他尚未写入到快速索引表的簇号被读取,则无法查询到相关的关联内容标识等信息,暂时无法向用户终端设备提供。但是,考虑到在实际应用中,对于当前正在播放的媒体内容,由于其文件数据是被分散的保存在多个簇中,因此,一般情况下,总会有一个保存有该文件的数据的簇已经在粗粒度表中出现,并且通过该文件的任意一个数据单元所在的簇号,都可以定位到该文件的结束簇的地址,并从中获取到文件关联内容的标识信息。
当然,在其他实施例中,还可以有其他建立上述快速索引表的方式,例如,还可以对任意数据区的写操作进行监控,当发现某数据区有写操作发生时,则证明可能是正在向存储设备中写入媒体数据,因此,就可以直接通过监控FAT表的变化,来建立上述快速索引表,并保存到存储设备的隐藏扇区中。这样,在存储设备插入到播放设备中被加电之后,就可以直接利用已经建立的快速索引表进行与用户终端设备的多屏互动了,而不必再在存储设备加电后重新生成快速索引表。
总之,快速索引表建立之后,从簇号到所属文件信息操作就仅是针对索引表的下标访问动作,因此效率会比较高,并且能够满足低内存情况下的性能要求,具体分析如下:
首先是快速索引表的建表性能分析:一次FAT分配表中的一个扇区读,针对一次快速索引区的4个扇区写(索引项内容为FAT项的四倍)。粗粒度建表时,可根据簇号调节索引项内容是否写入,例如,可控制遍历512个簇信息才写入一次,这样可调节到一次FAT扇区读对应一个索引扇区写。该方法需要的内存开销仅为一个FAT扇区的大小(512字节)加4个或者加1个索引扇区大小(512字节或2K),总计2.5K即可。实际项目测试数据为,在存储设备中保存有1.2G的数据量的情况下,粗粒度建表开销为3s-4s。
其次是快速索引表的读取性能分析:一个簇被读取时需要反推其所属文件的信息,根据上述方式,一个簇的访问需要伴随到索引区进行一次簇号访问。理论上最差情况下会导致存储设备的访问速度下降50%;但由于FAT32文件系统中文件的簇安排一般是连续的,一般此次簇访问与上一次簇访问都属于同一个扇区内容,因此,只要保留上次被读入的扇区内存不释放,则一般情况下128次(512字节/4字节)才需要交换扇区的内存。从这个分析可知,最好情况下每128次的簇访问才需要额外多读取一个索引扇区,因此,对性能的下降基本可以忽略。分析可得读取性能在原先的(100%~50%)之间,由于基本上不可能出现一个文件每个簇都不连续的情况,因此实际的情况应该是读性能基本能够保持不变。
步骤三:根据所述第二目标簇中保存的数据单元,确定当前正在被读取的媒体内容对应的标识信息。
在获知了标识信息所在的第二目标簇之后,就可以根据该簇中保存的数据,确定出在当前正在被读取的媒体内容对应的标识信息。
需要说明的是,本申请实施例中,媒体内容与媒体文件是两个不同的概念,媒体内容就是具体正在播放的内容,例如,某商品的广告等,而媒体文件则是媒体内容在存储设备中的保存形式,例如,以AVI的格式保存成文件,等等。在实际应用中,一个媒体文件中可能仅保存一份媒体内容,在这种情况下,媒体文件尾部等处附着的标识信息,就是与该媒体内容对应的标识信息,因此,存储设备只要感知到当前正在播放哪个媒体文件,也就相当于感知到了正在播放的媒体内容,进而利用该媒体文件尾部等处附着的标识信息,获知当前正在读取的内容对应的标识信息。
但是,还有些情况下,一个媒体文件中可能保存了多份媒体内容,例如,某媒体文件中保存了多个商品的广告,在这种情况下,由于对用户而言,其感兴趣的对象一般都是某具体的媒体内容,因此,提供的标识信息也应该是与具体的媒体内容对应的标识信息。在这种情况下,就不仅需要感知当前正在播放的媒体文件,还需要感知到当前正在播放的具体是哪个媒体内容。为此,在具体实现时,在向媒体文件预置位置附着信息时,可以分别为该文件内的各个媒体内容添加对应的标识信息,并且,还可以添加各个媒体内容分别在媒体文件中的物理位置信息。这样,在感知到当前正在访问的簇的簇号之后,除了可以定位该簇中对应的媒体文件中特定簇的簇号,还可以确定出该正在被读取的第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息,这样,在根据第二目标簇中保存的数据单元,确定当前正在被读取的媒体内容对应的标识信息时,可以首先根据第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息,然后将目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算,将匹配成功的媒体内容对应的标识信息,确定为当前正在被读取的媒体内容对应的标识信息。
例如,如果需要获知当前被读取的数据在所属文件中的位置,则可以直接根据第一目标簇对应的数据单元在所属文件中的序号进行估算。例如,假设每个簇的数据容量为4K,且假设第一目标簇对应的数据单元在所属文件中的序号为4,则可以估算出当前读取的可能是其所属媒体文件的第12K到第16K之间。进而,就可以根据第二目标簇的数据中保存的描述信息,确定出第12K到第16K之间的数据是属于哪份媒体内容的数据。
具体实现时,在媒体文件中保存多份媒体内容的数据的情况下,媒体文件的数据中可以包含有与各份媒体内容关联的内容的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息,并且快速索引表中还可以保存有数据区内各个簇标识中保存的数据单元在所属媒体文件中的序号。这样,具体为了获得当前正在读取的媒体内容的关联内容的标识信息,可以如下进行:
首先根据快速索引表,确定出第一目标簇中保存的数据单元在所属媒体文件中的目标序号,然后根据该目标序号以及每个簇的数据容量,确定该第一目标簇中保存的数据单元在所属媒体文件中物理位置信息;并且,还可以从第二目标簇中读取数据并进行解析,确定出媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息,然后将第一目标簇中保存的数据单元在所属媒体文件中物理位置信息,与各份媒体内容分别所在的物理位置信息进行匹配运算,将匹配成功的媒体内容对应的标识信息确定为当前正在读取的媒体内容的关联内容的标识信息。
总之,通过上述方式,可以确定出在各个采样时间点正在被读取的媒体内容对应的标识信息。
S102:根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
在确定出采样时间点正在被读取的媒体内容的标识信息之后,就可以根据播放设备从读取到播放之间的时间差,确定出采样时间点正在被读取的媒体内容实际被播放的时间。这样,就可以在该实际被播放的时间到来时,确定出当前正在播放的媒体内容对应的标识信息。
其中,关于播放设备从读取到播放之间的时间差,可以通过多种方式进行确定。例如,可以根据经验值进行确定。当然,由于不同的播放器预取内容的尺寸不一样,因此,对于不同的播放器而言,从数据被读取到被播放所经历的时间长度可能是不同的,如果用统一的经验值进行确定,则难免会产生误差。因此,在具体实现时,可以针对当前的播放设备,来对这种时间差进行测试。
具体的,可以利用前述包含多份媒体内容的媒体文件,来实现这种测试。具体实现时,媒体文件的数据中除了包括多份媒体内容的数据以及各份媒体内容分别对应的标识信息之外,还可以包括各份媒体内容在媒体文件中的起始时间信息。这样,具体实现时,可以对相邻两份媒体内容的被读取情况进行监控,获得第一媒体内容开始被读取的第一绝对时间点,以及第二媒体内容开始被读取的第二绝对时间点,计算这两个绝对时间点之间的第一差值;然后再从第二目标簇的数据单元中确定该第一媒体内容的第一起始时间,以及第二媒体内容的第二起始时间,再计算出这两个起始时间之间的第二差值,之后,就可以将第二差值与第一差值之间的差值,确定为当前的播放设备从读取到播放之间的时间差。
例如,假设A和B是媒体文件中相邻的两份媒体内容,Time1为检测到媒体内容A被读取时的绝对时间点,Time1_1为在数据中记录的媒体内容A起始的时间点;Time2为检测到媒体内容B被读取时的绝对时间点,Time2_2为在数据记录的媒体内容B起始的时间点。则由于缓存引起的时间差可以描述为:
(Time2_2–Time1_1)–(Time2–Time1)
也即,媒体内容B实际开始播放的时间应等于(Time2+时间差),其他各媒体内容的实际开始播放的时间也可以按此进行修正。
例如,假设媒体内容A开始被读取时的绝对时间点Time1为10:00,媒体内容B开始被读取时的绝对时间点Time2为10:02;媒体文件的描述信息中记载,媒体内容A起始的时间点为第2分钟,媒体内容B的起始时间点为第4分10秒,也即证明该媒体内容A的实际时间长度为2分10秒,而媒体内容A与媒体内容B开始被读取的绝对时间相差为2分钟整,因此,可以计算出由于缓存引起的时间差为10秒钟。这样,后续再检测到某媒体内容开始被读取时,在该时刻基础上向后延迟10秒,再确认该媒体内容开始被播放。
其中,在存在轮播的情况下,由于媒体文件被反复轮播,误差值可取平均值达到更好效果,并且这个方法可以自适应于不同的播放器。
总之,本申请实施例中还提供了一种确定媒体播放时间差信息的方法,其该方法应用于存储设备中,所述存储设备中存储有媒体文件,通过播放设备进行播放,媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在媒体文件中的起始时间;具体的,该方法可以包括:
步骤一:对相邻两份媒体内容的被读取情况进行监控,获得其中第一媒体内容开始被读取的第一绝对时间点,以及第二媒体内容开始被读取的第二绝对时间点;
步骤二:计算获得所述第一绝对时间点与所述第二绝对时间点之间的第一差值;
步骤三:从所述第二目标簇的数据单元中确定该第一媒体内容的第一起始时间,以及第二媒体内容的第二起始时间;
步骤四:计算获得所述第一起始时间与所述第二起始时间之间的第二差值;
步骤五:将所述第二差值与第一差值之间的差值,确定为所述播放设备从读取到播放之间的时间差。
通过上述这种方式,可以针对实际播放设备确定出从读取到播放之间的时间差,获得的数据更准确,有利于更准确地根据当前被读取的媒体内容确定出这部分媒体内容实际被播放的时间。
S103:通过所述无线通讯模块接收到终端设备发送的信息获取请求时,根据所述采用时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
具体实现时,为用户终端设备提供关联内容的标识信息的时机可以有多种。例如,其中一种实现方式下,如果存储设备中配备的是传统的需要进行连接认证的无线通讯装置,则可以在与某用户终端设备配对成功之后,再将标识信息通过该这种传统的无线通讯装置传输给用户终端设备。
但是,本申请人在实现本申请的过程中发现,这种使用传统无线通讯装置进行多屏互动的方式下,至少存在一些弊端:首先,用户的终端设备必须与播放设备之间进行配对,成功之后才能进行数据传输,使得用户获得媒体内容关联内容的时间会比较长;另外,如果是在人群较为密集的地方,在搜索可以配对的设备时,可能会搜索到大量的设备,此时,从众多的设备中分别出播放设备,可能会比较困难;再者,由于传统无线通讯装置的信道数目非常多,一般为几十个,因此,在用户终端设备与播放设备进行搜索配对的过程中,用户终端设备可能在不断的跳频,播放设备也可能在不断的调频,最终可能导致无法发现对方,等等。
为此,在本申请实施例中,考虑到目前低功耗无线通讯装置的逐渐普及,带有低功耗无线通讯装置功能的用户终端设备也逐渐增多,因此,在存储设备中也可以采用低功耗无线通讯装置的方式与用户终端设备之间进行互动。之所以采用低功耗无线通讯装置,是因为:第一,低功耗无线通讯装置的设备之间不需要进行认证连接,也即无需经历传统无线通讯装置那样的配对过程,因此可以缩短用户获取信息的时间;第二,低功耗无线通讯装置具有广播功能,这样,播放设备就可以通过低功耗无线通讯装置,按照一定的周期(一般为100ms)广播一些信息(例如该低功耗蓝牙的通信地址信息),因此,可以进一步提高用户获取媒体内容关联内容的效率,并且,也更适合在人群比较密集的地方使用,因为多个用户可以同时,或者以非常小的时间间隔获知到播放设备中广播的信息。
具体的,在上述采用低功耗无线通讯装置的方式进行互动的情况下,存储设备可以广播该低功耗无线通讯装置的通信地址信息(可以按照一定的时间间隔进行多次广播),如MAC地址等,这样,只要用户终端设备也带有低功耗无线通讯装置并开启相应的功能,就可以通过收听这种广播消息,获知存储设备的通信地址,直接与其进行通信,无需再进行配对过程。进而,可以通过用户触发等方式在用户终端设备侧发出获得标识信息的请求,存储设备在接收到该请求之后,再将利用前述方式获取到的与当前正在播放的媒体内容对应的标识信息,并通过低功耗无线通讯装置返回给用户终端设备,这样,用户终端设备就可以获得该标识信息。
在收到终端设备的信息获取请求时,由于之前已经确定出各个采样时间点上正在读取的媒体内容实际被播放的时间,因此,就可以确定出当前接收到请求的时刻,正在被播放的媒体内容对应的标识信息。
S104:通过所述无线通讯模块将所述目标标识信息返回。
在确定出当前正在播放的媒体内容对应的关联内容的标识信息之后,就可以通过无线通讯模块返回给终端设备,这样,终端设备就可以利用目标标识信息,获取到与当前正在播放的媒体内容相关的信息。例如,可以是当前正在播放的媒体内容对应的关联内容。具体的,如果目标标识信息是关联内容的URL,则可以直接访问该URL,获得具体的关联内容。如果目标标识信息是关联内容的ID,则终端设备可以首先将该ID发送给服务器,根据服务器返回的URL获得具体的关联内容。
总之,由于存储设备中保存的媒体文件在预置位置附着了其关联内容的标识信息,这部分标识信息的数据会作为文件数据的一部分被保存到存储设备中。在播放设备对媒体文件进行播放的过程中,就可以根据数据区被访问的情况,确定出当前正在播放的媒体内容对应的关联内容的标识信息,进而就可以利用该标识信息与用户的终端设备进行多屏互动。
以上所述的各种实现方案中,都是基于一个前提:播放设备在每次播放一个媒体文件时,都从存储设备上进行数据读取,这样存储设备才有可能感知到播放设备读取的具体是什么媒体内容。但是在实际应用中,本申请实施例中涉及到的大屏幕设备中播放媒体内容时,一般会采用轮播的形式,例如,有媒体内容A、B、C,将这三段内容循环播放。而在轮播的过程中,可能会或多或少的将存储设备中的内容缓存到播放设备侧的内存中,等到轮播的第二轮时,如果媒体文件过小,如其中的media1.avi仅有几兆大小,则有可能播放器就不需要再对存储设备中的Media1.avi进行访问,直接从缓存中进行加载即可;如其中Media2.mp4稍大,有几十兆大小,Media2.mp4文件的前半部分仍有可能前面的很多数据被播放器缓存。这样,就会导致只有第一次播放时U盘能感知播放设备的访问,其他时候都是不能感知或者不完整。
为了使得存储设备能够尽可能的感知到媒体文件被播放的情况,可以有多种具体的实现方式。例如,其中一种实现方式下,可以对存储设备中保存的媒体文件进行改造,使其足够大。这样,播放器不可能去缓存整个文件,只能缓存当前播放到的部分或者视频文件的头部信息,这部分被缓存的数据仅是该大文件中的一小部分,因此,可以使得绝大部分时间,存储设备都是能够感知到播放设备的访问操作。
优选地,可以合并多个希望循环播放的媒体文件的内容(例如,视频文件的视轨和音轨),生成一个大的组合媒体文件。此时,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容,可以通过同一个媒体文件来承载多份媒体内容。各份媒体内容在该媒体文件内容仍然可以按顺序进行播放,只不过在播放器看来,这些媒体内容属于同一个媒体文件。也就是说,本申请实施例中的媒体文件可以是通过将多个待存储媒体文件进行合并,并在数据中添加附加信息后生成的组合媒体文件,其中,在组合媒体文件中,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容,附加信息包括各份媒体内容在组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息。
当然,在通过上述方式得到组合文件之后,还可以确定出组合媒体文件的大小,如此时合并之后的组合媒体文件(记为1.avi)尺寸还比较小,则还可以通过迭加等方式将组合媒体文件进行进一步的合成,得到更大尺寸的组合媒体文件。例如,复制1.avi为2.avi等,并继续对生成之后的1.avi,2.avi…进行合并,以此进行迭加的操作,直到生成足够大尺寸的文件(如1G大的文件),这样,最后合并迭加后的文件为“A B C A B C A B C…”这样的媒体内容组成的循环序列,每个媒体片段作为媒体文件中的一份媒体内容存在。
在得到上述组合媒体文件之后,由于目的是要让存储设备能够感知具体被播放的媒体内容,因此,在本申请实施例中,还可以向组合媒体文件的数据中添加附加信息,这种附加信息可以用于描述各份媒体内容在组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息。因此,可以首先确定出这两方面的信息。
其中,关于各份媒体内容在组合媒体文件中的物理位置信息,可以通过各份媒体内容之间的顺序以及各自所占的数据量来确定。例如,第一份媒体内容为2M,则就可以将该份媒体内容的位置信息确定为第0到第2M,第二份媒体内容为5M,则就可以将该份媒体内容的位置信息确定为第2M到第7M,等等。
关于各份媒体内容对应的标识信息,可以根据媒体内容各自的名称等来确定。或者,在一些具体的应用中,存储设备需要确定的可能不是媒体内容本身的一些信息,还可能是与媒体内容关联的其他内容的信息。例如,媒体内容可能是关于某商品的广告,但是,存储设备需要确定的是关于该商品的详细信息、销售信息等等。因此,媒体内容对应的标识信息可以是指,媒体内容对应的关联内容的标识信息。其中,这种关联内容的标识信息可以是关联内容的网络地址(例如,URL)。或者,为了便于存储设备通过预设的无线通讯模块将这种标识信息提供给其他的终端设备,媒体文件数据中写入的标识信息还可以是关联内容的ID,同时在服务器端保存ID与网络地址之间的关联关系,这样,当存储设备将这种ID信息提供给其他终端设备之后,其他终端设备可以通过与服务器的交互,获取到该ID信息对应的网络地址,进而,就可以通过加载该网络地址对应的页面,获取到对应的关联内容。
具体的,关联内容的网络地址可以根据预置指定的方式确定的,当然也可以通过其他方式确定。关于关联内容的ID,可以由服务器端来统一分配。例如,可以将各份媒体内容的名称清单上传到服务器,由服务器为各份媒体内容分配ID之后返回,这样,就可以将这种ID确定为媒体内容对应的标识信息。当然,在这种情况下,还可以将各个关联内容的网络地址提交到服务器,由服务器保存ID与网络地址之间的关联关系。
在进行文件的合并,并确定出各份媒体内容对应的物理位置信息以及所述标识信息之后,可以生成附加信息,并可以在合并后的文件尾部等处添加前述附加信息。例如,可以定义一个叫XMD(X Media Description)的格式来描述一个大的组合媒体文件中包含的各个子部分。因此,XMD的定义可以如下:
媒体内容1
媒体内容1的标识信息
媒体内容1在文件整体中的起始位置
媒体内容1在文件整体中的结束位置
媒体内容2
媒体内容2的标识信息
媒体内容2在文件整体中的起始位置
媒体内容2在文件整体中的结束位置
……
其中,在实际应用中,附加信息中除了前述各份媒体内容的物理位置信息以及对应的标识信息之外,还可以包括各个媒体内容在文件中的起始时间等信息。因此,XMD的定义可以如下:
媒体内容1
媒体内容1的标识信息
媒体内容1在文件整体中的起始位置
媒体内容1在文件整体中的结束位置
媒体内容1在文件中的起始时间
媒体内容2
媒体内容2的标识信息
媒体内容2在文件整体中的起始位置
媒体内容2在文件整体中的结束位置
媒体内容2在文件中的起始时间
……
也就是说,在本申请实施例中,还提供了一种媒体文件的处理方法,该方法可以包括:
步骤一:将多个待存储媒体文件进行合并,生成组合媒体文件,其中,在所述组合媒体文件中,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容;
步骤二:确定各份媒体内容在所述组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息;
步骤三:根据各份媒体内容对应的物理位置信息以及所述标识信息生成附加信息,添加到所述组合媒体文件的数据中,生成目标媒体文件;
步骤四:将所述目标媒体文件保存到预置的存储设备中;
其中,所述附加信息用于,在所述目标媒体文件被播放设备访问的过程中,确定当前正在被访问的媒体内容对应的信息。
通过这种方式,可以将一些小的待播放媒体文件合并成大尺寸的组合媒体文件,并在其中添加附件信息,该附加信息可以描述各份媒体内容在组合媒体文件中的物理位置信息以及对应的标识信息,这样,由于组合后的媒体文件尺寸比较大,因此,在播放器不可能去缓存整个文件,只能缓存当前播放到的部分或者视频文件的头部信息,这部分被缓存的数据仅是该大文件中的一小部分,因此,可以使得存储设备能够更完整的感知播放设备的访问操作。
当然,在实际应用中,为了消除文件轮播时由于播放设备的缓存引起的影响,还可以有其他的实现方式。例如,在其中一种方式下,可以生成一个时间很短(例如1S),但是数据量非常大的文件,例如,可以是一个1S长的黑屏文件,并且为了使其数据量比较大,可以为其叠加多条音轨,并保存在存储设备中,这样,可以通过用该文件来占满播放设备的缓存,来避免播放设备将实际待播放的媒体文件的数据读入缓存。或者,还可以在存储设备中保存多份媒体文件的副本,以此来减轻轮播过程中缓存带来的影响。
与本申请实施例提供的提供媒体内容信息的方法相对应,本申请实施例还提供了一种提供媒体内容信息的装置,所述装置应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放,参见图2,该装置具体可以包括:
读取信息确定单元201,用于在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
播放时间确定单元202,用于根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
目标标识信息确定单元203,用于通过所述无线通讯模块接收到终端设备发送的信息获取请求时,根据所述采用时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
目标标识信息返回单元204,用于通过所述无线通讯模块将所述目标标识信息返回。
具体实现时,该装置还可以包括:
广播单元,用于通过所述无线通讯模块广播所述无线通讯模块的通信地址信息,以便带有对应的无线通讯模块的终端设备接收到该通信地址信息,并利用该通信地址发送所述信息获取请求。
其中,所述存储设备包括多个簇,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,所述媒体文件的数据包括多个数据单元,每个数据单元按照在媒体文件中的先后顺序进行编号,并保存到存储设备数据区的多个簇中,所述媒体内容对应的标识信息记录在预置序号的数据单元中;
通过以下方式确定某采样时间点正在被读取的媒体内容对应的关联内容的标识信息:
第一簇标识确定单元,用于确定数据区中在所述采样时间点被读取数据单元所在的第一目标簇标识;
第二簇标识确定单元,用于根据文件系统的文件分配表,确定所述第一目标簇标识对应的第二目标簇标识,其中,所述第一目标簇中的数据单元与所述第二目标簇的数据单元属于同一目标媒体文件,所述第二目标簇中保存有该目标媒体文件中所述预置序号的数据单元;
标识信息确定单元,用于根据所述第二目标簇中保存的数据单元,确定在所述采样时间点正在被读取的媒体内容对应的标识信息。
为了便于根据第一目标簇标识确定出第二目标簇标识,该装置还可以包括:
快速索引表创建单元,用于预先根据所述文件分配表,建立快速索引表,其中,所述快速索引表的各个条目中保存有各个簇标识对应的指定簇标识,其中,同一条目中,各个簇标识对应的数据单元属于同一媒体文件,且所述指定簇中保存有该媒体文件中所述预置序号的数据单元;
所述第二簇标识确定单元具体用于:
根据所述预先建立的快速索引表,确定所述第一目标簇标识对应的第二目标簇标识。
其中,所述媒体内容对应的标识信息在媒体文件的最后一个数据单元中保存,则所述快速索引表创建单元包括:
遍历子单元,用于遍历所述文件分配表,确定各个簇标识对应媒体文件的起始簇标识;其中,所述起始簇用于保存媒体文件的第一个数据单元;
起始簇记录子单元,用于在各个簇标识所在条目的第一字段中记录各自对应媒体文件的起始簇标识;
结束簇记录子单元,用于如果在遍历的过程中确定出某簇标识为对应媒体文件的结束簇,则将该簇标识记录在该媒体文件的起始簇所在条目的第二字段中;其中,所述结束簇用于保存对应媒体文件的最后一个数据单元;
所述第二簇标识确定单元,包括:
第一条目确定子单元,用于确定所述第一目标簇标识所在的第一目标条目;
起始簇确定子单元,用于从该第一目标条目的所述第一字段中确定出该第一目标簇对应媒体文件的起始簇标识;
第二条目确定子单元,用于确定该起始簇标识所在的第二目标条目;
结束簇确定子单元,用于从该第二目标条目的所述第二字段中确定出该第一目标簇对应媒体文件的结束簇标识,将该结束簇标识确定为所述第二目标簇标识。
在实际应用中,所述媒体文件的数据中可能包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;所述快速索引表中还保存有各个簇标识中的数据单元在对应媒体文件中的序号;
所述标识信息确定单元,包括:
序号确定子单元,用于根据所述快速索引表,确定所述第一目标簇中的数据单元在对应媒体文件中的目标序号;
物理位置确定子单元,用于根据所述目标序号以及单个簇的数据容量,确定该第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
第一媒体内容描述信息确定子单元,用于根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
第一匹配运算子单元,用于将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
第一确定子单元,用于将匹配成功的媒体内容对应的标识信息,确定为在所述采样时间点正在被读取的媒体内容对应的标识信息。
另外,如果所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;
所述装置还包括:
物理位置确定单元,用于根据文件系统的文件分配表,确定所述第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
所述标识信息确定单元包括:
第二媒体内容描述信息确定子单元,用于根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
第二匹配运算子单元,用于将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
第二确定子单元,用于将匹配成功的媒体内容对应的标识信息,确定为在采样时间点正在被读取的媒体内容对应的标识信息。
其中,所述媒体文件可以是通过将多个待存储媒体文件进行合并,并在数据中添加附加信息后生成的组合媒体文件,其中,在所述组合媒体文件中,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容,所述附加信息包括各份媒体内容在所述组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息。
其中,如果所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在媒体文件中的起始时间;则所述装置还包括:
监控单元,用于对相邻两份媒体内容的被读取情况进行监控,获得第一媒体内容开始被读取的第一绝对时间点,以及第二媒体内容开始被读取的第二绝对时间点;
第一差值计算单元,用于计算获得所述第一绝对时间点与所述第二绝对时间点之间的第一差值;
起始时间确定单元,用于从所述第二目标簇的数据单元中确定该第一媒体内容的第一起始时间,以及第二媒体内容的第二起始时间;
第二差值计算单元,用于计算获得所述第一起始时间与所述第二起始时间之间的第二差值;
时间差确定单元,用于将所述第二差值与第一差值之间的差值,确定为所述播放设备从读取到播放之间的时间差。
具体实现时,所述媒体内容对应的标识信息可以包括:所述媒体内容对应的关联内容的标识信息。
其中,所述关联内容的标识信息包括预先为媒体内容指定的关联内容的网络地址,以便所述终端设备通过访问所述网络地址,以获取所述关联内容。
或者,所述关联内容的标识信息为预先为所述媒体内容分配的ID信息,并预先在服务器保存ID与关联内容网络地址之间的关联关系,以便所述终端设备利用所述ID信息,从服务器获取所述关联内容的网络地址,并通过访问所述网络地址获取所述目标关联内容。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的提供媒体内容信息的方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

Claims (24)

1.一种提供媒体内容信息的方法,其特征在于,所述方法应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放,所述方法包括:
在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
通过所述无线通讯装置接收到终端设备发送的信息获取请求时,根据所述采样时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息,并将所述标识信息作为当前播放的媒体内容对应的目标标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
通过所述无线通讯装置将所述目标标识信息返回。
2.根据权利要求1所述的方法,其特征在于,还包括:
通过所述无线通讯装置广播所述无线通讯模块的通信地址信息,以便带有对应的无线通讯装置的终端设备接收到该通信地址信息,并利用该通信地址发送所述信息获取请求。
3.根据权利要求1所述的方法,其特征在于,所述存储设备包括多个簇,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,所述媒体文件的数据包括多个数据单元,每个数据单元按照在媒体文件中的先后顺序进行编号,并保存到存储设备数据区的多个簇中,所述媒体内容对应的标识信息记录在预置序号的数据单元中;
通过以下方式确定某采样时间点正在被读取的媒体内容对应的标识信息,包括:
确定数据区中在所述采样时间点被读取数据单元所在的第一目标簇标识;
根据文件系统的文件分配表,确定所述第一目标簇标识对应的第二目标簇标识,其中,所述第一目标簇中的数据单元与所述第二目标簇的数据单元属于同一目标媒体文件,所述第二目标簇中保存有该目标媒体文件中所述预置序号的数据单元;
根据所述第二目标簇中保存的数据单元,确定在所述采样时间点正在被读取的媒体内容对应的标识信息。
4.根据权利要求3所述的方法,其特征在于,还包括:
预先根据所述文件分配表,建立快速索引表,其中,所述快速索引表的各个条目中保存有各个簇标识对应的指定簇标识,其中,同一条目中,各个簇标识对应的数据单元属于同一媒体文件,且所述指定簇中保存有该媒体文件中所述预置序号的数据单元;
所述根据文件系统的文件分配表,确定所述第一目标簇标识对应的第二目标簇标识,包括:
根据所述预先建立的快速索引表,确定所述第一目标簇标识对应的第二目标簇标识。
5.根据权利要求4所述的方法,其特征在于,所述媒体内容对应的标识信息在媒体文件的最后一个数据单元中保存,则所述预先根据所述文件分配表,建立快速索引表,包括:
遍历所述文件分配表,确定各个簇标识对应媒体文件的起始簇标识;其中,所述起始簇用于保存媒体文件的第一个数据单元;
在各个簇标识所在条目的第一字段中记录各自对应媒体文件的起始簇标识;
如果在遍历的过程中确定出某簇标识为对应媒体文件的结束簇,则将该结束簇的簇标识记录在该媒体文件的起始簇所在条目的第二字段中;其中,所述结束簇用于保存对应媒体文件的最后一个数据单元;
所述根据所述预先建立的快速索引表,确定所述第一目标簇标识对应的第二目标簇标识,包括:
确定所述第一目标簇标识所在的第一目标条目;
从该第一目标条目的所述第一字段中确定出该第一目标簇对应媒体文件的起始簇标识;
确定该起始簇标识所在的第二目标条目;
从该第二目标条目的所述第二字段中确定出该第一目标簇对应媒体文件的结束簇标识,将该结束簇标识确定为所述第二目标簇标识。
6.根据权利要求4所述的方法,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;所述快速索引表中还保存有各个簇标识中的数据单元在对应媒体文件中的序号;
所述根据所述第二目标簇中保存的数据单元,确定在所述采样时间点正在被读取的媒体内容对应的标识信息,包括:
根据所述快速索引表,确定所述第一目标簇中的数据单元在对应媒体文件中的目标序号;
根据所述目标序号以及单个簇的数据容量,确定该第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
将匹配成功的媒体内容对应的标识信息,确定为在所述采样时间点正在被读取的媒体内容对应的标识信息。
7.根据权利要求3所述的方法,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;
所述方法还包括:
根据文件系统的文件分配表,确定所述第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
所述根据所述第二目标簇中保存的数据单元,确定当前正在被读取的媒体内容对应的标识信息,包括:
根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
将匹配成功的媒体内容对应的标识信息,确定为当前正在被读取的媒体内容对应的标识信息。
8.根据权利要求6或7所述的方法,其特征在于,所述媒体文件是通过将多个待存储媒体文件进行合并,并在数据中添加附加信息后生成的组合媒体文件,其中,在所述组合媒体文件中,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容,所述附加信息包括各份媒体内容在所述组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息。
9.根据权利要求3所述的方法,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在媒体文件中的起始时间;所述方法还包括:
对相邻两份媒体内容的被读取情况进行监控,获得第一媒体内容开始被读取的第一绝对时间点,以及第二媒体内容开始被读取的第二绝对时间点;
计算获得所述第一绝对时间点与所述第二绝对时间点之间的第一差值;
从所述第二目标簇的数据单元中确定该第一媒体内容的第一起始时间,以及第二媒体内容的第二起始时间;
计算获得所述第一起始时间与所述第二起始时间之间的第二差值;
将所述第二差值与第一差值之间的差值,确定为所述播放设备从读取到播放之间的时间差。
10.根据权利要求1至7任一项所述的方法,其特征在于,所述媒体内容对应的标识信息包括:所述媒体内容对应的关联内容的标识信息。
11.根据权利要求10所述的方法,其特征在于,所述关联内容的标识信息包括预先为媒体内容指定的关联内容的网络地址,以便所述终端设备通过访问所述网络地址,以获取所述关联内容。
12.根据权利要求10所述的方法,其特征在于,所述媒体内容对应的关联内容的标识信息为预先为所述媒体内容分配的ID信息,并预先在服务器保存ID与关联内容网络地址之间的关联关系,以便所述终端设备利用所述ID信息,从服务器获取所述关联内容的网络地址,并通过访问所述网络地址获取所述关联内容。
13.一种提供媒体内容信息的装置,其特征在于,所述装置应用于存储设备中,所述存储设备中设有无线通讯装置,且存储有预置的媒体文件,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,通过与所述存储设备连接的播放设备对所述媒体文件中的媒体内容进行播放,所述装置包括:
读取信息确定单元,用于在所述媒体文件被读取的过程中,根据所述存储设备数据区的被读取情况,确定在预置的采样时间点正在被读取的媒体内容对应的标识信息;
播放时间确定单元,用于根据所述播放设备从读取到播放之间的时间差,确定在所述采样时间点正在被读取的媒体内容被播放的时间;
目标标识信息确定单元,用于通过所述无线通讯装置接收到终端设备发送的信息获取请求时,根据所述采样时间点正在被读取的媒体内容被播放的时间,确定当前正在播放的媒体内容对应的标识信息,并将所述标识信息作为当前播放的媒体内容对应的目标标识信息;所述信息获取请求用于获取所述播放设备中当前播放的媒体内容对应的目标标识信息;
目标标识信息返回单元,用于通过所述无线通讯装置将所述目标标识信息返回。
14.根据权利要求13所述的装置,其特征在于,还包括:
广播单元,用于通过所述无线通讯装置广播所述无线通讯模块的通信地址信息,以便带有对应的无线通讯装置的终端设备接收到该通信地址信息,并利用该通信地址发送所述信息获取请求。
15.根据权利要求13所述的装置,其特征在于,所述存储设备包括多个簇,所述媒体文件的数据包括媒体内容数据以及媒体内容对应的标识信息,所述媒体文件的数据包括多个数据单元,每个数据单元按照在媒体文件中的先后顺序进行编号,并保存到存储设备数据区的多个簇中,所述媒体内容对应的标识信息记录在预置序号的数据单元中;
通过以下方式确定某采样时间点正在被读取的媒体内容对应的标识信息:
第一簇标识确定单元,用于确定数据区中在所述采样时间点被读取数据单元所在的第一目标簇标识;
第二簇标识确定单元,用于根据文件系统的文件分配表,确定所述第一目标簇标识对应的第二目标簇标识,其中,所述第一目标簇中的数据单元与所述第二目标簇的数据单元属于同一目标媒体文件,所述第二目标簇中保存有该目标媒体文件中所述预置序号的数据单元;
标识信息确定单元,用于根据所述第二目标簇中保存的数据单元,确定在所述采样时间点正在被读取的媒体内容对应的标识信息。
16.根据权利要求15所述的装置,其特征在于,还包括:
快速索引表创建单元,用于预先根据所述文件分配表,建立快速索引表,其中,所述快速索引表的各个条目中保存有各个簇标识对应的指定簇标识,其中,同一条目中,各个簇标识对应的数据单元属于同一媒体文件,且所述指定簇中保存有该媒体文件中所述预置序号的数据单元;
所述第二簇标识确定单元具体用于:
根据所述预先建立的快速索引表,确定所述第一目标簇标识对应的第二目标簇标识。
17.根据权利要求16所述的装置,其特征在于,所述媒体内容对应的标识信息在媒体文件的最后一个数据单元中保存,则所述快速索引表创建单元包括:
遍历子单元,用于遍历所述文件分配表,确定各个簇标识对应媒体文件的起始簇标识;其中,所述起始簇用于保存媒体文件的第一个数据单元;
起始簇记录子单元,用于在各个簇标识所在条目的第一字段中记录各自对应媒体文件的起始簇标识;
结束簇记录子单元,用于如果在遍历的过程中确定出某簇标识为对应媒体文件的结束簇,则将该结束簇的簇标识记录在该媒体文件的起始簇所在条目的第二字段中;其中,所述结束簇用于保存对应媒体文件的最后一个数据单元;
所述第二簇标识确定单元,包括:
第一条目确定子单元,用于确定所述第一目标簇标识所在的第一目标条目;
起始簇确定子单元,用于从该第一目标条目的所述第一字段中确定出该第一目标簇对应媒体文件的起始簇标识;
第二条目确定子单元,用于确定该起始簇标识所在的第二目标条目;
结束簇确定子单元,用于从该第二目标条目的所述第二字段中确定出该第一目标簇对应媒体文件的结束簇标识,将该结束簇标识确定为所述第二目标簇标识。
18.根据权利要求16所述的装置,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;所述快速索引表中还保存有各个簇标识中的数据单元在对应媒体文件中的序号;
所述标识信息确定单元,包括:
序号确定子单元,用于根据所述快速索引表,确定所述第一目标簇中的数据单元在对应媒体文件中的目标序号;
物理位置确定子单元,用于根据所述目标序号以及单个簇的数据容量,确定该第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
第一媒体内容描述信息确定子单元,用于根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
第一匹配运算子单元,用于将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
第一确定子单元,用于将匹配成功的媒体内容对应的标识信息,确定为在所述采样时间点正在被读取的媒体内容对应的标识信息。
19.根据权利要求15所述的装置,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在所述媒体文件中的物理位置信息;
所述装置还包括:
物理位置确定单元,用于根据文件系统的文件分配表,确定所述第一目标簇中保存的数据单元在对应媒体文件中的目标物理位置信息;
所述标识信息确定单元包括:
第二媒体内容描述信息确定子单元,用于根据所述第二目标簇中的数据单元,确定该媒体文件中各份媒体内容分别所在的物理位置信息以及各自对应的标识信息;
第二匹配运算子单元,用于将所述目标物理位置信息与各份媒体内容分别所在的物理位置信息进行匹配运算;
第二确定子单元,用于将匹配成功的媒体内容对应的标识信息,确定为在采样时间点正在被读取的媒体内容对应的标识信息。
20.根据权利要求18或19所述的装置,其特征在于,所述媒体文件是通过将多个待存储媒体文件进行合并,并在数据中添加附加信息后生成的组合媒体文件,其中,在所述组合媒体文件中,各个待存储媒体文件对应该组合媒体文件中的多份媒体内容,所述附加信息包括各份媒体内容在所述组合媒体文件中的物理位置信息,以及各份媒体内容对应的标识信息。
21.根据权利要求15所述的装置,其特征在于,所述媒体文件的数据中包括多份媒体内容的数据,各份媒体内容分别对应的标识信息,以及各份媒体内容在媒体文件中的起始时间;所述装置还包括:
监控单元,用于对相邻两份媒体内容的被读取情况进行监控,获得第一媒体内容开始被读取的第一绝对时间点,以及第二媒体内容开始被读取的第二绝对时间点;
第一差值计算单元,用于计算获得所述第一绝对时间点与所述第二绝对时间点之间的第一差值;
起始时间确定单元,用于从所述第二目标簇的数据单元中确定该第一媒体内容的第一起始时间,以及第二媒体内容的第二起始时间;
第二差值计算单元,用于计算获得所述第一起始时间与所述第二起始时间之间的第二差值;
时间差确定单元,用于将所述第二差值与第一差值之间的差值,确定为所述播放设备从读取到播放之间的时间差。
22.根据权利要求13至19任一项所述的装置,其特征在于,所述媒体内容对应的标识信息包括:所述媒体内容对应的关联内容的标识信息。
23.根据权利要求22所述的装置,其特征在于,所述关联内容的标识信息包括预先为媒体内容指定的关联内容的网络地址,以便所述终端设备通过访问所述网络地址,以获取所述关联内容。
24.根据权利要求22所述的装置,其特征在于,所述媒体内容对应的关联内容的标识信息为预先为所述媒体内容分配的ID信息,并预先在服务器保存ID与关联内容网络地址之间的关联关系,以便所述终端设备利用所述ID信息,从服务器获取所述关联内容的网络地址,并通过访问所述网络地址获取所述关联内容。
CN201410510540.4A 2014-09-28 2014-09-28 提供媒体内容信息的方法及装置 Active CN105528346B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410510540.4A CN105528346B (zh) 2014-09-28 2014-09-28 提供媒体内容信息的方法及装置
HK16110288.2A HK1222238A1 (zh) 2014-09-28 2016-08-30 提供媒體內容信息的方法及裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410510540.4A CN105528346B (zh) 2014-09-28 2014-09-28 提供媒体内容信息的方法及装置

Publications (2)

Publication Number Publication Date
CN105528346A CN105528346A (zh) 2016-04-27
CN105528346B true CN105528346B (zh) 2019-03-08

Family

ID=55770580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410510540.4A Active CN105528346B (zh) 2014-09-28 2014-09-28 提供媒体内容信息的方法及装置

Country Status (2)

Country Link
CN (1) CN105528346B (zh)
HK (1) HK1222238A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107920262A (zh) * 2016-10-08 2018-04-17 北京优朋普乐科技有限公司 一种媒体文件发布方法及装置
CN108647228B (zh) * 2018-03-28 2021-08-24 中国电力科学研究院有限公司 可见光通信大数据实时处理方法和系统
CN109784915B (zh) * 2018-11-30 2021-03-16 百度在线网络技术(北京)有限公司 内容预置方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483054A (zh) * 2008-12-25 2009-07-15 深圳市迅雷网络技术有限公司 一种播放多媒体文件的方法及装置
CN103260090A (zh) * 2013-04-26 2013-08-21 电子科技大学 一种用于p2p三维流媒体系统中的视频段调度及传输方法
CN103780465A (zh) * 2012-10-22 2014-05-07 华为终端有限公司 媒体内容播放的方法及媒体服务器、设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080016266A1 (en) * 2006-07-14 2008-01-17 Yi-Chun Liu Method And Apparatus For Smart Storage Devices
US8171202B2 (en) * 2009-04-21 2012-05-01 Google Inc. Asynchronous distributed object uploading for replicated content addressable storage clusters

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483054A (zh) * 2008-12-25 2009-07-15 深圳市迅雷网络技术有限公司 一种播放多媒体文件的方法及装置
CN103780465A (zh) * 2012-10-22 2014-05-07 华为终端有限公司 媒体内容播放的方法及媒体服务器、设备
CN103260090A (zh) * 2013-04-26 2013-08-21 电子科技大学 一种用于p2p三维流媒体系统中的视频段调度及传输方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Boaz—面向高清媒体的快速文件系统";刘贤焯 等;《小型微型计算机系统》;20140630;全文
"一种轻型高效的多媒体播放列表解决方案";孙熠 等;《计算机技术与发展》;20140331;全文

Also Published As

Publication number Publication date
HK1222238A1 (zh) 2017-06-23
CN105528346A (zh) 2016-04-27

Similar Documents

Publication Publication Date Title
CN105657558B (zh) 一种信息提供方法、展示方法、装置及智能电视
CN103457993B (zh) 本地缓存装置和提供内容缓存服务的方法
CN105530536B (zh) 提供媒体关联信息的方法及装置
US9456025B2 (en) Method and system for determining identity/presence of a mobile device user for control and interaction in content distribution
CN102546608B (zh) 用于同步播放媒体信息的方法、装置、设备和系统
JP2015505176A5 (zh)
CN105027578A (zh) 利用覆盖网络的连接媒体最终用户体验
CN110267053A (zh) 直播方法、装置及系统
CN106471539A (zh) 用于混淆受众测量的系统和方法
CN103618956A (zh) 一种获取视频关联信息的方法及移动终端
CN102523492A (zh) 一种互动评论系统的评论方法、电视机及移动终端
CN108429918A (zh) 视频直播的方法和装置
CN103890794A (zh) 用于使用近场通信(nfc)与显示器进行交互的方法、装置和系统
CN103051690B (zh) 一种局域网内车载主机播放手机音乐的系统及实现方法
JP2015530640A (ja) 番組プロモーションの成果を判定するためのシステム、方法、及びコンピュータ可読媒体
CN105528346B (zh) 提供媒体内容信息的方法及装置
CN103763587A (zh) 一种播放多媒体数据的方法及装置
CN103460709A (zh) 用于图像回放验证的方法
CN104185040A (zh) 应用同步方法、应用服务器及终端
CN104618799A (zh) 视频播放方法及装置
CN105308976A (zh) 在媒体内容寻找期间呈现广告
CN104994402A (zh) 获取音视频节目相关信息的方法、装置及系统
CN103399917B (zh) 数据文件插入方法、装置和系统
CN105847316A (zh) 一种信息共享方法和系统、一种客户端及一种服务器
CN105635825A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1222238

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant