aboutsummaryrefslogtreecommitdiff
path: root/zh_CN.GB2312/books/handbook/multimedia/chapter.xml
diff options
context:
space:
mode:
Diffstat (limited to 'zh_CN.GB2312/books/handbook/multimedia/chapter.xml')
-rw-r--r--zh_CN.GB2312/books/handbook/multimedia/chapter.xml429
1 files changed, 176 insertions, 253 deletions
diff --git a/zh_CN.GB2312/books/handbook/multimedia/chapter.xml b/zh_CN.GB2312/books/handbook/multimedia/chapter.xml
index 2d8f3a1340..62c774a80e 100644
--- a/zh_CN.GB2312/books/handbook/multimedia/chapter.xml
+++ b/zh_CN.GB2312/books/handbook/multimedia/chapter.xml
@@ -6,27 +6,18 @@
Original Revision: 1.143
$FreeBSD$
-->
-
-<chapter id="multimedia">
- <chapterinfo>
+<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="multimedia">
+ <info><title>多媒体</title>
<authorgroup>
- <author>
- <firstname>Ross</firstname>
- <surname>Lippert</surname>
- <contrib>编辑: </contrib>
- </author>
+ <author><personname><firstname>Ross</firstname><surname>Lippert</surname></personname><contrib>编辑: </contrib></author>
</authorgroup>
<authorgroup>
- <author>
- <firstname>张</firstname>
- <surname>雪平</surname>
- <contrib>中文翻译: </contrib>
- </author>
+ <author><personname><firstname>张</firstname><surname>雪平</surname></personname><contrib>中文翻译: </contrib></author>
</authorgroup>
- </chapterinfo>
+ </info>
- <title>多媒体</title>
- <sect1 id="multimedia-synopsis">
+
+ <sect1 xml:id="multimedia-synopsis">
<title>概述</title>
<para>FreeBSD 广泛地支持各种声卡,
@@ -40,8 +31,7 @@
DVD。 对各种视频媒体进行编码、
转换和播放的应用程序比起处理声音的应用程序略少一些。
例如, 在撰写这章时,
- FreeBSD Ports Collection 中还没有类似 <filename
- role="package">audio/sox</filename>
+ FreeBSD Ports Collection 中还没有类似 <package>audio/sox</package>
那样好的重编码工具能够用来在不同的格式之间转换。
不过, 这个领域的软件研发进展是很快的。</para>
@@ -97,8 +87,7 @@
<para>在读本章这前,您应该:</para>
<itemizedlist>
- <listitem><para>知道如何配置、安装一个新的内核 (<xref
- linkend="kernelconfig"/>)</para></listitem>
+ <listitem><para>知道如何配置、安装一个新的内核 (<xref linkend="kernelconfig"/>)</para></listitem>
</itemizedlist>
<warning>
@@ -109,37 +98,26 @@
</sect1>
- <sect1 id="sound-setup">
- <sect1info>
+ <sect1 xml:id="sound-setup">
+ <info><title>安装声卡</title>
<authorgroup>
- <author>
- <firstname>Moses</firstname>
- <surname>Moore</surname>
- <contrib>贡献者 </contrib>
- <!-- 20 November 2000 -->
- </author>
+ <author><personname><firstname>Moses</firstname><surname>Moore</surname></personname><contrib>贡献者 </contrib></author>
</authorgroup>
<authorgroup>
- <author>
- <firstname>Marc</firstname>
- <surname>Fonvieille</surname>
- <contrib>Enhanced by </contrib>
- <!-- 13 September 2004 -->
- </author>
+ <author><personname><firstname>Marc</firstname><surname>Fonvieille</surname></personname><contrib>Enhanced by </contrib></author>
</authorgroup>
- </sect1info>
+ </info>
- <title>安装声卡</title>
+
- <sect2 id="sound-device">
+ <sect2 xml:id="sound-device">
<title>配置系统</title>
<indexterm><primary>PCI</primary></indexterm>
<indexterm><primary>ISA</primary></indexterm>
<indexterm><primary>声卡</primary></indexterm>
<para>在开始之前,您应该清楚声卡类型、所用的芯片以及它是 PCI 还是 ISA 卡。
- FreeBSD 支持种类繁多的 PCI 和 ISA 卡。检查 <ulink
- url="&rel.current.hardware;">硬件兼容说明</ulink>
+ FreeBSD 支持种类繁多的 PCI 和 ISA 卡。检查 <link xlink:href="&rel.current.hardware;">硬件兼容说明</link>
中支持的音频设备列表看看是否支持您的声卡,
硬件兼容说明也会说明支持您声卡的是哪个驱动程序。</para>
@@ -175,8 +153,7 @@
文件。</para>
<para>另外,您也可以把支持您声卡的代码静态地编译到内核里去。
- 下一节就采用这种方式支持硬件给出提示。 关于重新编译内核,请参考 <xref
- linkend="kernelconfig"/>。</para>
+ 下一节就采用这种方式支持硬件给出提示。 关于重新编译内核,请参考 <xref linkend="kernelconfig"/>。</para>
<sect3>
<title>定制内核使其支持声卡</title>
@@ -188,8 +165,7 @@
<para>接下来就是加入对我们所用声卡的支持了。
首先需要确定我们的声卡需要使用哪一个驱动。
- 您可以参考 <ulink
- url="&rel.current.hardware;">硬件兼容列表</ulink>
+ 您可以参考 <link xlink:href="&rel.current.hardware;">硬件兼容列表</link>
所列出的音频设备, 以确定您声卡的驱动。
例如, Creative &soundblaster; Live! 声卡由
&man.snd.emu10k1.4; 驱动来支持。 要添加它,
@@ -236,7 +212,7 @@ hint.sbc.0.flags="0x15"</programlisting>
</sect3>
</sect2>
- <sect2 id="sound-testing">
+ <sect2 xml:id="sound-testing">
<title>测试声卡</title>
<para>用修改过的内核重起,或者加载了需要的模块之后,
@@ -257,7 +233,7 @@ pcm0: &lt;Intel ICH3 (82801CA)&gt; at io 0xd800, 0xdc80 irq 5 bufsz 16384
kld snd_ich (1p/2r/0v channels duplex default)</screen>
<para>您系统的输出可能与此不同。如果没有看到
- <devicename>pcm</devicename> 设备,回顾并检查一下前面做的。
+ <filename>pcm</filename> 设备,回顾并检查一下前面做的。
重新检查您的内核配置文件并保证选择了正确的设备。
常见问题列在 <xref linkend="troubleshooting"/> 一节。</para>
@@ -267,18 +243,17 @@ kld snd_ich (1p/2r/0v channels duplex default)</screen>
<screen>&prompt.user; <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>
- <para>许多应用程序,比如 <filename
- role="package">audio/workman</filename> 可以提供一个友好的界面。
+ <para>许多应用程序,比如 <package>audio/workman</package> 可以提供一个友好的界面。
您可能想要安装一个应用程序比如
- <filename role="package">audio/mpg123</filename> 来听
+ <package>audio/mpg123</package> 来听
MP3 音频文件。</para>
<para>另一种快速测试声卡的方法, 是将数据发送到
<filename>/dev/dsp</filename>, 像这样做:</para>
- <screen>&prompt.user; <userinput>cat <replaceable>filename</replaceable> &gt; /dev/dsp</userinput></screen>
+ <screen>&prompt.user; <userinput>cat filename &gt; /dev/dsp</userinput></screen>
- <para>这里 <filename><replaceable>filename</replaceable></filename> 可以是任意文件。
+ <para>这里 <filename>filename</filename> 可以是任意文件。
这行命令会产生一些噪音,证明声卡果真在工作。</para>
<note>
@@ -290,7 +265,7 @@ kld snd_ich (1p/2r/0v channels duplex default)</screen>
<para>声卡混音级别可以通过 &man.mixer.8; 命令更改。
更多细节可以在 &man.mixer.8; 联机手册中找到。</para>
- <sect3 id="troubleshooting">
+ <sect3 xml:id="troubleshooting">
<title>常见问题</title>
<indexterm><primary>设备节点</primary></indexterm>
@@ -365,7 +340,7 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
要使用声卡作为默认的回放设备, 将
<literal>hw.snd.default_unit</literal> 改为对应的设备编号:</para>
- <screen>&prompt.root; <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput></screen>
+ <screen>&prompt.root; <userinput>sysctl hw.snd.default_unit=n</userinput></screen>
<para>这里的 <literal>n</literal> 是希望使用的声音设备编号,
在这个例子中是 <literal>4</literal>。 您可以在
@@ -375,17 +350,13 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
</sect3>
</sect2>
- <sect2 id="sound-multiple-sources">
- <sect2info>
+ <sect2 xml:id="sound-multiple-sources">
+ <info><title>利用多个声源</title>
<authorgroup>
- <author>
- <firstname>Munish</firstname>
- <surname>Chopra</surname>
- <contrib>贡献者</contrib>
- </author>
+ <author><personname><firstname>Munish</firstname><surname>Chopra</surname></personname><contrib>贡献者</contrib></author>
</authorgroup>
- </sect2info>
- <title>利用多个声源</title>
+ </info>
+
<para>通常而言, 会希望多个音源能够同时播放, 例如,
<application>esound</application> 或者 <application>artsd</application>
@@ -396,7 +367,7 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
虚拟的声道可以能过在内核里混合声音来混合声卡里播放的声道。</para>
<para>使用三条sysctl命令来设置虚拟声道的数目。 如果您是
- <username>root</username> 用户, 执行下面的操作:</para>
+ <systemitem class="username">root</systemitem> 用户, 执行下面的操作:</para>
<screen>&prompt.root; <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>
&prompt.root; <userinput>sysctl dev.pcm.0.rec.vchans=4</userinput>
&prompt.root; <userinput>sysctl hw.snd.maxautovchans=4</userinput></screen>
@@ -404,10 +375,10 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
<para>上面的实例设定了4个虚拟声道,这也是实际上所使用的数目。
<varname>dev.pcm.0.play.vchans=4</varname> 和
<varname>dev.pcm.0.rec.vchans=4</varname>
- 是 <devicename>pcm0</devicename> 用来播放与录音的虚拟声道数,
+ 是 <filename>pcm0</filename> 用来播放与录音的虚拟声道数,
一当链接上一个设备它就可配置了。
<literal>hw.snd.maxautovchans</literal> 是分配给新的音频设备的虚拟声道数,
- 此时这个设备要用 &man.kldload.8; 来链接。 因为 <devicename>pcm</devicename>
+ 此时这个设备要用 &man.kldload.8; 来链接。 因为 <filename>pcm</filename>
模块可以独立装载许多硬件驱动程序, 因此 <varname>hw.snd.maxautovchans</varname>
也就可以存储分配给以后链接到的设备的虚拟声道数。
可参阅 &man.pcm.4; 手册页义获取更多细节。</para>
@@ -418,22 +389,18 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
</note>
<para>当应用程序请求 <filename>/dev/dsp0</filename>
- 时, 系统会自动为其分配正确的 <devicename>pcm</devicename>
+ 时, 系统会自动为其分配正确的 <filename>pcm</filename>
设备。</para>
</sect2>
<sect2>
- <sect2info>
+ <info><title>如何设置混音器通道值</title>
<authorgroup>
- <author>
- <firstname>Josef</firstname>
- <surname>El-Rayes</surname>
- <contrib>这一节的作者是 </contrib>
- </author>
+ <author><personname><firstname>Josef</firstname><surname>El-Rayes</surname></personname><contrib>这一节的作者是 </contrib></author>
</authorgroup>
- </sect2info>
+ </info>
- <title>如何设置混音器通道值</title>
+
<para>不同的混音通道的默认音量是硬编码进 &man.pcm.4; 驱动程序的。
同时, 也有很多应用或服务程序提供了允许用户直接设置并记住这些值的功能。
@@ -448,23 +415,19 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
</sect2>
</sect1>
- <sect1 id="sound-mp3">
- <sect1info>
+ <sect1 xml:id="sound-mp3">
+ <info><title>MP3音频</title>
<authorgroup>
- <author>
- <firstname>Chern</firstname>
- <surname>Lee</surname>
- <contrib>贡献者</contrib>
- </author>
+ <author><personname><firstname>Chern</firstname><surname>Lee</surname></personname><contrib>贡献者</contrib></author>
</authorgroup>
- <!-- 11 Sept 2001 -->
- </sect1info>
+
+ </info>
- <title>MP3音频</title>
+
<para>MP3 (MPEG Layer 3 Audio)达到过CD音质的效果,FreeBSD工作站没理由会缺少这样的好东东。</para>
- <sect2 id="mp3-players">
+ <sect2 xml:id="mp3-players">
<title>MP3播放器</title>
<para>目前为止, 最为流行的 X11 MP3 播放器是
@@ -476,7 +439,7 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
<application>XMMS</application> 也提供了内建的插件支持。</para>
<para><application>XMMS</application> 可以通过
- <filename role="package">multimedia/xmms</filename> port 或 package
+ <package>multimedia/xmms</package> port 或 package
来安装。</para>
<para><application>XMMS</application> 的界面很直观,
@@ -484,17 +447,17 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
如果您熟悉 <application>Winamp</application>, 就会感觉
<application>XMMS</application> 很容易使用。</para>
- <para><filename role="package">audio/mpg123</filename> port
+ <para><package>audio/mpg123</package> port
提供了一个命令行界面的 MP3 播放器。</para>
<para><application>mpg123</application>
可以在执行时通过命令行指定声音设备和要播放的 MP3
- 文件, 假设你的声音设备是 <devicename>/dev/dsp1.0</devicename>
+ 文件, 假设你的声音设备是 <filename>/dev/dsp1.0</filename>
并且你想要播放的 MP3 文件为
<replaceable>Foobar-GreatestHits.mp3</replaceable>
你可以键入以下的命令:</para>
- <screen>&prompt.root; <userinput>mpg123 -a <devicename>/dev/dsp1.0</devicename> <replaceable>Foobar-GreatestHits.mp3</replaceable></userinput>
+ <screen>&prompt.root; <userinput>mpg123 -a /dev/dsp1.0 Foobar-GreatestHits.mp3</userinput>
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
Uses code from various people. See 'README' for more!
@@ -509,62 +472,62 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
</screen>
</sect2>
- <sect2 id="rip-cd">
+ <sect2 xml:id="rip-cd">
<title>抓取CD音轨</title>
<para>在对CD或CD音轨编码成MP3之前, CD上的音频数据应先抓到硬盘里。
这个可以通过复制原始的CDDA(CD数字音频)数据成为波形(WAV)文件。</para>
- <para>工具 <command>cdda2wav</command> 是 <filename role="package">sysutils/cdrtools</filename>
+ <para>工具 <command>cdda2wav</command> 是 <package>sysutils/cdrtools</package>
套件的一部份,可用来从CD中获取音频及其相关信息。</para>
- <para>把CD放到光驱里,下面的命令可以完成 (作为 <username>root</username>用户)
+ <para>把CD放到光驱里,下面的命令可以完成 (作为 <systemitem class="username">root</systemitem>用户)
把整张 CD 分割成单个 (每个音轨) 的WAV文件:</para>
- <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput></screen>
+ <screen>&prompt.root; <userinput>cdda2wav -D 0,1,0 -B</userinput></screen>
<para><application>cdda2wav</application> 支持 ATAPI (IDE)光驱。
从IDE光驱中抓取音轨, 需要用设备名称代替SCSI的单元号。 例如, 想从
IDE 光驱中抓取第7道音轨:</para>
- <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>/dev/acd0</replaceable> -t 7</userinput></screen>
+ <screen>&prompt.root; <userinput>cdda2wav -D /dev/acd0 -t 7</userinput></screen>
<para>参数 <option>-D <replaceable>0,1,0</replaceable></option> 表示
- SCSI 设备 <devicename>0,1,0</devicename>, 与命令
+ SCSI 设备 <filename>0,1,0</filename>, 与命令
<command>cdrecord -scanbus</command> 的输出相对应。</para>
<para>抓取单轨,要使用选项 <option>-t</option>,如下所示:</para>
- <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput></screen>
+ <screen>&prompt.root; <userinput>cdda2wav -D 0,1,0 -t 7</userinput></screen>
<para>这个实例用于抓取第七个音轨。要抓取一定范围的音轨,如从1到7:</para>
- <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 1+7</userinput></screen>
+ <screen>&prompt.root; <userinput>cdda2wav -D 0,1,0 -t 1+7</userinput></screen>
<para>利用&man.dd.1;也可以从ATAPI光驱中抓取音轨,从
<xref linkend="duplicating-audiocds"/> 可以了解更多。</para>
</sect2>
- <sect2 id="mp3-encoding">
+ <sect2 xml:id="mp3-encoding">
<title>MP3 编码</title>
<para>现今,可选的MP3编码器是 <application>lame</application>。
<application>Lame</application> 可以从ports树里的
- <filename role="package">audio/lame</filename> 处找到。</para>
+ <package>audio/lame</package> 处找到。</para>
<para>利用抓取的WAV文件,下边的命令就可以把
- <filename><replaceable>audio01.wav</replaceable></filename>
- 转换成 <filename><replaceable>audio01.mp3</replaceable></filename>:</para>
-
- <screen>&prompt.root; <userinput>lame -h -b <replaceable>128</replaceable> \
---tt "<replaceable>Foo Song Title</replaceable>" \
---ta "<replaceable>FooBar Artist</replaceable>" \
---tl "<replaceable>FooBar Album</replaceable>" \
---ty "<replaceable>2001</replaceable>" \
---tc "<replaceable>Ripped and encoded by Foo</replaceable>" \
---tg "<replaceable>Genre</replaceable>" \
-<replaceable>audio01.wav audio01.mp3</replaceable></userinput></screen>
+ <filename>audio01.wav</filename>
+ 转换成 <filename>audio01.mp3</filename>:</para>
+
+ <screen>&prompt.root; <userinput>lame -h -b 128 \
+--tt "Foo Song Title" \
+--ta "FooBar Artist" \
+--tl "FooBar Album" \
+--ty "2001" \
+--tc "Ripped and encoded by Foo" \
+--tg "Genre" \
+audio01.wav audio01.mp3</userinput></screen>
<para>128&nbsp;kbits 是标准的MP3位率(bitrate)。
许多人可能喜欢更高的品质例如 160 或 192。 更高的位率, 会使 MP3
@@ -575,7 +538,7 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
其它的编码选项可以查询 <application>lame</application> 的联机手册。</para>
</sect2>
- <sect2 id="mp3-decoding">
+ <sect2 xml:id="mp3-decoding">
<title>MP3 解码</title>
<para>要把MP3歌曲刻录成音乐CD,就需要把它转换成非压缩的波形(WAV)格式。
@@ -631,8 +594,8 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
<procedure>
<step>
- <para>执行 <command> mpg123 -s <replaceable>audio01.mp3</replaceable>
- &gt; <replaceable>audio01.pcm</replaceable></command></para>
+ <para>执行 <command> mpg123 -s audio01.mp3
+ &gt; audio01.pcm</command></para>
</step>
</procedure>
@@ -643,29 +606,25 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
如果选择波形格式, 就要注意在每道开始时的一小点杂音,
这段声音是波形文件的头部份。 可以使用工具
<application>SoX</application> 来轻松去除。
- <application>SoX</application> 可从 <filename role="package">audio/sox</filename>
+ <application>SoX</application> 可从 <package>audio/sox</package>
port 或包(package)中安装得到:</para>
- <screen>&prompt.user; <userinput>sox -t wav -r 44100 -s -w -c 2 <replaceable>track.wav track.raw</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>sox -t wav -r 44100 -s -w -c 2 track.wav track.raw</userinput></screen>
<para>阅读 <xref linkend="creating-cds"/> 这部份可以了解到更多在
FreeBSD 里刻盘的信息。</para>
</sect2>
</sect1>
- <sect1 id="video-playback">
- <sect1info>
+ <sect1 xml:id="video-playback">
+ <info><title>视频回放</title>
<authorgroup>
- <author>
- <firstname>Ross</firstname>
- <surname>Lippert</surname>
- <contrib>贡献者</contrib>
- </author>
+ <author><personname><firstname>Ross</firstname><surname>Lippert</surname></personname><contrib>贡献者</contrib></author>
</authorgroup>
- <!-- 5 June 2002 -->
- </sect1info>
+
+ </info>
- <title>视频回放</title>
+
<para>视频回放是个很新并且迅速发展中的应用领域。
一定要有耐心,因为不是所有的事情都象处音频那么顺利。</para>
@@ -699,7 +658,7 @@ link acd0 rdvd</programlisting>
<programlisting>kern.ipc.shmmax=67108864
kern.ipc.shmall=32768</programlisting>
- <sect2 id="video-interface">
+ <sect2 xml:id="video-interface">
<title>测定视频的性能</title>
<indexterm><primary>XVideo</primary></indexterm>
@@ -733,7 +692,7 @@ kern.ipc.shmall=32768</programlisting>
</listitem>
</orderedlist>
- <sect3 id="video-interface-xvideo">
+ <sect3 xml:id="video-interface-xvideo">
<title>XVideo</title>
<para><application>&xorg;</application>
@@ -831,30 +790,29 @@ no adaptors present</screen>
<para>如果您的卡不支持XVideo,
则只是说明您的显示器在满足刷新图像的计算要求上存在更大的困难。
尽管显卡和处理器很重要,您仍然会有个不错的显示效果。
- 此外, 您也可以参考我们提供的文献, 在 <xref
- linkend="video-further-reading"/> 中有所介绍。</para>
+ 此外, 您也可以参考我们提供的文献, 在 <xref linkend="video-further-reading"/> 中有所介绍。</para>
</sect3>
- <sect3 id="video-interface-SDL">
+ <sect3 xml:id="video-interface-SDL">
<title>简单直接媒体层</title>
<para>简单直接媒体层(SDL),原意是做为 &microsoft.windows;、BeOS 以及 &unix;
之间的端口层,允许跨平台应用发展,更高效地利用声卡和图形卡。SDL
层可以在低层访问硬件, 有时这样做就比 X11 接口层更为高效。</para>
- <para>关于 SDL, 可以参考 <filename role="package">devel/sdl12</filename>。</para>
+ <para>关于 SDL, 可以参考 <package>devel/sdl12</package>。</para>
</sect3>
- <sect3 id="video-interface-DGA">
+ <sect3 xml:id="video-interface-DGA">
<title>直接图形存取</title>
<para>直接图形存取 (Direct Graphics Access) 是一种 X11 扩展,
通过它, 应用程序能够绕过 X 服务, 并直接修改画面缓存 (framebuffer)。
由于它依赖一种底层的内存映射来实现其功能,
因此使用它的程序必须以
- <username>root</username> 身份来执行。</para>
+ <systemitem class="username">root</systemitem> 身份来执行。</para>
<para>DGA 扩展可以通过
&man.dga.1; 来完成测试和性能测量。 运行
@@ -865,7 +823,7 @@ no adaptors present</screen>
</sect2>
- <sect2 id="video-ports">
+ <sect2 xml:id="video-ports">
<title>Ports 和 包(Packages) 对视频的解决</title>
<indexterm><primary>视频 ports</primary></indexterm>
@@ -905,7 +863,7 @@ no adaptors present</screen>
<listitem>
<para>没有随 port 一起安装的文档可以在网上或者
- port 的 <filename class='directory'>work</filename>
+ port 的 <filename>work</filename>
目录中找到。</para>
</listitem>
@@ -936,7 +894,7 @@ no adaptors present</screen>
<para>现在,这些程序的开发人员也已同 port 的维护人员进行了联合,
以减少制作port时出错。</para>
- <sect3 id="video-mplayer">
+ <sect3 xml:id="video-mplayer">
<title>MPlayer</title>
<para><application>MPlayer</application>
@@ -947,13 +905,12 @@ no adaptors present</screen>
这个计划就开始了。 有人也许会说图形接口已经成为新型设计的牺牲品。
但是一旦您习惯了命令行选项和按键控制方式,它就能表现得很好。</para>
- <sect4 id="video-mplayer-building">
+ <sect4 xml:id="video-mplayer-building">
<title>创建MPlayer</title>
<indexterm><primary>MPlayer</primary>
<secondary>making</secondary></indexterm>
- <para><application>MPlayer</application> 可以从 <filename
- role="package">multimedia/mplayer</filename> 找到。
+ <para><application>MPlayer</application> 可以从 <package>multimedia/mplayer</package> 找到。
<application>MPlayer</application> 在联编过程中会进行许多硬件检测,
而得到的可执行文件因此将无法移植到其他系统中使用。
因此, 从 ports 完成联编而不是安装预编译的包就很重要。
@@ -977,8 +934,8 @@ http://www.mplayerhq.hu/homepage/dload.html
<para>默认的 port 选项对于绝大多数用户来说是够用了。
不过, 如果您需要 XviD 编解码器, 则必须指定
- <makevar>WITH_XVID</makevar> 这个命令行选项。
- 默认的 DVD 设备也可以用 <makevar>WITH_DVD_DEVICE</makevar>
+ <varname>WITH_XVID</varname> 这个命令行选项。
+ 默认的 DVD 设备也可以用 <varname>WITH_DVD_DEVICE</varname>
选项来定义, 其默认值是 <filename>/dev/acd0</filename>。</para>
<para>撰写这一章的时候, <application>MPlayer</application> port 的联编过程包括了
@@ -995,7 +952,7 @@ http://www.mplayerhq.hu/homepage/dload.html
</sect4>
- <sect4 id="video-mplayer-using">
+ <sect4 xml:id="video-mplayer-using">
<title>使用MPlayer</title>
<indexterm><primary>MPlayer</primary>
<secondary>使用</secondary></indexterm>
@@ -1011,24 +968,24 @@ http://www.mplayerhq.hu/homepage/dload.html
HTML文档里有更为详细的信息。 这部份里, 我们只是描述了很少的常见应用。</para>
<para>要播放一个文件,如
- <filename><replaceable>testfile.avi</replaceable></filename>,
+ <filename>testfile.avi</filename>,
可以通过各种视频接口当中的某一个去设置 <option>-vo</option> 选项:</para>
- <screen>&prompt.user; <userinput>mplayer -vo xv <replaceable>testfile.avi</replaceable></userinput></screen>
- <screen>&prompt.user; <userinput>mplayer -vo sdl <replaceable>testfile.avi</replaceable></userinput></screen>
- <screen>&prompt.user; <userinput>mplayer -vo x11 <replaceable>testfile.avi</replaceable></userinput></screen>
- <screen>&prompt.root; <userinput>mplayer -vo dga <replaceable>testfile.avi</replaceable></userinput></screen>
- <screen>&prompt.root; <userinput>mplayer -vo 'sdl:dga' <replaceable>testfile.avi</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>mplayer -vo xv testfile.avi</userinput></screen>
+ <screen>&prompt.user; <userinput>mplayer -vo sdl testfile.avi</userinput></screen>
+ <screen>&prompt.user; <userinput>mplayer -vo x11 testfile.avi</userinput></screen>
+ <screen>&prompt.root; <userinput>mplayer -vo dga testfile.avi</userinput></screen>
+ <screen>&prompt.root; <userinput>mplayer -vo 'sdl:dga' testfile.avi</userinput></screen>
<para>所有这些选项都是值得一试的,
因为它们的性能依赖很多因素,并且都与硬件密切相关。</para>
<para>要播放 DVD, 需要把
- <filename><replaceable>testfile.avi</replaceable></filename> 改为
+ <filename>testfile.avi</filename> 改为
<option>dvd://<replaceable>N</replaceable> -dvd-device
<replaceable>DEVICE</replaceable></option>。 这里 <replaceable>N</replaceable>
是要播放的节目编号, 而
- <filename><replaceable>DEVICE</replaceable></filename> 则是
+ <filename>DEVICE</filename> 则是
DVD-ROM 的设备节点。 例如, 要播放 <filename>/dev/dvd</filename>
的第三个节目:</para>
@@ -1036,7 +993,7 @@ http://www.mplayerhq.hu/homepage/dload.html
<note>
<para>可以在编译 <application>MPlayer</application> 时, 通过
- <makevar>WITH_DVD_DEVICE</makevar> 来指定默认的
+ <varname>WITH_DVD_DEVICE</varname> 来指定默认的
DVD 设备。 系统内定的默认设备是 <filename>/dev/acd0</filename>。
更多细节, 请参考 port 的
<filename>Makefile</filename>。</para>
@@ -1063,7 +1020,7 @@ zoom=yes</programlisting>
并且可以被这部份描述的其它 <quote>包</quote> 利用。</para>
</sect4>
- <sect4 id="video-mencoder">
+ <sect4 xml:id="video-mencoder">
<title>mencoder</title>
<indexterm>
<primary>mencoder</primary>
@@ -1076,40 +1033,40 @@ zoom=yes</programlisting>
降低比特率、 修改格式, 而这些技巧可能会影响性能。
下面是几个例子, 第一个是简单地复制:</para>
- <screen>&prompt.user; <userinput>mencoder <replaceable>input.avi</replaceable> -oac copy -ovc copy -o <replaceable>output.avi</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>mencoder input.avi -oac copy -ovc copy -o output.avi</userinput></screen>
<para>不正确的命令选项组合可能使生成的文件不能被
<command>mplayer</command> 播放。因此,如果您只是想抓取文件,
一定在 <command>mplayer</command> 里使用
<quote><option>-dumpfile</option></quote>。</para>
- <para>转换 <filename><replaceable>input.avi</replaceable></filename>
+ <para>转换 <filename>input.avi</filename>
成为带有MPEG3音频编码 (要求
- <filename role="package">audio/lame</filename> )
+ <package>audio/lame</package> )
的MPEG4编码:</para>
- <screen>&prompt.user; <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \
- -ovc lavc -lavcopts vcodec=mpeg4:vhq -o <replaceable>output.avi</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>mencoder input.avi -oac mp3lame -lameopts br=192 \
+ -ovc lavc -lavcopts vcodec=mpeg4:vhq -o output.avi</userinput></screen>
<para>这样就产生了可被 <command>mplayer</command> 和 <command>xine</command>播放的输出。</para>
- <para><filename><replaceable>input.avi</replaceable></filename> 可以换成
+ <para><filename>input.avi</filename> 可以换成
<option>dvd://1 -dvd-device /dev/dvd</option> 并以
- <username>root</username> 的身份来执行, 以重新对 DVD 节目进行编码。
+ <systemitem class="username">root</systemitem> 的身份来执行, 以重新对 DVD 节目进行编码。
由于您第一次做这样的工作时很可能会对结果不太满意,
建议您首先把节目复制成文件, 然后对它进行操作。</para>
</sect4>
</sect3>
- <sect3 id="video-xine">
+ <sect3 xml:id="video-xine">
<title>xine视频播放器</title>
<para><application>xine</application> 视频播放器是一个关注范围很广的项目,
它不仅看准多合一的视频解决,
而且出品了一个可再用的基本库和一个可扩展插件的可执行模块。
发行有 <quote>包</quote> 和port版本--
- <filename role="package">multimedia/xine</filename>。</para>
+ <package>multimedia/xine</package>。</para>
<para><application>xine</application> 播放器仍然很粗糙,
但这很显然与好开头无关。实际上 <application>xine</application>
@@ -1133,11 +1090,11 @@ zoom=yes</programlisting>
<para>另外,没有图形界面也可以使用如下命令立即打开播放文件:</para>
- <screen>&prompt.user; <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>xine -g -p mymovie.avi</userinput></screen>
</sect3>
- <sect3 id="video-ports-transcode">
+ <sect3 xml:id="video-ports-transcode">
<title>使用transcode</title>
<para><application>transcode</application> 这个软件并不是播放器,
@@ -1146,8 +1103,7 @@ zoom=yes</programlisting>
就可以拥有使用带 <filename>stdin/stdout</filename>
接口的命令行工具来合并视频文件, 以及修复坏损文件的能力。</para>
- <para>在联编 <filename
- role="package">multimedia/transcode</filename> port 时可以指定大量选项,
+ <para>在联编 <package>multimedia/transcode</package> port 时可以指定大量选项,
我们建议使用下面的命令行来构建
<application>transcode</application>:</para>
@@ -1159,25 +1115,22 @@ WITH_MJPEG=yes -DWITH_XVID=yes</userinput></screen>
<para>为了说明 <command>transcode</command> 的功能,
下面的例子展示了如何将 DivX 转换为 PAL MPEG-1 文件 (PAL VCD):</para>
- <screen>&prompt.user; <userinput>transcode -i <replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>
-&prompt.user; <userinput>mplex -f 1 -o <replaceable>output_vcd.mpg output_vcd.m1v output_vcd.mpa</replaceable></userinput></screen>
+ <screen>&prompt.user; <userinput>transcode -i input.avi -V --export_prof vcd-pal -o output_vcd</userinput>
+&prompt.user; <userinput>mplex -f 1 -o output_vcd.mpg output_vcd.m1v output_vcd.mpa</userinput></screen>
<para>生成的 MPEG 文件,
- <filename><replaceable>output_vcd.mpg</replaceable></filename>, 可以通过
+ <filename>output_vcd.mpg</filename>, 可以通过
<application>MPlayer</application> 来播放。
您甚至可以直接将这个文件刻录到 CD-R 介质上来创建 Video CD,
- 如果希望这样做的话, 需要安装 <filename
- role="package">multimedia/vcdimager</filename> 和 <filename
- role="package">sysutils/cdrdao</filename> 这两个程序。</para>
+ 如果希望这样做的话, 需要安装 <package>multimedia/vcdimager</package> 和 <package>sysutils/cdrdao</package> 这两个程序。</para>
- <para><command>transcode</command> 提供了联机手册, 但您仍应参考 <ulink
- url="http://www.transcoding.org/cgi-bin/transcode">transcode
- wiki</ulink> 以了解更多信息和例子。</para>
+ <para><command>transcode</command> 提供了联机手册, 但您仍应参考 <link xlink:href="http://www.transcoding.org/cgi-bin/transcode">transcode
+ wiki</link> 以了解更多信息和例子。</para>
</sect3>
</sect2>
- <sect2 id="video-further-reading">
+ <sect2 xml:id="video-further-reading">
<title>进一步了解</title>
<para>FreeBSD里不同的视频软件包正迅速发展中。
@@ -1187,13 +1140,13 @@ WITH_MJPEG=yes -DWITH_XVID=yes</userinput></screen>
并使用一些不同的应用程序。
这里就给这些读者指出一些补充信息。</para>
- <para><ulink url="http://www.mplayerhq.hu/DOCS/"> MPlayer 文档 </ulink>
+ <para><link xlink:href="http://www.mplayerhq.hu/DOCS/"> MPlayer 文档 </link>
是很技术性的。
这些文档可以给那些希望获得关于&unix;视频高级技术的人们提供参考。
<application>MPlayer</application> 邮件列表很不喜欢没耐心阅读文档的人,
如果您发现什么问题想报告给他们,请首先RTFM。</para>
- <para><ulink url="http://dvd.sourceforge.net/xine-howto/en_GB/html/howto.html">xine HOWTO</ulink>
+ <para><link xlink:href="http://dvd.sourceforge.net/xine-howto/en_GB/html/howto.html">xine HOWTO</link>
里边有一章是关于提高性能的,对所有的播放器都很适应。</para>
<para>最后是一些很有前途的程序,读者可以试一下:</para>
@@ -1201,25 +1154,20 @@ WITH_MJPEG=yes -DWITH_XVID=yes</userinput></screen>
<itemizedlist>
<listitem>
- <para><ulink
- url="http://avifile.sourceforge.net/">Avifile</ulink>,它就是 <filename
- role='package'>multimedia/avifile</filename> port。</para>
+ <para><link xlink:href="http://avifile.sourceforge.net/">Avifile</link>,它就是 <package>multimedia/avifile</package> port。</para>
</listitem>
<listitem>
- <para><ulink
- url="http://www.dtek.chalmers.se/groups/dvd/">Ogle</ulink>
- 它就是 <filename
- role='package'>multimedia/ogle</filename> port。</para>
+ <para><link xlink:href="http://www.dtek.chalmers.se/groups/dvd/">Ogle</link>
+ 它就是 <package>multimedia/ogle</package> port。</para>
</listitem>
<listitem>
- <para><ulink url="http://xtheater.sourceforge.net/">Xtheater</ulink></para>
+ <para><link xlink:href="http://xtheater.sourceforge.net/">Xtheater</link></para>
</listitem>
<listitem>
- <para><filename
- role="package">multimedia/dvdauthor</filename>,
+ <para><package>multimedia/dvdauthor</package>,
一个制作 DVD 节目的源码开放包。</para>
</listitem>
@@ -1228,26 +1176,17 @@ WITH_MJPEG=yes -DWITH_XVID=yes</userinput></screen>
</sect2>
</sect1>
- <sect1 id="tvcard">
- <sect1info>
+ <sect1 xml:id="tvcard">
+ <info><title>安装电视卡</title>
<authorgroup>
- <author>
- <firstname>Josef</firstname>
- <surname>El-Rayes</surname>
- <contrib>原创: </contrib>
- </author>
+ <author><personname><firstname>Josef</firstname><surname>El-Rayes</surname></personname><contrib>原创: </contrib></author>
</authorgroup>
<authorgroup>
- <author>
- <firstname>Marc</firstname>
- <surname>Fonvieille</surname>
- <contrib>改编:</contrib>
- <!-- 02 January 2004 -->
- </author>
+ <author><personname><firstname>Marc</firstname><surname>Fonvieille</surname></personname><contrib>改编:</contrib></author>
</authorgroup>
- </sect1info>
+ </info>
- <title>安装电视卡</title>
+
<indexterm>
<primary>电视卡</primary>
</indexterm>
@@ -1322,25 +1261,25 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<itemizedlist>
<listitem>
- <para><filename role="package">multimedia/fxtv</filename>
+ <para><package>multimedia/fxtv</package>
提供 <quote>窗口电视(TV-in-a-window)</quote>
功能和图像/声音/图像采集功能。</para>
</listitem>
<listitem>
- <para><filename role="package">multimedia/xawtv</filename>
+ <para><package>multimedia/xawtv</package>
也是一款电视应用程序,功能同
<application>fxtv</application> 一样。</para>
</listitem>
<listitem>
- <para><filename role="package">misc/alevt</filename>
+ <para><package>misc/alevt</package>
解码和显示Videotext/Teletext。</para>
</listitem>
<listitem>
- <para><filename role="package">audio/xmradio</filename>,
+ <para><package>audio/xmradio</package>,
一款用于一些电视卡的调频电台调谐器的程序。</para>
</listitem>
<listitem>
- <para><filename role="package">audio/wmtune</filename>,
+ <para><package>audio/wmtune</package>,
一款用于电台调谐器的便捷的桌面程序。</para>
</listitem>
</itemizedlist>
@@ -1359,19 +1298,14 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
</sect2>
</sect1>
- <sect1 id="scanners">
- <sect1info>
+ <sect1 xml:id="scanners">
+ <info><title>图象扫描仪</title>
<authorgroup>
- <author>
- <firstname>Marc</firstname>
- <surname>Fonvieille</surname>
- <contrib>撰写人 </contrib>
- <!-- 04 August 2004 -->
- </author>
+ <author><personname><firstname>Marc</firstname><surname>Fonvieille</surname></personname><contrib>撰写人 </contrib></author>
</authorgroup>
- </sect1info>
+ </info>
- <title>图象扫描仪</title>
+
<indexterm>
<primary>图象扫描仪</primary>
</indexterm>
@@ -1381,16 +1315,14 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<para>在 &os; 中, 访问扫描仪的能力,
是通过 <application>SANE</application> (Scanner Access Now
- Easy) <acronym role="Application Programming
- Interface">API</acronym> 提供的。
+ Easy) <acronym role="Application Programming Interface">API</acronym> 提供的。
<application>SANE</application> 也会使用一些
&os; 设备驱动来访问扫描仪硬件。</para>
<para>&os; 支持 SCSI 和 USB 扫描仪。
在做任何配置之前请确保您的扫描仪被 <application>SANE</application>
- 支持。 <application>SANE</application> 有一个 <ulink
- url="http://www.sane-project.org/sane-supported-devices.html">
- 支持的设备</ulink> 列表,
+ 支持。 <application>SANE</application> 有一个 <link xlink:href="http://www.sane-project.org/sane-supported-devices.html">
+ 支持的设备</link> 列表,
可以为您提供有关扫描仪的支持情况和状态的信息。
在 &os;&nbsp;8.X 之前版本的系统中,
&man.uscanner.4; 手册页也提供了系统支持的 USB 扫描仪列表。</para>
@@ -1403,7 +1335,7 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
取决于您的扫描仪接口,
需要不同的设备驱动程序。</para>
- <sect3 id="scanners-kernel-usb">
+ <sect3 xml:id="scanners-kernel-usb">
<title>USB 接口</title>
<para>默认的 <filename>GENERIC</filename>
@@ -1491,20 +1423,16 @@ Re-scan of bus 3 was successful</screen>
<title>SANE 配置</title>
<para><application>SANE</application> 系统分为两部分:
- 后端 (<filename
- role="package">graphics/sane-backends</filename>)
- 和前端 (<filename
- role="package">graphics/sane-frontends</filename>)。
+ 后端 (<package>graphics/sane-backends</package>)
+ 和前端 (<package>graphics/sane-frontends</package>)。
后端部分提供到扫描仪自身的访问。
- <application>SANE</application> 的<ulink
- url="http://www.sane-project.org/sane-supported-devices.html">
- 支持设备</ulink>列表详细说明了哪一个后端可以支持您的图象扫描仪。
+ <application>SANE</application> 的<link xlink:href="http://www.sane-project.org/sane-supported-devices.html">
+ 支持设备</link>列表详细说明了哪一个后端可以支持您的图象扫描仪。
如果您想使用您的设备,就必须为您的扫描仪选定正确的后端。
前端部分提供图形化的扫描界面
(<application>xscanimage</application>)。</para>
- <para>要做的第一步就是安装 <filename
- role="package">graphics/sane-backends</filename> port 或者
+ <para>要做的第一步就是安装 <package>graphics/sane-backends</package> port 或者
package。然后,使用 <command>sane-find-scanner</command>
命令来检查 <application>SANE</application>
系统做的扫描仪检测:</para>
@@ -1531,8 +1459,7 @@ 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>或者, 如果使用的是 <xref
- linkend="scanners-kernel-usb"/> 中的 USB 扫描仪:</para>
+ <para>或者, 如果使用的是 <xref linkend="scanners-kernel-usb"/> 中的 USB 扫描仪:</para>
<screen>&prompt.root; <userinput>scanimage -L</userinput>
device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner</screen>
@@ -1546,17 +1473,15 @@ device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner<
<para>如果没有输出任何信息, 或提示没有识别到扫描仪,
则说明 &man.scanimage.1; 无法识别它。
如果发生这种情况, 您就需要修改扫描仪支持后端的配置文件,
- 并定义所使用的扫描设备。 <filename
- class="directory">/usr/local/etc/sane.d/</filename>
+ 并定义所使用的扫描设备。 <filename>/usr/local/etc/sane.d/</filename>
目录中包含了所有的后端配置文件。
这类识别问题经常会在某些 USB
扫描仪上发生。</para>
<para>
- linkend="scanners-kernel-usb"> 中所使用的 USB 扫描仪,
+ linkend="scanners-kernel-usb"&gt; 中所使用的 USB 扫描仪,
<command>sane-find-scanner</command> 会给出下面的信息:</para>
- <para>例如, 对于在 <xref
- linkend="scanners-kernel-usb"/>, 在 &os;&nbsp;8.X 中,
+ <para>例如, 对于在 <xref linkend="scanners-kernel-usb"/>, 在 &os;&nbsp;8.X 中,
扫描仪已经被很好地识别并能够正常工作了; 而对于更早版本的 &os;
而言 (使用 &man.uscanner.4; 驱动程序)
<command>sane-find-scanner</command> 则会给出这样的信息:</para>
@@ -1607,11 +1532,9 @@ device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner</screen>
相比之下使用图形用户界面来执行图片扫描会更好。
<application>SANE</application> 提供了一个简单但实用的图形界面:
<application>xscanimage</application>
- (<filename
- role="package">graphics/sane-frontends</filename>)。</para>
+ (<package>graphics/sane-frontends</package>)。</para>
- <para><application>Xsane</application> (<filename
- role="package">graphics/xsane</filename>)是另一个流行的图形扫描前端。
+ <para><application>Xsane</application> (<package>graphics/xsane</package>)是另一个流行的图形扫描前端。
这个前端提供了一些高级特性,
比如多样的扫描模式(photocopy,fax,等。),
色彩校正,批量扫描,等等。这两个程序都可以作为
@@ -1623,35 +1546,35 @@ device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner</screen>
<title>授权其他用户访问扫描仪</title>
<para>前面所有的操作都是用
- <username>root</username> 权限来完成的。
+ <systemitem class="username">root</systemitem> 权限来完成的。
然而您可能需要让其他的用户也可以访问扫描仪。
用户需要有扫描仪所用的设备节点的读和写权限。
比如,我们的 USB 扫描仪使用设备节点
<filename>/dev/ugen0.2</filename>
实际上只是到实际设备节点
<filename>/dev/usb/0.2.0</filename> 的符号连接
- (可以通过查看 <filename class="directory">/dev</filename>
+ (可以通过查看 <filename>/dev</filename>
目录的内容来确认这一点)。 设备节点本身和这个符号连接分别属于
- <groupname>wheel</groupname> 和
- <groupname>operator</groupname> 组。 将用户
- <username><replaceable>joe</replaceable></username> 添加到
+ <systemitem class="groupname">wheel</systemitem> 和
+ <systemitem class="groupname">operator</systemitem> 组。 将用户
+ <systemitem class="username"><replaceable>joe</replaceable></systemitem> 添加到
这些组中, 就可以允许他使用扫描仪了, 不过,
出于显而易见的安全方面的原因, 在将用户加到特定的用户组, 特别是
- <groupname>wheel</groupname> 组时, 无疑需三思而后行。
+ <systemitem class="groupname">wheel</systemitem> 组时, 无疑需三思而后行。
更好的解决方法是创建一个专门用于访问 USB 设备的组,
并让这个组的成员能够访问 USB 设备。</para>
<para>这里作为示例, 我们将会使用名为
- <groupname><replaceable>usb</replaceable></groupname> 的组。
+ <systemitem class="groupname"><replaceable>usb</replaceable></systemitem> 的组。
第一步是借助
&man.pw.8; 命令来创建它:</para>
<screen>&prompt.root; <userinput>pw groupadd usb</userinput></screen>
<para>接下来, 令 <filename>/dev/ugen0.2</filename>
- 符号连接和 <filename>/dev/usb/0.2.0</filename> 设备节点能够以 <groupname>usb</groupname> 组的身份来访问,
+ 符号连接和 <filename>/dev/usb/0.2.0</filename> 设备节点能够以 <systemitem class="groupname">usb</systemitem> 组的身份来访问,
具体而言是配置正确的写权限 (<literal>0660</literal> 或
- <literal>0664</literal>), 因为默认情况下只有属主 (<username>root</username>)
+ <literal>0664</literal>), 因为默认情况下只有属主 (<systemitem class="username">root</systemitem>)
才能写这些设备。 这些配置是通过在
<filename>/etc/devfs.rules</filename> 文件中添加如下的设置来实现的:</para>
@@ -1675,10 +1598,10 @@ add path uscanner0 mode 660 group usb</programlisting>
&man.devfs.8;。</para>
<para>现在, 只需将用户添加到
- <groupname><replaceable>usb</replaceable></groupname> 组,
+ <systemitem class="groupname"><replaceable>usb</replaceable></systemitem> 组,
就可以使用扫描仪了:</para>
- <screen>&prompt.root; <userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput></screen>
+ <screen>&prompt.root; <userinput>pw groupmod usb -m joe</userinput></screen>
<para>更多详情, 请参见联机手册 &man.pw.8;。</para>
</sect2>