aboutsummaryrefslogtreecommitdiff
path: root/zh_CN.GB2312/books/handbook
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2005-04-06 11:43:29 +0000
committerXin LI <delphij@FreeBSD.org>2005-04-06 11:43:29 +0000
commitb72203d49e0d1b03f30adea5cb2bb3f3ad72d47e (patch)
tree0419de15f990403622664a1fdb57dfd0c8815536 /zh_CN.GB2312/books/handbook
parent51d6615ee37748a8e8ef4ca391fb6efd0c4c7a5e (diff)
Notes
Diffstat (limited to 'zh_CN.GB2312/books/handbook')
-rw-r--r--zh_CN.GB2312/books/handbook/multimedia/chapter.sgml174
1 files changed, 102 insertions, 72 deletions
diff --git a/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml b/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml
index c5a3202822..270ab4248f 100644
--- a/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml
+++ b/zh_CN.GB2312/books/handbook/multimedia/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Simplified Chinese Documentation Project
- Original Revision: 1.98
+ Original Revision: 1.105
$FreeBSD$
-->
@@ -146,7 +146,7 @@
<secondary>配置</secondary>
</indexterm>
- <para>要使用声卡,您就应装载正确的驱动程序。完成的方式有两种:
+ <para>要使用声卡, 就应装载正确的驱动程序。完成的方式有两种:
最简单的是使用命令 &man.kldload.8; 来装载一个内核模块,在命令行输入</para>
<screen>&prompt.root; <userinput>kldload snd_emu10k1</userinput></screen>
@@ -173,11 +173,11 @@
</note>
<para>另外,您也可以把支持您声卡的代码静态地编译到内核里去。
- 下面的部份就采用这种方式支持硬件给出提示。关于重新编译内核,请参考 <xref
+ 下一节就采用这种方式支持硬件给出提示。 关于重新编译内核,请参考 <xref
linkend="kernelconfig">。</para>
<sect3>
- <title>配置包含声音支持的定制内核</title>
+ <title>定制内核使其支持声卡</title>
<para>要做的第一件事情就是添加通用音频驱动 &man.sound.4;
到内核中,您需要添加下面这行到内核配置文件中:</para>
@@ -188,28 +188,32 @@
<programlisting>device pcm</programlisting>
- <para>之后我们必须添加对我们的声卡的支持。
- 因此,我们需要知道哪一个驱动支持我们的声卡。检查 <ulink
- url="&rel.current.hardware;">Hardware Notes</ulink> 的支持的音频设备列表,
- 确定您声卡的正确驱动。比如,一个 Creative &soundblaster; Live! 声卡由
- &man.snd.emu10k1.4; 驱动来支持。要添加这个卡的支持,
- 使用下面这行:</para>
+ <para>接下来就是加入对我们所用声卡的支持了。
+ 首先需要确定我们的声卡需要使用哪一个驱动。
+ 您可以参考 <ulink
+ url="&rel.current.hardware;">硬件兼容列表</ulink>
+ 所列出的音频设备, 以确定您声卡的驱动。
+ 例如, Creative &soundblaster; Live! 声卡由
+ &man.snd.emu10k1.4; 驱动来支持。 要添加它,
+ 需要在内核编译配置文件中加入下面一行:</para>
- <programlisting>device snd_emu10k1</programlisting>
+ <programlisting>device "snd_emu10k1"</programlisting>
- <para>一定要阅读驱动的联机手册了解要使用的语法。
- 关于内核配置文件中声卡驱动的语法的信息,也可以在
+ <para>一定要阅读驱动的联机手册了解如何使用它们。
+ 关于内核配置文件中声卡驱动的写法, 也可以在
<filename>/usr/src/sys/conf/NOTES</filename> 文件
- (对于 &os;&nbsp;4.X 是 <filename>/usr/src/sys/i386/conf/LINT</filename>)。</para>
+ (对于 &os;&nbsp;4.X, 则是
+ <filename>/usr/src/sys/i386/conf/LINT</filename>)。</para>
- <para>非-PnP ISA 卡可能要求您提供给内核声卡的设置信息(IRQ、I/O
- 端口等等),可以通过
- <filename>/boot/device.hints</filename> 文件来做。在系统启动时,
- &man.loader.8; 会读取这个文件并把设定传给内核。比如,
- 一个古老的 Creative &soundblaster; 16 ISA 非-PnP 卡使用
- &man.snd.sbc.4; 驱动,添加下面这行道内核配置文件中:</para>
+ <para>非即插即用的 ISA 卡可能需要您为内核提供一些关于声卡配置的信息
+ (IRQ、 I/O 端口, 等等)。 这项工作可以通过
+ <filename>/boot/device.hints</filename> 文件来完成。
+ 系统启动时, &man.loader.8; 将读取这个文件,
+ 并将其中的配置传给内核。 例如, 旧式的
+ Creative &soundblaster; 16 ISA 非即插即用卡需要使用
+ &man.snd.sbc.4; 驱动, 您可以在内核编译配置文件中增加如下配置:</para>
- <programlisting>device sbc</programlisting>
+ <programlisting>device snd_sbc</programlisting>
<para>还有下面这些到
<filename>/boot/device.hints</filename>中:</para>
@@ -224,14 +228,14 @@ hint.sbc.0.flags="0x15"</programlisting>
I/O 端口和 IRQ <literal>5</literal>。</para>
<para><filename>/boot/device.hints</filename>
- 文件使用的语法在声卡驱动的联机手册中描述。
+ 文件的写法会在声卡驱动的联机手册中描述。
在 &os;&nbsp;4.X 上,这些设定直接写进内核配置文件中。
对于我们的 ISA 卡这种情况,我们只要使用这行:</para>
<programlisting>device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15</programlisting>
- <para>上面展示的设定是默认的。有时候,
- 您可能需要更改 IRQ 或者其他的设定来匹配您的卡。
+ <para>上面所展示的是默认的配置。 有时候,
+ 您可能需要更改 IRQ 或其他配置, 以适应声卡的实际情况。
查看 &man.snd.sbc.4; 联机手册了解更多信息。</para>
<note>
@@ -315,9 +319,9 @@ kld snd_ich (1p/2r/0v channels duplex default)</screen>
<indexterm><primary>IRQ</primary></indexterm>
<indexterm><primary>DSP</primary></indexterm>
- <informaltable frame="none">
- <tgroup cols="2">
- <thead>
+ <informaltable frame="none" pgwide="1">
+ <tgroup cols="2">
+ <thead>
<row>
<entry>错误信息</entry>
<entry>解决方法</entry>
@@ -442,25 +446,29 @@ kld snd_ich (1p/2r/0v channels duplex default)</screen>
<sect2 id="mp3-players">
<title>MP3播放器</title>
- <para>到目前为止,最为流行的 <application>&xfree86;</application> MP3
- 播放器是<application>XMMS</application> (X 多媒体系统)。
- <application>Winamp</application> 肤面可以应用到 <application>XMMS</application>上,
- 因为它与 Nullsoft's <application>Winamp</application> 的 GUI (图形界面)
- 几乎是相同的。 另外, <application>XMMS</application> 也支持插件功能</para>
+ <para>目前为止, 最为流行的 X11 MP3 播放器是
+ <application>XMMS</application> (X 多媒体系统)。
+ <application>Winamp</application>
+ 的肤面可以直接用于 <application>XMMS</application>, 因为它的
+ GUI 几乎和 Nullsoft 的
+ <application>Winamp</application> 完全一样。 另外,
+ <application>XMMS</application> 也提供了内建的插件支持。</para>
- <para><application>XMMS</application>可以从
+ <para><application>XMMS</application> 可以通过
<filename role="package">multimedia/xmms</filename> port 或 package
- (<quote>包</quote>)里安装得到。</para>
+ 来安装。</para>
- <para><application>XMMS'</application> 的界面很直观,有播放列表、
- 图表化的均衡器等等。 那些熟悉 <application>Winamp</application>
- 的人会发现使用 <application>XMMS</application> 很简单。</para>
+ <para><application>XMMS</application> 的界面很直观,
+ 它提供了播放列表、 图形化均衡器等等。
+ 如果您熟悉 <application>Winamp</application>, 就会感觉
+ <application>XMMS</application> 很容易使用。</para>
<para><filename role="package">audio/mpg123</filename> port
- 是一个可选用的命令行 MP3 播放器。</para>
+ 提供了一个命令行界面的 MP3 播放器。</para>
- <para><application>mpg123</application> 可以在命令行指定音频设备和 MP3
- 文件执行,如下所示:</para>
+ <para><application>mpg123</application>
+ 可以在执行时通过命令行指定声音设备和要播放的 MP3
+ 文件, 如下所示:</para>
<screen>&prompt.root; <userinput>mpg123 -a <replaceable>/dev/dsp1.0</replaceable> Foobar-GreatestHits.mp3</userinput>
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
@@ -672,11 +680,11 @@ link acd0 rdvd</programlisting>
<indexterm>
<primary>内核选项</primary>
- <secondary>option CPU_ENABLE_SSE</secondary>
+ <secondary>CPU_ENABLE_SSE</secondary>
</indexterm>
<indexterm>
<primary>内核选项</primary>
- <secondary>option USER_LDT</secondary>
+ <secondary>USER_LDT</secondary>
</indexterm>
<para>前面讨论的一些 ports 要正确地联编有赖于下列内核的选项设置。
@@ -840,21 +848,23 @@ no adaptors present</screen>
之间的端口层,允许跨平台应用发展,更高效地利用声卡和图形卡。SDL
层可以在低层访问硬件, 有时这样做就比 X11 接口层更为高效。</para>
- <para>关于SDL可以参考<filename role="package">devel/sdl12</filename>。</para>
+ <para>关于 SDL, 可以参考 <filename role="package">devel/sdl12</filename>。</para>
</sect3>
<sect3 id="video-interface-DGA">
<title>直接图形存取</title>
- <para><quote>直接图形存取</quote> 是 <application>&xfree86;</application>
- 的扩展,它允许程序绕过 X server 直接改变 framebuffer。
- 因为它依靠一个底层的交换存储器来影响这种共享, 程序必须以
- <username>root</username> 身份执行。</para>
+ <para>直接图形存取 (Direct Graphics Access) 是一种 X11 扩展,
+ 通过它, 应用程序能够绕过 X 服务, 并直接修改画面缓存 (framebuffer)。
+ 由于它依赖一种底层的内存映射来实现其功能,
+ 因此使用它的程序必须以
+ <username>root</username> 身份来执行。</para>
- <para>DGA扩展可以能过 &man.dga.1; 来测试和衡量。 在 <command>dga</command>
- 执行时,一旦检测到按键, 它就会改变显示的颜色。
- 按 <keycap>q</keycap> 退出。</para>
+ <para>DGA 扩展可以通过
+ &man.dga.1; 来完成测试和性能测量。 运行
+ <command>dga</command> 时, 它将随按键改变现实的颜色。
+ 按 <keycap>q</keycap> 退出这个程序。</para>
</sect3>
@@ -899,8 +909,9 @@ no adaptors present</screen>
</listitem>
<listitem>
- <para>文档如没有随着port一起安装,实际上也可以上网找到,或者去 port
- 的 <filename role='directory'>work</filename> 目录下找。</para>
+ <para>没有随 port 一起安装的文档可以在网上或者
+ port 的 <filename class='directory'>work</filename>
+ 目录中找到。</para>
</listitem>
</orderedlist>
@@ -1028,12 +1039,11 @@ http://www.mplayerhq.hu/homepage/dload.html
<screen>&prompt.root; <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
<note>
- <para>The default DVD device can be defined during the build
- of the <application>MPlayer</application> port via the
- <makevar>WITH_DVD_DEVICE</makevar> option. By default,
- this device is <filename>/dev/acd0</filename>. More
- details can be found in the port
- <filename>Makefile</filename>.</para>
+ <para>可以在编译 <application>MPlayer</application> 时, 通过
+ <makevar>WITH_DVD_DEVICE</makevar> 来指定默认的
+ DVD 设备。 系统内定的默认设备是 <filename>/dev/acd0</filename>。
+ 更多细节, 请参考 port 的
+ <filename>Makefile</filename>。</para>
</note>
<para>要停止、暂停、前进等等,可以参考设定的按键---这些可以通过
@@ -1471,17 +1481,18 @@ found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3</screen>
<screen>&prompt.root; <userinput>scanimage -L</userinput>
device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner</screen>
- <para>没有输出或者消息说明扫描仪没有识别到,
- 这表明 &man.scanimage.1; 无法识别扫描仪。
- 如果发生这种情况,您需要编辑后端配置文件定义所用的扫描仪设备。
- <filename
- role="directory">/usr/local/etc/sane.d/</filename>
- 目录包含了所有的后端配置文件。
- 识别的问题会出现在某些 USB 扫描仪上。</para>
+ <para>如果没有输出任何信息, 或提示没有识别到扫描仪,
+ 则说明 &man.scanimage.1; 无法识别它。
+ 如果发生这种情况, 您就需要修改扫描仪支持后端的配置文件,
+ 并定义所使用的扫描设备。 <filename
+ class="directory">/usr/local/etc/sane.d/</filename>
+ 目录中包含了所有的后端配置文件。
+ 这类识别问题经常会在某些 USB
+ 扫描仪上发生。</para>
- <para>例如,对于<xref
- linkend="scanners-kernel-usb">中所用的 USB 扫描仪,
- <command>sane-find-scanner</command> 给我们下面的信息:</para>
+ <para>例如, 对于在 <xref
+ linkend="scanners-kernel-usb"> 中所使用的 USB 扫描仪,
+ <command>sane-find-scanner</command> 会给出下面的信息:</para>
<screen>&prompt.root; <userinput>sane-find-scanner -q</userinput>
found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0</screen>
@@ -1555,12 +1566,31 @@ device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner</screen>
<screen>&prompt.root; <userinput>pw groupmod operator -m <replaceable>joe</replaceable></userinput></screen>
- <para>要了解更多细节请阅读 &man.pw.8; 手册页。</para>
+ <para>要了解更多细节, 请阅读 &man.pw.8; 联机手册。 此外,
+ 还需要为 <filename>/dev/uscanner0</filename>
+ 设备节点设置正确的写入权限 (0660 或 0664),
+ 因为默认情况下, <groupname>operator</groupname>
+ 组只能读这个设备节点。
+ 这项工作可以通过在 <filename>/etc/devfs.rules</filename>
+ 文件中添加如下设置来自东完成:</para>
+
+ <programlisting>[system=5]
+add path uscanner0 mode 660</programlisting>
+
+ <para>随后您还需要在
+ <filename>/etc/rc.conf</filename>
+ 中添加下面的内容并重新启动:</para>
+
+ <programlisting>devfs_system_ruleset="system"</programlisting>
+
+ <para>关于这些配置的进一步细节请参考联机手册
+ &man.devfs.8;。 对于 &os;&nbsp;4.X, 默认情况下
+ <groupname>operator</groupname> 组已经拥有对
+ <filename>/dev/uscanner0</filename> 的读和写权限。</para>
<note>
- <para>当然,考虑安全的因素,您在添加用户到任何组,
- 尤其是
- <groupname>operator</groupname> 组的时候都应该三思而后行。</para>
+ <para>当然, 考虑安全的原因, 在您将用户添加到任何组, 尤其是
+ <groupname>operator</groupname> 组时, 都应三思而后行。</para>
</note>
</sect2>
</sect1>