📄 114.htm
字号:
这问题不好回答, 它取决於: <br>
<br>
<br>
使用PCM取样还是FM合成 <br>
取样率及样本大小 <br>
用哪个程式录放音 <br>
音效卡硬体 <br>
磁碟传输速率, CPU时脉频率, 快取大小等 <br>
<br>
一般来说, 任何386机器应该都可以在8位元音效卡上播放音效, 或用FM合成放音乐.
<br>
<br>
然而, 放MOD档需要可观的CPU资源. 一些实验性的测量显示, 要以44KHz播放,要消耗一颗
486/50 CPU的 40% 能力; 386/25几乎不可能放比22KHz 更高的取样率.(以8位元音效卡,
如声霸卡, 所测得)一些像Gravis UltraSound的卡硬体提供更多功能,
需要的CPU资源就较少. <br>
<br>
这些是假设电脑没有在跑其它耗CPU能力的工作. <br>
<br>
如果您的电脑有数学辅助处理器(或CPU内部有FPU), 用像sox这样的程式做音效转换或增加效果会快不少.
虽然核心驱动程式本身是没有用到浮点运算啦. <br>
<br>
6.17. PAS16和Adaptec 1542 SCSI卡的搭配问题 <br>
(以下解释由seeker@indirect.com提供) <br>
<br>
Linux只能认出在330(预设值)或334位址上的1542, 而PAS只能将MPU-401模拟设在
330. 即使你用软体消去MPU-401, 如果有东西还在这个预设位址上,
仍然会和1542 相冲. 把1542移到334就什麽都解决了. <br>
<br>
另外, 1542和PAS-16都有用到16位元DMA, 所以如果你一面以16位元, 44KHz立体声录音,
一面将档案存到挂在1542上的硬碟的话, 麻烦就来了. DMA会重叠, 导致RAM没有时间充电,
然後就会出现 "PARITY ERROR - SYSTEM HALTED" 的讯息,
您甚至还来不及知道怎麽当的. 更糟糕的是有些QIC-117磁带的协力厂商建议设定汇流排开/关时间,
使1542占汇流排更久. 从Adaptec的BBS或Internet的其它地方抓 SCSISEL.EXE
程式, 减少BUS ON时间或增加BUS OFF时间, 直到这问题完全消失. SCSISEL
会改变 EEPROM 的设定, 所以比在CONFIG.SYS中载入的DOS驱动程式效力更持久,
开机就直接进Linux也有效(不像DOS修补). 又解决了一个问题. <br>
<br>
最後一个问题 - 旧的Symphony晶片组剧烈地降低I/O周期时间,
加快汇流排存取. 我所玩过的各种卡中, 除了PAS-16以外,
没有一片卡有出现过任何问题. Media Vision的BBS有个SYMPFIX.EXE可以将Symphony的汇流排控制器的诊断位元调整,
治好这种证状, 但这并不能算有力的保证. 您也许要: <br>
<br>
<br>
找主机板经销商, 换掉旧版的晶片 <br>
换主机板, 或 <br>
买别牌的音效卡. <br>
<br>
Young Microsystems愿意以$30(美金)的代价为他们制的板子升级;
如果您能讲出谁制的或谁进口的板子, 别的厂商也可能会这样(祝你好运).
据我所知这问题出於ProAudio的汇流排介面晶片; 没有人会花$120买音效卡,
然後把它插在6MHz的AT上. 多数人会升级到25-40MHz的386/486,
而如果设计正确, 至少能承受12MHz以上的汇流排频率. 讲完了,
下台一鞠躬. <br>
<br>
第一个问题和你的主机板晶片组, 汇流排速率, 及其它BIOS设定,
还有月亮的圆缺有关.(?) 第二个问题牵涉到您的记忆体充电方式 (隐藏式或同步式),
1542 DMA 频率及汇流排I/O速率(可能有关). 第三个问题, 可以打电话到Media
Vision, 问他们哪些Symphony晶片组的慢速设计和他们的卡不相容.
在此警告一下, 我问过的四位``工程师''中, 就有三个头壳坏去.
听他们讲别人的硬体讲得啥一样, 其实他们甚至连自己的都搞不清楚.
<br>
<br>
译注: 这一段可能和原文意思差很多, 有建议请不吝提供. <br>
<br>
6.18. 可不可以同时录放音? <br>
受限於硬体, 在多数音效卡上是不可能的. 一些新卡能支援这功能.
请看在 Hacker's Guide to Voxware中的"bidirectional mode"这一节. <br>
<br>
6.19. 我的声霸卡16是设IRQ 2, 可是驱动程式不准我设这个值 <br>
在'286及以後的机器, IRQ2中断连接了第二个中断控制器. 它等同於IRQ 9.
<br>
<br>
6.20. 声霸卡AWE32及声霸卡16ASP有支援吗? <br>
在过去, Creative Labs很不愿意为这些卡出版程式设计资讯.
现在他们已经改变策略, 而在2.1.x核心中也包含了AWE驱动程式了. <br>
<br>
6.21. 我离开Linux, 起动DOS, 然後有些软体发声不正常 <br>
这在暖开机进DOS後发生. 有时错误讯息会误导您, 以为是CONFIG.SYS档哪里写错了.
<br>
<br>
多数现在的音效卡有软体设定的IRQ及DMA设定. 如果您的卡在Linux下及MSDOS/Windows
下设定值不一样的话, 可能会造成问题. 有些音效卡不准设新参数,
除非完全 reset. (如把电源关掉再打开, 或使用硬体上的reset钮) <br>
<br>
简单对付方法就是按下reset键, 或把开关关了再开, 不要用暖开机(即
Ctrl-Alt-Del). <br>
<br>
正解则是确保您在MS-DOS及Linux下都用同样的IRQ及DMA设定 (或乾脆不要用DOS
:-). <br>
<br>
6.22. 在Linux下跑DOOM出问题 <br>
想玩ID software出的DOOM游戏之Linux版的玩家们, 可能对这个有兴趣. <br>
<br>
要正确的音效输出, 您必需使用2.90版或以後的音效驱动程式;
它支援了即时的 ``DOOM模式''. <br>
<br>
音效样本是16 bit. 如果您用8 bit音效卡, 您仍然可以用一些可在
ftp://sunsite.unc/edu/pub/Linux/games/doom中找到的一些程式, 让声音出现. <br>
<br>
如果DOOM动作不流畅, 把音效取消(把sndserver档改名)会有一些改进. <br>
<br>
DOOM预设不支援音乐(如同DOS版). musserver程式将增加Linux下的音乐支援.
它可以在ftp://pandora.st.hmc.edu/pub/linux/musserver.tgz 中找到. <br>
<br>
6.23. 怎样降低音效卡产生的杂音? <br>
用高品质的屏蔽电缆, 换个插槽插, 可能有助於减低杂音.
如果音效卡有音量调整钮, 您可以试试不同的设定(通常最大声最好) <br>
<br>
您可以用混音程式, 将不想要的输入(如麦克风)调成无增益 <br>
<br>
有些音效卡偷工减料, 没有好的遮蔽及接地, 容易产生杂音 <br>
<br>
最後, 在我的电脑上, 我发现核心命令列有个选项no-hlt可以降低杂讯.
这个选项叫核心在跑□置回圈时不要用HLT指令.
您可以开机时手动试试, 或在LILO设定档中加上 append="no-hlt" <br>
<br>
6.24. 能放音, 不能录音 <br>
如果您能放音, 却不能录音, 试试: <br>
<br>
使用混音程式选择适当来源(如麦克风) <br>
使用混音程式将该来源的增益调到最大 <br>
可以的话, 在MS-DOS下测试, 看看是不是硬体方面的问题 <br>
<br>
有时录音及放音用的DMA通道是不同的. 这种情况下八成是录音用DMA设定不对.
<br>
<br>
6.25. 必须先进DOS跑驱动程式, 不然我的"相容卡"没法用 <br>
多数情况下, ``声霸卡相容''卡在Linux下若舍声霸卡驱动程式不用而改用别的驱动程式,
会更好用. 多数号称相容(如``16位元SB Pro相容''或SB相容的 ``16位元'')的卡,
它的声霸卡相容模式是提供DOS游戏的相容性所做的.
多数卡有可能被最近的Linux(2.0.1以後)支援的, 自身的16位元模式. <br>
<br>
只有一些(通常很旧)的卡必须尝试用声霸卡模式运作.
新卡中只有一个例外, 那就是用 Mwave为主的卡. <br>
<br>
6.26. 我的16位元声霸卡相容卡在Linux下只能用8位元模式 <br>
号称和声霸卡相容的16位元音效卡其实只和8位元的声霸卡Pro相容而已.
它们有和声霸卡 16不相容的16位元模式, 和Linux音效驱动程式不相容. <br>
<br>
也许改用MAD16或MSS/WSS驱动程式後, 您就能用16位元模式了. <br>
<br>
6.27. 在哪里找得到Linux的音效软体? <br>
这里有一些好的档案库, 可以搜寻Linux专用的音效应用软体: <br>
<br>
ftp://sunsite.unc.edu:/pub/Linux/kernel/sound/ <br>
ftp://sunsite.unc.edu:/pub/Linux/apps/sound/ <br>
ftp://tsx-11.mit.edu:/pub/linux/packages/sound/ <br>
ftp://nic.funet.fi:/pub/OS/Linux/util/sound/ <br>
ftp://nic.funet.fi:/pub/OS/Linux/xtra/snd-kit/ <br>
ftp://nic.funet.fi:/pub/OS/Linux/ALPHA/sound/ <br>
<br>
6.28. 音效驱动程式可不可以编译成可载入模组? <br>
最新的核心里的音效驱动程式可以做成可载入模组. <br>
<br>
详情请参考:/usr/src/linux/drivers/sound/Readme.modules及/usr/src/linux/Documentation/modules.txt(或/usr/src/linux/README)
<br>
<br>
6.29. 我能把主控台的哔哔声改用音效卡发出吗? <br>
试试oplbeep程式, 可在
ftp://sunsite.unc.edu/pub/Linux/apps/sound/oplbeep-alpha.tar.gz 中找到. <br>
<br>
另一个变种, 叫beep程式, 可在
ftp://sunsite.unc.edu/pub/Linux/kernel/patches/misc/modreq_beep.tgz 中找到. <br>
<br>
modutils套件有个□例程式及核心修补, 支援在核心要求时,
执行外部程式, 产生声音. <br>
<br>
另外在一些音效卡上, 您可以将PC喇叭输出到音效卡上,
这样所有声音就都由音效卡发出来了. <br>
<br>
6.30. VoxWare是什麽? <br>
支援很多Intel为基台的Unix相容作业系统的核心音效驱动程式,
也可以以独立於 Linux核心的套件取得. 在1996年二月以前,
作者称这软体为 ``VoxWare''. 然而不幸的, 这名称已成了VoxWare Incorporated的注册商标,
不能再被使用了. 现在这个驱动程式的新名称叫OSS/Free. <br>
<br>
Open Sound System(OSS)是给很多Unix系统用的, 商业版核心音效驱动程式, 由
4Front Technologies出售. 叫做 OSS/Free 的免费版本将继续在Linux系统上以免费型式存在.
<br>
<br>
更多资讯可在4Front Technologies网站(在http://www.4front-tech.com/) 上看到. <br>
<br>
同一个东西, 您可能有听过的名称还有TASD(暂时的无名音效驱动程式)及USS
(Unix音效系统) <br>
<br>
欲取得更多资讯, 请见4Front Technologies的网页, 在http://www.4front-tech.com/.
我在1997年六月的Linux Journal有写过OSS/Linux的评论文章. <br>
<br>
6.31. 有支援随插即用音效卡吗? <br>
到了Linux 2.1版後应该能完全支援随插即用.
现在要让随插即用音效卡能用, 还有不少要做的. <br>
<br>
如果您用有Plug and Play BIOS的新Pentium机器, 要小心设定您的卡.
确定您将核心音效驱动程式的I/O位址, IRQ及DMA等设得和BIOS给的一样. <br>
<br>
给Linux用, 可用来设定这种卡的随插即用工具是存在的. 您可以在Red
Hat的网站 http://www.redhat.com/找到. 它也可能包含在您的Linux套餐中. <br>
<br>
如果您在 Windows95 下使用这种卡, 可以用设备管理员来设定卡, 然後用LOADLIN
暖启动进Linux. 确定 Windows95 及 Linux 使用相同的设定参数. <br>
<br>
如果您在DOS下用这种卡, 您可以使用声霸卡16PnP卡附的icu公用程式, 在DOS
下设定. 然後用LOADLIN暖开机进Linux. 一样, 确定 DOS 及 Linux
用相同的设定参数. <br>
<br>
商业版的OSS音效驱动程式支援声霸卡16PnP, 您可以向 4Front Technologies
购买. <br>
<br>
6.32. Sox/Play/Vplay 回报 "invalid block size 1024" <br>
在1.3.67版核心中的改变让(错误的)检查SNDCTL_DSP_GETBLKSIZE ioctl是否传回大於4096的放音软体失效.
在最新的snd-util-3.x.tar.gz套件(在 ftp://ftp.4front-tech.com/ossfree
中的公用程式现已能处理这种状况了. 最新的驱动程式也已修正,
避免配置小於4096 bytes的碎块, 解决了旧公用程式的问题. <br>
<br>
6.33. 音效驱动程式为何要用自己的设定程式? <br>
音效驱动程式支援很多不同的设定参数. 驱动程式中的configure
会检查各参数间的相依性. 而核心的设定工具就没有提供这样的功能.
<br>
<br>
这就是说,
最新的核心部份地允许音效驱动程式使用标准核心设定工具(参见前面
``设定核心''那一小节.) <br>
<br>
6.34. 我载入音效驱动程式模组後,混音设定就被重设了 <br>
您可以将音效驱动程式做成可载入模组, 并使用kerneld自动载入及除去.
然而这造成了一个问题 - 当模组重新载入时,
混音器设定又回归预定的值. 对有些音效卡来说, 这会太大声(如声霸卡16)或太小声.
Markus Gutschke (gutschk@uni-muenster.de)发现了这问题的解决之道, 在您的
/etc/conf.modules档中加入如下的一行: <br>
<br>
<br>
options sound dma_buffsize=65536 && /usr/bin/setmixer igain 0 ogain 0 vol 75 <br>
<br>
<br>
这会在音效驱动程式载入後立刻执行您的混音程式(在□例中是用setmixer).
dma_buffsize参数没有意义, 但是是必需的,
因为这个命令需要一些命令列的选项.
把上面那行改成您想要的混音及增益设定值. <br>
<br>
如果您将音效驱动程式连进核心, 而想在开机後就自动设定音量,
您可以在开机自动执行档/etc/rc.d/rc.local中将混音程式加进去. <br>
<br>
6.35. 只有root能录音 <br>
在Readme.linux中的script, 会将音效设备档设成仅有root可读,
这是为了填补安全上的漏洞. 在网路环境里,
外面的使用者可以远端连进有音效卡及麦克风的Linux系统并窃听.
如果您不担心这个, 您可以改变这个script中的权限. <br>
<br>
在预设的安装法, 一般使用者仍然可以播放音效档.
这不会造成安全上的负担, 反而可以省掉很多麻烦. <br>
<br>
6.36. 在IBM ThinkPad上的音效硬体可以支援吗? <br>
关於如何在Linux下使用IBM ThinkPad上的mwave音效卡之资讯, 可在http://www.screamin.demon.co.uk/查到.
</p>
<BR>
<hr color="#EE9B73" size="1" width="94%">
</TD>
<TD CLASS="tt3" VALIGN="bottom" width="8%" bgcolor="#e0e0e0"><strong><A HREF="115.htm">后一页</A><BR>
<A HREF="113.htm">前一页</A><BR>
<A HREF="index.html">回目录</A><BR>
<A HREF="../../../../index.htm">回首页</A><BR>
</strong>
</TD>
</TR>
</table>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -