CN101689205A - 避免刷新与数字媒体内容相关的元数据的数据库并提供改善的用户体验的数字媒体播放器和方法 - Google Patents
避免刷新与数字媒体内容相关的元数据的数据库并提供改善的用户体验的数字媒体播放器和方法 Download PDFInfo
- Publication number
- CN101689205A CN101689205A CN200880023737A CN200880023737A CN101689205A CN 101689205 A CN101689205 A CN 101689205A CN 200880023737 A CN200880023737 A CN 200880023737A CN 200880023737 A CN200880023737 A CN 200880023737A CN 101689205 A CN101689205 A CN 101689205A
- Authority
- CN
- China
- Prior art keywords
- digital media
- database
- media player
- player
- removable storage
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
Abstract
公开了用于避免刷新与数字媒体内容相关的元数据的数据库和用于提供改善的用户体验的数字媒体播放器和方法。在一个实施例中,存储与数字媒体内容相关的元数据的数据库的数字媒体播放器确定在数字媒体播放器断电时可移除存储器器件是否与数字媒体播放器相连接。只有在确定在数字媒体播放器断电时可移除存储器器件与数字媒体播放器相连接的情况下,数字媒体播放器刷新数据库。还提供了其他实施例。
Description
背景技术
一些数字媒体播放器具有用于接纳可移除存储卡的槽,该可移除存储卡为数字媒体播放器提供了用于存储数字媒体内容的另外的存储器。除了为数字媒体播放器提供更多存储器之外,可移除存储卡还可用于组织和存储不同类型的数字媒体内容。例如,用户可以在一个可移除存储卡上存储某个流派的歌曲,并在另一可移除存储卡上存储不同流派的歌曲。以此方式,用户可以简单地交换在数字媒体播放器中的存储卡来听不同类型的歌曲流派。当数字媒体播放器被通电且在其存储卡槽中插入了存储卡时,数字媒体播放器可能不知道在该存储卡上存储了什么数字媒体内容。因而,在通电时,数字媒体播放器扫描存储卡,并建立与在存储卡上存储的数字媒体内容相关的元数据的数据库。该扫描和建立数据库的过程可以是相对耗时的。例如,数字媒体播放器可能需要多于两分钟来扫描并建立装满的2千兆字节(giga byte)的存储卡的数据库。每次在将数字媒体播放器通电且在播放器中插入存储卡时刷新数据库——即使没有对存储卡进行改变,也将要求刷新数据库。由于用户在能够用数字媒体播放器播放数字媒体内容之前,需要等待刷新数据库,因此用户可能变得沮丧,并决定使用不具有存储卡的数字媒体播放器以便避免延迟。
发明内容
本发明由权利要求限定,并且此部分中的任何内容都不应该作为对那些权利要求的限制。
通过介绍,以下描述的实施例提供了用于避免刷新与数字媒体内容相关的元数据的数据库并用于提供改善的用户体验的数字媒体播放器和方法。在一个实施例中,存储与数字媒体内容相关的元数据的数据库的数字媒体播放器确定在数字媒体播放器断电时,可移除存储器器件是否与数字媒体播放器连接。只有确定在数字媒体播放器断电时可移除存储器器件与数字媒体播放器连接,数字媒体播放器才刷新数据库。在另一实施例中,数字媒体播放器确定自从上次更新数据库被存储在可移除存储器器件上的数字媒体内容是否改变。如果确定自从上次更新数据库被存储在可移除存储器器件上的数字媒体内容改变了,则数字媒体播放器刷新数据库。
在另一实施例中,存储媒体传输协议数据库的数字媒体播放器确定自从上次更新媒体传输协议后被存储在与数字媒体播放器连接的可移除存储器器件上的数字媒体内容改变。然后,数字媒体播放器利用与存储在可移除存储器器件中的数字媒体内容相关的元数据来刷新媒体传输协议数据库。在另一实施例中,数字媒体播放器在可移除存储器器件中存储数字媒体内容,在数字媒体播放器的存储器中存储与数字媒体内容相关的辅助信息,并在可移除存储器器件中存储该辅助信息。以此方式,辅助信息是可以利用可移除存储器器件携带的,并当将可移除存储器器件置于与第二数字播放器通信时可由第二数字播放器存取。公开了其他实施例,每个实施例可以单独使用或者结合在一起使用。
现在将参考附图来描述这些实施例。
附图说明
图1是一个实施例的数字媒体播放器的图示。
图2是一个实施例的存储卡插入检测电路的图示。
图3是图示一个实施例的存储卡插入检测电路的操作的流程图。
图4是图示用于避免刷新与数字媒体内容相关的元数据的数据库的另一实施例的方法的流程图。
图5是图示用于改善使用可移除存储器器件的数字媒体播放器的体验的实施例的方法的流程图。
具体实施方式
现在转到附图,图1是一个实施例的数字媒体播放器100的图示。该数字媒体播放器100可以采取任意形式,诸如但不限于便携式音频播放器(例如MP3播放器)、便携式视频播放器、蜂窝电话、汽车立体声系统等。虽然使用了术语“播放器”,但是应当理解,除了播放数字媒体内容之外,数字媒体播放器还能够记录(来自内部或外部源的)数字媒体内容。数字媒体内容可以采取任何适当的形式,诸如但不限于音频文件或(带有或不带有音频的)视频文件。
如图1所示,此实施例的数字媒体播放器100包括存储器110以及被配置用于(例如用配合的电连接器)接纳可移除存储器器件的槽120。可移除存储器器件可以采取任何适当的形式,诸如存储卡(例如SD卡)或记忆棒。在这些实施例中,可移除存储器器件将采取可移除存储卡200的形式。应当注意,在此将使用各种术语来描述将可移除存储器器件置于与数字媒体播放器100通信(例如将可移除存储器器件插入播放器100中,将可移除存储器器件与播放器100连接等等)。应当清楚的是,不需要特别的机制,且不应将此带入权利要求中。此外,可以将可移除存储器器件置于直接或通过一个或多个组件间接地与数字媒体播放器100通信,这一个或多个组件可能会或可能不会在此示出或描述。数字媒体播放器100中的存储器110也可以采取任意的形式(固态的、磁的、光的等),虽然优选地该存储器110是非易失性存储器(例如闪存)。还应当注意,在数字媒体播放器100内部的存储器110可以是可移除的,就像可移除存储卡200一样。
还如图1所示,数字媒体播放器100包括几个组件:微处理器130、RAM140(例如SRAM)、(一个或多个)用户界面(user interface)设备150、通用串行总线(USB)接口160和存储卡插入检测电路160。在图1中未示出数字媒体播放器100的其他组件以简化附图,数字媒体播放器100的其他组件可以包括例如允许在数字媒体播放器100和其他设备之间的数字媒体文件和其他数据的无线传输的组件。应当注意,虽然将图1中的组件示出为彼此分离的,但是也可以组合这些组件中的一个或多个。例如,虽然在图1中示出微处理器130和RAM 140为两个分离的组件,但是微处理器130和RAM 140可以是同一模具(die)或包装(package)的一部分。
在此实施例中,一般由执行被存储在存储器110中作为固件112的计算机可读程序代码的微处理器130来控制数字媒体播放器100的操作。应当注意,虽然在图1中示出了微处理器130,但是可以使用不同形式的电路来执行在此描述的功能的一些或全部(以及其他功能)。“电路”可以包括一个或多个组件,并且可以是纯粹的硬件实现和/或组合的硬件/软件(或固件)实现。因而,例如,“电路”可以采取微处理器或处理器以及存储了可由(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌入式微控制器中的一个或多个的形式。应当注意,权利要求中列出的“电路”可能包括或可能不包括下面描述的存储卡插入检测电路170。此外,存储卡插入检测电路170可能包括或可能不包括微处理器。
在操作时,数字媒体播放器100使用其(一个或多个)用户界面设备150以允许用户选择并播放存储在存储器110中的或在可移除存储卡120中的数字媒体内容。(一个或多个)用户界面设备150可以包括例如:显示设备,用于显示可用的数字媒体文件的列表以及相关信息(例如专辑封面(albumart));滚轮或箭头键,用于允许用户选择数字媒体文件;以及麦克风插孔或扬声器,用于提供所选数字媒体文件的音频输出。如果所选数字媒体文件包含视频,则可以在显示设备上显示该视频。
通常,数字媒体播放器100可以存储具有关于存储在存储器110和/或可移除存储卡200中的数字媒体文件的信息的一个或多个数据库。可以在选择和播放数字媒体内容时由数字媒体播放器100使用这些数据库。在一些情况下,可以由经由USB接口160或图1中未示出的其他组件(例如无线发射器)连接到数字媒体播放器100的主机(例如PC、另一数字媒体播放器等)使用这些数据库。虽然可以使用任意数量和类型的数据库,但是在此具体实施例中,使用两个数据库:用户界面数据库116和媒体传输协议(MTP)数据库118,在此实施例中两者都被存储在存储器110中(虽然如果需要,数据库116、118可以被存储在不同的存储器中)。应当注意,在此实施例中使用的数据库的数量和类型不应写入权利要求中,除非在权利要求中明确列出。
用户界面数据库116和MTP数据库118两者都存储与在存储器110和/或可移除存储卡200中存储的数字媒体内容相关的元数据。元数据指的是关于数字媒体内容的信息。元数据的例子可以包括但不限于,允许用户选择用于回放的数字媒体内容的信息(例如歌曲名、专辑名、艺术家名等)、允许数字媒体播放器100得知如何解码并播放数字媒体内容的信息(例如比特率、编码方法(例如MP3或WMA)、用于适当地按序播放歌曲的在专辑上的歌曲的顺序等)以及关于数字媒体内容的相关信息(例如专辑封面、歌曲/专辑的持续时间等)。可以将元数据存储在数字媒体内容的文件本身中(例如文件的头标块(header block)中),或者可以存储在分离的位置(例如可以与数字媒体内容文件分离地存储专辑封面的jpeg图像)。虽然一些形式的元数据可以与来自文件系统的信息相同(例如歌曲的名称可以与实际文件名相同),但是一般而言,元数据通常是不同于典型地从文件系统信息收集的信息(例如文件名和文件大小)的信息。
此实施例中的数字媒体播放器100可以按MTP模式或者海量存储类(MSC)模式操作,其中数字媒体播放器100用作通常的盘驱动器(diskdrive)。MTP是由微软规定的并主要结合数字版权管理(DRM)使用的协议。DRM所保护的数字媒体内容典型地被加密,并需要可能被存储在数字媒体播放器100上的许可证。当数字媒体文件按MTP模式被存储在数字媒体播放器100中时,微处理器130使用MTP堆栈,根据MTP协议将数字媒体内容存储在存储器110中的一个文件中,并将相关的许可证存储在存储器110中的另一文件中。在此实施例中,用于播放数字媒体内容的许可证被存储在数字媒体播放器100的存储器110中。因而,可以仅使用数字媒体播放器100(并且不使用不同的数字媒体播放器100,因为其不会有所需的许可证)播放存储在可移除存储卡200上的受保护的数字媒体内容。(在可替换的实施例中,受保护的数字媒体内容和相关的许可证两者都被存储在可移除存储卡200上,以使得数字媒体内容在任何适当的设备中可携带并可播放)。当数字媒体播放器100连接到主机设备时,数字媒体播放器100与主机设备协商USB接触,并向主机设备发送包含MTP数据库118的文件。根据此数据库118中的元数据,主机设备将能够显示存储在数字媒体播放器100的存储器110和/或可移除存储卡200中的数字媒体内容的呈现。由于主机设备对存储在存储器110或卡200中的数字媒体内容的了解来自于MTP数据库118,因此优选地,保持MTP数据库118是最新的。否则,在创建MTP数据库118后添加到存储器110或者卡200的数字媒体内容将对于主机设备不可见。
用户界面数据库116也包含与存储在存储器110和可移除存储卡200中的数字媒体内容相关的元数据。虽然使用MTP数据库118以允许主机设备观看以MTP模式存储在数字媒体播放器100中的数字媒体内容,但是在此实施例中,数字媒体播放器100使用用户界面数据库116来存取和播放以MTP和非MTP存储的数字媒体内容。例如,数字媒体播放器100可以使用在用户界面数据库116中的元数据来在其显示屏幕上显示歌曲标题、艺术家等用于由用户选择,然后使用元数据来了解如何解码和播放所选的歌曲。
虽然用户界面数据库116可以与MTP数据库118相同,但是在此实施例中,用户界面数据库116是MTP数据库118的子集,因为数字媒体播放器100不需要被存储在MTP数据库118中的所有元数据来执行其操作。如此,用户界面数据库116可以从存储在MTP数据库118中的元数据的子集建立,或者可以与MTP数据库118分离地建立。用户界面数据库116还可以包含未存储在MTP数据库118中的信息。在一个当前的优选实施例中,从存储器110中复制用户界面数据库116并将其临时存储在RAM 140中,优选地该RAM 140小于(例如320K)存储器100,并且还可以允许对用户界面数据库的较快存取。如果在用户界面数据库被存储在RAM 140时对用户界面数据库进行了任何改变,则可以将这些改变更新到在存储器110中存储的用户界面数据库116。
如MTP数据库118那样,优选保持用户界面数据库116是最新的;否则,在建立用户界面数据库后添加到存储器110或卡200的数字媒体内容将不可由数字媒体播放器访问。存在可以触发用户界面和MTP数据库116、118的刷新的某些动作。例如,如果存储卡200被移除并被重新插入数字媒体播放器100中,可能当卡200在播放器100的外部时,将卡200插入修改(例如添加、移除、重命名等)了存储在卡200中的数字媒体内容的主机设备或另一数字媒体播放器。在这种情况下,用户界面和MTP数据库116、118将不能准确地表现卡200的当前状态。
为了保持用户界面数据库116是最新的,微处理器130可以在某些条件下引起用户界面数据库116的刷新。在转到一些例子之前,应当注意,用户界面数据库116和MTP数据库118两者都可以被刷新。然而,由于此实施例中的数字媒体播放器100在自己操作时仅使用用户界面数据库116并不使用MTP数据库118来访问数字媒体内容,因此在此实施例中数字媒体播放器100将仅刷新用户界面数据库116。(可以由稍后连接到播放器100的主机设备刷新MTP数据库118。)然而,应当注意,用户界面数据库116和MTP数据库118两者(或者仅MTP数据库118)都可以被刷新。因而,刷新哪些数据库以及如何刷新数据库不应写入权利要求中,除非在权利要求中明确列出。
如上所述,存在几种情况,在这些情况下,用户界面数据库116可能不再是最新的。一种这样的情况是当数字媒体播放器100连接到具有修改存储在存储器110和/或卡200中的数字媒体内容的能力的主机设备时。如果主机设备添加、删除、重命名等存储在播放器100中的任何数字媒体内容,则用户界面数据库116将不再准确地表现存储在播放器100中的数字媒体内容。为了确保用户界面数据库116是最新的,可以设计播放器100使得对连接到能够修改数字媒体内容的主机设备的检测将触发用户界面数据库116的刷新。例如可以通过检测来自USB接口160的电源中断或者确定播放器100在USB接口160上完全协商了(negotiate)USB协议来检测该连接。
另一种情况是当存储卡200被移除并与播放器100重新连接时。虽然存储卡200在播放器100外部,但是可能将存储卡200连接到修改了存储在卡200上的数字媒体内容的主机系统或另一数字媒体播放器。另外,重新插入播放器100中的存储卡可能是具有未在用户界面数据库116中规定的数字媒体内容的不同的卡。因而,如果当数字媒体播放器100通电时数字媒体播放器100检测到存储卡被插入卡槽120中(例如通过监视卡槽120的管脚线(pin-out)的微处理器130),则数字媒体播放器100可以执行用户界面数据库116的刷新。应当注意,播放器100可以刷新整个用户界面数据库116(包括用于存储在存储器110中的数字媒体内容114的项目(entry),即使卡的插入不损及这些项目),或者播放器100可以仅刷新与存储在卡200上的数字媒体内容相关的在用户界面数据库116中的项目(如由例如用户界面数据库116中的标记(flag)指示的)。
如果数字媒体播放器100被断电,则微处理器130将不再通电,因而将不能监视卡槽120的管脚线以确定在播放器100断电时是否插入了存储卡。因而,作为避免损及到(compromised)数据库的预防措施,可以设计数字媒体播放器100以在每次数字媒体播放器100通电且存储卡被插入卡槽120中时刷新用户界面数据库116。由于刷新总是发生在通电时,因此避免了过时的用户界面数据库116的可能性。然而,如以上背景技术部分所述,刷新用户界面数据库116的处理可能是相对耗时的。例如,对于装满的2千兆字节的存储卡,数字媒体播放器100可能需要多于两分钟来刷新数据库118。由于每次播放器100通电时,都将遇到这种延迟——即使当播放器100断电时没有从槽120中移除存储卡200——因此用户可能变得很沮丧,并决定不在数字媒体播放器100上使用可移除存储卡200以避免此延迟。
为了避免用户界面数据库的不需要的刷新,在此实施例中,数字媒体播放器100包括存储卡插入检测电路170,其检测可移除存储卡何时插入数字媒体播放器100中。优选地通过即使在数字媒体播放器100断电时也提供电源的电池对存储卡插入检测电路170供电,因此,该电路170可以即使当数字媒体播放器100断电时也检测存储卡的插入。当数字媒体播放器100通电且存储卡被插入卡槽120时,代替自动刷新用户界面数据库116,数字媒体播放器100检查存储卡插入检测电路170以确定在数字媒体播放器100断电时是否插入了可移除存储卡。只有在确定在数字媒体播放器100断电时将存储卡插入了数字媒体播放器100中时,才刷新用户界面数据库116;否则,避免刷新操作。
图2是一个实施例的存储卡插入检测电路170的图示。应当注意,图2所示的实施方式仅仅是例子,并且存储卡插入检测电路170可以采取其他形式。因而,不应将图2所示的组件写入权利要求中,除非在权利要求中明确列出。如图2所示,在此实施例中,存储卡插入检测电路170包括D型触发器175和多个电阻R1、R2、R3。在一个实施方式中,触发器175采取74 175触发器(部件号SN74LVC1G175DCKR PbF)的形式,并且是集成电路的一部分,而电阻R1、R2和R3是分别具有以下阻值(具有5%的容差)的R0402电阻器:100欧、47千欧和10千欧。当然,可以使用其他的值和设计。例如,代替D型触发器,可以使用另一类型的锁存器。
在此实施例中,由电池(未示出,但是其提供图2所示的CHG_OUT信号)对触发器(flip-flop)175供电,使得即使当数字媒体播放器100断电时,触发器175也可以工作。向触发器175的时钟的输入被连接到存储卡槽120。当将存储卡输入槽120时,槽120向时钟输入提供信号,致使该时钟从低到高。将卡从槽120移除致使时钟从高到低。触发器175的D输入连接到电池,该电池即使当数字媒体播放器100断电时也向D输入提供信号(CHG_OUT)。由于D输入总是处于高状态,因此当将存储卡插入槽120中时,Q将处于高(因为卡插入致使时钟从低到高)。Q输出被提供给微处理器130。随后从槽120移除该卡不影响此实施例中的Q的值,因为时钟的改变不会将触发器170复位,并且来自电池的恒定信号被连接到触发器170上的反相清除输入(inverted clear input)。然而,可以根据来自微处理器130的信号将触发器175复位。
图3是图示存储卡插入检测电路170的操作的流程图300。如图3所示,当数字媒体播放器100通电时,微处理器130刷新用户界面数据库116(动作310),如上所述,各种情形可能触发该刷新,包括但不限于微处理器130检测到来自存储卡槽120的插入信号的改变(例如移除存储卡并随后插入存储卡),或者微处理器130检测到数字媒体播放器被连接到能够修改存储在插入的存储卡上的数字媒体内容的主机设备。可以以任何适当的方式刷新用户界面数据库116。例如,可以擦除并从头开始(from scratch)重新建立整个数据库116(包括来自内部存储器110的项目)。可替换地,可以仅擦除并从头开始重新建立被标识为属于该卡(但不属于内部存储器110)的那些项目。作为另一种替换方式,代替擦除数据库的项目并重新建立该数据库,可以在刷新处理期间在数据库中保持项目并验证项目,且移除或修改过时的项目。在刷新了用户界面数据库116之后,微处理器130将存储卡插入检测电路170清除(动作320)。在此实施例中,微处理器130通过采取(assert)适当的信号来将触发器清除来执行此动作。将触发器175清除意味着Q输出将是低。
如上所述,即使当数字媒体播放器100断电时,也将电源提供给存储卡插入检测电路170。因而,存储卡插入检测电路170可以检测在数字媒体播放器100断电时存储卡是否被插入存储卡槽120中(动作330)。具体地,当将存储卡从槽120移除,并将相同或不同的存储卡插入槽120中时,卡的插入致使时钟信号从低到高,这导致Q输出也从低到高。(因为存储卡槽120未连接到触发器175的清除输入,随后存储卡的移除将不会导致Q输出从高到低)。
当稍后数字媒体播放器100通电时,微处理器130经历通电(或启动)例程,该通电(或启动)例程的一部分是确定在播放器100断电时存储卡插入检测电路170是否检测到存储卡插入槽120中(动作340)。如果存储卡插入检测电路170在播放器100断电时检测到存储卡插入槽120中(例如Q输出是高而不是低),并且如果微处理器130检测到当前在卡槽120中存在卡(如果卡槽120中没有卡,则如果数据库包括用于指定“外部”数字媒体内容的字段,则可能不需要数据库刷新),微处理器130将了解槽120中出现的卡可能不包含与当用户界面数据库116上次刷新时(即当Q输出上次被复位到0时)相同的数字媒体内容。因而,用户界面数据库116可能是不准确的,且微处理器130将读取该卡上的数字媒体内容,并刷新用户界面数据库116(动作350)。
然而,如果存储卡检测电路170在播放器100断电时没有检测到存储卡插入槽120中(例如Q输出仍然是低),微处理器130将了解在通电时在槽120中的卡是与上一次刷新用户界面数据库116时(即Q输出上一次被复位到0时)在槽120中的卡相同的卡。由于微处理器130了解没有对卡上的数字媒体内容做出改变(由于在断电期间没有在播放器100中插入卡,因此另一设备没有机会改变卡上的数字媒体内容),因此微处理器130可以继续通电程序而不刷新用户界面数据库116(动作360)。这将避免可能使用户沮丧并阻碍其使用可移除存储卡的不必要的启动延迟。
存在可以与这些实施例一起使用的许多替换方式。例如,代替基于在播放器100断电时对存储卡的插入的检测而触发用户界面数据库116的刷新,可以通过在播放器100断电时对可移除存储卡的检测来触发用户界面数据库116的刷新。此替换方式可以优选地用在用户界面数据库116不具有用于区分被存储在卡上与被存储在内部存储器110中的数字媒体内容的字段的情况下。在这些情况下,可能需要数据库刷新以避免向用户呈现播放对于数字媒体播放器100不再可用的数字媒体内容的选项。在另一实施例中,代替在数据库刷新时将触发器175清除并随后在Q值是高时触发新的刷新,微处理器130可以在刷新数据库时存储触发器175的状态,稍后将触发器175的当前状态与所存储的状态比较。这些状态之间的差别将表明卡被移除了和/或被插入到卡槽120中,并将触发数据库刷新。
应当注意,在数字媒体播放器100通电时,微处理器130可以直接监视卡槽120,并基于卡槽120是否将插入信号提供给微处理器130来触发用户界面数据库116的刷新。然而,微处理器130也可以通过监视触发器175的Q输出来在通电时检测卡的插入。
在以上实施例中,通过在数字媒体播放器100断电时(如使用存储卡插入检测电路170检测)或在数字媒体播放器100通电时(如从来自卡槽120的插入线或使用存储卡插入检测电路170检测)存储卡被插入卡槽120中,来触发数据库刷新。在任一情况下,从播放器100移除存储卡带来了在存储卡上的数字媒体内容被修改的可能性,并且该可能性是刷新用户界面数据库116的原因。然而,可能的是,数据库刷新可能是不需要的,因为当卡在播放器100外部时,卡上的数字媒体内容可能没有改变。
为了避免在这些情况下用户界面数据库116的不必要的刷新,微处理器120可以实现图4的流程图400中所示的方法。具体地,微处理器120可以确定自从上次更新数据库、被存储在存储卡上的数字媒体内容是否改变(动作410),并且如果确定自从上次更新数据库、被存储在存储卡上的内容改变,则刷新该数据库(动作420)。利用此方法,如果存储卡上的数字媒体内容没有改变(或者换种方式,如果在插入的存储卡上的数字媒体内容与存储在数字媒体播放器中的用户界面数据库116一致),微处理器130避免刷新数据库。该方法可以单独使用或者与用于在数字媒体播放器100断电时的存储卡的移除/插入检测的以上实施例组合使用。而且,该方法可以在数字媒体播放器100的通电例程期间使用和/或在数字媒体播放器100已经通电时使用。该方法还可以在数字媒体播放器100被连接到能够修改在卡中的数字媒体内容的设备时使用,以检测这种设备是否实际修改了数字媒体内容。以此方式,代替在检测到与主机设备的USB连接后自动触发用户界面数据库116的刷新,微处理器130可以确定主机设备是否实际地修改了数字媒体内容。
可以使用任何适当的方法来确定自从上次更新数据库、被存储在存储卡上的数字媒体内容是否改变。例如,可以在数字媒体播放器100的内部存储器110中存储在卡上的每个数字媒体内容文件的细节的列表。每次卡被插入播放器100时可以建立类似的列表,并将其与所存储的列表相比较以确定是否需要数据库刷新。由于这种列表的建立可能是相对耗时的处理,因此微处理器130可以使用来自存储卡的文件分配表(FAT)的信息作为快捷方式(shortcut)。例如,微处理器130可以在建立用户界面数据库116时对存储卡的FAT表目录结构执行校验和操作,并将该校验和值存储在数字媒体播放器100的存储器110中。在通电时,微处理器130可以对被插入卡槽120中的存储卡的FAT表目录结构执行新的校验和计算,并将新的校验和值与被存储在存储器110中的校验和值相比较。由于FAT表目录结构中的值(以及由此的FAT表目录结构的校验和值)是基于存储卡的内容的,因此在计算校验和时校验和值提供了对于存储卡上的内容相对唯一的数字。另外,计算校验和值比产生被存储在存储卡上的数字媒体内容的细节的足够唯一的列表快得多,因为FAT表目录结构相对较小。校验和值的匹配将表明未修改该卡上的数字媒体内容,并可以避免数据库刷新。相反,校验和值的不匹配将表明修改了卡中的数字媒体内容,并将执行数据库刷新。
作为另一替换,代替比较校验和值,微处理器130可以比较FAT表中的一个或多个字段。适当的FAT字段包括FSI_Free_Count字段和FSI_Nxt_Free字段。FSI_Free_Count字段包含在卷(volume)上的最后已知的空闲簇数量(即其表明在卷上有多少簇是空闲的)。FSI_Nxt_Free字段表明驱动器应该在该处开始寻找空闲簇的簇号。当从刷新了用户界面数据库116时起未改变的这些值表明,在存储卡上的数字媒体内容也很可能是未改变的。虽然比较这些字段比计算校验和值快得多,但是这些字段中的值可能不像校验和值那样唯一,因为可以利用多个配置来获得给定的簇号。因而,这些字段的使用可能导致比当使用校验和值时更多的错误的肯定/否定(more falsepositives/negatives)。
如上所述,虽然在以上示例中仅刷新用户界面数据库116,但是当发生刷新操作时,可以刷新用户界面数据库116和MTP数据库118两者(或者仅MTP数据库118)。与用户界面数据库116一起(或代替用户界面数据库116)刷新MTP数据库118存在一些优点。在转向那些优点之前,应当注意,可以通过在播放器100断电时检测存储卡插入(例如通过使用存储卡插入检测电路170)、通过确定自从上次更新数据库被存储在可移除存储器器件上的数字媒体内容改变、通过检测USB数据传送或者通过任何其他适当的技术来触发刷新MTP数据库118。因而,涉及存储卡插入检测电路170的使用以及(例如使用校验和值等)数字媒体内容是否改变的确定的上述实施例可以、但不是必须结合刷新MTP数据库118的以下实施例使用。
在一些数字媒体播放器中,仅通过主机设备——而不通过数字媒体播放器来改变MTP数据库——并且在主机修改(例如添加、删除等)播放器的内部存储器或者可移除存储卡上的数字媒体内容时发生这种改变(虽然某些播放器可能能够在由播放器本身进行记录时改变MTP数据库)。这种安排存在一些缺点。例如,由于MTP数据库被存储在播放器上,因此MTP数据库不会随着可移除存储卡而移动。因而,当从第一播放器中移除可移除存储卡并将其插入第二播放器中时,连接到第二播放器的主机将不能观看(例如组织、复制等)在该卡上的MTP存储的数字媒体内容,因为主机用于观看该卡上的内容所需要的MTP数据库被存储在第一播放器中。解决该问题的一种方式是将MTP数据库的拷贝存储在该卡上,因此可利用该卡携带MTP数据库。然而,如果在MTP数据库向卡的写入期间拔出卡,该方法容易发生MTP数据库崩溃(corruption)。在此实施例中,为了克服这些缺点,当将新的卡插入播放器100中时和/或当修改了(例如添加、删除等)卡中的数字媒体内容时,数字媒体播放器100更新MTP数据库118。(如上所述,数字媒体播放器100还优选地但不必须更新用户界面数据库116)。随着MTP数据库118被更新,连接到播放器100的主机设备将能够读取由不同的主机设备存储在卡上的数字媒体内容。
在以上例子中,利用由另一主机设备以MTP模式存储的数字媒体内容的元数据来更新MTP数据库118。应当注意,还可以利用非MTP存储的数字媒体内容(即,用MSC模式存储的数字媒体内容)的元数据来更新MTP数据库118。以此方式,将利用在该卡上的所有数字媒体内容——MTP存储的内容和MSC存储的内容——的元数据来更新MTP数据库118。这避免了利用一些数字媒体播放器时遇到的互用性(interoperability)问题。当通过MSC卡读取器将数字媒体内容加载到可移除存储卡上时、或者当将播放器100被用作非MTP主机设备(例如Apple Mac、Linux系统、未以MTP模式操作的MTP设备等)上的MSC卡读取器时,这种内容的元数据未被存储在MTP数据库118中。由于MTP主机设备仅可以看到其元数据被存储在MTP数据库118中的内容,因此在卡中MSC存储的内容对于MTP主机不可见。这使得使用混合系统来管理数字媒体内容很困难或者是不可能的。通过利用来自以MTP存储内容和MSC存储的内容的元数据来更新MTP数据库118,MTP主机将能够观看该卡上的所有内容,无论其是否是使用MTP存储的。
如上所述,可以以任何适当的方式刷新数据库。如果数据库允许与播放器100的内部存储器110上的数字媒体内容相关的项目不同地标记与卡上的数字媒体内容相关的项目,则当从播放器100移除卡时,播放器100可以删除(或者“冲掉”)外部项目(因为该内容将不再可用于播放)。如果稍后将卡重新插入播放器100中,播放器100可以从卡上的内容中读取元数据,并刷新数据库。然而,利用诸如专辑封面和播放列表信息的辅助信息,可能出现问题。这种辅助信息典型地由主机设备存储在播放器100的内部存储器110中(不是可移除卡中),并且指向该信息的位置的指针被存储在数据库中。当冲掉数据库中的外部项目时,指针和存储的辅助信息也被冲掉了。因而,当将卡重新插入播放器100中时,辅助信息将不可用。当代替重新插入播放器100中而是将卡插入不具有辅助信息的第二播放器中时,出现类似的问题(因为该辅助信息最初存储在播放器100中而不是第二播放器中)。为了解决此问题,在此实施例中,将辅助数据的副本存储在存储卡中,由此使得通过该卡可携带辅助数据。以此方式,当将卡插入第二播放器中时,第二播放器将向其MTP数据库添加从该卡读取的元数据和辅助数据两者。由于仅辅助数据的拷贝(而不是MTP数据库的副本)被存储在该卡中,因此避免了以上注意到的数据库崩溃的可能性。
如上所述,在此所述的每个实施例可以被单独或组合使用。图5呈现了图示如何一起使用这些实施例的每个的一个实施例的流程图500。现在转向图5,当播放器100通电时或者当将播放器100附连到主机设备的USB电缆卸除时(动作505),微处理器130执行卡处理机(handler)例程。首先,确定外部存储卡是否存在(动作510)。如果外部存储卡不存在,则卡处理机的操作完成(动作515)。然而,如果外部存储卡存在,则进行关于自从上次数据库更新起是否插入了卡的确定(动作520)。例如,可以使用上述存储卡插入检测电路170来进行该确定(虽然也可以使用其它检测技术)。如果自从上次数据库更新起没有插入卡,则进行关于是否传送了USB数据的确定(动作525)。如果在播放器100连接到主机设备时传送了USB数据,则可能在外部卡中的内容改变并因此数据库将过时。如果没有传送USB数据,则卡处理机的操作完成(动作515)。否则,如果对于确定520或525的答案是“是”,则冲掉MTP数据库118中的外部卡项目(动作530),并删除来自内部存储的MTP数据库文件夹的外部播放列表和专辑封面文件(动作530)。虽然在此例子中使用了播放列表和专辑封面两者作为辅助信息,但是应当注意,可以仅使用播放列表信息或者仅使用专辑封面。而且,可以使用其它形式的辅助信息。
接下来,将MTP数据库118中的内部项目传送到用户界面数据库116(动作545)。然后对于MSC传送的内容而扫描内部存储装置(或存储器)110,并将其添加到用户界面数据库116(并可选地添加到MTP数据库118)(动作550)。然后,扫描外部存储卡(存储装置),并将项目添加到用户界面数据库116和MTP数据库118(动作555)。最终,将在外部卡上发现的任何播放列表或专辑封面文件复制到内部MTP数据库文件夹(动作560)。
当播放器100通电时或者与主机设备的USB连接断开时,执行以上处理。如果相反在播放器100通电时将存储卡插入播放器100中(动作570),进行关于卡中的内容是否与上次数据库更新时的内容相同的确定(动作575)。例如可以使用上述的任何技术来进行该确定。如果卡内容相同,则卡处理机的操作完成(动作515)。否则,执行动作530-560。
以下权利要求中的一些可能陈述组件可操作地执行某个功能或者被配置用于某个任务。应当注意,这些不是限定性的限制。还应当注意,可以按任何顺序——不是必须按所列的顺序,来执行权利要求中所列的动作。
意图将以上详细描述理解为本发明可以采取的所选择的形式的例示而不作为对本发明的限定。意图仅以下权利要求、包括所有等效物来限定本发明的范围。最后,应当注意,可以单独或者相互组合使用在此所述的任何优选实施例的任何方面。
Claims (19)
1.一种数字媒体播放器,包括:
存储器,存储与数字媒体内容相关的元数据的数据库;以及
电路,可操作地用于:
(a)确定在所述数字媒体播放器断电时,可移除存储器器件是否与所述数字媒体播放器相连接;以及
(b)只有在确定在所述数字媒体播放器断电时可移除存储器器件与所述数字媒体播放器相连接的情况,刷新所述数据库。
2.如权利要求1所述的数字媒体播放器,其中所述电路可操作地通过检查数字媒体播放器中的锁存器来得到表明可移除存储器器件与数字媒体播放器连接的数据来执行(a)。
3.如权利要求2所述的数字媒体播放器,其中所述锁存器包括D型触发器。
4.如权利要求1所述的数字媒体播放器,其中所述电路可操作地在数字媒体播放器的通电期间执行(a)和(b)。
5.如权利要求1所述的数字媒体播放器,其中所述数据库包括用户界面数据库。
6.如权利要求5所述的数字媒体播放器,其中所述存储器还存储媒体传输协议数据库。
7.如权利要求6所述的数字媒体播放器,其中所述电路可操作地通过刷新用户界面数据库但不刷新媒体传输协议数据库来执行(b)。
8.如权利要求6所述的数字媒体播放器,其中所述电路可操作地通过刷新用户界面数据库和媒体传输协议数据库两者来执行(b)。
9.一种用于更新数字媒体播放器上的媒体传输协议数据库的方法,所述方法包括:
利用存储了媒体传输协议数据库的数字媒体播放器来:
(a)确定自从上次更新媒体传输协议数据库,被存储在与数字媒体播放器连接的可移除存储器器件上的数字媒体内容是否改变;以及
(b)利用与存储在所述可移除存储器器件中的数字媒体内容相关的元数据来刷新所述媒体传输协议数据库。
10.如权利要求9所述的方法,其中(b)包括利用与按媒体传输协议存储的数字媒体内容相关的元数据而不利用与按海量存储类存储的数字媒体内容相关的元数据来刷新所述媒体传输协议数据库。
11.如权利要求9所述的方法,其中(b)包括利用与按媒体传输协议存储的数字媒体内容相关的元数据和与按海量存储类存储的数字媒体内容相关的元数据来刷新所述媒体传输协议数据库。
12.如权利要求9所述的方法,还包括:
利用与被存储在可移除存储器器件中的数字媒体内容相关的元数据来刷新数字媒体播放器中存储的用户界面数据库。
13.如权利要求9所述的方法,其中通过从可移除存储器器件的文件分配表目录结构产生校验和值并将该校验和值与从可移除存储器器件的文件分配表目录结构先前产生的值进行比较来执行(a)。
14.如权利要求9所述的方法,其中通过将可移除存储器器件的文件分配表中的FSI_Free_Count字段的值与可移除存储器器件的文件分配表中的FSI_Free_Count字段的先前存储的值进行比较来执行(a)。
15.如权利要求9所述的方法,其中通过将可移除存储器器件的文件分配表中的FSI_Nxt_Free字段的值与可移除存储器器件的文件分配表中的FSI_Nxt_Free字段的先前存储的值进行比较来执行(a)。
16.如权利要求9所述的方法,其中通过比较可移除存储器器件上的多个数字媒体文件的细节的列表来执行(a)。
17.如权利要求9所述的方法,其中在数字媒体播放器的通电期间执行(a)和(b)。
18.如权利要求9所述的方法,其中在数字媒体播放器已通电时执行(a)和(b)。
19.一种用于存储与可移除存储器器件上的数字媒体内容相关的辅助信息的方法,所述方法包括:
利用与可移除存储器器件通信的数字媒体播放器来:
(a)将数字媒体内容存储在可移除存储器器件中;
(b)将与数字媒体内容相关的专辑封面存储在数字媒体播放器的存储器中;以及
(c)将专辑封面存储在可移除存储器器件中;
其中所述专辑封面能够由可移除存储器器件携带,并且当可移除存储器器件被置于与第二数字播放器通信时,所述专辑封面能够由第二数字播放器访问。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/804,994 US8655463B2 (en) | 2007-05-18 | 2007-05-18 | Method for avoiding refreshing a database of metadata associated with digital media content |
US11/804,995 US20080288099A1 (en) | 2007-05-18 | 2007-05-18 | Digital media player with improved user experience |
US11/804,579 US20080288096A1 (en) | 2007-05-18 | 2007-05-18 | Digital media player with circuitry for avoiding refreshing a database of metadata associated with digital media content |
US11/804,995 | 2007-05-18 | ||
US11/804,580 US20080288097A1 (en) | 2007-05-18 | 2007-05-18 | Method for improving a digital media player experience |
US11/804,580 | 2007-05-18 | ||
US11/804,994 | 2007-05-18 | ||
US11/804,579 | 2007-05-18 | ||
PCT/US2008/005055 WO2008143748A2 (en) | 2007-05-18 | 2008-04-18 | Digital media player and method for avoiding refreshing a database of metadata associated with digital media content and for providing an improved user experience |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101689205A true CN101689205A (zh) | 2010-03-31 |
Family
ID=39714002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880023737A Pending CN101689205A (zh) | 2007-05-18 | 2008-04-18 | 避免刷新与数字媒体内容相关的元数据的数据库并提供改善的用户体验的数字媒体播放器和方法 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP2149096A2 (zh) |
KR (1) | KR20100029183A (zh) |
CN (1) | CN101689205A (zh) |
TW (1) | TWI430096B (zh) |
WO (1) | WO2008143748A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591673A (zh) * | 2011-01-17 | 2012-07-18 | 华晶科技股份有限公司 | 影像获取装置及其开机方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105138591B (zh) * | 2015-07-31 | 2018-12-11 | 小米科技有限责任公司 | 控制智能设备制作食物的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004007319A (ja) * | 2002-06-03 | 2004-01-08 | Konica Minolta Holdings Inc | 撮影装置 |
US20070100893A1 (en) * | 2005-10-31 | 2007-05-03 | Sigmatel, Inc. | System and method for accessing data from a memory device |
-
2008
- 2008-04-18 CN CN200880023737A patent/CN101689205A/zh active Pending
- 2008-04-18 KR KR1020097024026A patent/KR20100029183A/ko not_active Application Discontinuation
- 2008-04-18 EP EP08743084A patent/EP2149096A2/en not_active Withdrawn
- 2008-04-18 WO PCT/US2008/005055 patent/WO2008143748A2/en active Application Filing
- 2008-04-30 TW TW097116020A patent/TWI430096B/zh not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591673A (zh) * | 2011-01-17 | 2012-07-18 | 华晶科技股份有限公司 | 影像获取装置及其开机方法 |
CN102591673B (zh) * | 2011-01-17 | 2015-02-18 | 华晶科技股份有限公司 | 影像获取装置及其开机方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2149096A2 (en) | 2010-02-03 |
WO2008143748A3 (en) | 2009-02-05 |
KR20100029183A (ko) | 2010-03-16 |
WO2008143748A2 (en) | 2008-11-27 |
TWI430096B (zh) | 2014-03-11 |
TW200900934A (en) | 2009-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10163135B2 (en) | Combining user content with supplemental content at a data storage device | |
CN100549970C (zh) | 通过播放列表执行音频/视频内容同步的方法和设备 | |
US9262497B2 (en) | Method and apparatus to manage files for a portable device | |
CN100501715C (zh) | 信息处理设备、集成电路和数据传送控制方法 | |
US20060074851A1 (en) | Management of play count of content data | |
US20060088292A1 (en) | Method for tagging and displaying songs in a digital audio player | |
US20040252604A1 (en) | Method and apparatus for creating an indexed playlist in a digital audio data player | |
US20070248311A1 (en) | System and method for transferring data between electronic data storage devices | |
US7664796B2 (en) | Electronic labeling for offline management of storage devices | |
CN102340699B (zh) | 保存电视用户历史使用信息的方法和系统 | |
US20080288099A1 (en) | Digital media player with improved user experience | |
US8655463B2 (en) | Method for avoiding refreshing a database of metadata associated with digital media content | |
CN101689205A (zh) | 避免刷新与数字媒体内容相关的元数据的数据库并提供改善的用户体验的数字媒体播放器和方法 | |
JP2010511923A (ja) | メモリカードを回復するためのメモリカード読取装置 | |
JP2007249155A (ja) | メディアファイル管理方法及びメディア再生装置 | |
US20080288096A1 (en) | Digital media player with circuitry for avoiding refreshing a database of metadata associated with digital media content | |
CN101371214A (zh) | 媒介上的固件更新 | |
US8180738B2 (en) | Memory controller, nonvolatile storage device, and nonvolatile storage device system | |
US20080288097A1 (en) | Method for improving a digital media player experience | |
KR20060119021A (ko) | 휴대용 단말기에서의 저작권 파일 재 다운로드 방법 | |
KR100754195B1 (ko) | 멀티미디어 장치의 데이터 백업 방법 | |
US8103623B2 (en) | Method for accessing data stored in storage medium of electronic device | |
JP2007122793A (ja) | 再生装置 | |
CN100541448C (zh) | 电子设备、格式辨别系统和格式辨别方法 | |
JP6407417B2 (ja) | コンテンツ再生装置及びコンテンツ再生装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: SANDISK CORPORATION Free format text: FORMER OWNER: SANDISK CORP. Effective date: 20120625 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20120625 Address after: texas Applicant after: Sandisk Corp. Address before: American California Applicant before: Sandisk Corp. |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100331 |