如何进行数码播放器的开发和评估

最新更新时间:2013-10-09来源: 互联网关键字:数码  播放器 手机看文章 扫描二维码
随时随地手机看文章

CD格式由于历史原因,制定标准偏低,因此,CD和“母带”(所谓母带就是录音时候的原始文件,一般是24bit/96KHz以上的文件)对比,听感差别相对比较大。因此近几年,市场上不断涌现出来各种“母带”播放器,牌子琳琅满目,技术八仙过海,宣传天马行空,让人眼花缭乱;因为还没有业界标准,孰好熟坏,相信大部分“发烧友”较难分辨。

  在此,音频专家潘昶针对工程师开发播放器的过程,公开宝贵经验,希望对大家选择产品有所帮助。

  设计所需要的基本技能

  要做好一个产品,首先要了解这个产品,相信这个是最基本的一个条件。设计完产品,如何才能知道其是否达到设计要求?举个简单的例子,如果一个指挥家,站在指挥席上,对比自己听到的现场实况和通过喇叭回放的录音,这个评估就相对比较中肯,因为音响系统永远都是一个“模拟现场”的系统,而需要和真实的现场对比,才知道其还原程度能达到多少。一般普通的烧友没有这个音乐修养也很难有这个条件,因此评估的标准相对较低,容易受到客观因素影响。当然,也不一定必须自己当指挥,但是如果可以经常去音乐厅欣赏音乐,那么也可以弥补这个不足,不过提醒一下,音乐厅的座位对听感影响很大。这可以简单的归类为:懂音乐,或者团队有懂音乐的行家。

  数码播放器的大体系统架构

  数码播放器的大体系统架构

  大部分电子产品,都分为软件/硬件,至少数码播放器是这样。而数码播放器包含的领域相对比较广,从硬件到软件,从数字到模拟,跨越多个领域,而且这些领域都是不容易结合的,要做好一个这样的产品,需要的时间是要以年计算,不是简单投入多少工作量就可以完成的。说到这里,可能很多做手机的工程师就不屑一顾,说手机不是比一个简单的播放器要复杂多了吗?的确,手机的软硬件系统复杂多了,但是要求和播放器确差很多,手机里面任何一个部分都不会要求到120dB的动态范围,更不会要求-110dB的THD+N,以笔者设计的经验以及各厂家的参数,手机的最高的要求也不过-96dB的THD+N,对比起来,和音响的要求差的可能达10倍之多,这些参数,都是一点点通过各种方式测试改进出来的,并非有什么公式可以计算或者有参考模型。

  要一个系统要达到完美,软硬件结合的深度就要求很高,所以需要规划好,必须精通软硬件,缺一不可,我们朋友开发USB解码器就发现,不同的驱动对声音的影响很大,不同的电路设计,对声音影响也很大,甚至有很多至今尚无理论模型支持的现象。因此,必须对整个产品设计非常精通,否则无法达到所要求的参数。

  为啥进口的音响产品这么贵,也有不少客户呢?为啥国内的牌子要走出国门这么难呢?设计好一个产品,技术是一个方面,但是音响产品,更多的需要时间,需要经验,比如这么多种型号的运算放大器,怎么搭配才好?为什么?单是运算放大器这个组合就可以有好几千种,而且并非性能好的器件一定出好声音。所以这就是音响产品比较难以开发的一个主要原因。最好就是作为业余爱好进行开发。同时,好的音响堪比奢侈品,一对喇叭轻松上6位数的,没有这个消费能力的设计者,往往难以设计出针对这个消费人群的产品,因此必须了解这正产品的真正市场和价值。所以设计这类产品的,最好是有钱也有闲,否则难以做好。

  发展中国家,暂时还在“温饱”中求生,发达国家,基本丰衣足食,同时注重版权等精神文明的价值。无论是哪种产品,在发达国家进行研究大部分都追求精益求精,而在中国的土地上目前暂时还是以“山寨”居多。“能响”和“声音好”不是一个概念,需要的是时间和足够的积累,因此一个年轻的公司基本很难达到“声音好”的要求,因为我们也是这样走过来的,下面会有详细的论述。

  到底人耳有多灵敏

  台湾大学物理实验室的实验结果表明,验证了大部分人耳朵接受的频率是20Hz-20000Hz,还有在那个实验结果表明,人耳的灵敏度很高,人耳最强能接受的声响和最弱的声响之比达到惊人的1012(这个数据个人有所保留,记得以前看到过是118dB),这个数据如果转换成比特率,是240(按照记忆中的数据118dB,就是220)。这意味着16bit远远不能满足人耳的要求,人耳对此有更高的要求。

  这里转一个实际的例子,一个母亲和一个初生婴儿分开睡在闹市路边一个开窗的房间里,车水马龙的吵杂并不会把母亲惊醒,而比窗外噪音小得多的婴儿的哼声却能把母亲唤醒。这个例子说明了人体的复杂程度不是简单的几个参数能够描述出来。而提出这个例子的教授指出,因为大脑对信息有很强的过滤功能,因此造成了这点,同时大脑会对接收到信息进行“调整”,放大需要的,过滤掉不需要的,所以才能实现在复杂环境中提取微弱信息这个功能。所以训练有素的录音室能够轻而易举指出问题所在,达到仪器不能达到的高度。

  另外,人耳的听力记忆到底有多少时间?科学统计表明,6秒。这个参数在下面的如何评估那里会有引用。

正确的模型的建立和系统规划

  从上一节的描述中得知,如果要求一个系统“完美”,必须有正确的理论模型。然后根据这个理论模型进行详细的系统规划才有机会做好。数字音频的理论基础是奈奎斯特定理,这个定理证明,在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中最高频率fmax的2倍时(fs.max》=2fmax),采样之后的数字信号完整地保留了原始信号中的信息,从人耳听力范围是20-20000Hz这个数据来讲,40KHz以上的采样率就可以完美再现音频信息,因此CD的格式根据这个人耳的“标准”就定义了下来,是44.1KHz/16bit。但是实际上经过一定训练的人能轻松分辨16bit/44.1KHz的音乐和24bit/96KHz的音乐的区别。

  这里引述百度知道的解释:根据傅里叶定律,方波是由无穷多次正弦波组合而成的,用方波测试功放的频率响应,比正弦波测试更代表实际音频信号,更能反应功放器材的动态性能。目前采用正弦波的测试方法是不完善的,基本上只能反映其静态素质,所以造成许多器材指标好、听感不好的现象。由于方波响应未列入音频检测标准,所以许多贵价名机其听感也不咋的。 所以有些有经验的厂家就进行方波播放测试,并用示波器记录波形,以作为系统性能的评估,如下图:

  400Hz方波的回放波形

  400Hz方波的回放波形

  这个是400Hz的方波,理论上16bit/44.1KHz无法完美重现其波形,结果就会出现振铃。这个振铃的出现是因为过采样数字滤波器产生的,单纯这样评估,也不够完美,并不能评估整个播放系统是否足够好。因为在实际上,听感是无法量化的的一个最重要的参数。

  有个国外著名录音师写的详细测评,里面提到:

  · 硬盘导致声音差异,温氏机械硬盘比SSD声音在测评的系统里面稍微好那么一点但两者声音基本一致;

  · 线形电源比开关电源提升系统性能高达30%

  · 交换机影响10%

  · 网线影响大约20%

  · 抓轨影响高达25%(文件比较完全一致的情况下)

  从以上我们搜集的信息以及实际的对比测试的结果,我们基本认可该录音师的评价结果。因此需要针对这些问题,做一个深入的系统分析以及系统规划,如何才能把系统做得最好?一套好的系统需要注意什么?请参考刘汉盛《音响二十要》,这里不在引述。另外,《音响二十要》提到了很多名词,可能以下会使用但并不进行解释。

  经过分析对比,系统的定位基本如下

  · 系统电源必须干净

  · 储存系统需要直接简单

  · 系统时钟需要足够稳定

  · 软件系统要做得无懈可击

  因此我们从开始就坚持使用线形电源,坚持从头到尾自主开发:因为我们要注意每一个细节,比如电源设计,PCB Layout,软硬件系统模块划分,软件系统的划分,缓存,音量衰减控制等等。在这里提到,PCB Layout这个相对普通系统要复杂的多,电源多了,对走线的要求就很严格,而大部分的音响产品都使用2层板,这在新的系统里面已经不足以应付复杂的走线和低噪音的要求,因此我们尽量使用多层板,降低干扰,提升品质。

  最后重点提下,软件是日后所有厂家都要关注的焦点,操作的易用性往往要比声音的好坏重要。而各大厂家最后竞争的,其实就是软件,无论是操作的界面,还是销售的音乐资源,这是以后竞争的焦点。

  产品细节

  在一种产品里面,大体基本都相似,不同的在于细节。比如机箱外观,操控,音质等。进口的牌子,几万和十几万的区别就是那些细节。声音最后的表现,也就是末位的1-2比特。我们曾经碰到比较严谨的国外客户,对细节的要求极其到位,比如接插件镀金是否足够好,电阻/电容的品牌,电路板材质、工艺,甚至一根导线的材料都有严格要求。

  细节的建立在于积累的多少,客户的数量,为积累提供了重要的数据。只有走出去让更多的人使用,才能让产品更完善,获得更好的拥护体验。当然,这在国内的这类产品难以做好,因为没有品牌,就导致市场难推,资金回笼困难,细节改善困难,这也是第一节提到的最好是有钱也有闲的设计者才能做好这类产品。

  举个实际的例子,我们的产品销售初期(2009年左右),因为没有考虑到数字输出的细节,因此暂停之后数字口还保留了直流信号,然后导致一台纯直流的DAC输出了1V左右的直流信号(当然这是这个DAC不足的地方)给后面昂贵的前级,继而烧了后面的前级(Mark Levinson)。如果暂停直接卡断输出,又会造成爆音,可能导致更昂贵的喇叭的烧毁,这些小的细节,每一个都集合起来,就形成了一个相对比较“强壮”的产品。

  数字电路对音质影响很大,从数字工程师的角度,笔者开始认为这属于“玄学”,到后来才知道,数字电路的干扰对后面影响很大。好比一个CDROM,如果使用模拟电源供电,抓轨的效果就比开关电源供电要好。包括部分厂家宣传的“单片机播放器”实际上追求的就是低干扰,实际上是否能达到这个效果?请参考下面的章节。

  当然这些例子仅仅是冰山一角,这个世界上并没有“完美”的产品。所有的这类产品,都在不断的完善中。

读懂参数

  选择产品,需要看懂产品参数,这个是最基本的要求,如果参数都无法看懂,那么光听别人的介绍,就没有了自己的主意。参数不是代表所有的产品性能,但是参数是产品性能的一个基础。参数不好的,产品性能一定不好。

  选择产品,需要看懂产品参数,这个是最基本的要求

  实际上,很多参数给出来的都是dB,不一定是小数的百分比,这里提供一个小数和dB换算表[计算公式为dB=20*log(百分比/100)]:

  这个参数测试一般都是在实验室通过音频分析仪进行测试的

  实际上,6dB大约是21 =2倍,18dB就是23=8倍

  这个参数测试一般都是在实验室通过音频分析仪进行测试的,这个仪器往往比绝大部分播放器/功放都贵,因此没有机会出现在用户家中,也只能出现在部分厂家的实验室里面。音频分析仪给出来的参数,决定了整个系统的一个音质,音色就因电路设计以及器件选择等而不同了。

  系统的评估

  如何系统的评估一个系统,这是本文重点要论述的,需要评估一个系统,基本需求如下:

  1. 足够评估器材的听音环境

  2. 参考级别的器材

  3. 正确的听感,或者有正确听感的行家,最好是录音师

  只有比较好的环境,才能进行器材的评估,大家都知道吵杂的环境,回音太大的听音室,都不利于评估器材。如果对比的时候,没有参考级的器材,都是自己DIY的器材,那么因为家里测试环境以及经验的问题,比较难做到正确评估一个器材,器材都是讲究搭配的,只有在合理搭配的情况下才能正确评价这个系统里面的一个设备。而因为HIFI很多的不确定性,造成很多HIFI器材比较“坑爹”,因此我们比较相信录音器材的专业,以监听音箱作为评估参考,同时辅助一些公认的名品进行对比测试,比如Prism sound ADA-8XR,真力8040A监听喇叭,Barefoot MM27监听喇叭,丹拿BM15A监听喇叭,HIFI箱子有丹拿的C4 MKII和大小证据。另外,正确的听感,才能正确评价一个系统。

  比如一个喜欢胆机的客户,喜欢高频没那么足的,说机器高频有点飘,不耐听;另外一个喜欢PMC声音的客户,同样的机器却嫌高频不足,这样说明每个人对声音的要求都不一样,如果单纯听某一两个客户的反馈,得到的信息好比盲人摸象。因此录音师的引入,会对整个系统的听感评价会有一个很正确的说法。一次在录音室对比听感,录音师一耳朵就听出来了,说人声镶边了,而烧友却认为声音不错,这就是很明显的一个不同。录音师天天在现场录音,有比较正确的听感评价,所以他们的评论更加客观准确,监听喇叭虽然不适合HIFI场合,但是基本不弄虚作假,也没有太多的音染,因此一个专门销售录音设备的朋友就说,你的系统在监听系统里面,听出来的感觉干,就说明你的系统干,HIFI系统说了不算!当然,参考刘汉盛的文章来说,监听的评价是系统的音质没有问题,但在HIFI领域,需要增加一点音色作为产品的特色。比如大家说的“莲”味,就说明Linn公司的声音走向很明确。能做到这个地步,就说明产品成功了。

  回头再说说国内做这类产品为啥难登国际的大舞台。这完全是一个心态问题。发展中国家,为了生存而工作,发达国家,为了兴趣而工作,因此国外设计的产品用心,国内设计的产品大部分都是为了生存,因此不会精雕细琢。当然不乏一些有品牌积累的厂家历时几年出一个产品的,但毕竟是少数。因此选择一个国内的产品,擦亮自己的眼睛,多对比,自己有了主意了,比听别人忽悠强多了。

关键字:数码  播放器 编辑:神话 引用地址:如何进行数码播放器的开发和评估

上一篇:简化BLDC马达设计的FOC控制技术
下一篇:教你如何进行Xilinx SerDes调试

推荐阅读最新更新时间:2023-10-12 20:50

C51---4.2 动态数码管显示
消影 数码管的显示流程为 位选- 段选- 位选- 段选- 位选- 段选- … 单片机运行很快 在第一次位选- 段选后马上执行下一次位选 第二次的段选还没执行,导致上一次的段选进入残留,所以如果不进行消影,那么会导致显示错误。 代码 在数码管上显示数字1,2,3 #include REGX52.H //0 num 65535 void Delay_ms(unsigned int num) //@12.000MHz { unsigned char i, j; while(num) { i = 2; j = 239; do { while (--j); } while (--
[单片机]
C51---4.2 动态<font color='red'>数码</font>管显示
单片机实现7段数码管显示
这个是我学习单片机过程中所做的第一个实验,我们上课实验用的是汇编的程序,但是个人觉得还是用c语实现时更为简洁!这个例子可以用proteus进行仿真. 单片机选择常用的AT89C52,用与控制7段数码管的显示,共有4位7段共阴极数码管,用于显示数据.另外所需的器件如下: 1、74ls273地址锁存器,用于字位锁存器和字型锁存器,上升沿锁存。 2、74ls02双输入或非门,与74ls04、单片机的读写信号一起选中锁存器74ls273,决定数码管的字段和字位的显示内容。 3、74ls04是6输入非门,对单片机输出的片选信号取反,和74ls02一起决定锁存器的片选。 4、7407集电极开路的6正相高压驱动
[单片机]
单片机实现7段<font color='red'>数码</font>管显示
基于单片机的数码管显示实现自加功能
 本文主要介绍基于MCS-51单片机的数码管显示实现自加1功能,从1一直显示到999.以下是硬件电路图、功能实现图以及源代码。(电路:使用74HC573锁存器控制段选,74H138控制位选;) 实现数码管自加的代码:   #include   #define uchar unsigned char   #define uint unsigned int   uchar code table = {0x3f,0x06,0x5b,0x4f,   0x66,0x6d,0x7d,0x07,0x7f,   0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
[单片机]
基于单片机的<font color='red'>数码</font>管显示实现自加功能
51单片机+TM1638驱动数码管测试程序
某宝上买的TM1638模块测试程序 根据数据手册搞出来的 骑远飞TM1638 按键数码管模块 电路原理图如下: 单片机源程序如下: #ifndef _TM1638_H #define _TM1638_H #include REGX51.H #define DATA_COMMAND 0X40 #define DISP_COMMAND 0x80 #define ADDR_COMMAND 0XC0 //TM1638模块引脚定义 sbit DIO=P1^0; sbit CLK=P1^1; sbit STB=P1^2; //共阴数码管显示代码
[单片机]
51单片机+TM1638驱动<font color='red'>数码</font>管测试程序
两位数码管动态显示C语言程序+电路图
用c语言编写的 51单片机数码管驱动程序 下面是电路图: #include reg52.h #define uint unsigned int void delay7ms(void) //误差 -0.217013888891us { unsigned char a,b; for(b=208;b 0;b--) for(a=14;a 0;a--); } void delay2ms(void) //误差 -0.217013888889us { unsigned char a,b; for(b=80;b 0;b--) for(a=10;a 0;a--); } void
[单片机]
两位<font color='red'>数码</font>管动态显示C语言程序+电路图
AVR单片机学习按键与数码管的程序设计
简介:按键与数码管的程序设计 AVR IO口的输入模式与上拉电阻 选择结构语句与按键的查询方式程序设计 数码管基本原理 扫描方式显示多位数码管 一、输入状态IO寄存器设置 1、DDRx 某一位置0,相应位的IO口被设置为输入 2、PORTx某一位置1,使能对应IO口相应位的上拉电阻 3、PINx的对应位是输入的数据,0或1 选择结构语句 一、关系运算符和关系表达式 小于 小于等于 = 大于 大于或等于== 不等于!= 二、逻辑运算符和逻辑表达式 逻辑与&&逻辑或||逻辑非! 三、if 语句结构 if(表达式1)语句1 else if(表达式2)语句2 else 语句3 四
[单片机]
AVR单片机学习按键与<font color='red'>数码</font>管的程序设计
KST-51单片机:c语言编程实现数码管动态显示秒表的倒计时
/*60S倒计时*/ /*个位每1S变一次,从0~9*/ /*十位,个位为0的下一秒十位发生变化*/ #include reg52.h sbit ADDR0=P1^0; sbit ADDR1=P1^1; sbit ADDR2=P1^2; sbit ADDR3=P1^3; sbit ENLED=P1^4; unsigned char code LedChar = { 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, 0x80,0x90 }; void main() { unsigned int cnt=0; //记录中断次数 unsigned int sec=0; //记录
[单片机]
单片机静态办法点亮数码管电路图解
  电路只驱动一个数码管,该数码管为共阴管,公共端接地,段管直连到单片机的P2口,所用单片机为AT89C52,电路图如下所示:   经过昨日对数码管的阐明,咱们知道假定要害亮一个共阴型的数码管,只需求把公共端连到低电平,段管给高电平就能够,如下图所示。   所以看程序:   第4行:共阴数码管的字段表;   第17行:for循环,循环10次,操控数码管的闪现内容;   第19行:将所要闪现的内容送给数码管;
[单片机]
单片机静态办法点亮<font color='red'>数码</font>管电路图解
小广播
热门活动
换一批
更多
最新模拟电子文章
更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved