Mtk平台下中星微协处理器外部声音回传的控制和播放的制作方法

文档序号:6773544阅读:363来源:国知局
专利名称:Mtk平台下中星微协处理器外部声音回传的控制和播放的制作方法
技术领域
本发明涉及在MTK平台使用中星微协处理器通过与BB进行host回传的方式来控制和播放外部声音,本发明可以节省编译码器硬件成本。
背景技术
随着移动通讯技术和电子信息技术的高速发展,手机的发展也是日新月异,从过去只是简单的打电话和发短信的工具,逐步向娱乐与多媒体、全功能发展,如今支持各种音乐播放器、视频播放器、FM、摄像头、JAVA小游戏、WAP上网、ATV、DTV等等都已经在很多手机上实现,智能机的蓬勃发展更是必然的趋势,并且现在已经越来越热,因此,类似于MTK之类的方案公司也在加速功能性的丰富,如ATV已经基本成为很多项目必上的功能了,而且越来越多的芯片公司已经规范化了自己的代码方便设计方案公司的移植与整合。不过目前DTV的使用方法主要还是通过一个协处理器加上一个DTV的芯片与BB端协调工作来完成, 而相关声音方面的传输都是通过外挂一颗外部CODEC完成的,外部CODEC的成本一般都较高,一般的都要到O. 7美金一块,而且很多Codec资料不是很全,调试也不是很简单。

发明内容
为了解决现有技术存在的不足,本发明的发明目的在于解决上述问题,提供了一种使用中星微协处理器通过与BB进行host回传的方式来控制和播放外部声音,其效果与挂接外部编译码器没有差异,但可以节省出不菲的外部编译码器的成本。本发明解决其技术问题所采用的技术方案是。MTK平台下中星微协处理器外部声音回传的控制和播放,所述的通过协处理器与MTK自身已有的流程进行声音回放功能,通过PCM流的控制来完成BB与协处理器和数字芯片的声音处理。中星微作为协处理器完成了与BB端和DTV连接的作用,中星微本身有一个自己的bin档,以二进制的形式存储在h文件里,该bin档的主要功能就是完成与BB交互通信,该方案对应的是ISDBT的解码方式。所述的该协处理器(以下简称CP)的主要接口函数是以一个数组的形式进行给出的,其中,VIM_INT_FILE对应的是对于文件系统的回调函数;VIM_INT_AUDI0_PCM0UT对应的是声音回传的回调函数,该函数也是本发明的关键函数;VIM_INT_D0WNL0AD_C0DE目前没用到;VIM_INT_ENC0DER对应的是解码方面的回调函数;VIM_INT_TEST对应的是调试阶段的测试性质的回调函数;VIM_INT_ME对应的是视频播放方面的回调函数;VIM_INT_AUDI0_DeCDOne对应的是与声音有关的,只是没有用到外部编译码器,所以该函数没有具体实现;VIM_INT_ISDB对应的是数字电视的整个播放控制的回调函数。本发明所使用的函数就是VIM_INT_AUDI0_PCM0UT对应的VIM_AUDI0_Lisr_Callback这个回调函数,该回调函数中定义了如下的消息类型
MIN_MEDIA_AUDI0_PLY_0PENMIN_MEDIA_AUDI0_PLY_PLAYMIN_MEDIA_AUDI0_PLY_ST0PMIN_MEDIA_AUDI0_PLY_RESUMEMIN_MEDIA_AUDI0_PLY_CL0SEMIN_MEDIA_AUDI0_REC_0PENMIN_MEDIA_AUDI0_REC_WRITEMIN_MEDIA_AUDI0_REC_PLAYMIN_MEDIA_AUDI0_REC_ST0PMIN_MEDIA_AUDI0_REC_PAUSEMIN_MEDIA_AUDI0_REC_RESUMEMIN_MEDIA_AUDI0_REC_CL0SE
其中,中间有REC的是在进行DTV录制功能时进行声音方面录音的,其它的是在播放的时候进行声音回传控制函数。该播放机制中,按照采样24k, 16bit数据类型,stereo形式,一秒钟的数据量应该为96k,—个送出的Buffer大约4k, 一次送4个Buffer的大小,由此计算回调的时间片大约为96k/(4*4k)=l/6s,每过l/6s系统将会对该函数进行调用,并且会传入不同的消息值,进行相应的操作。该声音回传的机制的基本原理就是开辟两块Buffer,第一块Buffer存储下一次数据,第二块Buffer传送数据,只是在初次建立两个Buffer的时候有个非常短暂的等待两块Buffer相继填满的过程,之后每次第二块送出一块声音Buffer之后会立即从第一块Buffer取出数据,然后最新的声音数据将会送到第一块Buffer,这样就完成了一次回传过程。当开始 工作的时候——也就是刚刚开始播放DTV的时候,系统会在进行声音回传的时间片中首先调用MIN_MEDIA_AUDIO_PLY_PLAY函数进行PCM的初始化工作,该初始化工作主要是进行Buffer的分配与清零,然后开始打开PCM通路,开始进行数据的传输工作,然后会不断地进行双Buffer的操作,填充满了之后PCM会调用VM_AUD_Play_Done函数进行一次播放,然后执行Buffer清零工作,重新开始,以此轮回,直到结束,执行DTV流程中的Stop工作,通知PCM Stream结束回放动作,Reset相应的全局变量,相应工作结束。通过该操作过程,DTV通过中星微协处理器host回传的方式来控制和播放外部声音的工作就完成了,经过对比其它样机验证得出与挂接外部编译码器的方法所得到的效果没有差异。
权利要求
1.MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的通过协处理器与MTK自身已有的流程进行声音回放功能,通过PCM流的控制来完成BB与协处理器和数字芯片的声音处理。
2.根据权利要求I所述的MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的使用双Buffer对声音信号进行缓冲与传送,一个Buffer传送当前块数据,一个Buffer对下块数据进行缓冲。
3.根据权利要求I所述的MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的权利要求2中的两个Buffer每个Buffer大小都是4K,每次发送4个Buffer大小的数据,大约l/6s会传输一次。
4.根据权利要求I所述的MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的当播放开始的时候会调用PCM Stream的初始化流程并且确保打开通路开始播放流程。
5.根据权利要求2所述的MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的当Buffer每次送完后,都会自动调用到MTK自身的PCM处理流程,发送PlayDone的中断信息,完成一次播放传输,并且重新初始化Buffer。
6.根据权利要求I所述的MTK平台下中星微协处理器外部声音回传的控制和播放,其特征在于所述的当数字电视播放完成后,将会调用PCM处理流程,关闭相应接口,回收各种相关资源。
全文摘要
本发明公开了MTK平台下中星微协处理器外部声音回传的控制和播放,通过协处理器与MTK自身已有的流程进行声音回放功能,通过PCM流的控制来完成BB与协处理器和数字芯片的声音处理。使用中星微协处理器通过与BB进行host回传的方式来控制和播放外部声音,其效果与挂接外部编译码器没有差异,但可以节省出不菲的外部编译码器的成本。
文档编号G11B19/02GK102831908SQ201110158640
公开日2012年12月19日 申请日期2011年6月14日 优先权日2011年6月14日
发明者刘震, 蒋建平 申请人:上海三旗通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1