谈音频算法技术研发团队建立

本文详细解析了音频算法工程师在工作流程上的任务分配,通常分为算法开发、算法重写和接口层以及应用Demo开发三层。国外的杜比公司、Fraunhofer和Skype等公司采用此模式,而国内情况不同,由于资源限制,工程师往往需要覆盖多个层面,导致精力分散和代码效率不高。同时,文章还讨论了两种不同的工程师能力分类:算法架构能力和问题结果出发的算法解决能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从工作流程上分,对于音频算法工程师(其实不只限于音频算法工程师)的任务工作分配在国外通常分为3层,人员需求也分为三类(杜比公司,德国的fraunhofor ,skype都是这样)

第一层是算法开发层,通常要求起码是博士,一般是完成对算法的建模,代码输出有可能是matlab或是c代码,代码可读性和结构性未必很好,目的是实现算法的功能,比如回声消除,编解码设计,去噪等等。

第二层是算法重写和接口层,通常要求起码是硕士,一般完成C或是matlab代码的重写,写成可读性好结构性好的代码并完成接口设计。目的是从工程的角度能很方便的使用内部算法,并便于调试,由于是代码重写要求对信号处理能力有一定了解。

第三层是应用Demo开发层,调用第二层的接口设计Demo应用,完成对算法的演示。该层的目的是更好的演示算法的效果。Demo更炫。

但是在国内,这种情况几乎无法发生,因为国内音频工程师太少和公司需求的问题,一般的情况是一个人从头到尾的开发,要求工程师能覆盖第一到第二层,第三层有时也要做。这样的结果是工程师无法把精力放到算法开发上,代码效率也不高。但是要承认,这是国内的普遍现状,暂时无法改变。

 

从工程师的能力看,可以分成以下两级能力。

第一种能力:算法架构能力,要求对一个功能模块或复杂应用模块有一定的掌控能力,能够正向设计复杂结构的算法,要求对信号处理的各个方面多一定的了解,并也对该应用有一定的认识。

以AEC举例:要求能对AEC的原理和结构框架有清晰的认识(起码要有几年的专门算法经验和工作经验)。并且对AEC的主流框架,超前框架,落后框架都有了解。了解各种框架中的细节模块算法有一定了解,比如时频分析(FCT,QMF,FFT,小波等),对参数模型,分类模型有一定了解,对基因跟踪有一定了解,再结合综合经验才能从有从正向上解决问题的能力。

第二种能力:从问题结果出发的算法解决能力,通常是单模型算法或是bug fix类算法需求。具有这种能力的工程师的特点通常是对某一个专项问题(单一算法或简单框架)有较高的认识,有一定的算法能力,能够从正向上解决一般的算法问题,并能从结果出发,针对特定结果找到问题,修改原来的错误或是提出改进方案。

以丢包补偿算法为例,要求对丢包的原因进行分析,想办法弥补丢包造成的损伤,对原来的简单丢包模型进行改进,而丢包补偿算法从算法本身看不算是复杂算法(不排除可以用复杂算法实现)。

其他的类似动态音量调整,音乐语音的区分,啸叫抑制等问题都算该问题内。

 

一般对第一种能力的需求的要求要高于第二种,经验积累的时间也要更多。其实这种分类方法和一般软件工程师的分类方法差不多,也分构架师和普通工程师。只不过在算法开发内,因为从业人员相对较少的原因,缺少这样的总结(至少我认为,或者说国内是这样的)。

当然其他能力要求也是需要的。一般工程师必备的一些要求是要有的。

 

个人的一点点总结。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值