推荐序一
我的第一部智能手机是多普达565,当时使用的是Windows Mobile操作系统,现在看来,不管是操作交互,还是系统的整体能力,都与今天的智能手机有着天壤之别。但是,即便是那样的操作系统,也已经足够让当时的我认识到一个真正的操作系统能给一部随身设备赋予的强大能力。智能手机后来这十几年的发展还是超出了很多人的预料,很难想象,如果没有现在的高速数据网络和每个人手头的这个小终端,我们的工作和生活会有多少不方便的地方。
生活在这个时代的程序员是足够幸运的,信息化的无限渗透也意味着有想法、有能力的程序员对人们生活范围的影响越来越大。我与很多资深的开发人员都有过交流,基本上能把这些人分成两类。一类是以对技术本身的钻研为目标的技术人员,他们所关注的是架构是不是足够先进,可扩展性如何,系统整体的负载能力,遇到错误时的鲁棒性等。总之,他们内心的成就感来自是否把技术做到了极致,同行(或者自己)看到的时候,会不会由衷地说这东西真棒。还有一类技术人员,他们的成就感来自自己的工作成果是否能够直接对使用者产生影响。相对技术本身的挑战,这类人更在乎自己所做的东西是否真正被身边的人使用,使用者用到自己作品时的感受,以及是否真正给使用者和社会带来了帮助。两类人没有高低之分,倒有点像理论研究和应用研究的关系,两个方向相辅相成,彼此成就,彼此推动。
音视频技术的发展正好处在理论和应用的十字路口。各种音视频技术天生就与老百姓的生活距离很近,拍照、唱歌、小视频、瘦脸、美颜、大混音,基本上算是大众手机里最常用的一些功能了。这些功能背后的技术,也会因用户的需求推动而快速发展。从软件到硬件,从各种人脸识别的算法到越来越强大的摄像头或是专用的DSP芯片,摩尔定律在这个细分领域的发挥可以算是淋漓尽致了,这也对有志于在这个领域发展的研发人员提出了更高的要求:一方面,要能沉得下去,音视频相关的底层技术可以说是CS领域里相当难啃的一块硬骨头,对算法、编码甚至是数学基础都有很高的要求;另一方面,还要能经常抬起头,不只是要跟上相关领域的快速发展,也要理解和挖掘用户的真实需求,这可以算是CS领域里挑战很大同时成就感也很大的困难模式了。
本书的作者展晓凯是音视频领域的权威专家。在几年间的持续研究中,他总结出了一套在音视频领域比较系统的工程实践方法,希望这些总结能够帮助到对相关领域感兴趣的你。如果能进一步影响更多的人,将是对本书作者最大的鼓励和褒奖。
田然
2017年9月于北京