第二百五十二章 星联计划 (6/7)
甲方爸爸式的要求。
界面简单,功能全面。
第一批销售到市面上的手机大概率不是麒麟,而是爆米花,所以不会等到明年六月,大概也就今年年底,时间还挺紧的。
实现过程中,也存在许多难度。
一个叫张明的工程师指着一串代码。
nd_pcm_oss_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
{case SNDCTL_DSP_ECHO_CANCEL:{
struct echo_cancel_param ecp;…
在陈学兵眼里如乱码一般。
“我们需要重写内核驱动才能用全硬件加速。”
张明指着那串\/dev\/dsp音频设备节点说道:“ALSA驱动现在只支持基本的PCM采样,得自己实现回声消除模块。“
陈学兵又皱了皱眉。
旁边的林斌干咳了一声,给董事长翻译成人话:“他的意思是现在的驱动太简陋,现在系统自带的ALSA驱动只能处理最基础的录音和播放功能,如果要实现语音录入,要自己动手改造Linux的内核驱动,增加回声消除,降噪这些功能,才能把我们优秀的硬件能力发挥出来。”
“哦”陈学兵这才点头:“那很好啊,一边改软件功能,一边修改Linux底层嘛。”
“一个底层功能的实现不简单,时间会非常的长。”
林斌说道:“我们的手机麦克风设计要做出对应的修改,单麦克风肯定不行的,录音延迟会高达500ms以上,还会降低我们的存储空间,而且这是软件,我们要推广到市面上的各个系统,要考虑他们的兼容能力,适配的显示协议也不同,盲目开发多功能,性能损失会比较大,甚至会影响到他们手机的运行,被其他系统厂商视为垃圾软件,还有这个通讯录访问,是个非常敏感的功能,需要权限申请逻辑,别的手机.我看目前很难实现。”
先驱者有先驱者的劣势,需要面对的阻碍很多,必须自己去一个个打破。
陈学兵心里也在做着取舍。
“修改,花钱,都没问题,只是其他厂家的适配我们只考虑自己手机的能力,把其他系统的做成简单版,我们自己的做成复杂版,相互之间能不能交流?”
“能,降级提示。”
林斌在当前界面顺手打出两行代码:
MSG_TYPE:VOICE|FROM:user1|TO:user2|FORMAT:AMR|DATA:
“我们采用base64编码嵌入文本协议,进行语音传输。”
MSG_TYPE:ACK|CODE:UNSUPPORTED|DESC:VOICE_NOT_SUPPORTED
“对方会显示【收到一条语音信息】但【当前版本不支持播放】的提示。”
“或者直接静默忽略。”
本章未完,请点击下一页继续阅读