CN102047338B - 优化媒体内容中的搜索功能 - Google Patents

优化媒体内容中的搜索功能 Download PDF

Info

Publication number
CN102047338B
CN102047338B CN200980120152.2A CN200980120152A CN102047338B CN 102047338 B CN102047338 B CN 102047338B CN 200980120152 A CN200980120152 A CN 200980120152A CN 102047338 B CN102047338 B CN 102047338B
Authority
CN
China
Prior art keywords
frame
media data
location information
encoded media
data
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.)
Expired - Fee Related
Application number
CN200980120152.2A
Other languages
English (en)
Other versions
CN102047338A (zh
Inventor
B·杭扎
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.)
Nokia Technologies Oy
Original Assignee
Nokia Oyj
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 Nokia Oyj filed Critical Nokia Oyj
Publication of CN102047338A publication Critical patent/CN102047338A/zh
Application granted granted Critical
Publication of CN102047338B publication Critical patent/CN102047338B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明提供了一种用于改进针对诸如编码音频数据的媒体文件的媒体回放和搜索时间的系统和方法。在回放期间解码媒体时,将帧位置信息存储在帧表中。该帧位置信息可以用于暂停/重新开始功能,并且用于搜索操作。如果搜索操作是针对没有存储在帧表中的位置,则解析媒体数据以产生添加到帧表中的帧位置信息,直到到达搜索位置。可以按照若干不同形式来存储帧表数据,包括可以基于媒体数据长度而选择的周期间隔,以及用于从暂停命令重新开始的同时数据。

Description

优化媒体内容中的搜索功能
技术领域
本发明总体上涉及媒体回放。更具体地,本发明提供了用于优化针对媒体内容的搜索功能的系统和方法。
背景技术
包括音频文件的媒体文件提供了以方便和高成本效率的方式来记录、传送和回放媒体内容。媒体回放能力在多种软件和设备中是可用的,设备包括个人计算机、个人立体声系统、移动终端、移动电话、PDA(个人数字助理)等。此类媒体文件可以按照多种格式提供,包括存储在记录介质或者存储器设备中的、或者通过传送连接流式传输的文件。
包括MP3(MPEG1层III)、AAC(高级音频编码)等的标准化媒体文件格式有助于促进此类系统。此类媒体文件提供了数据压缩相对于媒体质量的合理折衷。对于此类文件,文件内容必须在回放期间解码,这需要回放系统中一定级别的数据处理能力。
多种媒体文件格式(例如MP3音频文件)将音频数据解析为帧,其包括头段和数据净荷段。除了某些例外情况,每个帧是分立的单元,并且可以与其他帧分开地进行解码和回放,或者以不同的顺序进行解码和回放。这一优势允许数据的流式传输以及其他操作,诸如剪切、循环和其他传送选项。
然而,缺少帧间信息可能呈现出针对回放的困难,尤其是针对暂停、向后搜索以及向前搜索的能力。另外,一些媒体格式需要独立地维持和定位准确的帧位置,以便继续解码。
另外,在一些便携式应用(诸如移动电话)中,例如当播放传入电话呼叫的铃音时,可以手动地或者自动地暂停回放。当这种情况发生时,内容回放可以被取代,并且解码器被解除分配。当重新开始内容回放时,应当从与其暂停时相同的位置开始。另外,一些移动设备架构在暂停时解除分配解码器,并且暂停与重新开始之间的短间隔使得重新开始的回放位置接近度中的任何错误更加明显,并且产生较难接受的用户体验。
一些音频格式在其内容本身中、连同帧头上的同步字一起来提供有限帧表。数据中的近似位置可以在搜索一个位置时进行计算,并且继而可以定位同步字并且继续解码。然而,当内容是可变比特率(VBR)时,错误是不可避免的,并且在搜索时使用计算。MP3 VBR编码的音频可以包含100个条目的帧表,其准确度随着内容长度的增大而减小。MP3文件可以具有通常长于5分钟歌曲的内容,诸如MP3音频书和播客,由此使得基于最小帧表内容的位置计算更加易于出错。
发明内容
以下提出了本发明的简化概述,以便提供本发明某些方面的基本理解。该发明内容不是本发明的广泛概观。其并非意在标识本发明的关键或者重要元素,或者描述本发明的范围。以下发明内容仅提出本发明的一些构思,作为以下提供的更加详细的描述的序言。
本发明的示例性实施方式不需要与解码器串联的解析器组件。这消除了解码之前该解析器所需的附加处理。相反,一个实施方式使用与解码过程并行的解析,并且从解码器组件收集用于搜索的信息。如果向前搜索需要尚未收集的信息,则使用解析器组件代替解码器组件来收集信息。一个实施方式保持两个级别的信息:少量高分辨率数据(仅针对最小数目的媒体帧保持的信息),用于在准确的帧上暂停/重新开始;以及可调量信息,用于搜索新的回放位置。
本发明的一个示例性实施方式包括一种方法,包括:接收划分为帧的编码媒体数据;解码编码媒体数据的至少一部分,并且输出编码媒体数据的解码部分;以及计算针对编码媒体数据的解码部分内的帧的帧位置信息。该方法还包括:将计算的帧位置信息存储在帧表中;以及在接收到搜索编码媒体数据中的特定位置的命令时,使用帧表中计算的帧位置信息来确定编码媒体数据中的位置,以便继续解码该编码媒体数据。
如果帧表没有针对编码媒体数据中的特定位置的计算帧位置信息,则一个实施方式可以包括:解析编码媒体数据的另一部分;计算针对编码媒体数据的所解析的另一部分内的帧的帧位置信息;以及将计算的帧位置信息存储在帧表中。
根据一个实施方式,将计算的帧位置信息存储在帧表中的方法包括基于周期时间间隔来存储帧位置信息。可以基于编码媒体数据的大小值来选择周期时间间隔。另外,将计算的帧位置信息存储在帧表中的方法可以包括存储预定数目的、与编码媒体数据中的当前解码位置实质上同时(contemporaneous)的计算帧位置。
一个实施方式包括计算机可读介质,其包括计算机可读指令,当提供至处理器时使得处理器执行以上或以下描述的任何方法。另一实施方式包括处理器和包括可执行指令的存储器,该可执行指令当提供至处理器时使得处理器执行以上或者以下描述的任何方法。
一个示例性实施方式包括一种装置,包括:解码器,配置用于对编码媒体数据进行解码,该编码媒体数据被划分为帧,其中该解码器在对编码媒体数据进行解码和输出时,计算针对编码媒体数据中的帧的帧位置信息;以及帧表存储器,配置用于从解码器接收计算的帧位置信息,并且对其进行存储;其中在接收到搜索编码媒体数据中的特定位置的命令时,帧表存储器提供与编码媒体数据中的特定位置相关联的位置信息。该实施方式还可以包括解析器,其中如果帧表无法提供针对编码媒体数据中的特定位置的位置信息,则解析器配置用于解析编码媒体数据的另一部分,以计算针对编码媒体数据的所解析的另一部分内的帧的帧位置信息,并且向帧表存储器提供计算的帧位置信息。
帧表存储器可以配置用于存储预定数目的、与编码媒体数据中的当前解码位置实质上同时的计算帧位置。另外,帧表存储器可以配置用于基于周期时间间隔来存储计算帧位置信息,该周期时间间隔可以基于编码媒体数据的大小值来选择。
另一实施方式包括一种设备,包括:针对划分为帧的编码媒体数据的解码装置,并且用于在解码时计算针对编码媒体数据中的帧的帧位置信息,并且用于输出编码媒体数据;以及存储器装置,用于在帧表中存储计算的帧位置信息,并且用于在接收到搜索编码媒体数据中的特定位置的命令时,提供与编码媒体数据中的特定位置相关联的位置信息。该示例性实施方式还可以包括解析装置,用于其中如果存储器装置无法提供针对编码媒体数据中的特定位置的位置信息,则解析编码媒体数据的另一部分,并且用于计算针对编码媒体数据的所解析的另一部分内的帧的帧位置信息。
对于任何实施方式,编码媒体数据可以包括可变比特率编码音频数据。
本发明的一些实施方式的优点包括减少了音频回放所需的CPU周期,去除了在回放期间由解析组件产生的CPU使用峰值,并且即使在解码器和其他组件可能被解除分配的情况下,也能够提供针对暂停和重新开始情况的准确定位。本发明的一些实施方式的另一优点包括减少和/或优化了存储器使用,尤其是在媒体数据可能相对较长时。
附图说明
通过考虑附图参考以下说明可以获得本发明的更为完整的理解及其有点,附图中相似的参考标号指示相似的特征,并且其中:
图1示出了根据现有技术的媒体回放系统;
图2示出了根据本发明一个示例性实施方式的媒体回放系统;
图3示出了根据一个示例性实施方式的用于暂停媒体回放的过程;
图4示出了根据一个示例性实施方式的用于向后搜索的过程;
图5示出了根据一个示例性实施方式的用于向前搜索的过程;
图6示出了根据一个示例性实施方式的用于回放和向前搜索的过程的细节;以及
图7示出了用于实现本发明一个示例性实施方式的系统的组件的框图。
具体实施方式
在各种示例性实施方式的以下描述中,参考形成其一部分的附图,并且其中通过示出可以实现本发明的各种示例性实施方式的方式示出。可以理解,可以使用其他实施方式,并且在不脱离本发明的范围的情况下可以做出结构上和功能上的修改。
图1示出了用于解码此类文件用于回放的代表性现有架构。解析器组件12处理媒体文件,其在该示例中是音频数据10的源。该音频数据10可以是文件、缓冲器、高速缓存或其任意组合。解析器组件12收集可以用于“索引”音频数据10的信息,以允许在数据文件(或者缓冲器)内进行搜索。通常,解析器组件12定位媒体内帧的开始,并且标记帧位置,该帧位置继而可以用于搜索。该帧位置信息14通常存储在帧表16中,其继而可以用于搜索18音频数据10内的位置。一旦解析器组件12处理了音频数据10,则解码器20就开始解码该音频数据(可能存储在缓冲器22中),并且为收听者产生解码音频24。
如果接收了搜索(向前或者向后)或者暂停的请求,则帧表16可以用于定位音频数据10内的帧位置18,于是来自音频数据10内的正确位置的信息将继而被提供至解码器20,并且音频输出24将继续。
针对该现有架构,帧表16,可以针对每个媒体帧收集信息,这可能需要相当大量的存储器,尤其是对于移动设备。该过程还可能引起媒体回放的开始中的显著延迟。另外,其还需要大量的处理能力,虽然是短时间的,但其可能剥夺其他应用用于其活动的处理能力。较大的媒体文件将需要较多的处理,以及用于搜索信息的较大存储器需求。针对较长内容保持该信息可以使用移动设备中相对较大量的存储器。
图2示出了本发明的一个示例性实施方式。回放设备30可以包括解析器12和解码器20,然而该实施方式不需要解析器12在解码之前执行解析。相反,收集帧信息14作为解码器20在回放期间解码的内容。以这种方式获得帧信息14需要很少或者不需要额外的处理能力,并且避免了回放开始时由解析器解析音频数据10所造成的延迟。针对帧表32中可用的帧位置,搜索是直接的。如果诸如在向前搜索时,帧位置信息还没有被保存,则示例性实施方式从由解码器20进行解码切换到仅进行解析12(如箭头35所示),直至到达搜索位置,解析器12在其进行解析时保存帧位置信息14。
在该示例性实施方式中,可以针对帧表32中的每个条目保存两个参数。第一参数是位置值,而第二参数是帧计数。位置值是表示音频内容10中的字节位置的无符号整数。第一条目(第零位置)指示第一数目帧的位置。这允许后续的条目与时间零点相关,该时间零点是音频回放的开始。该第一位置将在解码器20很有可能不需要的音频数据中的任何元数据或者头信息之后。元数据可能由用户编辑,或者由系统修改,然而如果第一条目是第一音频帧,则此类修改不应当影响帧表条目。如果此类修改可能影响条目,则示例性实施方式可以根据需要更新条目。解码器20和解析器12提供的信息14是单独的帧位置。通过在解码或者解析期间积累从帧获得的帧长度值来计算位置。帧表32保存以偏移递增的位置,以便保持绝对位置。帧表32可以包括接口(未示出),以指示该偏移位置。
当执行针对新位置的搜索时,帧表32对新位置计算和提供偏移,该偏移来自第一帧位置。向帧表提供位置的解码器20可能不知道新搜索位置,并且其位置值将被重置为0。这不存在问题,因为帧表32保持由解码器的用户在命令搜索时提供的偏移。备选地,示例性实施方式可以向解码器20提供新位置,并且解码器20将相应地调节其位置值。
第二参数是无符号整数的帧计数数目。该帧计数可以用于计算对应于位置值的以毫秒为单位的时间。当需要时间值时,根据帧编号和帧时间对其进行计算。虽然帧比特率可以改变,但是帧时间保持不变。帧表32配置有回放开始处的帧时间。以下将提供该过程的进一步细节。
本发明的示例性实施方式包括基于帧表32中保存什么信息来改进存储器使用。可以按照两种方式保存帧位置信息14。示例性实施方式可以使用以下技术中的一种或二者。
首先,可以针对全部内容诸如在表34中侏存可调量帧信息。通常,这将是周期时间间隔的帧信息。时间间隔可以是固定的,或者备选地基于音频数据10(诸如内容长度)来确定。内容长度可以按照多种方式来确定,例如对于恒定比特率数据,文件大小减去元数据大小再除以比特率将得到内容长度。对于可变比特率数据,平均比特率可以通过预处理某些媒体数据来确定。作为针对基于内容长度的间隔的示例,对于较长内容,针对一个帧位置的数据可以每5秒保存一次。对于中等长度内容,帧位置可以每秒保存一次;以及针对短内容,可以保存针对每个帧的数据。在确定帧信息的粒度时可以使用的其他因素包括音频数据的编码速率、设备的存储器限制、处理能力等。
一个备选实施方式可以在音频数据的回放期间动态地调节帧信息34。例如,在回放的开始,帧表34初始可以存储针对短时间间隔的帧信息,诸如每隔半秒。随着回放继续,帧表34可以开始使用较长的时间间隔,诸如每隔一秒。在这样的情况下,帧表34可以通过删除每隔一个的条目来修改先前存储的帧信息,从而使得所有的帧信息都是一秒的间隔。帧表存储器结构可以定义为使得删除所选择的条目间隔和重新使用存储器的操作快速,并且使用最小的处理能量。另外,可以使用其他数目的删除条目,诸如跳过一个条目而删除接下来的三个条目。
作为保存帧信息的第二方式,一个示例性实施方式可以针对每个音频帧保存帧信息,但是仅针对保存促进优选帧上的暂停/重新开始所需的较短持续时间。用于该较短持续时间的帧表36可以保存非常少的条目,可能仅保存当前位置。例如,如果保存了最后解码的帧,并且立即呈现(播放),则单个帧将提供必要的重新开始精确度。然而,在解码器20之间存在缓冲或者其他操作并且呈现到音频信号中以用于回放的通常情况下,最后解码的帧将不是接下来呈现的帧。因此,在该最后帧上重新开始将造成跳跃向前。因此,一个实施方式在较短持续时间内保持针对每个帧的信息。所保持的帧信息条目的数目可以是任意的(例如,一分钟量的回放),或者基于解码器20之后潜在缓冲的量。作为一个示例,针对帧信息的条目的数目应当大于解码器20之后缓冲的解码帧的数目。帧表36可以实现为环形缓冲器结构,用以提供旧帧条目存储器位置的自动重新使用。
通过使用这些技术之一或者二者,一个示例性实施方式不会因针对全部内容保存每个帧的帧信息而浪费存储器。保存优选信息以便支持架构中的暂停/重新开始,其可以解除分配音频组件并且在重新开始最后播放或者呈现的确切帧时需要对内容进行搜索。
帧表34和36可以在设备30内部,其中设备30可以向用户提供搜索位置信息。备选地,一个或多个帧表34和36可以被共享并且对用户或者其他应用可用。此类共享帧表可以是其他应用所期望的标准格式。
图3示出了由示例性实施方式使用以便促进暂停和重新开始音频或者媒体内容的方法。不管暂停持续时间有多长,并且即使在解码器和其他工具被解除分配的情况下,该方法也允许精确地重新开始回放。在步骤100处,解码器正在处理数据流,并且向帧表提供帧位置信息。在接收到暂停命令(由用户或者另一应用提供)(102)时,标记当前回放时间(步骤104)。使用当前回放时间,可以在帧表中找到音频文件中的正确媒体位置(步骤106)。通常,这将使用短持续时间帧表36(图2),然而也可以使用另一帧表。音频数据中的正确位置被获知(步骤108),因此当接收到重新开始命令时(110),接着回放可以从音频数据中的正确重新开始位置继续进行(100)。
图4示出了示例性实施方式使用以便促进向后搜索的方法。当接收到向后搜索命令时(步骤120),可以在帧表中查找基于时间的媒体位置(步骤122)。通常,这将是时间间隔表34(图2),然而也可以使用另一帧表。媒体位置信息继而用于搜索媒体中的正确位置(步骤124)。基于向后搜索过程,该过程可以进行一次或者重复多次,例如,在用户向后扫描以找到媒体中的特定位置的情况下。一旦到达媒体中的正确位置,则回放可以继续(步骤100)。
图5示出了由示例性实施方式使用以便促进向前搜索的方法。这里存在帧信息可能不在帧表中的情形,因为数据还未被解码器或者解析器处理。在步骤130处,接收向前搜索的命令。检查帧表以查看帧信息对于所搜索的时间值是否可用(步骤132和步骤134)。如果位置信息在帧表中可用,则媒体位置信息被用于搜索媒体中的正确位置(步骤140),并且回放可以继续(或者开始)(步骤100)。
如果帧信息对于所搜索的时间值不可用,则该过程搜索帧表中可用的最后时间/位置值(步骤136)。在此时,解析器工具12(图2)开始媒体数据的解析,并且生成用于帧表的条目,直到找到所搜索的目的地位置(步骤138)。回放处理继而可以从目的地位置继续进行(或者开始)(步骤100)。
图6示出了根据一个示例性实施方式的用于回放处理和搜索的方法的细节。在常规播放模式中(148),编码数据被提供至解码过程(步骤149)。该方法检查以便查看其是否在向前搜索模式中(步骤150)。如果不在,则解码器解码音频帧(步骤152),并且产生解码音频24。作为解码过程152的一部分,帧头被解码,其提供关于帧长度的信息。通常从帧头中提取每帧样本的值、比特率、采样率以及任何填充位。继而可以例如使用以下公式来计算以字节为单位的帧长度:
帧长度=((每帧样本/(8*比特率))/采样率)+填充位大小
此类计算可以是不同的,例如用以避免舍入误差,或者用以将其他因素考虑在内。作为一个示例,如果编码数据包括不可解码(损坏)数据,如果解码器有能力忽略该损坏数据,则帧长度可以相应地进行调节以保持正确的位置数据。计算帧长度例如可以是解码器的标准操作,所以解码器可以请求下一解码位置。在其他情况下,例如对于AAC-ADIF(高级音频编码-音频数据交换格式),确定帧长度可能需要解析实际帧元素。在通常情况下,解码器作为解码中的必要步骤来确定帧长度,并且本发明的示例性实施方式利用这一点来确定用于搜索的位置信息。
在步骤153处,通过将帧长度添加到先前位置数据上来计算位置数据,并且向帧表提供该位置数据(步骤154)。在步骤156处,该方法检查以查看其是否在向前搜索模式中,并且也查看是否已经到达搜索位置。在常规回放情况下,该测试结果为假,并且该方法继续到步骤159,该步骤查看是否需要更多的编码数据。在存在要处理(解码)更多的编码数据的情况下,方法继而从步骤149继续。
如果接收了搜索命令(160),则该方法检查帧表以确定搜索的目的地位置是否已经在帧表中(步骤162)。如果是,则该方法将数据源中的读取位置设置为搜索位置(164)。继而常规回放处理可以从步骤149继续进行。
然而,在步骤162处,如果确定搜索目的地位置不在帧表中,则该方法工作以向前解析并且找到搜索目的地位置。该方法首先将数据源中的读取位置设置为帧表中可用的最后位置(步骤166)。设置向前搜索模式标志(步骤168),并且在到达所请求的搜索位置时该方法请求帧表提供通知(步骤170)。该方法继续接收编码数据(步骤149)。然而,在步骤150处,该方法现在处于向前搜索模式中,所以代之以由解析器工具12(图2)来扫描编码数据。解析器工具现在开始扫描数据,并且计算帧长度(步骤172)。该过程可以与解码器在步骤152处进行的操作非常相似,然而并未解码帧的实际数据。该过程可以由解码器过程或者应用在实际解码被禁用的情况下进行,或者由独立的解析器过程或者应用来进行,其可以被优化以允许进行快速的帧解析。根据先前位置和帧长度来计算位置数据(步骤153),并且向帧表提交该位置数据(步骤154)。在步骤156处,该方法在向前搜索模式中,但是如果还没有到达搜索目的地位置,在步骤159处处理继续进行,以获得更多的编码数据并且进一步解析。然而,如果在步骤156处确定已经到达搜索位置,则向前搜索模式标志被禁用(步骤158),继而在步骤159处,处理作为常规回放模式继续进行。
例如,本发明的一些实施方式可以用于以下音频格式,包括MP3、各种AAC/增强AAC+格式(例如ADIF(音频数据交换格式)或者ADTS(音频数据传送流))、AMR(自适应多速率)、AMR-WB(自适应多速率-宽带)以及这些格式的将来版本和扩展。本发明可以与在容器或者帧中不包含适合搜索信息的其他格式(音频、视频二者、混合媒体等)结合使用。其还可以用于不提供可搜索资源提供方的流式传输媒体应用中的向前搜索。
作为示例性实施方式提供的优点的一个示例,考虑音频帧长度通常是大约20ms,相当于每秒50帧。如果对于较长内容,帧信息仅5秒保存一次,则一个示例性实施方式提供250的缩减因子。如果针对每个帧的信息包括12字节(索引、时间和位置,每个为32比特整数),对于15分钟的音频文件,使用帧信息保留的对偶(dual)方法的示例性实施方式将使用2160字节,而不是先前需要的540,000字节。
本发明的实施方式可以在任何类型的设备中实现,包括计算机、便携式音乐/媒体播放器、PDA、移动电话和移动终端。图7示出了包括移动终端50的一种示例设备。移动终端50可以包括支持网络的无线设备,诸如蜂窝电话、移动终端、数据终端、寻呼机、膝上型计算机或者其组合。移动终端也可以包括不支持网络的设备,诸如个人数字助理(PDA)、腕表、GPS接收机、便携式导航设备、车辆导航设备、便携式TV设备、便携式视频设备、便携式音频设备或者其组合。另外,移动终端可以包括支持网络的无线设备和不支持网络的设备的任意组合。虽然设备50示为移动终端,但是可以理解,本发明可以使用非便携式或者非可移动设备来实现。作为支持网络的设备,移动终端50可以通过到无线网络(未示出)的无线电链路并且通过网关和web服务器来通信。无线网络的示例包括第三代(3G)蜂窝数据通信网络、第四代(4G)蜂窝数据通信网络、全球移动通信网络系统(GSM)、无线局域网(WLAN)或者其他当前的或者将来的无线通信网络。移动终端50还可以通过移动终端上的一个或多个端口(未示出)与web服务器通信,该一个或多个端口可以允许到因特网的有线连接,诸如通用串行总线(USB)连接和/或经由短程无线连接(未示出),诸如BLUETOOTHTM链路或者到WLAN接入点的无线连接。由此,移动终端50可以能够以多种方式与web服务器进行通信。
如图7所示,移动终端50可以包括处理器52、显示器54、存储器56、数据连接接口58和用户输入特征62(诸如小键盘、触摸屏等)。其还可以包括短程无线电发射机/接收机66、全球定位系统(GPS)接收机(未示出)和可能的其他传感器。处理器52与存储器56进行通信(未示出),并且可以执行存储在其中的指令。用户输入特征62也可以与处理器52进行通信(未示出),以用于向处理器提供输入。用户输入62、显示器54和处理器52相组合,与存储在存储器56中的指令配合可以形成图形用户界面(GUI),其允许用于与设备交互并且修改显示器54上示出的显示。数据连接接口58与处理器52相连接(未示出),并且支持与无线网络的通信,如上所述。
移动终端50还可以包括音频输出特征60,其允许播放声音和音乐。此类音频输出特征可以包括硬件特征,诸如单通道和多通道模拟放大器电路、均衡电路、扬声器和音频输出插孔。此类音频输出特征还可以包括数字/模拟转换器和滤波电路。诸如音频和媒体解压缩器和解码器的其他组件可以实现为硬件设备,或者由处理器52执行的软件指令,或者其任意组合。
根据存储器56中的处理指令68,处理器52可以执行根据本发明一个实施方式的用于建立和使用帧表32的方法。存储器56可以包括音频数据,其可以从网络或者其他源下载或者流式传输。此类音频数据可以存储在存储器56或者其他较长期存储器中,例如闪存或者硬盘存储。
存储器56可以包括用于执行本发明的实施方式的处理指令68。例如,此类指令68可以使得处理器52执行解码过程并且存储帧表信息32,如以上描述和示出的。存储器56还可以包括用于多个应用过程的指令和数据存储,该多个应用过程也可以能够访问帧表信息32。应用和数据在闲置或者被取代时,可以交换出此类存储器,以允许其他应用使用此类存储器。此类处理指令可以存储在不同类型的存储器中,并且可以通过可用网络来下载或者更新。
另外,在此描述的方法和特征还可以通过能够存储计算机可读指令的任意数目计算机可读介质来实现。可以使用的计算机可读介质的示例包括RAM、ROM、EEPROM、闪存或者其他存储器技术、CD-ROM、DVD或者其他光学盘存储、磁带、磁存储等。
本发明的一个或多个方面可以实现在由一个或多个计算机或者其他设备执行的诸如一个或多个程序模块中的计算机可用数据和计算机可执行指令中。通常,程序模块包括例程、程序、对象、组件、数据结构等,当由计算机或者其他设备中的处理器执行时,其执行特定任务或者实现特定抽象数据类型。计算机可执行指令可以存储在计算机可读介质上,计算机可读介质诸如硬盘、光盘、可移动存储介质、固态存储器、RAM等。本领域技术人员可以理解,在各种实施方式中,程序模块的功能可以按照需要进行组合或者分布。另外,功能可以整体或者部分地实现在固件或者硬件等同物中,诸如集成电路、现场可编程门阵列(FPGA)等。特定数据结构可以用于更加有效地实现本发明的一个或多个方面,并且此类数据结构视为在此处描述的计算机可执行指令和计算机可用数据的范围内。
虽然示出了具体化本发明的各个方面的在此描述的示例性系统和方法,但是本领域技术人员可以理解,本发明不限于这些实施方式。本领域技术人员特别地根据上述教导可以做出修改。例如,上述实施方式中的每个元素可以单独使用或者与其他实施方式的元素进行组合或者子组合。可以领会和理解,在不脱离本发明的真实精神和范围的情况下可以做出修改。该说明书由此视为示例性的而不是对本发明的限制。
虽然以特定于结构性特征和/或方法行为的语言描述了主题,但是可以理解,所附权利要求中限定的主题不必限于上述具体特征或者行为。相反,上述具体特征和行为作为实现权利要求的示例形式而公开。

Claims (12)

1.一种用于改进媒体回放的方法,包括:
接收划分为帧(10)的编码媒体数据;
解码所述编码媒体数据(10)的至少一部分,并且输出所述编码媒体数据的解码部分(24);
计算针对所述编码媒体数据(10)的所述解码部分(24)内的帧的帧位置信息;
将计算的帧位置信息(14)存储在帧表(32、34、36)中;以及
在接收到搜索(18)所述编码媒体数据(10)中的特定位置的命令时,使用所述帧表(32、34、36)中所述计算的帧位置信息(14)来确定所述编码媒体数据(10)中的位置,以便继续解码所述编码媒体数据(10);
其特征在于:在所述媒体数据(10)的回放期间,动态调节所述帧表(32、34、36)中的所述计算的帧位置信息(14),以及其中所保持的帧位置信息条目是任意的或者基于解码器之后潜在缓冲的量;
其中动态调节所述帧表(32、34)中的所述计算的帧位置信息(14)包括基于周期时间间隔来从帧表(32、34)删除选择的条目以提供帧位置信息(14)。
2.根据权利要求1所述的方法,还包括:
如果所述帧表没有针对所述编码媒体数据(10)中的特定位置的计算的帧位置信息,则解析所述编码媒体数据(10)中的另一部分;
计算针对所述编码媒体数据(10)的解析的另一部分内的帧的帧位置信息(14);以及
将计算的帧位置信息(14)存储在所述帧表中。
3.根据权利要求1所述的方法,其中将计算的帧位置信息(14)存储在帧表(32、34)中包括基于另一周期时间间隔来初始存储帧位置信息(14)。
4.根据权利要求3所述的方法,其中所述另一周期时间间隔基于所述编码媒体数据的大小值来选择。
5.根据权利要求1-4中任一项所述的方法,其中所述编码媒体数据(10)是可变比特率编码音频数据。
6.一种用于改进媒体回放的设备,包括:
解码装置(20),针对划分为帧的编码媒体数据(10),用于在解码时计算针对所述编码媒体数据(10)中的帧的帧位置信息(14),以及用于输出所述编码媒体数据(10);以及
存储器装置(32),用于将计算的帧位置信息(14)存储在帧表(32、34、36)中;以及用于在接收到搜索(18)所述编码媒体数据(10)中的特定位置的命令时,提供与所述编码媒体数据(10)中的所述特定位置相关联的位置信息;
其特征在于:所述存储器装置(32)被配置成在所述媒体数据(10)的回放期间动态调节所述帧表(32、34、36)中的所述计算的帧位置信息(14),以及其中所保持的帧位置信息条目是任意的或者基于解码装置之后潜在缓冲的量;
其中存储器装置(32)被配置用于通过基于周期时间间隔从帧表(32、34)删除选择的条目以提供帧位置信息(14)来动态调节所述帧表(32、34)中的所述计算的帧位置信息(14)。
7.根据权利要求6所述的设备,还包括:
解析装置(12),用于:其中如果所述存储器装置(32)无法提供针对所述编码媒体数据(10)中的特定位置的位置信息,则解析所述编码媒体数据(10)的另一部分;以及用于计算针对所述编码媒体数据(10)的解析的另一部分内的帧的帧位置信息(14)。
8.根据权利要求6所述的设备,其中,所述存储器装置配置用于基于另一周期时间间隔来存储计算的帧位置信息。
9.根据权利要求8所述的设备,其中所述另一周期时间间隔基于所述编码媒体数据的大小值来选择。
10.根据权利要求6所述的设备,其中所述编码媒体数据(10)是可变比特率编码音频数据。
11.根据权利要求6-10中任意一项所述的设备,其中所述设备是移动终端。
12.根据权利要求6-10中任意一项所述的设备,其中所述设备是便携式音乐或媒体播放器。
CN200980120152.2A 2008-05-30 2009-05-12 优化媒体内容中的搜索功能 Expired - Fee Related CN102047338B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/129,924 US8543230B2 (en) 2008-05-30 2008-05-30 Optimizing seek functionality in media content
US12/129,924 2008-05-30
PCT/FI2009/050385 WO2009144364A1 (en) 2008-05-30 2009-05-12 Optimizing seek functionality in media content

Publications (2)

Publication Number Publication Date
CN102047338A CN102047338A (zh) 2011-05-04
CN102047338B true CN102047338B (zh) 2015-03-18

Family

ID=41376634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980120152.2A Expired - Fee Related CN102047338B (zh) 2008-05-30 2009-05-12 优化媒体内容中的搜索功能

Country Status (4)

Country Link
US (1) US8543230B2 (zh)
EP (1) EP2279510B1 (zh)
CN (1) CN102047338B (zh)
WO (1) WO2009144364A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8755921B2 (en) 2010-06-03 2014-06-17 Google Inc. Continuous audio interaction with interruptive audio
US10609105B2 (en) * 2015-01-29 2020-03-31 Spotify Ab System and method for streaming music on mobile devices
US11269951B2 (en) * 2016-05-12 2022-03-08 Dolby International Ab Indexing variable bit stream audio formats
CN110855645B (zh) * 2019-11-01 2021-10-22 腾讯科技(深圳)有限公司 流媒体数据播放方法、装置
CN111601144B (zh) * 2020-05-19 2021-10-08 青岛海信传媒网络技术有限公司 流媒体文件播放方法及显示设备
CN116110410B (zh) * 2023-04-14 2023-06-30 北京算能科技有限公司 音频数据处理方法、装置、电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5949948A (en) * 1995-11-20 1999-09-07 Imedia Corporation Method and apparatus for implementing playback features for compressed video data
CN1318196A (zh) * 1999-05-28 2001-10-17 松下电器产业株式会社 半导体存储器卡、播放装置、记录装置、播放方法、记录方法、和计算机可读记录介质
US6453115B1 (en) * 2000-08-31 2002-09-17 Keen Personal Media, Inc. Digital video recording system which generates an index data structure for displaying a video stream in trickplay mode
CN1153457C (zh) * 1995-09-14 2004-06-09 三星电子株式会社 用于特技播放的数字录像带的记录和重放方法及其装置
US6795383B1 (en) * 1999-06-02 2004-09-21 Matsushita Electric Industrial Co., Ltd. Optical disk and apparatus and method of recording and reproducing data thereof
CN1550013A (zh) * 2001-09-06 2004-11-24 ��ķ��ɭ 可变位率数字编码音频数据文件的已过播放计时方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081783A (en) * 1997-11-14 2000-06-27 Cirrus Logic, Inc. Dual processor digital audio decoder with shared memory data transfer and task partitioning for decompressing compressed audio data, and systems and methods using the same
US6850691B1 (en) * 1999-03-30 2005-02-01 Tivo, Inc. Automatic playback overshoot correction system
EP1953758B1 (en) * 1999-03-30 2014-04-30 TiVo, Inc. Multimedia program bookmarking system
US20070230921A1 (en) * 2001-04-05 2007-10-04 Barton James M Multimedia time warping system
US7106944B2 (en) * 2001-05-30 2006-09-12 Nokia Corporation System and method for jumping to a timepoint in a MPEG file
JP3855862B2 (ja) 2002-04-01 2006-12-13 ソニー株式会社 編集方法および装置
JP2006221714A (ja) * 2005-02-09 2006-08-24 Toshiba Corp 符号化ディジタルオーディオ再生装置
US7975225B2 (en) * 2007-05-02 2011-07-05 Microsoft Corporation Iteratively locating a position corresponding to a desired seek time

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1153457C (zh) * 1995-09-14 2004-06-09 三星电子株式会社 用于特技播放的数字录像带的记录和重放方法及其装置
US5949948A (en) * 1995-11-20 1999-09-07 Imedia Corporation Method and apparatus for implementing playback features for compressed video data
CN1318196A (zh) * 1999-05-28 2001-10-17 松下电器产业株式会社 半导体存储器卡、播放装置、记录装置、播放方法、记录方法、和计算机可读记录介质
US6795383B1 (en) * 1999-06-02 2004-09-21 Matsushita Electric Industrial Co., Ltd. Optical disk and apparatus and method of recording and reproducing data thereof
US6453115B1 (en) * 2000-08-31 2002-09-17 Keen Personal Media, Inc. Digital video recording system which generates an index data structure for displaying a video stream in trickplay mode
CN1550013A (zh) * 2001-09-06 2004-11-24 ��ķ��ɭ 可变位率数字编码音频数据文件的已过播放计时方法和装置

Also Published As

Publication number Publication date
US20090299505A1 (en) 2009-12-03
EP2279510A1 (en) 2011-02-02
EP2279510A4 (en) 2012-02-01
CN102047338A (zh) 2011-05-04
EP2279510B1 (en) 2013-09-25
US8543230B2 (en) 2013-09-24
WO2009144364A1 (en) 2009-12-03

Similar Documents

Publication Publication Date Title
CN102047338B (zh) 优化媒体内容中的搜索功能
US8626323B2 (en) Method and apparatus for playing audio files
US8670984B2 (en) Automatically generating audible representations of data content based on user preferences
CN101682515B (zh) 用于确定多媒体序列的帧尺寸的方法
CN101188833B (zh) 用于便携式终端中的高效率存储器利用的装置和方法
CN111078930A (zh) 音频文件数据处理方法及装置
CN104301771A (zh) 视频文件播放进度的调整方法及装置
CN101164102A (zh) 自动扩展移动通信设备的话音词汇的方法和装置
CN102497448A (zh) 一种移动终端在线音乐播放的方法及系统
CN100469140C (zh) 一种在线播放中快速跳转的方法、终端及服务器
CN112153600B (zh) 一种音频管理方法、装置、系统及计算机存储介质
US20230109783A1 (en) Computing device and corresponding method for generating data representing text
CN112866730A (zh) 流媒体数据传输方法及装置、系统、电子设备、存储介质
CN101410826A (zh) 用来提供在用户选定点处播放的回铃音的方法和系统
US20100180753A1 (en) Electronic audio playing apparatus and method
US20120165043A1 (en) Mobile communication based tagging
US20130311859A1 (en) System and method for enabling execution of video files by readers of electronic publications
KR100757858B1 (ko) 선택적 인코딩 시스템 및 상기 선택적 인코딩 시스템의동작 방법
US10031899B2 (en) Computing device and corresponding method for generating data representing text
KR100874023B1 (ko) Mp3 디코더의 입력 데이터 버퍼를 관리하는 방법 및 장치
CN101729359A (zh) 便携式电子装置音乐播放方法
CN101256775B (zh) 一种mp3位串排列方法与装置
US10339219B2 (en) Computing device and corresponding method for generating data representing text
KR20080019859A (ko) 디지털 방송 콘텐츠 정보 북마크 방법 및 그 방법에 기초한디지털 콘텐츠 다운로드 방법
CN105760494B (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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160215

Address after: Espoo, Finland

Patentee after: Technology Co., Ltd. of Nokia

Address before: Espoo, Finland

Patentee before: Nokia Oyj

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150318

Termination date: 20180512

CF01 Termination of patent right due to non-payment of annual fee