⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 114.htm

📁 LINUX的操作系统分析文件和使用文件
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<br>6.14. 音效驱动程式有何已知的限制及bug? <br>看音效程式里附的Readme及CHANGELOG档. <br><br>6.15. 关於音效驱动程式的ioctl等, 哪里有记载? <br>它们有一部份放在现在以草案型式存在的Hacker's Guide to VoxWare. 最新版是第二草案, 可在ftp://nic.funet.fi/pub/OS/Linux/ALPHA/sound 中找到. 注意这目录是``隐藏的'', 不会在目录列表出现. 如果您``cd'' 进去再``dir''就可以发现这些档案. <br><br>在写这篇时, 新文件已经可以在4Front Techonlogies的网站上看到了. <br><br>另一个来源就是Linux Multimedia Guide, 在参考资料那节有讲. <br><br>6.16. 要完全平顺地录放音, 需要多强的CPU才能办到? <br>这问题不好回答, 它取决於: <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没有时间充电, 然後就会出现 &quot;PARITY ERROR - SYSTEM HALTED&quot; 的讯息, 您甚至还来不及知道怎麽当的. 更糟糕的是有些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中的&quot;bidirectional mode&quot;这一节. <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=&quot;no-hlt&quot; <br><br>6.24. 能放音, 不能录音 <br>如果您能放音, 却不能录音, 试试: <br><br>使用混音程式选择适当来源(如麦克风) <br>使用混音程式将该来源的增益调到最大 <br>可以的话, 在MS-DOS下测试, 看看是不是硬体方面的问题 <br><br>有时录音及放音用的DMA通道是不同的. 这种情况下八成是录音用DMA设定不对. <br><br>6.25. 必须先进DOS跑驱动程式, 不然我的&quot;相容卡&quot;没法用 <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 回报 &quot;invalid block size 1024&quot; <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 &amp;&amp; /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><hr SIZE="0"><p align="center"><a href="linux.htm">返回</a></p><p><br></p></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -