第一部分 数字部分

将音乐的存储由模拟转向数字形式,是从Philip和SONY在1980年发布CD-DA标准起被业界所广泛接受的,数字格式带来的高信噪比,无损拷贝等优势很快深入人心,迅速取代了黑胶唱片和磁带,成为音乐出版的主要载体。

上个世界90年代,随数字音频的压缩技术的成熟,Mp3格式走进了我们的视野,并借助互联网的发展广泛传播。撇去比较敏感的版权问题,Mp3确实使得音乐的获取和存储更加灵活和方便,帝盟,创新等数字音频厂商开始注意到这一块全新的市场,推出了各自的Mp3随身听。在接下来的不到10年里,RAM的降价和容量的不断扩大,再加上硬盘的不断小型化,带来了Mp3Player的容量的不断扩充和价格的急速下滑,真正使Mp3Player在市场上彻底超越diskman和MDPlayer,成为随身听领域的绝对主流,连在Mp3刚兴起时对其一味打压的各大唱片公司也不得不妥协,推出了像itunes Store那样的相关下载服务(DG唱片已经在网站开始提供320kMP3的下载服务,希望无损压缩的提供离我们不那么遥远)。

讲了这么多随身听的历史,接下来该进入主题了,也就是mp3和cd随身听间的音质pk,貌似地球人都知道,mp3是有损压缩,在音质上是不如cd的,事实如此,但这里的”不如”只是体现在音乐播放的最源头既音乐的存储介质上,由随身听回放出来真正到耳朵里听到的声音就不一定如此了,说到这里要先复习下数字音频的回放技术,因为我的了解也只是皮毛,所以不打算说的太复杂和细致,只要能说明上面的”mp3Player音质上不一定在diskman之下”就可以了。

数字音频的回放。就目前的状况来看,由于Mp3,还有存储在Mp3Player上的无损格式,在绝大多数情况下(可能的例外情况可以忽略,之后再说)也是由cd唱片转制而成,也不可避免的去读取cd,因此目前数字音频的回放,几乎可以等同于cd的回放,当然,一切数字信号提取和处理中音质的损失,也就是在这里产生的。CD放入音源设备到转化为声音,一共经过数字信号读取->数模转换->模拟信号放大(还可以细分为信号放大和功率放大,但本文忽略)->电声设备回放这些程序。本文主要介绍第一和第二步,提一下第三步,其他的基本不怎提。

我们不停地从网上找来各种格式有损或无损的音频文件(.wav,.mp3,.flac,.ape等),数字音频如此广泛地进行传播,得益于它比起模拟记录的音频格式的一个巨大的优势:在数字拷贝中,无论复制多少份,只要记录的数字没变,得到的都是和原始数据一样的副本,不存在模拟音频传播和存储时的失真问题。但使其成立的前提—----能准确地将原始数据照原样读取出来------这点却经常被忽略,虽然看上去并不难理解。

先从cd读取程序的第一步讲起,CD由被称作信号拾取系统(随身听的光头,台式cd的转盘和光驱都属于这个)进行读取,就像广为人知的那样,这只是读取0和1的过程,但在其读取和处理传输的过程中却并不像大多数人想象的那样精确,这个过程中会产生现在经常被提到的Jitter(时基误差),简单的说,就是读出来来的0和1没有错,但其出现的时间---也就是什么时候出现0什么时候出现1的问题---却不能做到100%的精确。

音频cd上的所记录的,是16bit,44.1khz的PCM格式信号,简单说就是把每秒钟分成44100份,而16bit,是由16个二进制数(cd上记录着16个0或1的记录单位)来表示每个1/44100秒的取样点的振幅大小,即最大值是2的16次方32167,最小值是-32167的振幅范围,将这些振幅取样连接起来,就形成了表示这段时间内声音变化的波形,然后转换成模拟信号。

拾取系统拾取唱片信号的工作流程:时钟晶振以44100的频率放出脉冲信号,机械系统匀速转动(理想状态,每秒1.2m,每个工作周期1.2m/44100)读取cd数据。这个过程里,机械装置根据这每个1/44100秒读取的数据量的多少,来判断转动速度是否适宜以控制转速,同时也控制着工作时钟的脉冲信号。

这时问题来了,这是一张打口盘,左边缺了一块,还有点弯曲变形,造成重心的不均匀(劣质的盗版盘和刻录盘的重心也很不均匀,国内的正版听说也是,没买过,不知道,你把盘放到光驱里,声音n大那种就是了,其实很多时候单看都看得出来),控制转动的小马达根据重量给了本应转1圈的动力,可它重心向上,只转了90%(一般只有一丁点,不会10%那么BT夸张),由于读取数据量不足,机械装置判断转动不够,匀速转动被打破了,然后数据不够还会影响电路时钟,于是下一次脉冲信号在1/39xxx秒过后(就是等读到数据够量后)才发出去,而不是1/44100,这就是jitter时基误差,造成了这个时间点的振幅的呈现被延迟了(以此可类推出提前的状况),波形信号也就被扭曲了。造成这种状况的问题还会有很多,比如:1、机械结构不稳定: 用来固定盘片的部分本身的转动不一定可靠,还有整个机械系统固定不稳时产生的震动也会影响转速;2、时钟脉冲本身不稳定: 时钟晶振的工作周期也不是绝对精确的;3、信号传输线路时钟的不稳定等很多其他原因……于是,无损传输的条件------精确读取不成立……

可能有人会有疑问(应该不多,可能会有些被我前面三脚猫的表达弄晕的人,嘿嘿,理解和表述出来是两回事),同样是16bit,44100Hz PCM格式记录声音波形(大多数状况下)的WAV文件,能实现无损传输。的确,在播放时,以同样格式存储,传输至数模转换电路的wav文件也无法避免Jitter。但它和cd音轨上的PCM在记录形式上有很大差别。

刚才没有说到一点,音频CD-DA的标准(也就是红皮书,我找不到,到飞利浦要一本得99美刀)是SONY和PHILIP在1980年共同推出的,按照规范,CDDA只有每个音轨的起始和长度标识,波形的时间点信息依赖盘片的硬件记录(那一段定长的数据存储区),而本身却没有给时间加标示,使得cd的完美读取成为不可能;

每个扇区(sector,cdda里叫做块Block)的标示是在之后的CDROM标准(黄皮书)才有的,使得数据实现精确定位,加上盘片赠强的错误检测和纠正定义,光驱内部也有了相应检错机制,数据的无损传输得到真正实现。而且,wav里PCM的时间点信息和振幅都在文件内部定义,也不依赖于传输介质,加上现在使用文件系统在文件复制时都有校验机制,所以wav的数字拷贝也向所有文件一样是可靠的(貌似音频cd的读取和刻录都不能算是严格意义上的数字拷贝)。

撇开话题讲下这个Jitter的处理部分的一点小争议,现在那些动辄几万十几万的高价Hi-end播放系统,通过各种工艺加强机械承托及转动结构以保证转动速度的稳定性,使用高精度时钟(甚至在传输线里装配独立时钟)避免信号处理与传输时硬件本身造成的误差,以及通过将数据存入缓存在配合数字电路的后期信号处理来复原信号等各种手段来改进读取,减少Jitter,其实只要从唱片出版上(网上的还是避免不了读cd)直接使用带版权保护的文件格式存储,绝大部分问题就迎刃而解,几乎是版权保护的需要,造就了对音质的追求更加高昂的代价,联想到最近烧友抱怨的碟片质量大不如前,虽说个人对唱片版权持支持态度,但对追求高音质的爱乐者,唱片公司和这些数字音乐标准制定者(其实SONY和飞利浦也是唱片公司)的做法也的确让人不爽。

理论讲了一大堆(别k我),该实际来比比现在的mp3随身听(既然都支持无损压缩了,干脆改个叫法吧,叫闪存&硬盘随身听貌似好些)和Diskman的数字读取部分了,Mp3随身听的读取部分就是电脑光驱,Diskman则自带读取装置,打开顶盖看看就知道,diskman的转盘系统有多简陋,内部用来稳定机械机构及排部数字电路的空间根本不能和电脑的光驱相比,随身听为了随身使用,不得不对音质做出妥协,在上面集成的功能越多,在同等条件下(成本,厂家技术水平)该功能的集成就会对其工作过程相对于独立部分产生越不利的影响,Mp3随身听使用电脑光驱读取,现在的抓轨软件使得光驱的抓轨能力大大增强,在信号的拾取上无疑要优于Diskman。

现在除去像ATRAC3 Lossless,AppleLossless,Kenwood的Lossless,还有使用比较多的Flac和Ape,现在使用较多的还是Mp3,Wma,AAC等有损压缩的音频格式,应该说,比起Jitter带来的对很多人来说是难以觉察的音质损失,有损压缩,尤其是制作不良的有损压缩带来的音质损失要大的多,绝大多数人都可以很明显地察觉出来。在这里推荐几个制作工具,当然,对手头没有待压缩的CD的人来说这段没啥用。

首先是把cd音轨抓取成wav文件的程序,这里推荐EAC和Easy CD-DA Extractor这两款,EAC使用了光驱的本身的许多控制参数,加上低速抓取(低速时盘片转动更稳定),可以一定程度上控制Jitter的产生,而Easy CD-DA Extractor更是使用1x速读取(多少分钟的cd它抓取也要相同时间)……其实还是推荐EAC吧。其他那些让光驱40飞转的如果想在这步提高质量的话可以无视了。

接下来是wav文件的压缩,大部分格式的压缩工具都使用唯一的工具,但现在最流行的Mp3则有许多不同的压缩引擎,不同引擎间音质还是有些差距,大部分追求压缩速度的可以pass,推荐Lame,它几乎成了现在Mp3压缩的标准,现在有很多外挂的Lame的外挂图形界面,将选项提供到了界面上,对于想更好控制品质的,可以读一下他的文档(那些英文不难看懂),然后自己用命令行玩玩。

最后顺道一提~~~,其实这部分(除去文件压缩时)在随身听这个档次的音源里对音质的影响并不大,Mp3Player使用无损压缩文件时这方面的几乎是绝对优势对其在音质pk中带来的好处也是十分有限的(结果我在上面花了这么多文字,哈哈)。

Mp3Player VS Diskman(1)相关推荐

  1. Mp3Player VS Diskman(2)

    第二部分 模拟信号部分     上文将到了cd保存音频数据的方式,在数字信号被读取后,需要进行数字-模拟转换将各个取样点信息还原成波形信号,这部分是由DAC(Digital to Analog Con ...

  2. c#小软件(SaveClassic)开发手记--(3)基础类(MP3播放类MP3Player)

    为什么要有该类的存在呢?音乐的好处很多,不在一一赘述.我只说一点,在阅读的时候如果有轻音乐相伴,有时候会事半功倍,提高工作效率,愉悦心情.所以编写此类.这只是一个辅助作用.该类的全部代码如下所示. 1 ...

  3. MP3Player(附源码)

    大二时做的课程设计作品. MP3播放器界面 MP3功能模块划分: (1)main类是用于影片的文档类,实现影片中以窗口为单位的相关操作,这些包括窗口显示/隐藏.窗口移动与吸附等功能. (2)MainF ...

  4. DiskMan使用方法

    一.使用说明: DiskMan为硬盘分区表维护工具,可以更改硬盘分区表中包括逻辑分区在内的所有数据.作者提醒使用者要慎重操作,在不了解分区表结构的情况下,不要更改分区参数. 最好在做任何操作之前首先做 ...

  5. 利用diskman来做数据恢复

    数据恢复<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 数据恢 ...

  6. 使用DiskMan(DiskGen)恢复被删除的分区

    分区恢复也是"底层"的应用,需要掌握一定的知识.具备一定的能力才可进行.但是本着从初级到高级.从简单到复杂的原则(对于计算机来说,越是初级.简单的东西,对于人们越难,例如,汇编语言 ...

  7. 使用DiskGenius(原DiskMan)修复损坏的硬盘分区

    使用DiskGenius(原DiskMan)修复损坏的硬盘分区 前段时间,遇到有两个硬盘不能正常打开.都是挂在同一台电脑上,忽然停电后就不能打开了.通过查看原来分区表已损坏,连PQmagic都不能进去 ...

  8. [导入]剿杀diskman.exe木马病毒

    进程文件:diskman.exe 进程名称:特洛依木马 描述:diskman.exe是一个特洛依木马程序. 一般位置在 C:\Program Files\Common Files\SAND\diskm ...

  9. [转] 硬盘工具DiskMan使用图解

    ① 图解DM硬盘分区的基本使用(图)  对于一个新硬盘来说,首先必须进行的工作就是进行分区,只有这样才能正常使用,同时分区也是为方便我们进行资料的管理.DOS中的Fdisk是一个很小巧的工具,但是在使 ...

最新文章

  1. 实践教程 | TensorRT部署深度学习模型
  2. C#读取Excel文件,准换为list
  3. .NET英文技术文章导读(2017-02-09)
  4. DICOM文件格式与编程(转)
  5. String.getBytes()和new String()
  6. 2019ICPC(上海) - Spanning Tree Removal(构造)
  7. (转)java中的 | ^ 分别是什么?
  8. STL(六)——max_element和min_element
  9. centos7设置键盘类型_CentOS7设置中文输入法
  10. 使用JavaScript将小写金额转化为大写金额的两种常见方法
  11. 免费的SQL Server监控工具
  12. 干预型ASO手段——积分墙
  13. Ansible的安装和全面介绍
  14. ant linux版本下载安装,linux下ant的安装
  15. 29、程序员的面试考题,要求用一个for循环打出乘法表。
  16. 微信网页分享(配合微信公众平台)
  17. 关于RAM,ROM,EEPROM,FLASH,DDR,CACHE
  18. Hibernater由于外键设置不为空,导致在主键级联删除时失败解决办法!
  19. 【DIY小记】解决CSGO打开游戏即闪退的问题
  20. Sklearn官方文档中文整理6——交叉分解,朴素贝叶斯和决策树篇

热门文章

  1. 上海市大学生CTF(华东杯CTF) Crypto 全解
  2. 智能硬件产品系列 之 MTK6580方案篇(一)硬件选型
  3. Oracle12c DBCA方式创建数据库
  4. 【2022秋招】IC设计/FPGA开发秋招经历总结(2)——公司专题
  5. AndroidHttpCapture---手机轻松抓包工具
  6. ITIL 4 讲解:事态、事件、灾难流程如何界定?
  7. LocalDateTime和时间戳互转
  8. 立创梁山派GD32F450ZGT6--通过PCA9685控制16路舵机
  9. Centos安装rebar3
  10. 利达主机联网接线端子_利达主机怎么编辑中文 利达主机接线端子说明