一种音频播放装置、方法及一种数字电视芯片的制作方法

文档序号:7927692阅读:111来源:国知局
专利名称:一种音频播放装置、方法及一种数字电视芯片的制作方法
技术领域
本发明涉及移动多媒体广播技术领域,特别是涉及一种移动多媒体广播系 统的音频播放装置和方法,以及一种提供移动多媒体广播接收的数字电视芯 片。
背景技术
移动多媒体广播是新兴的一种多媒体播放技术,近年来,这种技术和标准发展迅速,例如欧洲的数字视频广播手持式接收(DVB-H, Digital Video Broadcast Handheld )、美国的媒体单一前向链路(MediaFLO, Media Forward Link Only)和中国的移动多々某体广系统(CMMB , China Mobile Multimedia Broadcast)等,为其终端用户提供许多服务内容,如广告、天气预报、新闻、 体育节目、综艺、多媒体广播剧、电影等节目,用户可以根据自己的爱好选择 不同的业务。使用移动多媒体广播业务的用户可以通过手持的终端,在高速移动的 情况下,用移动终端观看电视。用户接收到节目单,可以选择自己有权利 收看的频道,接收选择频道的多媒体数据,从而实现在移动终端上看自己 选择的电视节目。但是,移动终端的播放系统在播放节目时,需要进行音频 和视频的解码、播放以及同步等复杂处理,对处理器的性能要求较高。对于音 频播》丈来说,目前,主流的嵌入式操作系统如Win CE, Symbian和Linux平 台上有丰富的多媒体软硬件和驱动的支持,在此类操作系统上实现移动数字电 视广播的音频播放主要是对提供的基于该操作系统的音频播放引擎相关的应 用程序编程才妄口 (API, Application Programming Interface )进4亍开发。其优点 是对于用户来说使用非常方便,但缺点也比较明显,如因需要较多的软硬件和 驱动支持而导致系统比较庞大和复杂,占用资源较多,无法集成在一些功能较 弱的嵌入式操作系统中。比如移动多媒体广播终端芯片上的操作系统,这类操作系统因要考虑到移动设备终端的功耗等因素,处理器的能力相对有限,所以功能较弱,且资源有限;此外,目前流行的多媒体播放引擎没有开放内部结 构,不能对其进行修改以适应数字电—见广播终端用户在播放节目时快速切换频 道,以观看和收听不同节目的需要。总之,需要本领域技术人员迫切解决的一个技术问题就是如何能够以较 少的资源占用,满足在功能较弱的嵌入式操作系统上播放移动多媒体广播系 统的音频和移动多J 某体广播系统在应用中进行频道切换时快速音频切换的需 求。发明内容本发明所要解决的技术问题是提供一种移动多媒体广播系统的音频播 放装置和方法,能够以较少的资源占用,满足在功能较弱的嵌入式操作系统 上播放移动多媒体广播系统的音频和移动多媒体广播系统在应用中进行频 道切换时快速音频切换的需求。本发明的另一个目的是提供一种移动多媒体广播终端的数字电视芯片, 以实现本发明在移动终端的具体应用。为了解决上述问题,本发明实施例提供了 一种移动多媒体广播系统的 音频播放装置,包括音频数据获取模块,用于获取解码后的音频数据;音频数据指针更新模块,用于将音频数据地址指针指向解码后音频数据 的当前緩存地址;音频数据播放模块,用于在音频播放过程中,比较所述音频数据地址指针 和播放指针,并依据比较结果播放音频数据或停止播放音频数据。 优选的,所述音频数据播放模块进一步包括存储量计算子模块,用于比较所述音频数据地址指针和播放指针,获得所 述緩存中音频数据的存储量;判断子才莫块,用于判断所述音频数据的存储量是否满足播放阈值,若是, 则启动播放子模块;若否,则启动停止子模块;播放子模块,用于设置所述播放指针为可用状态,依据所述播放指针的状
态读取并播放所述存储量的音频数据,并更新所述播放指针;
停止子模块,用于设置所述播放指针为不可用状态,并依据所述播放指针
的状态停止〗番;改音频数据。
优选的,所述音频播^:装置还包括
初始化模块,用于在所述获取解码后的音频数据之前,将音频数据地址指 针和播放指针初始化至同一所述緩存起始地址,并设置所述播放指针为不可用 状态,初始化音频解码设备和音频播》t设备。
优选的,所述音频播放装置还包括音频数据写入模块,所述音频数据写入 模块进一步包括
顺序写入子模块,用于将解码后的音频数据从所述緩存低地址位到高地址 4立依次写入;
地址翻转写入子模块,用于当所述解码后的音频数据写入到达所述緩存最 高地址位,则跳转到最低地址位继续写入。 优选的,所述播放子模块进一步包括
顺序播放单元,用于从所述緩存低地址位到高地址位依次读取并播放所述 解码后的音频数据;
地址翻转播放单元,用于当播放到达所述緩存最高地址位,则跳转到最低 地址位继续读取并播放所述解码后的音频数据。
优选的,所述播放阈值为N倍的每采样间隔的采样数据量,即采样间隔 与单位时间的音频数据采样率和采样精度的乘积。
本发明实施例还提供了一种移动多媒体广播系统的音频播放方法,包括以 下步骤
获取解码后的音频数据;
将音频数据地址指针指向解码后音频数据的当前緩存地址; 在音频播放过程中,比较所述音频数据地址指针和播放指针,并依据比较 结果播放音频数据或停止播放音频数据。
9优选的,所述比较音频数据地址指针和播放指针,并依据比较结果播放音
频数据或停止播放音频数据,包括以下步骤
比较所述音频数据地址指针和播放指针,获得所述緩存中音频数据的存储
量;
并判断所述音频数据的存储量是否满足播放阔值,若是,则设置所述播放 指针为可用状态,依据所述播放指针的状态读取并播放所述存储量的音频数 据,并更新所述播放指针;若否,则设置所述播放指针为不可用状态,并依据 所述播放指针的状态停止播放音频数据。
优选的,在所述获取解码后的音频数据之前还包括
将所述音频数据地址指针和播放指针初始化至同 一緩存起始地址,并设置 所述播;汰指针为不可用状态,初始化音频解码设备和音频播放设备。
优选的,在所述将音频数据地址指针指向解码后音频数据的当前緩存地址 之前,还包括
将解码后的音频数据从所述緩存低地址位到高地址位依次写入; 当所述解码后的音频数据写入到达所述緩存最高地址位,则跳转到最低地 址位继续写入。
优选的,所述比较指针获得所述緩存中音频数据的存储量的步骤进一步包

当音频数据地址指针所指地址位高于播放指针所指地址位时,音频数据写 地址高于音频数据读地址,所述緩存中音频数据的存储量为音频数据写地址与 音频数据读地址的差;
当音频数据地址指针所指地址位低于〗番;故指针所指地址位时,音频数据写 地址低于音频数据读地址,所述緩存中音频数据的存储量为音频数据写地址与 音频数据读地址的差与所述緩存的緩存容量的和;
当音频翁:据地址指针所指地址位与播;故指针所指地址位相同时,音频数据 写地址等于读地址,所述緩存中音频数据的存储量为0。
优选的,所述读取并播放緩存中的音频数据包括以下步骤
从所述緩存低地址位到高地址位依次读取并播放所述解码后的音频数据;当播放到达所述緩存最高地址位,则跳转到最低地址位继续读取并播放所 述解码后的音频数据。
优选的,所述播放阈值为N倍的每采样间隔的釆样数据量,即采样间隔 与单位时间的音频数据釆样率和采样精度的乘积。
本发明实施例还提供了 一种数字电视芯片,所述芯片包括音频播放装置, 所述音频播放装置包括
音频数据获取模块,用于获取解码后的音频数据;
音频数据指针更新模块,用于将音频数据地址指针指向解码后音频数据 的当前緩存地址;
音频数据播放模块,用于在音频播放过程中,比较所述音频数据地址指针 和播放指针,并依据比较结果播放音频数据或停止播放音频数据。 优选的,所述音频数据播放模块进一步包括
存储量计算子模块,用于比较所述音频数据地址指针和播放指针,获得音 频数据緩存中音频数据的存储量;
判断子模块,用于判断所述音频数据的存储量是否满足播放阔值,若是, 则启动播放子模块;若否,则启动停止子模块;
播放子模块,用于设置所述播放指针为可用状态,依据所述播放指针的状 态读取并播放所述存储量的音频数据,并更新所述播放指针;
停止子模块,用于设置所述播放指针为不可用状态,并依据所述播放指针 的状态停止播放音频数据。
优选的,所述音频播放装置还包括
初始化模块,用于在所述获取解码后的音频数据之前,将音频数据地址指 针和播放指针初始化至同 一緩存起始地址,并设置所述播放指针为不可用状 态,初始化音频解码设备和音频播放设备。
优选的,所述音频播放装置还包括音频数据写入模块,所述音频数据写入 模块进一步包括
顺序写入子模块,用于将解码后的音频数据从所述緩存低地址位到高地址^f立依次写入;
地址翻转写入子模块,用于当所述解码后的音频数据写入到达所述緩存最 高地址位,则跳转到最低地址位继续写入。 优选的,所述播放子模块进一步包括
顺序播放单元,用于从所述緩存低地址位到高地址位依次读取并播放所述 解码后的音频数据;
地址翻转播放单元,用于当播放到达所述緩存最高地址位,则跳转到最低 地址位继续读取并播^:所述解码后的音频数据。
与现有技术相比,本发明具有以下优点
首先,针对移动多媒体广播终端芯片上的操作系统功能较弱且资源有限 的特点,本发明根据判断音频解码数据在緩存中的存储量是否满足播放阈值, 来调整播放指针的可用和不可用状态,从而实现了由音频播放指针的状态来控 制音频数据的播放。该方法实现筒单,实现代码短小,无需增加软硬件设备和 驱动支持,因此,占用资源也较少,可方便地集成在移动终端芯片的弱功能操 作系统中。与现有对音频播;故引擎的应用程序编程接口进行大量代码开发,从 而实现移动终端的音频播放方式相比,本发明有效解决了该方法因需要较多的 软硬件和驱动支持而导致系统比较庞大和复杂,代码量大,占用资源较多,无 法集成在功能较弱的移动多媒体广播终端芯片的嵌入式操作系统中的问题;
其次,本发明使用应用程序接口函数控制音频播放指针,在移动终端进行 频道切换时,可通过播放指针的状态重置和指向重置,使其快速获得和播放目 标音频数据,减少音频切换时间,满足频道切换时快速音频切换的要求。


图1是本发明的一种移动多媒体广播系统的音频播放装置实施例的结 构框图2是本发明应用图1所示的装置实施例进行音频播放的步骤流程图; 图3是本发明的一种移动多媒体广播系统的音频播放方法实施例的步骤流程图。
具体实施例方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,在音频播放过程中,通过音频数 据地址指针和播放指针的比较,来调整播放指针的可用和不可用状态,从而 实现根据音频播放指针的状态控制音频数据的播放。本发明实现方法简单,实 现代码短小,无需增加软硬件设备和驱动支持,占用资源也较少,可方便地集
成在移动终端芯片的功能较弱且资源有限的操作系统中;本发明还在移动终端 进行频道切换时,通过播放指针的状态重置和指向重置,使其快速获得和播放 目标音频W居,减少音频切换时间,满足频道切换时快速音频切换的要求。
参考图1,示出了本发明的一种移动多媒体广播系统的音频播放装置实 施例的结构框图,可以包括以下模块
音频数据获取模块101,用于获取解码后的音频数据;
音频数据指针更新模块102,用于将音频数据地址指针指向解码后音频数 据的当前緩存地址;
音频数据播放模块103,用于在音频播放过程中,比较所述音频数据地址 指针和播放指针,并依据比较结果播放音频数据或停止播放音频数据。
优选的是,音频数据播放模块103还可以进一步包括
存储量计算子模块1031,用于比较所述音频数据地址指针和播放指针, 获得所述緩存中音频数据的存储量;
判断子模块1032,用于判断所述音频数据的存储量是否满足播放阈值, 若是,则启动播放子模块;若否,则启动停止子模块;
其中,所述播放阈值为N倍的每采样间隔的采样数据量,即采样间隔与 单位时间的音频数据采样率和采样精度的乘积。
播放子模块1033,用于设置所述播放指针为可用状态,依据所述播放指
13针的状态读取并播放所述存储量的音频数据,并更新所述播放指针;
停止子模块1034,用于设置所述播放指针为不可用状态,并依据所述播
放指针的状态停止播放音频数据。
优选的是,播放子模块1033还可以进一步包括
顺序播放单元10331,用于从所述緩存低地址位到高地址位依次播放所述 解码后的音频数据;
地址翻转播放单元10332,用于当插-;改到达所述緩存最高地址位,则跳转 到最低地址位继续播放。
优选的是,本实施例的装置还可以包括
初始化模块104,用于在所述获取解码后的音频数据之前,将音频数据地 址指针和播放指针初始化至同一所述緩存起始地址,并设置所述播放指针为不 可用状态,初始化音频解码设备和音频播放设备。
优选的是,本实施例的装置还可以包括
音频数据写入模块105,该模块还可以进一步包括
顺序写入子模块1051,用于将解码后的音频数据从所述緩存低地址位到 高地址位依次写入;
地址翻转写入子^t块1052,用于当所述解码后的音频凄t据写入到达所述 緩存最高地址位,则跳转到最低地址位继续写入。
参考图2,示出了本发明应用图1所示的装置实施例进行音频播放的步 骤流程图,具体可以包括以下步骤
步骤201:接收到音频播放命令,初始化模块将音频数据地址指针和播放 指针初始化至同一緩存起始地址,并设置播放指针为不可用状态,初始化音频 解码设备和音频播放设备;
在移动多媒体广播系统的接收终端,用户要收听收看节目时,首先启 动播放命令,然后接收音视频数据,并通过终端芯片对接收的音视频数据
进行处理和转换,从而实现音视频的播放和收听收看。对于音频播放来说, 在接收到音频播放命令后,由初始化模块负责开启音频解码线程和音频播放线程,将音频数据地址指针和播放指针初始化至同一緩存起始地址,并设 置播放指针为不可用状态,对音频解码设备和音频播放设备进行初始化。本实施例使用IIS (Inter-IC Sound bus )设备以环形緩存(Ring Buffer)工作方式传输音频数据,并通过ns的状态调整控制音频数据播放,本步骤初始 化ns指针和音频数据地址指针指向环形緩存的同一起始地址,并置lis状态 为不可用状态,同时,初始化音频解码设备如音频解码器,和音频播放设备如 ns设备。需要说明的是,本领域技术人员也可采用其它设备或緩存工作方式 实现音频数据传输,本发明无需对此作出限制。步骤202:判断是否收到音频播放终止命令,如果是,则停止音频解码和 播放;如果否,则循环执行下述音频解码和播放步骤;在音频播放过程中,如果接收到音频播放终止命令,则停止解码和播放音 频数据;如果没有收到音频播放终止命令,则进行音频解码和播放。步骤203:音频数据获取模块获取解码后的音频数据;音频解码设备初始化后,从音频压缩数据消息队列中接收解复用模块发送 的压缩音频凝:据消息,其中,音频压缩数据消息队列由解复用it块管理和维护。 如果音频解码模块收到音频数据消息,从解复用模块获取解复用后的压缩音频 数据并解码,音频数据获取模块则获取解码后的音频数据,执行步骤204;如 果收不到音频数据消息,则在播放命令有效的情况下,音频解码模块一直等待 音频数据消息。步骤204:音频数据写入模块将解码后的音频数据写入緩存; 本实施例中,音频数据获取解码后的音频数据后,由音频数据写入模块写 入所述环形緩存。在写入时,顺序写入子才莫块将解码后的音频数据从所述环形 緩存的低地址位到高地址位依次顺序写入;当写入到达所述环形緩存的最高地 址位时,地址翻转写入子模块跳转音频数据地址指针至环形緩存的最低地址位 继续写入。步骤205:音频数据指针更新模块更新音频数据地址指针指向解码后音频 数据的当前緩存地址;音频数据指针更新模块更新音频数据地址指针指向解码后音频数据在所述环形緩存的当前地址。步骤206:音频数据播放模块的存储量计算子模块比较所述播放指针和更 新后的音频数据地址指针,获得所述緩存中音频数据的存^f渚量;本实施例中,音频播放模块的存储量计算子模块比较IIS指针和更新后的 音频数据地址指针,进而获得环形緩存中音频数据的存储量。在进行指针比较 时,如果音频数据地址指针所指地址位高于插-;故指针所指地址位,即音频数据 写地址高于音频数据读地址,则存储量计算子模块通过计算音频数据写地址与 音频数据读地址的差获得环形緩存中音频数据的存储量;如果音频数据地址指 针所指地址位低于播放指针所指地址位,即音频数据写地址低于音频数据读地 址,则存储量计算子模块通过计算音频数据写地址与音频数据读地址的差与所 述緩存的緩存容量的和获得环形緩存中音频数据的存储量;如果音频数据地址 指针所指地址位与播;改指针所指地址位相同,即音频数据写地址等于读地址, 则存储量计算子模块的同地址计算单元置环形緩存中音频数据的存储量为0。步骤207:音频播放模块的判断子模块判断所述音频数据的存储量是否满 足播放阈值,若是,则启动播放子模块,执行步骤208;若否,则启动停止子 模块,执行步骤209;本步骤中的所述播放阈值为N倍的每采样间隔的采样数据量,即采样间 隔与单位时间的音频数据采样率和采样精度的乘积。本实施例中,音频数据的采样率为48Kbyte/s,采样精度为每采样点2字节,釆样时间间隔为50ms。为 保证音频播放控制的精度,播放阈值须大于每采样间隔的采样数据量,设为每 采样间隔的采样数据量的N倍,本实施例将N设为2,其计算如下 播放阈值=(48000x2x2x50 ) +1000=19200字节。如果步骤206获得的音频数据的存储量达到并超过19200字节,则启动播 放子模块,执行步骤208;如果音频数据的存储量没有达到19200字节,则启 动停止子模块,执行步骤209。步骤208:音频播放模块的播放子模块设置所述播放指针为可用状态,依 据所述播放指针的状态读取并播放所述存储量的音频数据,并更新所述播放指 针,返回步骤202;在本实施例中,播放子模块设置ns指针为可用状态,依据ns指针的可 用状态,顺序播放单元从环形緩存的低地址位到高地址位依次读取并播放解码后的音频数据;当播放到达环形緩存的最高地址位时,地址翻转播放单元跳转 IIS指针到环形緩存的最低地址位继续读取并播放。步骤209:音频播放模块的停止子模块设置所述播放指针为不可用状态, 并依据所述播放指针的状态停止播放音频数据,返回步骤202;停止子模块设置IIS指针为不可用状态,所述音频播放装置依据IIS指针 的不可用状态停止播放音频数据,继续等待音频解码模块解码音频数据。在音频播放过程中,上述音频解码过程和音频播放过程并行执行。需要说明的是,本领域技术人员应该知悉,说明书中所描述的实施例 均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。其明并不受所描述的动作顺序的限制。参考图3,示出了本发明的一种移动多媒体广播系统的音频播放方法实 施例的步骤流程图,可以包括以下步骤步骤301:接收音频播放命令,将音频数据地址指针和播力t指针初始化至 同一緩存起始地址,并设置所述播放指针为不可用状态,初始化音频解码设备 和音频播放设备;本实施例使用IIS (Inter-IC Sound bus)设备以环形緩存(Ring Buffer)工 作方式传输音频数据,并通过IIS的状态调整控制音频数据播放,本步骤接收 音频播放命令,初始化IIS指针和音频数据地址指针指向环形緩存的同一起始地址,并置ns状态为不可用状态,初始化音频解码设备和音频播力文设备。需要说明的是,本领域技术人员也可采用其它设备或緩存工作方式实现音 频数据传输,本发明无需对此作出限制。步骤302:判断是否收到音频播放终止命令,如果是,则停止音频解码和 播放;如果否,则循环执行下述音频解码和播放步骤;步骤303:等待音频压缩数据消息队列中的音频数据消息,如果收到消息,则执行步骤304;如果没有收到消息,则在播放命令有效的情况下, 一直等待 音频数据消息。等待音频压缩数据消息队列中由解复用模块发送的音频数据消息,所述音 频压缩数据消息队列由解复用模块管理和维护。步骤304:获取音频数据并解码,将解码后的音频数据写入緩存; 本步骤中的音频数据为收到音频压缩数据消息队列中的音频数据消息后, 从解复用模块获取的解复用后的压缩音频数据。将获取的压缩音频数据进行解 码,并将解码后的音频数据写入环形緩存。在写入环形緩存时,从环形緩存的 低地址位到高地址位依次顺序写入解码后的音频数据;当写入到达所述环形緩 存的最高地址位时,跳转音频数据地址指针至环形緩存的最低地址位继续写 入。步骤305:将所述音频数据地址指针指向解码后音频数据的当前緩存地址;将所述音频数据地址指针指向解码后音频数据在所述环形緩存中的当前 地址。步骤306:比较播放指针和更新后的音频数据地址指针,获得所述緩存中 音频数据的存储量;本实施例比较IIS指针和更新后的音频数据地址指针,通过两者的差距获 得环形緩存中音频数据的存储量。在进行指针比较时,如果音频数据地址指针所指地址位高于ns指针所指地址位,即音频数据写地址高于音频数据读地址,则环形緩存中音频数据的存储量为音频凄t据写地址与音频数据读地址的差;如果音频数据地址指针所指地址位低于ns指针所指地址位时,音频数据写地址 低于音频数据读地址,则环形緩存中音频数据的存储量为音频数据写地址与音频数据读地址的差与所述緩存的緩存容量的和;如果音频数据地址指针所指地 址位与IIS指针所指地址位相同时,音频数据写地址等于读地址,则环形緩存 中音频数据的存储量为0。步骤307:判断所述音频数据的存储量是否满足播放阈值,若是,则执行 步骤308;若否,则执行步骤309;所述播放阈值为N倍的每采样间隔的釆样数据量,即采样间隔与单位时间的音频数据采样率和采样精度的乘积。本实施例中,播放阈值=(48000x2x2x50) +1000=19200字节。其中,音 频数据的采样率为48Kbyte/s,采样精度为每采样点2字节,采样时间间隔为 50ms。为保证音频播放控制的精度,播放阈值须大于每采样间隔的采样数据 量,设为每采样间隔的采样数据量的N倍,本实施例设N为2。如果步骤306获得的音频数据的存储量达到并超过19200字节,则执行步 骤308;如果音频数据的存储量没有达到19200字节,则执行步骤309。步骤308:设置所述播放指针为可用状态,依据所述播放指针的状态读取 并播放所述存储量的音频数据,并更新所述播放指针,返回步骤302;本步骤设置IIS指针为可用状态,并依据IIS指针的可用状态从环形緩存 的低地址位到高地址位依次读取并播放解码后的音频数据;当播放到达环形緩 存的最高地址位时,跳转IIS指针到环形緩存的最低地址位继续读取并播放。步骤309:设置所述播放指针为不可用状态,并依据所述播放指针的状态 停止播放音频数据,返回步骤302;设置IIS指针为不可用状态,并依据IIS指针的不可用状态停止播放音频 数据,继续等待解码后的音频数据。在音频播放过程中,上述音频解码步骤和音频播放步骤并行执行。由于图3所示的实施例可以对应适用于图2所示的实施例中,所以描 述较为简略,未详尽之处可以参见本说明书前面相应部分的描述。需要说明的是,对于上述的方法实施例,为了筒单描述,故将其都表 述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所 描述的动作顺序的限制,因为依据本发明,某些步骤可以釆用其他顺序或 者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施 例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。根据本发明的实施例,还涉及一种数字电视芯片,在该数字电一见芯片 中,包括上面所描述的音频播放装置。由于音频播放装置已经做了详细的描述,在此,包括该音频播放装置的数字电视芯片不再赘述。本发明实施例提供的数字电视芯片可广泛用于移动多媒体广播终端,方便用户收听收看移动多媒体节目,如可作为接收中国移动多媒体广播CMMB的 终端数字电视芯片,为用户提供各种CMMB的移动多媒体广播业务。此外,本发明为满足移动终端用户在应用中进行频道切换时快速音频切换 的需求,提供了应用程序^^妄口函数对播放指针进行控制。在音频播;故过程中, 当用户需要进行频道切换时,只须置播放指针为不可用状态,清空音频压缩数 据消息队列,并重置播放指针,使其与音频数据地址指针指向所要播放的音频 数据的緩存的同一起始位置即可。音频切换时间为解复用帧时间加上初始解码 时间,若以音频解码器器处理5帧音频数据的时间长度为初始解码时间,则本 发明的音频切换总时间不超过1秒。以上对本发明所提供的一种移动多媒体广播系统的音频播放装置和方 法进行了详细介绍,本文中应用了具体个例对本发明的核心构思及实施方式 进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思 想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明 的限制。
权利要求
1、一种移动多媒体广播系统的音频播放装置,其特征在于,包括音频数据获取模块,用于获取解码后的音频数据;音频数据指针更新模块,用于将音频数据地址指针指向解码后音频数据的当前缓存地址;音频数据播放模块,用于在音频播放过程中,比较所述音频数据地址指针和播放指针,并依据比较结果播放音频数据或停止播放音频数据。
2、 根据权利要求l所述的装置,其特征在于,所述音频数据播放模块 进一步包括存储量计算子模块,用于比较所述音频数据地址指针和播放指针,获 得所述緩存中音频数据的存储量;判断子模块,用于判断所述音频数据的存储量是否满足播放阈值,若 是,则启动播放子模块;若否,则启动停止子模块;播放子模块,用于设置所述播放指针为可用状态,依据所述播放指针 的状态读取并l番放所述存储量的音频数据,并更新所述播放指针;停止子模块,用于设置所述播放指针为不可用状态,并依据所述播放 指针的状态停止播;改音频数据。
3、 才艮据权利要求1或2所述的装置,其特征在于,还包括 初始化模块,用于在所述获取解码后的音频数据之前,将音频数据地址指针和播放指针初始化至同 一所述緩存起始地址,并设置所述播放指针 为不可用状态,初始化音频解码设备和音频播放设备。
4、 根据权利要求1或2所述的装置,其特征在于,还包括音频数据写 入模块,所述音频数据写入模块进一步包括顺序写入子模块,用于将解码后的音频数据从所述緩存低地址位到高 地址位依次写入;地址翻转写入子模块,用于当所述解码后的音频数据写入到达所述緩 存最高地址位,则跳转到最低地址位继续写入。
5、 根据权利要求4所述的装置,其特征在于,所述播放子模块进一步 包括顺序播放单元,用于从所述緩存低地址位到高地址位依次读取并播放所述解码后的音频数据;地址翻转播放单元,用于当播放到达所述緩存最高地址位,则跳转到 最低地址位继续读取并播放所述解码后的音频数据。
6、 根据权利要求1或者2所述的装置,其特征在于,所述播放阈值为 N倍的每采样间隔的采样数据量,即采样间隔与单位时间的音频数据采样 率和采样精度的乘积。
7、 一种移动多媒体广播系统的音频播放方法,其特征在于,包括以下 步骤获取解码后的音频数据;将音频数据地址指针指向解码后音频数据的当前缓存地址; 在音频播放过程中,比较所述音频数据地址指针和播放指针,并依据 比较结果播放音频数据或停止播放音频数据。
8、 根据权利要求7所述的方法,其特征在于,所述比较音频数据地址 指针和播放指针,并依据比较结果播放音频数据或停止播放音频数据,包 括以下步骤比较所述音频数据地址指针和播放指针,获得所述緩存中音频数据的 存储量;并判断所述音频数据的存储量是否满足播放阈值,若是,则设置所述 播放指针为可用状态,依据所述播放指针的状态读取并播放所述存储量的 音频数据,并更新所述播放指针;若否,则设置所述播放指针为不可用状 态,并依据所述播放指针的状态停止播放音频数据。
9、 根据权利要求7或8所述的方法,其特征在于,在所述获取解码后 的音频数据之前还包括将所述音频数据地址指针和播放指针初始化至同 一緩存起始地址,并 设置所述播放指针为不可用状态,初始化音频解码设备和音频〗番放设备。
10、 根据权利要求7或8所述的方法,其特征在于,在所述将音频数 据地址指针指向解码后音频数据的当前緩存地址之前,还包括将解码后的音频数据从所述緩存低地址位到高地址位依次写入; 当所述解码后的音频数据写入到达所述緩存最高地址位,则跳转到最 低地址位继续写入。
11、 根据权利要求IO所述的方法,其特征在于,所述比较指针获得所 述緩存中音频数据的存储量的步骤进一步包括当音频数据地址指针所指地址位高于播放指针所指地址位时,音频数 据写地址高于音频数据读地址,所述緩存中音频数据的存储量为音频数据 写地址与音频数据读地址的差;当音频数据地址指针所指地址位低于播放指针所指地址位时,音频数 据写地址低于音频数据读地址,所述緩存中音频数据的存储量为音频数据 写地址与音频数据读地址的差与所述緩存的緩存容量的和;当音频数据地址指针所指地址位与播放指针所指地址位相同时,音频 数据写地址等于读地址,所述緩存中音频数据的存储量为0。
12、 根据权利要求11所述的方法,其特征在于,所述读取并播放缓存 中的音频数据包括以下步骤从所述緩存低地址位到高地址位依次读取并播放所述解码后的音频数据;当播放到达所述緩存最高地址位,则跳转到最低地址位继续读取并播 放所述解码后的音频数据。
13、 根据权利要求7或8所述的方法,其特征在于,所述播放阈值为N 倍的每采样间隔的采样数据量,即釆样间隔与单位时间的音频数据采样率 和采样精度的乘积。
14、 一种数字电视芯片,其特征在于,所述芯片包括音频播放装置, 所述音频播放装置包括音频数据获取模块,用于获取解码后的音频数据; 音频数据指针更新模块,用于将音频数据地址指针指向解码后音频数 据的当前緩存地址;音频数据播放模块,用于在音频播放过程中,比较所述音频数据地址指针和插^文指针,并依据比较结果纟番放音频数据或停止播^:音频数据。
15、 根据权利要求14所述的数字电视芯片,其特征在于,所述音频数 据播放模块进一步包括存储量计算子模块,用于比较所述音频数据地址指针和播放指针,获 得音频数据緩存中音频数据的存储量;判断子模块,用于判断所述音频数据的存储量是否满足播放阈值,若 是,则启动播放子模块;若否,则启动停止子模块;播放子模块,用于设置所述播放指针为可用状态,依据所述播放指针 的状态读取并播放所述存储量的音频数据,并更新所述播放指针;停止子模块,用于设置所述播放指针为不可用状态,并依据所述播放 指针的状态停止播放音频数据。
16、 根据权利要求14或15所述的数字电视芯片,其特征在于,所述 音频播放装置还包括初始化模块,用于在所述获取解码后的音频数据之前,将音频数据地 址指针和播放指针初始化至同 一緩存起始地址,并设置所述播放指针为不 可用状态,初始化音频解码设备和音频播放设备。
17、 根据权利要求14或15所述的数字电视芯片,其特征在于,所述 音频播放装置还包括音频数据写入模块,所述音频数据写入模块进一步包 括顺序写入子模块,用于将解码后的音频数据从所述緩存低地址位到高 地址位依次写入;地址翻转写入子模块,用于当所述解码后的音频数据写入到达所述緩 存最高地址位,则跳转到最低地址位继续写入。
18、 根据权利要求17所述的数字电视芯片,其特征在于,所述播放子 模块进一步包括顺序播放单元,用于从所述緩存低地址位到高地址位依次读取并播放 所述解码后的音频数据;地址翻转播放单元,用于当播放到达所述緩存最高地址位,则跳转到最低地址位继续读取并播放所述解码后的音频数据。
全文摘要
本发明提供了一种移动多媒体广播系统的音频播放方法,包括获取解码后的音频数据;将音频数据地址指针指向解码后音频数据的当前缓存地址;在音频播放过程中,比较所述音频数据地址指针和播放指针,并依据比较结果播放音频数据或停止播放音频数据。本发明针对移动多媒体广播终端芯片上的操作系统功能较弱且资源有限的特点,通过比较音频数据地址指针和播放指针来控制音频数据的播放,实现方法简单,实现代码短小,无需增加软硬件设备和驱动支持,占用资源少,可方便地集成在移动终端芯片中;本发明还在移动终端进行频道切换时,通过播放指针的状态重置和指向重置,实现快速音频切换。
文档编号H04N5/60GK101404741SQ200810226099
公开日2009年4月8日 申请日期2008年11月6日 优先权日2008年11月6日
发明者吕悦川, 岩 张, 辉 张, 曹晋宇, 王洪仁, 王西强, 伟 胡 申请人:北京创毅视讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1