《媒体文件的播放处理方法、多处理器系统与设备.pdf》由会员分享,可在线阅读,更多相关《媒体文件的播放处理方法、多处理器系统与设备.pdf(20页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103034147 A (43)申请公布日 2013.04.10 C N 1 0 3 0 3 4 1 4 7 A *CN103034147A* (21)申请号 201110301323.0 (22)申请日 2011.09.29 G05B 19/042(2006.01) G11B 20/00(2006.01) (71)申请人展讯通信(上海)有限公司 地址 201203 上海市浦东新区张江高科技园 区祖冲之路2288弄展讯中心1号楼 (72)发明人李昙 张本好 徐晶明 吴晟 林福辉 (74)专利代理机构中国国际贸易促进委员会专 利商标事务所 11038 代理人毛丽琴 (5。
2、4) 发明名称 媒体文件的播放处理方法、多处理器系统与 设备 (57) 摘要 本发明实施例公开了一种媒体文件的播放处 理方法、多处理器系统与设备,其中,媒体文件的 播放处理方法包括:利用第一处理器单元从外部 存储单元的输入空间内读取至少一完整帧的媒体 数据存储在交互存储单元中;利用第二处理器单 元对交互存储单元中的媒体数据进行解码,并将 解码得到的解码结果数据存储在所述交互存储单 元中;利用第一处理器单元将交互存储单元中的 解码结果数据搬移到所述外部存储单元的缓冲区 中,并对缓冲区中的解码结果数据进行输出播放。 本发明实施例可以充分利用系统资源,提高媒体 文件的播放效果与多处理器系统的工作性能。
3、。 (51)Int.Cl. 权利要求书3页 说明书10页 附图6页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 10 页 附图 6 页 1/3页 2 1.一种媒体文件的播放处理方法,其特征在于,包括: 利用第一处理器单元从外部存储单元的输入空间内读取至少一完整帧的媒体数据存 储在交互存储单元中; 利用第二处理器单元对交互存储单元中的媒体数据进行解码,并将解码得到的解码结 果数据存储在所述交互存储单元中; 利用第一处理器单元将交互存储单元中的解码结果数据搬移到所述外部存储单元的 缓冲区中,并对缓冲区中的解码结果数据进行输出播放。 2.根据权利要求1所述。
4、的方法,其特征在于,还包括: 利用第一处理器单元控制文件系统处理单元启动; 利用文件系统处理单元对外部存储单元的输入空间进行监控,响应于外部存储单元的 输入空间有空余,从文件存储单元中读取媒体数据并存储在外部存储单元的输入空间内。 3.根据权利要求1所述的方法,其特征在于,从外部存储单元的输入空间内读取一完 整帧的媒体数据存储在交互存储单元中包括: 利用第一处理器单元从外部存储单元的输入空间内顺序读取媒体数据并进行帧判定 与定位,以从外部存储单元的输入空间读取一个帧的媒体数据; 利用第一处理器单元对所述一个帧的合法性与完整性进行检测; 响应于所述一个帧的合法性与完整性通过检测,所述一个帧为一个。
5、完整帧,利用所述 第一处理器单元将所述一个帧的媒体数据存储在交互存储单元中。 4.根据权利要求3所述的方法,其特征在于,将所述一个帧的媒体数据存储在交互存 储单元中之后,利用第一处理器单元将对交互存储单元的读写权限从第一处理器单元切换 到第二处理器单元,并向第二处理器单元发送解码命令。 5.根据权利要求4所述的方法,其特征在于,对交互存储单元中的媒体数据进行解码 包括: 利用第二处理器单元根据所述解码命令对交互存储单元中的媒体数据进行解码,并在 解码过程中调用作为第三处理器单元的解码加速单元进行加速。 6.根据权利要求5所述的方法,其特征在于,解码得到解码结果数据后,还利用第二处 理器单元向第。
6、一处理器单元发送是否正确解码的解码结果消息,并具体将正确解码得到的 解码结果数据存储在所述交互存储单元中; 利用第一处理器单元将对交互存储单元的读写权限从第二处理器单元切换到第一处 理器单元,以及响应于正确解码的解码结果消息,执行所述将交互存储单元中的解码结果 数据搬移到所述外部存储单元的缓冲区中的操作。 7.根据权利要求1至6任意一项所述的方法,其特征在于,还包括: 对缓冲区中的解码结果数据进行输出播放时,利用第一处理器单元对所述外部存储 单元的缓冲区进行监控,响应于缓冲区的剩余空间大于或等于一完整帧的解码结果数据大 小,执行所述从外部存储单元的输入空间内读取下一完整帧的媒体数据存储在交互存。
7、储单 元中的操作。 8.根据权利要求1至6任意一项所述的方法,其特征在于,所述媒体数据包括音频数据 和/或者视频数据。 9.一种多处理器系统,其特征在于,包括: 权 利 要 求 书CN 103034147 A 2/3页 3 第一处理器单元,用于从外部存储单元的输入空间内读取至少一完整帧的媒体数据存 储在交互存储单元中,以及将交互存储单元中的解码结果数据搬移到所述外部存储单元的 缓冲区中,并对缓冲区中的解码结果数据进行输出播放; 第二处理器单元,用于对交互存储单元中的媒体数据进行解码,并将解码得到的解码 结果数据存储在所述交互存储单元中; 交互存储单元,用于存储媒体数据,以及媒体数据的解码结果数。
8、据。 10.根据权利要求9所述的多处理器系统,其特征在于,所述第一处理器单元包括播放 单元、控制单元与解析单元,所述第二处理器单元包括解码单元; 所述解析单元,用于响应于控制单元的启动控制命令,从外部存储单元的输入空间内 读取一完整帧的媒体数据存储在交互存储单元中,并向控制单元发送解析完成消息; 所述控制单元,用于向所述解析单元发送启动控制命令;以及响应于解析单元发送的 解析完成消息,向解码单元发送解码命令;响应于解码单元发送的正确解码的解码结果消 息,将交互存储单元中的解码结果数据搬移到所述外部存储单元的缓冲区中,并向播放单 元发送播放命令; 所述解码单元,用于根据所述解码命令,对交互存储单。
9、元中的媒体数据进行解码,向控 制单元发送是否正确解码的解码结果消息,并将正确解码得到的解码结果数据存储在所述 交互存储单元中; 所述播放单元,用于根据所述播放命令,对缓冲区中的解码结果数据进行输出播放。 11.根据权利要求10所述的多处理器系统,其特征在于,所述解析单元从外部存储单 元的输入空间内读取一完整帧的媒体数据存储在交互存储单元中时,具体从外部存储单元 的输入空间内顺序读取媒体数据并进行帧判定与定位,从外部存储单元的输入空间读取一 个帧的媒体数据;对所述一个帧的合法性与完整性进行检测;响应于所述一个帧的合法性 与完整性通过检测,所述一个帧为一个完整帧,将所述一个帧的媒体数据存储在交互存。
10、储 单元中。 12.根据权利要求10所述的多处理器系统,其特征在于,所述控制单元,还用于响应于 解析单元发送的解析完成消息,将对交互存储单元的读写权限从第一处理器单元切换到第 二处理器单元,以及响应于解码单元发送的解码结果消息,将对交互存储单元的读写权限 从第二处理器单元切换到第一处理器单元。 13.根据权利要求10所述的多处理器系统,其特征在于,所述控制单元,还用于识别所 述解码结果消息是否为正确解码的解码结果消息,响应于所述解码结果消息为正确解码的 解码结果消息,开始执行所述将交互存储单元中的解码结果数据搬移到所述外部存储单元 的缓冲区中的操作。 14.根据权利要求10所述的多处理器系统,。
11、其特征在于,所述解码单元还用于在对交 互存储单元中的媒体数据进行解码的过程中,调用第三处理器单元过程进行加速; 所述多处理器系统还包括第三处理器单元,用于作为解码加速单元,对所述解码单元 的解码进行加速。 15.根据权利要求10至14任意一项所述的多处理器系统,其特征在于,所述控制单元, 还用于在所述播放单元对缓冲区中的解码结果数据进行输出播放时,对所述外部存储单元 的缓冲区进行监控,响应于缓冲区的剩余空间大于或等于一完整帧的解码结果数据大小, 权 利 要 求 书CN 103034147 A 3/3页 4 开始执行向所述解析单元发送启动控制命令的操作,以便所述解析单元从外部存储单元的 输入空间。
12、内读取下一完整帧的媒体数据存储在交互存储单元中。 16.根据权利要求15所述的多处理器系统,其特征在于,所述媒体数据包括音频数据 和/或视频数据。 17.一种设备,包括多处理器系统、外部存储单元、文件系统处理单元与文件存储单元, 其特征在于,所述多处理器系统具体为权利要求9至16任意一项所述的多处理器系统; 所述文件存储单元用于存储媒体文件,所述媒体文件由媒体数据组成; 所述外部存储单元包括输入空间与缓冲区,所述输入空间用于存储媒体数据,所述缓 冲区用于存储媒体数据的解码结果数据; 所述文件系统处理单元用于响应于多处理器系统中第一处理器单元的控制启动;对外 部存储单元的输入空间进行监控,响应于。
13、外部存储单元的输入空间有空余,从文件存储单 元中读取媒体数据并存储在外部存储单元的输入空间内。 18.根据权利要求17所述的设备,其特征在于,所述多处理器系统中的第一处理器单 元或者该第一处理器单元中的控制单元,具体通过直接存储器存取DMA单元将交互存储单 元中的解码结果数据搬移到所述外部存储单元的缓冲区中; 所述设备还包括DMA单元,用于根据第一处理器单元或者控制单元的搬移控制命令, 将交互存储单元中的解码结果数据搬移到所述外部存储单元的缓冲区中。 权 利 要 求 书CN 103034147 A 1/10页 5 媒体文件的播放处理方法、 多处理器系统与设备 技术领域 0001 本发明涉及媒体。
14、技术,尤其是一种媒体文件的播放处理方法、多处理器系统与设 备。 背景技术 0002 现有技术中,专用的多媒体播放器,例如,动态影像专家压缩标准音频层面 3(Moving Picture Experts Group Audio Layer-3,以下简称:MP3)音频播放器、MP4视频 播放器等,均采用单一处理器对相应的音频、视频等媒体文件进行解码、播放。 0003 但是,随着通信技术的迅速发展,现有的专用多媒体播放器之外的电子产品,例如 通信产品,大多支持对音频、视频等媒体文件的解码与播放。在这类电子产品中,媒体文件 的解码、播放功能附加在其它功能之上实现,例如,在移动终端中,音频文件的解码、播。
15、放功 能附加在通信、视频、图像处理功能之上实现。在这类电子产品中,通常包含多个处理器单 元,例如,高级精简指令集机器(Advanced RISC Machines,以下简称:ARM)处理器单元与数 字信号处理器(Digital Signal Processor,以下简称:DSP)单元。不同处理器单元具有 不同的处理特点,根据分工不同负责完成不同任务。例如,移动终端中的DSP单元主要负责 完成通信系统的核心算法,而ARM处理器单元主要负责完成控制及文件操作。在具有多个 处理器单元的多处理器系统中,通常需要实现的功能多且复杂,而系统资源有限,这就需要 对系统资源进行优化配置及复用,以达到对有限资源。
16、的最优配置,最大程度的降低产品成 本。例如,由于ARM处理器单元中的ARM7系列处理器单元具有较灵活的存储访问功能及较 丰富的流程控制指令,但缺乏强大的数据运算能力,使用ARM7系列处理器单元进行控制操 作;由于DSP单元具有较强大的数据处理能力,但其流程控制及存储访问功能受限,如无法 访问外部存储空间,因此DSP单元会有部分专属内部存储器,使用DSP单元实现需要大量运 算的运算功能。 0004 在实现本发明的过程中,发明人发现现有技术至少存在以下问题: 0005 多处理器系统中,仍然使用单一处理器单元,例如,仅使用ARM处理器单元或DSP 单元,来对媒体文件进行解码、播放,由于各处理器单元在。
17、不同功能方面的性能优劣不同, 仅使用单一处理器单元对媒体文件进行解码、播放,影响了媒体文件的播放效果;并且,由 于未充分利用多个处理器单元,无法充分发挥多个处理器单元的性能优势,造成多个处理 器单元的性能损失与系统资源浪费。 发明内容 0006 本发明实施例所要解决的一个技术问题是:提供一种媒体文件的播放处理方法、 多处理器系统与设备,以在多处理器系统对媒体文件进行解码、播放时,充分利用系统资 源,提高媒体文件的播放效果与多处理器系统的工作性能。 0007 为解决上述技术问题,根据本发明实施例的一个方面,提供一种媒体文件的播放 处理方法,包括: 说 明 书CN 103034147 A 2/10。
18、页 6 0008 利用第一处理器单元从外部存储单元的输入空间内读取至少一完整帧的媒体数 据存储在交互存储单元中; 0009 利用第二处理器单元对交互存储单元中的媒体数据进行解码,并将解码得到的解 码结果数据存储在所述交互存储单元中; 0010 利用第一处理器单元将交互存储单元中的解码结果数据搬移到所述外部存储单 元的缓冲区中,并对缓冲区中的解码结果数据进行输出播放。 0011 根据本发明实施例的另一个方面,提供一种多处理器系统,包括: 0012 第一处理器单元,用于从外部存储单元的输入空间内读取至少一完整帧的媒体数 据存储在交互存储单元中,以及将交互存储单元中的解码结果数据搬移到所述外部存储单。
19、 元的缓冲区中,并对缓冲区中的解码结果数据进行输出播放; 0013 第二存储器单元,用于对交互存储单元中的媒体数据进行解码,并将解码得到的 解码结果数据存储在所述交互存储单元中; 0014 交互存储单元,用于存储媒体数据,以及媒体数据的解码结果数据。 0015 根据本发明实施例的又一个方面,提供一种设备,包括多处理器系统、外部存储单 元、文件系统处理单元与文件存储单元,所述多处理器系统具体为本发明上述实施例提供 的多处理器系统; 0016 所述文件存储单元,用于存储媒体文件,所述媒体文件由媒体数据组成; 0017 所述外部存储单元,包括输入空间与缓冲区,所述输入空间用于存储媒体数据,所 述缓冲。
20、区用于存储媒体数据的解码结果数据; 0018 所述文件系统处理单元,用于响应于多处理器系统中第一处理器单元的控制启 动;对外部存储单元的输入空间进行监控,响应于外部存储单元的输入空间有空余,从文件 存储单元中读取媒体数据并存储在外部存储单元的输入空间内。 0019 基于本发明上述实施例提供的媒体文件的播放处理方法、多处理器系统与设备, 由于多处理器系统中的每个处理器单元在不同功能方面的性能优劣不同,充分发挥每个处 理器单元的性能优势,利用多个处理器单元配合实现对媒体文件的解码、播放流程,例如, 可以利用具有较灵活的存储访问功能及较丰富的流程控制指令的处理器单元,如ARM7系 列处理器单元,作为。
21、第一处理器单元,从外部存储单元的输入空间读取媒体数据并存储在 第二处理器单元可访问的交互存储单元中,利用具有较强大的数据处理能力的处理器,如 DSP单元,作为第二处理器单元,对交互存储单元中的媒体数据进行解码,并将解码得到的 解码结果数据存储在可访问的交互存储单元中,然后由第一处理器单元进行播放,充分发 挥了第一处理器单元的灵活存储访问功能及丰富流程控制指令功能与第二处理器单元的 强大数据处理能力,与现有技术相比,提高了媒体文件的播放效果;充分发挥了多个处理器 单元的性能优势,充分利用了多处理器系统的系统资源,实现了对系统资源的优化配置及 复用,达到对有限资源的最优配置,最大程度的降低产品成本。
22、,且提高了多处理器系统的工 作性能。 0020 下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。 附图说明 0021 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 说 明 书CN 103034147 A 3/10页 7 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。 0022 图1为本发明媒体文件的播放处理方法一个实施例的流程图。 0023 图2为本发明媒体文件的播放处理方法另一个实施例的流程图。 0024 图3。
23、为本发明多处理器系统一个实施例的结构示意图。 0025 图4为本发明多处理器系统另一个实施例的结构示意图。 0026 图5为本发明多处理器系统又一个实施例的结构示意图。 0027 图6为本发明设备一个实施例的结构示意图。 0028 图7为本发明设备另一个实施例的结构示意图。 具体实施方式 0029 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。 0030 图1为本发明媒体文件的。
24、播放处理方法一个实施例的流程图。如图1所示,该实 施例媒体文件的播放处理方法包括: 0031 101,利用第一处理器单元从外部存储单元的输入空间内读取至少一完整帧的媒 体数据存储在交互存储单元中。 0032 根据本发明的一个具体实施例,其中的媒体数据具体可以是音频数据,也可以是 视频数据,或者同时包括音频和数据/或者视频数据。 0033 具体地,从外部存储单元的输入空间内读取的可以是一个完整帧的媒体数据,也 可以是多个完整帧的媒体数据,由于对每一个完整帧的媒体数据的处理均相同,为方便起 见,本发明各实施例中重点以每次读取一个完整帧的媒体数据的实施例为例进行说明,对 于一次读取多个完整帧的媒体数。
25、据的实施例,本领域技术人员根据本发明实施例可以参照 实现。 0034 102,利用第二处理器单元对交互存储单元中的媒体数据进行解码,并将解码得到 的解码结果数据存储在交互存储单元中。 0035 示例性地,其中的解码结果数据为脉冲编码调制(Pulse Code Modulation,以下 简称:PCM)数据。 0036 103,利用第一处理器单元将交互存储单元中的解码结果数据搬移到外部存储单 元的缓冲区中,并对缓冲区中的解码结果数据进行输出播放。 0037 由于多处理器系统中的每个处理器单元在不同功能方面的性能优劣不同,本发明 上述实施例提供的媒体文件的播放处理方法,充分发挥每个处理器单元的性能。
26、优势,利用 多个处理器单元配合实现对媒体文件的解码、播放流程,例如,可以利用具有较灵活的存储 访问功能及较丰富的流程控制指令的处理器单元,如ARM7系列处理器单元,作为第一处理 器单元,从外部存储单元的输入空间读取媒体数据并存储在第二处理器单元可访问的交互 存储单元中,利用具有较强大的数据处理能力的处理器,如DSP单元,作为第二处理器单 说 明 书CN 103034147 A 4/10页 8 元,对交互存储单元中的媒体数据进行解码,并将解码得到的解码结果数据存储在可访问 的交互存储单元中,然后由第一处理器单元进行播放,充分发挥了第一处理器单元的灵活 存储访问功能及丰富流程控制指令功能与第二处理。
27、器单元的强大数据处理能力,提高了媒 体文件的播放效果;充分发挥了多个处理器单元的性能优势,充分利用了多处理器系统的 系统资源,实现了对系统资源的优化配置及复用,达到对有限资源的最优配置,最大程度的 降低产品成本,且提高了多处理器系统的工作性能。 0038 根据本发明媒体文件的播放处理方法的另一个具体实施例,还可以包括如下操 作: 0039 利用第一处理器单元控制文件系统处理单元启动; 0040 利用文件系统处理单元对外部存储单元的输入空间进行监控,响应于外部存储单 元的输入空间有空余,从文件存储单元中读取媒体数据并存储在外部存储单元的输入空间 内。 0041 根据本发明媒体文件的播放处理方法的。
28、一个示例而非限制,图1所示实施例的 101可以通过如下方式实现: 0042 利用第一处理器单元从外部存储单元的输入空间内顺序读取媒体数据并进行帧 判定与定位,以从外部存储单元的输入空间读取一个帧的媒体数据; 0043 利用第一处理器单元对该一个帧的合法性与完整性进行检测; 0044 响应于该一个帧的合法性与完整性通过检测,则该一个帧为一个完整帧,利用第 一处理器单元将该一个帧的媒体数据存储在交互存储单元中。 0045 由于媒体数据中可能存在错误或者不同种类的媒体数据,通过对媒体数据进行合 法性检测与完整性检测,在媒体数据通过合法性检测与完整性检测后再针对该媒体数据进 行后续操作,可以有效避免后。
29、续对错误数据不必要的解码处理占用多处理器系统的系统资 源,提高系统资源的利用率。 0046 示例性地,由于每一个音频帧或视频帧的帧头中都包括该帧的特征信息,可以基 于该帧的特征信息对该帧进行合法性检测,基于该帧与下一帧的特征信息对该帧进行完整 性检测。具体地,可以通过如下方式对该一个帧的合法性进行检测:检测该一个帧的特征信 息,例如音频帧的采样率、声道、比特率、是否采用填充位、是否受保护等;由于在相应的音 频或视频压缩标准中,对各特征信息都规定了特定的取值范围,例如,规定MP3格式帧采样 率的取值范围是8khz48khz,检测该一个帧的各特征信息是否都在特定的取值范围内, 例如,采样率的值是否。
30、位于8khz48khz范围内;若该一个帧的各特征信息均位于特定的 取值范围内,则各项特征信息均合法,此时,该一个帧通过合法性检测。 0047 具体地,可以通过如下方式对该一个帧进行完整性检测:通过该一个帧的帧头与 帧长即可获知下一帧的帧头位置,确认下一帧的帧头位置是否存在相应的同步头,例如,对 于MPEG1帧,确认下一帧的帧头位置是否存在12比特的同步字0xFFE;若下一帧的帧头位 置存在相应的同步头,比较下一帧的特征信息与该一个帧的特征信息是否一致,例如,下一 帧与该一个帧的采样率是否一致。若下一帧的特征信息与该一个帧的特征信息一致,则该 一个帧通过完整性检测。 0048 根据本发明媒体文件。
31、的播放处理方法的又一个具体实施例,将一个帧的媒体数据 存储在交互存储单元中之后,还可以利用第一处理器单元将对交互存储单元的读写权限从 说 明 书CN 103034147 A 5/10页 9 第一处理器单元切换到第二处理器单元,并向第二处理器单元发送解码命令。 0049 示例性地,可以通过如下方式对交互存储单元中的媒体数据进行解码:利用第二 处理器单元,根据解码命令对交互存储单元中的媒体数据进行解码,并在解码过程中调用 作为第三处理器单元的解码加速单元进行加速,进一步提高解码速度,实现更高的解码性 能。 0050 根据本发明媒体文件的播放处理方法的一个示例而非限制,利用第二处理器单元 解码得到解。
32、码结果数据后,可以利用第二处理器单元向第一处理器单元发送是否正确解码 的解码结果消息,具体将正确解码得到的解码结果数据存储在交互存储单元中;利用第一 处理器单元将对交互存储单元的读写权限从第二处理器单元切换到第一处理器单元,以及 响应于正确解码的解码结果消息,执行将交互存储单元中的解码结果数据搬移到外部存储 单元的缓冲区中的操作。 0051 根据本发明媒体文件的播放处理方法的再一个具体实施例,在本发明上述各实施 例媒体文件的播放处理方法中,还可以在第一处理器单元对缓冲区中的解码结果数据进行 输出播放时,利用第一处理器单元对外部存储单元的缓冲区进行监控,响应于缓冲区的剩 余空间大于或等于一完整帧。
33、的解码结果数据大小,开始执行从外部存储单元的输入空间内 读取下一完整帧的媒体数据存储在交互存储单元中的操作。当缓冲区的剩余空间已满,不 足以存储下一完整帧的解码结果数据时,则不进行读取下一完整帧的媒体数据的操作,直 到监测到缓冲区的剩余空间大于一完整帧的解码结果数据大小时,再开始执行读取下一完 整帧的媒体数据的操作。 0052 图2为本发明媒体文件的播放处理方法另一个实施例的流程图,该实施例适用于 对音频文件或视频文件的播放处理,尤其适用于对音频文件的播放处理情况。如图2所示, 该实施例媒体文件的播放处理方法包括: 0053 201,文件系统处理单元响应于第一处理器单元的控制启动后,对外部存储。
34、单元的 输入空间进行监控,并判断外部存储单元的输入空间是否有空余。响应于外部存储单元的 输入空间有空余,执行202。否则,若外部存储单元的输入空间没有空余,不执行本实施例的 后续流程。 0054 202,文件系统处理单元从文件存储单元中读取媒体数据并存储在外部存储单元 的输入空间内。 0055 其中的媒体数据具体可以是音频数据,也可以是视频数据,或者同时包括音频和 数据/或者视频数据。 0056 由于文件存储单元的数据读取速度较慢,文件系统处理单元将与媒体数据的解码 过程同步,不断监测外部存储单元中用于存放待解码媒体数据的输入空间的空余,并不断 填充待解码媒体数据,以避免文件存储单元数据读取速。
35、度较慢的问题,满足媒体数据解码 的实时性要求。 0057 203,第一处理器单元从外部存储单元的输入空间内顺序读取媒体数据并进行帧 判定与定位,从外部存储单元的输入空间读取一个帧的媒体数据。 0058 204,第一处理器单元对该一个帧的合法性与完整性进行检测。响应于该一个帧的 合法性与完整性通过检测,则该一个帧为一个完整帧,执行205。否则,若该一个帧的合法性 和/或完整性未通过检测,不执行本实施例的后续流程,或者也可以丢弃该一个帧的媒体 说 明 书CN 103034147 A 6/10页 10 数据,然后返回执行203,读取下一个帧的媒体数据。 0059 205,第一处理器单元将该一个帧的媒。
36、体数据存储在交互存储单元中。 0060 206,第一处理器单元将对交互存储单元的读写权限从第一处理器单元切换到第 二处理器单元,并向第二处理器单元发送解码命令。 0061 示例性地,可以预设第一处理器单元对交互存储单元具有初始读写权限。 0062 207,第二处理器单元根据解码命令对交互存储单元中的媒体数据进行解码,并在 解码过程中调用作为第三处理器单元的解码加速单元进行加速。 0063 例如,根据ISO/IEC 13818-7标准规定,对于高级音频编码(Advanced Audio Coding,以下简称:AAC)格式的音频数据,可以依次通过熵解码(也称为:哈夫曼解码或无 噪解码)、反量化、。
37、联合立体声处理、知觉噪声替换(以下简称:PNS)、瞬时噪声整形(以下 简称:TNS)、反离散余弦变换(Inverse Modified Discrete Cosine Transform,以下简称: IMDCT)、频段复制(以下简称:SBR),来实现解码。 0064 208,得到解码结果数据后,第二处理器单元根据是否对媒体数据进行了正确解 码,向第一处理器单元发送是否正确解码的解码结果消息,例如,通过中断模式向第一处理 器单元发送是否正确解码的解码结果消息,并在对媒体数据进行了正确解码时,将正确解 码得到的解码结果数据存储在交互存储单元中。 0065 示例性地,由于在解码过程可能会出现解码异常。
38、情况,例如,熵解码异常,当出现 解码异常情况时,第二处理器单元可以通过中断模式向第一处理器单元发送解码错误的解 码结果消息,并不存储解码结果数据。第一处理器单元收到解码错误的解码结果消息后,可 以返回执行203的操作,从外部存储单元的输入空间读取下一个帧的媒体数据,并进行后 续处理。 0066 209,响应于第二处理器单元发送的解码结果消息,第一处理器单元将对交互存储 单元的读写权限从第二处理器单元切换到第一处理器单元,响应于该解码结果消息为正确 解码的解码结果消息,将交互存储单元中的解码结果数据搬移到外部存储单元的缓冲区 中。 0067 210,第一处理器单元对缓冲区中的解码结果数据进行输出。
39、播放,并对外部存储单 元的缓冲区进行监控,识别缓冲区的剩余空间是否大于或等于一完整帧的解码结果数据大 小。响应于缓冲区的剩余空间大于或等于一完整帧的解码结果数据大小,返回执行203的 操作,从外部存储单元的输入空间内读取下一完整帧的媒体数据。否则,若缓冲区的剩余空 间小于一完整帧的解码结果数据大小,不执行本实施例的后续流程。 0068 图3为本发明多处理器系统一个实施例的结构示意图。该实施例的多处理器系统 可用于执行本发明上述各媒体文件的播放处理方法流程的相应操作。如图3所示,其包括 第一处理器单元301、第二存储器单元302与交互存储单元303。 0069 第一处理器单元301,用于从外部存。
40、储单元的输入空间内读取至少一完整帧的媒 体数据存储在交互存储单元303中,以及将交互存储单元303中的解码结果数据搬移到外 部存储单元的缓冲区中,并对缓冲区中的解码结果数据进行输出播放。根据本发明的一个 具体实施例,其中的媒体数据具体可以是音频数据,也可以是视频数据,或者同时包括音频 和数据/或者视频数据。 0070 示例性地,第一处理器单元301具体可以采用ARM处理器中的ARM7系列处理器单 说 明 书CN 103034147 A 10 7/10页 11 元实现,由于具有较灵活的存储访问功能及丰富的流程控制指令,采用ARM7系列处理器单 元实现第一处理器单元301,可以提高多处理器系统的工。
41、作性能。 0071 第二处理器单元302,用于对交互存储单元303中的媒体数据进行解码,并将解码 得到的解码结果数据存储在交互存储单元303中。 0072 示例性地,第二处理器单元302具体可以采用DSP单元实现,由于DSP单元具有较 强大的数据处理能力,利用DSP单元实现第二处理器单元302,可以提高媒体数据的解码速 度与效率,提高媒体数据的正确解码率。 0073 交互存储单元303,用于存储媒体数据,以及媒体数据的解码结果数据。 0074 由于多处理器系统中的每个处理器单元在不同功能方面的性能优劣不同,本发明 上述实施例提供的多处理器系统充分发挥每个处理器单元的性能优势,利用多个处理器单 。
42、元配合实现对媒体文件的解码、播放流程,例如,可以利用具有较灵活的存储访问功能及较 丰富的流程控制指令的处理器,如ARM7系列处理器单元,作为第一处理器单元,从外部存 储单元的输入空间读取媒体数据并存储在第二处理器单元可访问的交互存储单元中,利用 具有较强大的数据处理能力的处理器,如DSP单元,作为第二处理器单元,对交互存储单元 中的媒体数据进行解码,并将解码得到的解码结果数据存储在可访问的交互存储单元中, 然后由第一处理器单元进行播放,充分发挥了第一处理器单元的灵活存储访问功能及丰富 流程控制指令功能与第二处理器单元的强大数据处理能力,提高了媒体文件的播放效果; 充分发挥了多个处理器单元的性能。
43、优势,充分利用了多处理器系统的系统资源,实现了对 系统资源的优化配置及复用,达到对有限资源的最优配置,最大程度的降低产品成本,且提 高了多处理器系统的工作性能。 0075 根据本发明的多处理器系统的另一个具体实施例,图3所示实施例的多处理器系 统中,第一处理器单元301具体包括播放单元401、控制单元402与解析单元403,第二处理 器单元302包括解码单元404,如图4所示,为本发明多处理器系统另一个实施例的结构示 意图。 0076 其中,解析单元403,用于响应于控制单元402的启动控制命令,从外部存储单元 的输入空间内读取一完整帧的媒体数据存储在交互存储单元303中,并向控制单元402发。
44、 送解析完成消息。 0077 控制单元402,用于向解析单元403发送启动控制命令;以及响应于解析单元403 发送的解析完成消息,向解码单元404发送解码命令;响应于解码单元404发送的正确解 码的解码结果消息,将交互存储单元303中的解码结果数据搬移到外部存储单元的缓冲区 中,并向播放单元401发送播放命令。 0078 解码单元404,用于根据控制单元402发送的解码命令,对交互存储单元303中的 媒体数据进行解码,向控制单元404发送是否正确解码的解码结果消息,并将正确解码得 到的解码结果数据存储在交互存储单元303中。 0079 播放单元401,用于根据控制单元402发送的播放命令,对外。
45、部存储单元的缓冲区 中的解码结果数据进行输出播放。 0080 根据本发明多处理器系统的一个示例而非限制,图4所示的实施例中,解析单元 403从外部存储单元的输入空间内读取一完整帧的媒体数据存储在交互存储单元303中 时,具体从外部存储单元的输入空间内顺序读取媒体数据并进行帧判定与定位,以从外部 说 明 书CN 103034147 A 11 8/10页 12 存储单元的输入空间读取一个帧的媒体数据;对该一个帧的合法性与完整性进行检测;响 应于该一个帧的合法性与完整性通过检测,则该一个帧为一个完整帧,将该一个帧的媒体 数据存储在交互存储单元303中。 0081 根据本发明多处理器系统的一个示例而非。
46、限制,图4所示的实施例中,控制单元 402,还用于响应于解析单元403发送的解析完成消息,将对交互存储单元303的读写权限 从第一处理器单元301切换到第二处理器单元302,以及响应于解码单元404发送的解码结 果消息,将对交互存储单元303的读写权限从第二处理器单元302切换到第一处理器单元 301。 0082 根据本发明多处理器系统的一个示例而非限制,图4所示的实施例中,控制单元 402,还用于识别解码单元404发送的解码结果消息是否为正确解码的解码结果消息,响应 于解码结果消息为正确解码的解码结果消息,开始执行将交互存储单元303中的解码结果 数据搬移到外部存储单元的缓冲区中的操作。 0。
47、083 根据本发明的多处理器系统的又一个具体实施例,解码单元404还用于在对交互 存储单元303中的媒体数据进行解码的过程中,调用第三处理器单元304进行加速。如图5 所示,为本发明多处理器系统又一个实施例的结构示意图,该实施例中,多处理器系统还包 括第三处理器单元304,用于作为解码加速单元,对解码单元404的解码过程进行加速,进 一步提高多处理器系统的解码速度,实现更高的解码性能。 0084 示例性地,第三处理器单元304可以使用适用于不同媒体数据格式的专属硬件 单元或专属运算加速处理单元实现,例如,采用一个通用离散余弦变换(Discrete Cosine Transformation,以。
48、下简称:DCT)的硬件加速单元实现,使用硬件加速单元实现,一方面可 以不消耗第二处理器单元302的性能资源,另一方面可以提高多处理器系统的解码的整体 性能,同时可以适用于各种媒体数据格式。 0085 另外,根据本发明的多处理器系统的再一个具体实施例,在图4或图5所示各实施 例的多处理器系统中,控制单元402,还可以用于在播放单元401对外部存储单元的缓冲区 中的解码结果数据进行输出播放时,对外部存储单元的缓冲区进行监控,响应于缓冲区的 剩余空间大于或等于一完整帧的解码结果数据大小,开始执行向解析单元403发送启动控 制命令的操作,以便解析单元403从外部存储单元的输入空间内读取下一完整帧的媒体。
49、数 据存储在交互存储单元303中。 0086 图6为本发明设备一个实施例的结构示意图。该实施例的设备可用于实现本发明 上述各媒体文件的播放处理方法实施例的流程。如图6所示,其包括多处理器系统1、外部 存储单元2、文件系统处理单元3与文件存储单元4,其中的多处理器系统1具体可以采用 本发明图3至图5所示任一实施例提供的多处理器系统实现,图6仅示出了采用图5所示 其中一个实施例结构的示例,对于多处理器系统1采用其它实施例时的结构,各单元之间 的连接关系相同,不再赘述。 0087 文件存储单元4用于存储媒体文件,该媒体文件由媒体数据组成。 0088 外部存储单元2包括输入空间与缓冲区,其中,输入空间用于存储媒体数据,缓冲 区用于存储媒体数据的解码结果数据。 0089 文件系统处理单元3用于响应于多处理器系统1中的第一处理器单元301的控制 启动;对外部存储单元2的输入空间进行监控,响应于外部存储单元2的输入空间有空余, 说 明 书CN。