四声道的Live声卡硬件改造成51声道的声Liv.doc_第1页
四声道的Live声卡硬件改造成51声道的声Liv.doc_第2页
四声道的Live声卡硬件改造成51声道的声Liv.doc_第3页
四声道的Live声卡硬件改造成51声道的声Liv.doc_第4页
四声道的Live声卡硬件改造成51声道的声Liv.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

四声道的Live 声卡硬件改造成5 1声道的声Liv四声道的Live!声卡硬件改造成5.1声道的声Live!卡这篇文章是写给那里喜欢把他们的硬件榨干最后一滴油的人看的,今天我们要谈的是把一个四声道的Live!声卡硬件改造成5.1声道的声Live!卡。大约在五年前,创新公司发布了著名的SoundBlaster Live!声卡,它是基于Emu-10k1数字音频处理器芯片的声卡。这个芯片是由E-mu公司(现已归为创新公司的一个部门)开发出来的。这个公司以生产专业的音频设备出闻名于世。受益于Emu10k1音频处理器的强大性能以及乘着高质量的AC97编解码器的优势,再加上无与伦比的做工,这个在1998年推出声卡使PC玩家获得了丰富的多媒体、游戏及音频功能体验,且有着相当不错的音质。由于Emu10k1这个芯片获得如此大的成功,创新公司以后推出的一系列声卡虽然在功能上不断增强,但仍然坚持把这个芯片作为声卡的核心。这个芯片同时也用在创新公司推出的专业级声卡-E-MU Audio Production Studio(E-MU APS)声卡及一些取样器上。我认为即使现在Live!5.1甚至Audigy都已经推出来了,但是这个芯片的潜力还没有完全发挥出来。一点点历史让我们来看看Soundblaster Live!声卡的产生历史以及它们的硬件性能。第一代的声霸LIVE!声卡于1998年秋天推出,它就是声霸LIVE!标准版(CT4620),随后推出了它的简化版-声霸LIVE!VALUE(CT4670)。它们有着很大的区别:标准版采用的是4个镀金的接口以及一个40针的音频扩展连接口(AUD_EXT,用来接子卡),有了这个子卡就在声卡与其他附属设备间进行数字的输入输出(Live Drive1在当时并没有提供,而是在随后不久升级时推出)。而VALUE版并没有音频扩展连接口,而是用一个12针的SPDIF_EXT代替,这个接口只有几个音频扩展信号输出(也就是S/PDIF数字接口的输入与输出),另外,VALUE版采用的是彩色塑料的接口。时隔一年之后,第二代的声霸LIVE!声卡于1999年秋推出,这个系列的Live!声卡有:声霸Live!白金版、声霸Live!X Gamer、声霸Live!MP3+、声霸Live!Player,以及一些OEM生产的版本(都是VALUE版本)。Live!白金版、X Gamer、MP3+、Player的零售版本都是基于CT4760这个型号改造而来的。CT4760不同与第一代的标准版(CT4620),它没有采用I2S连接器,但是改进了元件的布局,增加了立体声数字输出接口。(白金版里包括了一个Live Drive2,而其它型号则只有附送的软件以及销售地区的不同)。而OEM版本的LIVE!则是基于CT4830这个型号开发的(不同OEM的版本的区别只有接口颜色的不同,但有时也可能有解码芯片的区别),在一些CT4830的OEM声卡里没有数字CD的针口连接,还有一些少见的型号如声霸PCI 512,这些是为康柏或戴尔公司OEM的。时光飞逝,又过了一年,第三代的声霸LIVE!声卡于2000年秋推出了。这个系列包括了上一代的几个型号,但是它们都标上了5.1输出的标志。一个小小的改进,就可以使Live!轻松实现6声道的输出(这也再次证明了Emu10k1芯片的威力)。这一代的Live!都是基于SB0060这个型号开发的(也包括OEM的版本)。它们与第二代Live!的区别是接口颜色的不同以及可以通过一个非标准的4针的数/模接口而支持中置与低音输出。这个黄色的接口有两个作用,它不但可以作为3路的数字输出(S/PDIF格式:前置、后置、中央及低音输出);也可以实现中央与低音炮的模拟输出!多加了一个声道输出需要一个新的四声道AC97编解码器(STAC9708)来实现。它代替了双通道的老版本(STAC9721或CT1297)。白金版的Live!5.1还附带了一个升级版的Live!Drive IR(支持遥控操作)。Live!5.1系列声卡的附加特性第三代的Live!声卡在Live!Ware3的支持下发生的相当大的变化,除了支持5.1声道输出之外,新版本的Live!Ware还包括以下几个特性:1、低音重定向(从所有声道到低音炮),它使低音炮有助于中/高频多媒体音箱的低音析取。2、对输出到S/PDIF digital-out的AC-3信号进行捕捉及解码,也就是AC-3解码功能。3、对中央和低音炮都有独立的音量控制功能。这其中最令人感兴趣的功能就是已经整合到驱动里的对直接输出到S/PDIF-Out(数字输出)的AC-3流进行软解码功能。举个例子来说:在DVD播放器在对AC-3进行译码的时候,驱动会释放一个程序阻止播放器按照它自己的方式译码,而是根据当前声卡设置的情况需要进行译码,如2.0,4.0或5.1声道,这些参数都可以在驱动自带的混音器-Surround Mixer里设置。遗憾的是,如果你的声卡是第一代或是第二代Live!的话,你就不能享受以上的这些新特性(Live!Ware会根据你的声卡型号来选择相应驱动)。但是又想想,既然所有的Live!系列声卡都是基于同一个芯片-Emu10k1生产的,有必要去买多一个使用同样芯片的新声卡吗?其实所有的功能限制都是在软件层次上的,我发现所有Live!声卡的型号等信息的数据都是保存在一个8针的PROM芯片里(EEPROM 93C46,看下图)这个芯片是一个串行存取的,以64位*16(如:128字节)的数据排列形式的电可擦编程只读存储器。这个芯片位于Emu10k1芯片和卡右边的边缘中间(如图红笔所圈)。这个芯片包含了一个PCI设备运行所必需的所有数据。包括了产品制造商、该设备的类及属类。Live!Ware就靠这个芯片里面的信息进行型号辨别的!因此,要使早期型号的Live!声卡支持5.1输出,有必要对这个芯片的数据进行重新编写;可麻烦的是,你首先必须得把它焊下来!下面这些就是OEM的SB Live!CT4830上93c46 EEPROM里面的数据让我们试着翻译这些数据,这里要使用一个非常有用的工具-WPCREDIT,它允许你看到你系统上的PCI设备的内置参数。下载地址。在LIVE!声卡上有两个设备:音频控制器与输入设备(游戏杆)00h:(word,16位).作用未知.它一定等于0003h.02h:(byte,8位).设备的从属类.它等于01h(音频控制器).03h:(byte,8位).设备的基类.它等于04h(多媒体控制器).04h:(word,16位).子系统销售商ID.它等于1102h(创新).*06h:(word,16位).子系统ID.对于我的CT4830 OEM来说它等于8027h(音频控制器).*08h:(byte,8位).PCI设备的最小授权参数.它一定等于02h.09h:(byte,8位).PCI设备的最大延迟参数.它一定等于14h.0ah:(word,16位).作用未知.它一定等于0000h.0ch:(byte,8位).设备的从属类.它等于80h(其他控制器).0dh:(byte,8位).设备的基类.它等于09h(多媒体控制器).0eh:(word,16位).子系统销售商ID.它等于1102h(创新).10h:(word,16位).子系统ID.对于所有的Live!它都等于0020h(输入设备).12h:(18字节).作用未知.都等于00h.24h:(76字节).作用未知.都等于ffh.但是该设备的所有相关数据并不是都保存在EEPROM里。还有一些信息保存在Emu101这个芯片本身里,这就是销售商ID(1102h,创新)、设备ID(音频是0002h,输入设备是7002h)、修订版本(我的OEM版的CT4830的两个设备都是06h)这个实验证明Live!之间型号的区别只在于子系统ID(Subsystem ID)的不同,而这个子系统指的就是音频控制器。下面的这些就是各种Live!型号相对应的子系统ID代码,它们是从不同的Live!驱动版本里的INF文件分离出来的。Value版本的Live!:CT4670-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 00201102)CT4780-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80221102)CT4830-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80261102)CT4831-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80311102)CT4832-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80271102)CT4850-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80511102)CT4870-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80281102)CT4871-SBLive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80321102)SB0060-SBlive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80611102)SB0101-SBlive!Value(PCIVEN_1102&DEV_0002&SUBSYS_ 80691102)完全版本的Live!:CT4620-SBLive!(PCIVEN_1102&DEV_0002&SUBSYS_ 00211102)CT4760-SBLive!(PCIVEN_1102&DEV_0002&SUBSYS_ 80401102)SB0103-SBLive!系列(PCIVEN_1102&DEV_0002&SUBSYS_806A1102)SB0105-SBlive!系列(PCIVEN_1102&DEV_0002&SUBSYS_806B1102)集成在主板里的Live!声卡:SBLive motherboard(PCIVEN_1102&DEV_0002&SUBSYS_002F1102)SBLive motherboard(PCIVEN_1102&DEV_0002&SUBSYS_ 80251102)SBLive motherboard(PCIVEN_1102&DEV_0002&SUBSYS_ 80631102)罕见的OEM版本:CT4790-SB PCI512(PCIVEN_1102&DEV_0002&SUBSYS_ 80231102)E-MU Audio Production Studio声卡:EMU APS(PCIVEN_1102&DEV_0002&SUBSYS_ 40011102)要找出你声卡的子系统ID,其实不用把EEPROM焊下来读,你可以用WPCREDIT这个软件来查出,甚至你也可以在注册表里找出来。如在Win2000下就是HKLMSystemCurrentControlSetEnumPCI;而在Window 9x下在HKLMEnumPCI下面。我们要找出的数字是打叉的那部分:VEN_1102&DEV_0002&SUBSYS_xxxxxxx。根据子系统的号码,它包括了子系统的ID以及销售商的ID(它等于1102h,创新)再加上上面的规格表你就可以确定你的LIVE!的型号。例如:我的OEM版的CT4830的子系统ID是8027h,那它对应的型号就是CT4832(而不是卡上所标示的CT4830!)。因此,要想在你旧的LIVE!上实现对5.1输出的支持,就必须用能支持5.1输出的声卡ID号码替换你的子系统ID号码(字符型16位)。如SB Live!5.1豪华版(SB0060),它的子系统ID是8061h。修改EEPROM(电可擦除只读存储器)首先,在准备焊下你的EEPROM芯片之前,有一些话必须有言在先:第一,你要确定你准备要焊下那颗芯片是正确的(对照上面的照片),这个芯片上的标识符可能是不同的,有些是93c46,而有些,就像我的CT4830就是ISSI 847 46GR。另外,你得明确它的制造商并且装载上相应的数据单。下面就是不同芯片的不同针脚定义:就举我这个例子来说,芯片上写着ISSI 847 46GR,它代表着该制造商是ISSI,芯片型号是93c46,而针脚定义是GR类型。因此对于我的来说,最右边的那个图才是正确的。一般来说你的也应该是跟我一样的,但是最好还是花点时间来确定一下,以防万一。下一步就是把它给焊下来!如果你没有专焊平面芯片的工具的话,你也可以用有合适宽度的烙铁代替。首先要在焊位上滴上几滴的松香,然后把烙铁同时接触一边的四个针脚,当它足够热的时候就用镊子迅速把它们挑上来,使针脚翻到卡的上面(不用太大力)。最后用同样的方法把另一边的针脚焊下来。当把芯片焊下来以后,记住要用浸过酒精的棉签把卡上的剩余松香擦干净。现在就开始把该芯片的数据读出来并且把它按要求修改了。最好有一个编程器,如果你没有这个设备的话我可以向你推荐两个方法:第一个方法就是用Realtek RTL8029x 10M网卡的芯片代替编程器。这个网卡也是使用EEPROM 93c46芯片的。它里面保存着MAC地址以及卡设置等其他信息。前段时间我开发出一个读出并且可以写入该芯的专用工具,下载地址:。注意这个程序只能在DOS环境下运行,它会自动找到基于RTL8029x芯片的网卡。我们得把网卡上的93c46芯片焊下来,然后把在Live!卡上的那块芯片焊上去。你可以用加长的导线把它接上去,但一定要注意芯片的针脚定义。接上去之后网卡的功能就失效了,但是这不影响我那个程序的运行,当你运行那个程序之后就可以看到相关的帮助(非常简单的)另外一个方法就是利用电脑的LPT(打印机)端口来编程改写93c46芯片的数据。你可以使用这个工具来修改。里面已经有使用该程序的详细介绍的了,不过我没试过。假设你已经从EEPROM里读出了有关声卡型号的数据(要在改写之前完成),并且你已经确定它可以开始改写。现在你得根据06h区距,把所需的Live!型号的子系统ID号码替换一个字符(2字节)。就我们的情况来说,以SB0060的8061h替换。拿我的OEM的CT4830来说吧,其实只需替换一个字节(用红笔圈住的)。当对93c46的数据成功修改之后,别忘了重读一遍数据以确保成功修改。这些是已经完成的并已经测试过芯片内容的声卡型号:()CT4760和()SB0060。(注意前面的那两个型号已经在原始的修改版里已经提供)最后一个步骤就是把已经升级的芯片焊回Live!声卡上!方法不再详述,只要注意是用较细的烙铁一个脚一个脚慢慢焊回去。为了改进焊接质量及加速焊接的过程可以用松香(焊好后要把它清除)滴上几滴。好了,这就是完整的硬件改造过程!要激活你声卡上新的功能你必须重装一次Live!ware3和驱动程序(你可以在驱动之家或是创新的中国网站上下载)使用新功能等你在改装后的Live!上装好了相应的Live!Ware和驱动后,你就可以使用令人激动的5.1环绕声系统了!下面就是Creative的环绕混音器设置图:在高级选项里我们就控制增加的声道(中置和低音炮)的音量大小了,当然,还可以激活AC-3解码模式。但是,声卡上没有中置和低音输出怎么办?很简单!所有的六个声道都是以数字的形式通过3个S/PDIF输出的。前置立体声输出在SPDIFO#0上,而后置输出则在SPDIFO#3上,中置及低音输出在SPDIFO#1上,SPDIFO#2输出是混合前置与后置立体声通道的。你可以从AUD_EXT(第二代Live!声卡)或是SPDIF_EXT(第一代Live!声卡)扩展槽里获得这些输出信号。下面是相对应扩展槽的针脚定义通过数字接口的5.1声道连接用多信道的数字接口连接5.1声道系统不需要什么特别的诀窍,因为SB Live!声卡上已经提供了S/PDIF格式的数字信号输出了。你唯一要做的就是接上对应的输出接口。例如,要连接Cambridge SoundWorks DTT2500/DTT3500系统的音箱,你只需买一个如下图的9针数字接口。把它接在AUD_EXT或是SPDIF_EXT扩展槽后,请看看下面的相应针脚定义:有一点要注意的是Live!声卡的S/PDIF输出的TTL信号电平是2.0-2.5伏,而很多设备的S/PDIF设计信号电平是0.5伏,然而据创新公司说这对设备并不会有什么伤害,记住你也许还得调节一下S/PDIF的输入与输出。以普通的模拟输出连接5.1声道这样的连接有一定的困难,因此老的Live!声卡上没有提供中置和低音的模拟输出接连。因此,我们必须把Live!的S/PDIF信号转换为模拟信号输出。一个很明显的解决方法就是多用一个有S/PDIF输入的声卡,把Live!的S/PDIF输出接到子卡的S/PDIF输入那里(之前要在混音器里设置一下),这样就可以在Live!声卡上输出前置与后置,而中置与低音则由子卡接出。我用一个很便宜的使用YMF754芯片的带S/PDIF输入的声卡(Xwave 6000)来做子卡,测试系统是Windows 2000 Pro SP2,在装好所有的驱动和软件后,然后在控制面板-声音和音频设备-属性那里把所有的地方的默认设备都选上SB Live!,把仅使用默认设备选上。这样的目的是加强两块声卡一起使用的定性。把SB Live!的SPDIF0和#1输出AUD_EXT.19(信号)AUD_EXT.20(接地)接口接在了Xwave 6000声卡的相应的针角上,并在该子卡的混音器里设成允许SPDIF输入。然后安装Power DVD 3.0(使用绕过AC3补丁),在Power DVD里设成通过SPDIF输出连接,在环绕混音器里把允许AC-3解码模式选上。最后,成功使Power DVD以全部的5.1声道播放DVD碟

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论