aboutsummaryrefslogtreecommitdiff
path: root/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml
diff options
context:
space:
mode:
authorDru Lavigne <dru@FreeBSD.org>2014-04-21 18:12:05 +0000
committerDru Lavigne <dru@FreeBSD.org>2014-04-21 18:12:05 +0000
commitf7992b4006de3fdfe54cc1cfcd99bddce5328242 (patch)
tree35c6c5452c4887f39ea8885d13b9e52a059baae5 /en_US.ISO8859-1/books/handbook/multimedia/chapter.xml
parent3e5c6eb2ce61738aae7a769978e65e99cd2066c5 (diff)
downloaddoc-f7992b4006de3fdfe54cc1cfcd99bddce5328242.tar.gz
doc-f7992b4006de3fdfe54cc1cfcd99bddce5328242.zip
White space fix only. Translators can ignore.
Sponsored by: iXsystems
Notes
Notes: svn path=/head/; revision=44617
Diffstat (limited to 'en_US.ISO8859-1/books/handbook/multimedia/chapter.xml')
-rw-r--r--en_US.ISO8859-1/books/handbook/multimedia/chapter.xml1163
1 files changed, 594 insertions, 569 deletions
diff --git a/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml b/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml
index 0d265aadf6..4cc366e615 100644
--- a/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml
+++ b/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml
@@ -8,6 +8,7 @@
<info>
<title>Multimedia</title>
+
<authorgroup>
<author>
<personname>
@@ -66,8 +67,8 @@
</listitem>
<listitem>
- <para>Rip <acronym>CD</acronym> and <acronym>DVD</acronym> content into
- files.</para>
+ <para>Rip <acronym>CD</acronym> and <acronym>DVD</acronym>
+ content into files.</para>
</listitem>
<listitem>
@@ -138,7 +139,7 @@
<screen>&prompt.root; <userinput>kldload snd_hda</userinput></screen>
<para>To automate the loading of this driver at boot time, add the
- driver to <filename>/boot/loader.conf</filename>. The line for
+ driver to <filename>/boot/loader.conf</filename>. The line for
this driver is:</para>
<programlisting>snd_hda_load="YES"</programlisting>
@@ -165,7 +166,8 @@
<para>This section is for users who prefer to statically compile
in support for the sound card in a custom kernel. For more
- information about recompiling a kernel, refer to <xref linkend="kernelconfig"/>.</para>
+ information about recompiling a kernel, refer to <xref
+ linkend="kernelconfig"/>.</para>
<para>When using a custom kernel to provide sound support, make
sure that the audio framework driver exists in the custom
@@ -209,10 +211,9 @@ hint.sbc.0.flags="0x15"</programlisting>
<para>In this case, the card uses the <literal>0x220</literal>
I/O port and the IRQ <literal>5</literal>.</para>
- <para>The syntax used in
- <filename>/boot/device.hints</filename> is described in
- &man.sound.4; and the manual page for the driver of the sound
- card.</para>
+ <para>The syntax used in <filename>/boot/device.hints</filename>
+ is described in &man.sound.4; and the manual page for the
+ driver of the sound card.</para>
<para>The settings shown above are the defaults. In some
cases, the IRQ or other settings may need to be changed to
@@ -257,13 +258,15 @@ pcm2: &lt;Conexant CX20590 (Analog 2.0+HP/2.0)&gt; (play/rec) default</screen>
<screen>&prompt.user; <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>
<warning>
- <para>Audio <acronym>CD</acronym>s have specialized encodings which means that
- they should not be mounted using &man.mount.8;.</para>
+ <para>Audio <acronym>CD</acronym>s have specialized encodings
+ which means that they should not be mounted using
+ &man.mount.8;.</para>
</warning>
- <para>Various applications, such as <package>audio/workman</package>, provide a
- friendlier interface. The <package>audio/mpg123</package> port can be installed
- to listen to MP3 audio files.</para>
+ <para>Various applications, such as
+ <package>audio/workman</package>, provide a friendlier
+ interface. The <package>audio/mpg123</package> port can be
+ installed to listen to MP3 audio files.</para>
<para>Another quick way to test the card is to send data to
<filename>/dev/dsp</filename>:</para>
@@ -403,8 +406,8 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
<para>It is often desirable to have multiple sources of sound that
are able to play simultaneously. &os; uses <quote>Virtual
- Sound Channels</quote> to multiplex the
- sound card's playback by mixing sound in the kernel.</para>
+ Sound Channels</quote> to multiplex the sound card's playback
+ by mixing sound in the kernel.</para>
<para>Three &man.sysctl.8; knobs are available for configuring
virtual channels:</para>
@@ -486,29 +489,28 @@ pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
</info>
<para>This section describes some <acronym>MP3</acronym>
- players available for &os;, how to rip audio <acronym>CD</acronym> tracks, and
- how to encode and decode <acronym>MP3</acronym>s.</para>
+ players available for &os;, how to rip audio
+ <acronym>CD</acronym> tracks, and how to encode and decode
+ <acronym>MP3</acronym>s.</para>
<sect2 xml:id="mp3-players">
<title>MP3 Players</title>
<para>A popular graphical <acronym>MP3</acronym> player is
- <application>XMMS</application>.
- It supports <application>Winamp</application>
- skins and additional plugins. The interface is intuitive,
- with a playlist, graphic equalizer, and more. Those familiar
- with <application>Winamp</application> will find
+ <application>XMMS</application>. It supports
+ <application>Winamp</application> skins and additional
+ plugins. The interface is intuitive, with a playlist, graphic
+ equalizer, and more. Those familiar with
+ <application>Winamp</application> will find
<application>XMMS</application> simple to use. On &os;,
- <application>XMMS</application> can be installed from
- the <package>multimedia/xmms</package> port
- or package.</para>
+ <application>XMMS</application> can be installed from the
+ <package>multimedia/xmms</package> port or package.</para>
<para>The <package>audio/mpg123</package> package or port
provides an alternative, command-line <acronym>MP3</acronym>
- player. Once installed, specify
- the <acronym>MP3</acronym> file to play on the
- command line. If the system has multiple audio devices, the
- sound device can also be specifed:</para>
+ player. Once installed, specify the <acronym>MP3</acronym>
+ file to play on the command line. If the system has multiple
+ audio devices, the sound device can also be specifed:</para>
<screen>&prompt.root; <userinput>mpg123 <replaceable>-a /dev/dsp1.0 Foobar-GreatestHits.mp3</replaceable></userinput>
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
@@ -525,50 +527,54 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
<sect2 xml:id="rip-cd">
<title>Ripping <acronym>CD</acronym> Audio Tracks</title>
- <para>Before encoding a <acronym>CD</acronym> or <acronym>CD</acronym> track to
- <acronym>MP3</acronym>, the audio data on the <acronym>CD</acronym> must be
- ripped to the hard drive. This is done by copying the raw <acronym>CD</acronym>
- Digital Audio (<acronym>CDDA</acronym>) data to
- <acronym>WAV</acronym> files.</para>
+ <para>Before encoding a <acronym>CD</acronym> or
+ <acronym>CD</acronym> track to <acronym>MP3</acronym>, the
+ audio data on the <acronym>CD</acronym> must be ripped to the
+ hard drive. This is done by copying the raw
+ <acronym>CD</acronym> Digital Audio (<acronym>CDDA</acronym>)
+ data to <acronym>WAV</acronym> files.</para>
<para>The <command>cdda2wav</command> tool, which is installed
- with the <package>sysutils/cdrtools</package>
- suite, can be used to rip audio information from
+ with the <package>sysutils/cdrtools</package> suite, can be
+ used to rip audio information from
<acronym>CD</acronym>s.</para>
- <para>With the audio <acronym>CD</acronym> in the drive, the following command can
- be issued as <systemitem class="username">root</systemitem> to rip an entire <acronym>CD</acronym>
- into individual, per track, <acronym>WAV</acronym>
- files:</para>
+ <para>With the audio <acronym>CD</acronym> in the drive, the
+ following command can be issued as <systemitem
+ class="username">root</systemitem> to rip an entire
+ <acronym>CD</acronym> into individual, per track,
+ <acronym>WAV</acronym> files:</para>
<screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput></screen>
- <para>In this example, the <option>-D <replaceable>0,1,0</replaceable></option>
- indicates the <acronym>SCSI</acronym> device
- <filename>0,1,0</filename> containing the <acronym>CD</acronym> to rip.
- Use <command>cdrecord -scanbus</command> to determine the
- correct device parameters for the system.</para>
+ <para>In this example, the <option>-D
+ <replaceable>0,1,0</replaceable></option> indicates the
+ <acronym>SCSI</acronym> device <filename>0,1,0</filename>
+ containing the <acronym>CD</acronym> to rip. Use
+ <command>cdrecord -scanbus</command> to determine the correct
+ device parameters for the system.</para>
- <para>To rip individual tracks, use
- <option>-t</option> to specify the track:</para>
+ <para>To rip individual tracks, use <option>-t</option> to
+ specify the track:</para>
<screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput></screen>
- <para>To rip
- a range of tracks, such as track one to seven, specify a
- range:</para>
+ <para>To rip a range of tracks, such as track one to seven,
+ specify a range:</para>
<screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 1+7</userinput></screen>
<para>To rip from an <acronym>ATAPI</acronym>
- (<acronym>IDE</acronym>) <acronym>CDROM</acronym> drive, specify the
- device name in place of the <acronym>SCSI</acronym> unit numbers. For example,
- to rip track 7 from an IDE drive:</para>
+ (<acronym>IDE</acronym>) <acronym>CDROM</acronym> drive,
+ specify the device name in place of the
+ <acronym>SCSI</acronym> unit numbers. For example, to rip
+ track 7 from an IDE drive:</para>
<screen>&prompt.root; <userinput>cdda2wav -D <replaceable>/dev/acd0 -t 7</replaceable></userinput></screen>
- <para>Alternately, <command>dd</command> can be used to extract audio tracks on
- <acronym>ATAPI</acronym> drives, as described in <xref linkend="duplicating-audiocds"/>.</para>
+ <para>Alternately, <command>dd</command> can be used to extract
+ audio tracks on <acronym>ATAPI</acronym> drives, as described
+ in <xref linkend="duplicating-audiocds"/>.</para>
</sect2>
<sect2 xml:id="mp3-encoding">
@@ -577,49 +583,51 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
<para>
<application>Lame</application> is a popular
<acronym>MP3</acronym> encoder which can be installed from the
- <package>audio/lame</package> port. Due to
- patent issues, a package is not available.</para>
+ <package>audio/lame</package> port. Due to patent issues, a
+ package is not available.</para>
<para>The following command will convert the ripped
<acronym>WAV</acronym> file
- <filename><replaceable>audio01.wav</replaceable></filename>
- to
+ <filename><replaceable>audio01.wav</replaceable></filename> to
<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>2014</replaceable>" --tc "<replaceable>Ripped and encoded by Foo</replaceable>" --tg "<replaceable>Genre</replaceable>" <replaceable>audio01.wav audio01.mp3</replaceable></userinput></screen>
- <para>The specified 128&nbsp;kbits is a standard <acronym>MP3</acronym>
- bitrate while the 160 and 192 bitrates provide higher quality.
- The higher the bitrate, the larger the size of the resulting
- <acronym>MP3</acronym>. The <option>-h</option> turns on the
- <quote>higher quality but a little slower</quote> mode. The
- options beginning with <option>--t</option> indicate <acronym>ID3</acronym> tags,
+ <para>The specified 128&nbsp;kbits is a standard
+ <acronym>MP3</acronym> bitrate while the 160 and 192 bitrates
+ provide higher quality. The higher the bitrate, the larger
+ the size of the resulting <acronym>MP3</acronym>. The
+ <option>-h</option> turns on the <quote>higher quality but a
+ little slower</quote> mode. The options beginning with
+ <option>--t</option> indicate <acronym>ID3</acronym> tags,
which usually contain song information, to be embedded within
the <acronym>MP3</acronym> file. Additional encoding options
can be found in the <application>lame</application> manual
page.</para>
- <para>In order to burn an audio <acronym>CD</acronym> from <acronym>MP3</acronym>s,
- they must first be converted to a non-compressed
- file format. <application>XMMS</application> can be used to convert to the
- <acronym>WAV</acronym> format, while
- <application>mpg123</application> can be used to convert to the
- raw Pulse-Code Modulation (<acronym>PCM</acronym>) audio data
- format.</para>
+ <para>In order to burn an audio <acronym>CD</acronym> from
+ <acronym>MP3</acronym>s, they must first be converted to a
+ non-compressed file format. <application>XMMS</application>
+ can be used to convert to the <acronym>WAV</acronym> format,
+ while <application>mpg123</application> can be used to convert
+ to the raw Pulse-Code Modulation (<acronym>PCM</acronym>)
+ audio data format.</para>
- <para>To convert <filename>audio01.mp3</filename>
- using <application>mpg123</application>, specify the name of
- the <acronym>PCM</acronym> file:</para>
+ <para>To convert <filename>audio01.mp3</filename> using
+ <application>mpg123</application>, specify the name of the
+ <acronym>PCM</acronym> file:</para>
<screen>&prompt.root; <userinput>mpg123 -s <replaceable>audio01.mp3</replaceable> &gt; <replaceable>audio01.pcm</replaceable></userinput></screen>
-
+
<para>To use <application>XMMS</application> to convert a
<acronym>MP3</acronym> to <acronym>WAV</acronym> format, use
these steps:</para>
<procedure>
- <title>Converting to <acronym>WAV</acronym> Format in <application>XMMS</application></title>
+ <title>Converting to <acronym>WAV</acronym> Format in
+ <application>XMMS</application></title>
+
<step>
<para>Launch <application>XMMS</application>.</para>
</step>
@@ -671,18 +679,20 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
<para>Both the <acronym>WAV</acronym> and <acronym>PCM</acronym>
formats can be used with <application>cdrecord</application>
- to create audio <acronym>CD</acronym>s, whereas <application>burncd</application> requires the
+ to create audio <acronym>CD</acronym>s, whereas
+ <application>burncd</application> requires the
<acronym>PCM</acronym> format. When using
- <acronym>WAV</acronym> files, there will be a small tick
- sound at the beginning of each track. This sound is the
- header of the <acronym>WAV</acronym> file. The
- <package>audio/sox</package> port or package can be used to remove the
- header:</para>
+ <acronym>WAV</acronym> files, there will be a small tick sound
+ at the beginning of each track. This sound is the header of
+ the <acronym>WAV</acronym> file. The
+ <package>audio/sox</package> port or package can be used to
+ remove the header:</para>
<screen>&prompt.user; <userinput>sox -t wav -r 44100 -s -w -c 2 <replaceable>track.wav track.raw</replaceable></userinput></screen>
<para>Refer to <xref linkend="creating-cds"/> for more
- information on using a <acronym>CD</acronym> burner in &os;.</para>
+ information on using a <acronym>CD</acronym> burner in
+ &os;.</para>
</sect2>
</sect1>
@@ -701,7 +711,6 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
</authorgroup>
</info>
-
<para>Before configuring video playback, determine the model and
chipset of the video card. While
<application>&xorg;</application> supports a wide variety of
@@ -714,9 +723,9 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
<para>It is a good idea to have a short MPEG test file for
evaluating various players and options. Since some
<acronym>DVD</acronym> applications look for
- <acronym>DVD</acronym> media in <filename>/dev/dvd</filename> by default, or have this
- device name hardcoded in them, it might be useful to make a
- symbolic links to the proper device:</para>
+ <acronym>DVD</acronym> media in <filename>/dev/dvd</filename> by
+ default, or have this device name hardcoded in them, it might be
+ useful to make a symbolic links to the proper device:</para>
<screen>&prompt.root; <userinput>ln -sf /dev/cd0 /dev/dvd</userinput></screen>
@@ -732,85 +741,87 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
device.</para>
<para>To enhance the shared memory
- <application>&xorg;</application> interface, it is
- recommended to increase the values of these &man.sysctl.8;
+ <application>&xorg;</application> interface, it is recommended
+ to increase the values of these &man.sysctl.8;
variables:</para>
<programlisting>kern.ipc.shmmax=67108864
kern.ipc.shmall=32768</programlisting>
- <sect2 xml:id="video-interface">
- <title>Determining Video Capabilities</title>
+ <sect2 xml:id="video-interface">
+ <title>Determining Video Capabilities</title>
- <indexterm><primary>XVideo</primary></indexterm>
- <indexterm><primary>SDL</primary></indexterm>
- <indexterm><primary>DGA</primary></indexterm>
+ <indexterm><primary>XVideo</primary></indexterm>
+ <indexterm><primary>SDL</primary></indexterm>
+ <indexterm><primary>DGA</primary></indexterm>
- <para>There are several possible ways to display video under
- <application>&xorg;</application> and what works is largely
- hardware dependent. Each method described below will have
- varying quality across different hardware.</para>
+ <para>There are several possible ways to display video under
+ <application>&xorg;</application> and what works is largely
+ hardware dependent. Each method described below will have
+ varying quality across different hardware.</para>
- <para>Common video interfaces include:</para>
+ <para>Common video interfaces include:</para>
- <orderedlist>
- <listitem>
- <para><application>&xorg;</application>: normal output using
- shared memory.</para>
- </listitem>
+ <orderedlist>
+ <listitem>
+ <para><application>&xorg;</application>: normal output using
+ shared memory.</para>
+ </listitem>
- <listitem>
- <para>XVideo: an extension to the
- <application>&xorg;</application> interface which
- allows video to be directly displayed in drawable objects
- through a special acceleration. This extension provides
- good quality playback even on low-end machines. The next
- section describes how to determine if this extension is
- running.</para>
- </listitem>
+ <listitem>
+ <para>XVideo: an extension to the
+ <application>&xorg;</application> interface which
+ allows video to be directly displayed in drawable objects
+ through a special acceleration. This extension provides
+ good quality playback even on low-end machines. The next
+ section describes how to determine if this extension is
+ running.</para>
+ </listitem>
- <listitem>
- <para><acronym>SDL</acronym>: the Simple Directmedia Layer is
- a porting layer for many operating systems, allowing
- cross-platform applications to be developed which make
- efficient use of sound and graphics. <acronym>SDL</acronym>
- provides a low-level abstraction to the hardware which can
- sometimes be more efficient than the
- <application>&xorg;</application> interface. On &os;,
- <acronym>SDL</acronym> can be installed using the <package>devel/sdl20</package> package or
- port.</para>
- </listitem>
+ <listitem>
+ <para><acronym>SDL</acronym>: the Simple Directmedia Layer
+ is a porting layer for many operating systems, allowing
+ cross-platform applications to be developed which make
+ efficient use of sound and graphics.
+ <acronym>SDL</acronym> provides a low-level abstraction to
+ the hardware which can sometimes be more efficient than
+ the <application>&xorg;</application> interface. On &os;,
+ <acronym>SDL</acronym> can be installed using the
+ <package>devel/sdl20</package> package or port.</para>
+ </listitem>
- <listitem>
- <para><acronym>DGA</acronym>: the Direct Graphics Access is an
- <application>&xorg;</application> extension which allows a
- program to bypass the <application>&xorg;</application>
- server and directly alter the framebuffer. Because it
- relies on a low level memory mapping, programs using it must
- be run as <systemitem class="username">root</systemitem>. The
- <acronym>DGA</acronym> extension can be tested and
- benchmarked using &man.dga.1;. When <command>dga</command>
- is running, it changes the colors of the display whenever a
- key is pressed. To quit, press <keycap>q</keycap>.</para>
- </listitem>
+ <listitem>
+ <para><acronym>DGA</acronym>: the Direct Graphics Access is
+ an <application>&xorg;</application> extension which
+ allows a program to bypass the
+ <application>&xorg;</application> server and directly
+ alter the framebuffer. Because it relies on a low level
+ memory mapping, programs using it must be run as
+ <systemitem class="username">root</systemitem>. The
+ <acronym>DGA</acronym> extension can be tested and
+ benchmarked using &man.dga.1;. When
+ <command>dga</command> is running, it changes the colors
+ of the display whenever a key is pressed. To quit, press
+ <keycap>q</keycap>.</para>
+ </listitem>
- <listitem>
- <para>SVGAlib: a low level console graphics layer.</para>
- </listitem>
- </orderedlist>
+ <listitem>
+ <para>SVGAlib: a low level console graphics layer.</para>
+ </listitem>
+ </orderedlist>
- <sect3 xml:id="video-interface-xvideo">
- <title>XVideo</title>
+ <sect3 xml:id="video-interface-xvideo">
+ <title>XVideo</title>
- <para>To check whether this extension is running, use
- <command>xvinfo</command>:</para>
+ <para>To check whether this extension is running, use
+ <command>xvinfo</command>:</para>
- <screen>&prompt.user; <userinput>xvinfo</userinput></screen>
+ <screen>&prompt.user; <userinput>xvinfo</userinput></screen>
- <para>XVideo is supported for the card if the result is similar
- to:</para>
+ <para>XVideo is supported for the card if the result is
+ similar to:</para>
- <screen>X-Video Extension version 2.2
+ <screen>X-Video Extension version 2.2
screen #0
Adaptor #0: "Savage Streams Engine"
number of ports: 1
@@ -879,263 +890,272 @@ kern.ipc.shmall=32768</programlisting>
depth: 1
red, green, blue masks: 0x0, 0x0, 0x0</screen>
- <para>The formats listed, such as YUV2 and YUV12, are not
- present with every implementation of XVideo and their absence
- may hinder some players.</para>
+ <para>The formats listed, such as YUV2 and YUV12, are not
+ present with every implementation of XVideo and their
+ absence may hinder some players.</para>
- <para>If the result instead looks like:</para>
+ <para>If the result instead looks like:</para>
- <screen>X-Video Extension version 2.2
+ <screen>X-Video Extension version 2.2
screen #0
no adaptors present</screen>
- <para>XVideo is probably not supported for the card. This means
- that it will be more difficult for the display to meet the
- computational demands of rendering video, depending on the
- video card and processor.</para>
- </sect3>
- </sect2>
-
- <sect2 xml:id="video-ports">
- <title>Ports and Packages Dealing with Video</title>
-
- <indexterm><primary>video ports</primary></indexterm>
- <indexterm><primary>video packages</primary></indexterm>
-
- <para>This section introduces some of the software available from
- the &os; Ports Collection which can be used for video
- playback.</para>
-
- <sect3 xml:id="video-mplayer">
- <title><application>MPlayer</application> and
- <application>MEncoder</application></title>
-
- <para><application>MPlayer</application> is a command-line video
- player with an optional graphical interface which aims to
- provide speed and flexibility. Other graphical front-ends to
- <application>MPlayer</application> are available from the &os;
- Ports Collection.</para>
-
- <indexterm><primary>MPlayer</primary></indexterm>
-
- <para><application>MPlayer</application> can be installed using
- the <package>multimedia/mplayer</package>
- package or port. Several compile options are available and a
- variety of hardware checks occur during the build process.
- For these reasons, some users prefer to build the port rather
- than install the package.</para>
-
- <para>When compiling the port, the menu options should be
- reviewed to determine the type of support to compile into the
- port. If an option is not selected,
- <application>MPlayer</application> will not be able to
- display that type of video format. Use the arrow keys and
- spacebar to select the required formats. When finished,
- press <keycap>Enter</keycap> to continue the port compile
- and installation.</para>
-
- <para>By default, the package or port will build the
- <command>mplayer</command> command line utility and the
- <command>gmplayer</command> graphical utility. To encode
- videos, compile the <package>multimedia/mencoder</package> port. Due to
- licensing restrictions, a package is not available for
- <application>MEncoder</application>.</para>
-
- <para>The first time <application>MPlayer</application> is run,
- it will create <filename>~/.mplayer</filename> in the user's home
- directory. This subdirectory contains default versions of
- the user-specific configuration files.</para>
-
- <para>This section describes only a few common uses. Refer to
- mplayer(1) for a complete description of its numerous
- options.</para>
-
- <para>To play the file
- <filename><replaceable>testfile.avi</replaceable></filename>,
- specify the video interfaces with <option>-vo</option>, as
- seen in the following examples:</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>
-
- <para>It is worth trying all of these options, as their
- relative performance depends on many factors and will vary
- significantly with hardware.</para>
-
- <para>To play a <acronym>DVD</acronym>, replace
- <filename><replaceable>testfile.avi</replaceable></filename>
- with <option>dvd://<replaceable>N</replaceable> -dvd-device
- <replaceable>DEVICE</replaceable></option>, where
- <replaceable>N</replaceable> is the title number to play and
- <replaceable>DEVICE</replaceable> is the device node for the
- <acronym>DVD</acronym>. For example, to play title 3 from
- <filename>/dev/dvd</filename>:</para>
-
- <screen>&prompt.root; <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
-
- <note>
- <para>The default <acronym>DVD</acronym> device can be defined
- during the build of the <application>MPlayer</application>
- port by including the
- <varname>WITH_DVD_DEVICE=/path/to/desired/device</varname>
- option. By default, the device is
- <filename>/dev/cd0</filename>. More details can be found in
- the port's <filename>Makefile.options</filename>.</para>
- </note>
-
- <para>To stop, pause, advance, and so on, use a keybinding. To
- see the list of keybindings, run <command>mplayer
- -h</command> or read mplayer(1).</para>
-
- <para>Additional playback options include <option>-fs
- -zoom</option>, which engages fullscreen mode, and
- <option>-framedrop</option>, which helps performance.</para>
-
- <para>Each user can add commonly used options to their
- <filename>~/.mplayer/config</filename> like so:</para>
+ <para>XVideo is probably not supported for the card. This
+ means that it will be more difficult for the display to meet
+ the computational demands of rendering video, depending on
+ the video card and processor.</para>
+ </sect3>
+ </sect2>
- <programlisting>vo=xv
+ <sect2 xml:id="video-ports">
+ <title>Ports and Packages Dealing with Video</title>
+
+ <indexterm><primary>video ports</primary></indexterm>
+ <indexterm><primary>video packages</primary></indexterm>
+
+ <para>This section introduces some of the software available
+ from the &os; Ports Collection which can be used for video
+ playback.</para>
+
+ <sect3 xml:id="video-mplayer">
+ <title><application>MPlayer</application> and
+ <application>MEncoder</application></title>
+
+ <para><application>MPlayer</application> is a command-line
+ video player with an optional graphical interface which aims
+ to provide speed and flexibility. Other graphical
+ front-ends to <application>MPlayer</application> are
+ available from the &os; Ports Collection.</para>
+
+ <indexterm><primary>MPlayer</primary></indexterm>
+
+ <para><application>MPlayer</application> can be installed
+ using the <package>multimedia/mplayer</package> package or
+ port. Several compile options are available and a variety
+ of hardware checks occur during the build process. For
+ these reasons, some users prefer to build the port rather
+ than install the package.</para>
+
+ <para>When compiling the port, the menu options should be
+ reviewed to determine the type of support to compile into
+ the port. If an option is not selected,
+ <application>MPlayer</application> will not be able to
+ display that type of video format. Use the arrow keys and
+ spacebar to select the required formats. When finished,
+ press <keycap>Enter</keycap> to continue the port compile
+ and installation.</para>
+
+ <para>By default, the package or port will build the
+ <command>mplayer</command> command line utility and the
+ <command>gmplayer</command> graphical utility. To encode
+ videos, compile the <package>multimedia/mencoder</package>
+ port. Due to licensing restrictions, a package is not
+ available for <application>MEncoder</application>.</para>
+
+ <para>The first time <application>MPlayer</application> is
+ run, it will create <filename>~/.mplayer</filename> in the
+ user's home directory. This subdirectory contains default
+ versions of the user-specific configuration files.</para>
+
+ <para>This section describes only a few common uses. Refer to
+ mplayer(1) for a complete description of its numerous
+ options.</para>
+
+ <para>To play the file
+ <filename><replaceable>testfile.avi</replaceable></filename>,
+ specify the video interfaces with <option>-vo</option>, as
+ seen in the following examples:</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>
+
+ <para>It is worth trying all of these options, as their
+ relative performance depends on many factors and will vary
+ significantly with hardware.</para>
+
+ <para>To play a <acronym>DVD</acronym>, replace
+ <filename><replaceable>testfile.avi</replaceable></filename>
+ with <option>dvd://<replaceable>N</replaceable> -dvd-device
+ <replaceable>DEVICE</replaceable></option>, where
+ <replaceable>N</replaceable> is the title number to play and
+ <replaceable>DEVICE</replaceable> is the device node for the
+ <acronym>DVD</acronym>. For example, to play title 3 from
+ <filename>/dev/dvd</filename>:</para>
+
+ <screen>&prompt.root; <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
+
+ <note>
+ <para>The default <acronym>DVD</acronym> device can be
+ defined during the build of the
+ <application>MPlayer</application> port by including the
+ <varname>WITH_DVD_DEVICE=/path/to/desired/device</varname>
+ option. By default, the device is
+ <filename>/dev/cd0</filename>. More details can be found
+ in the port's
+ <filename>Makefile.options</filename>.</para>
+ </note>
+
+ <para>To stop, pause, advance, and so on, use a keybinding.
+ To see the list of keybindings, run <command>mplayer
+ -h</command> or read mplayer(1).</para>
+
+ <para>Additional playback options include <option>-fs
+ -zoom</option>, which engages fullscreen mode, and
+ <option>-framedrop</option>, which helps performance.</para>
+
+ <para>Each user can add commonly used options to their
+ <filename>~/.mplayer/config</filename> like so:</para>
+
+ <programlisting>vo=xv
fs=yes
zoom=yes</programlisting>
- <para><command>mplayer</command> can be used to rip a
- <acronym>DVD</acronym> title to a <filename>.vob</filename>.
- To dump the second title from a <acronym>DVD</acronym>:</para>
+ <para><command>mplayer</command> can be used to rip a
+ <acronym>DVD</acronym> title to a <filename>.vob</filename>.
+ To dump the second title from a
+ <acronym>DVD</acronym>:</para>
- <screen>&prompt.root; <userinput>mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd</userinput></screen>
+ <screen>&prompt.root; <userinput>mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd</userinput></screen>
- <para>The output file, <filename>out.vob</filename>, will be in
- <acronym>MPEG</acronym> format.</para>
+ <para>The output file, <filename>out.vob</filename>, will be
+ in <acronym>MPEG</acronym> format.</para>
- <para>Anyone wishing to obtain a high level of expertise with
- &unix; video should consult <link xlink:href="http://www.mplayerhq.hu/DOCS/">mplayerhq.hu/DOCS</link>
- as it is technically informative. This documentation should
- be considered as required reading before submitting any bug
- reports.</para>
+ <para>Anyone wishing to obtain a high level of expertise with
+ &unix; video should consult <link
+ xlink:href="http://www.mplayerhq.hu/DOCS/">mplayerhq.hu/DOCS</link>
+ as it is technically informative. This documentation should
+ be considered as required reading before submitting any bug
+ reports.</para>
- <indexterm>
- <primary>mencoder</primary>
- </indexterm>
+ <indexterm>
+ <primary>mencoder</primary>
+ </indexterm>
- <para>Before using <command>mencoder</command>, it is a good
- idea to become familiar with the options described at
- <link xlink:href="http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html">mplayerhq.hu/DOCS/HTML/en/mencoder.html</link>.
- There are innumerable ways to improve quality, lower bitrate,
- and change formats, and some of these options may make the
- difference between good or bad performance. Improper
- combinations of command line options can yield output files
- that are unplayable even by <command>mplayer</command>.</para>
+ <para>Before using <command>mencoder</command>, it is a good
+ idea to become familiar with the options described at <link
+ xlink:href="http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html">mplayerhq.hu/DOCS/HTML/en/mencoder.html</link>.
+ There are innumerable ways to improve quality, lower
+ bitrate, and change formats, and some of these options may
+ make the difference between good or bad performance.
+ Improper combinations of command line options can yield
+ output files that are unplayable even by
+ <command>mplayer</command>.</para>
- <para>Here is an example of a simple copy:</para>
+ <para>Here is an example of a simple copy:</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 <replaceable>input.avi</replaceable> -oac copy -ovc copy -o <replaceable>output.avi</replaceable></userinput></screen>
- <para>To rip to a file, use <option>-dumpfile</option> with
- <command>mplayer</command>.</para>
+ <para>To rip to a file, use <option>-dumpfile</option> with
+ <command>mplayer</command>.</para>
- <para>To convert
- <filename><replaceable>input.avi</replaceable></filename> to
- the MPEG4 codec with MPEG3 audio encoding, first install the
- <package>audio/lame</package> port. Due to
- licensing restrictions, a package is not available. Once
- installed, type:</para>
+ <para>To convert
+ <filename><replaceable>input.avi</replaceable></filename> to
+ the MPEG4 codec with MPEG3 audio encoding, first install the
+ <package>audio/lame</package> port. Due to licensing
+ restrictions, a package is not available. Once installed,
+ type:</para>
- <screen>&prompt.user; <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \
+ <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>
- <para>This will produce output playable by applications such as
- <command>mplayer</command> and <command>xine</command>.</para>
-
- <para><filename><replaceable>input.avi</replaceable></filename>
- can be replaced with <option>dvd://1 -dvd-device
- /dev/dvd</option> and run as <systemitem class="username">root</systemitem> to
- re-encode a <acronym>DVD</acronym> title directly. Since it
- may take a few tries to get the desired result, it is
- recommended to instead dump the title to a file and to work on
- the file.</para>
- </sect3>
-
- <sect3 xml:id="video-xine">
- <title>The <application>xine</application> Video Player</title>
-
- <para><application>xine</application> is a video player with a
- reusable base library and a modular executable which can be
- extended with plugins. It can be installed using the
- <package>multimedia/xine</package> package or
- port.</para>
-
- <para>In practice, <application>xine</application> requires
- either a fast CPU with a fast video card, or support for the
- XVideo extension. The <application>xine</application> video
- player performs best on XVideo interfaces.</para>
-
- <para>By default, the <application>xine</application> player
- starts a graphical user interface. The menus can then be used
- to open a specific file.</para>
-
- <para>Alternatively, <application>xine</application> may be
- invoked from the command line
- by specifying the name of the file to play:</para>
-
- <screen>&prompt.user; <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput></screen>
-
- <para>Refer to <link xlink:href="http://www.xine-project.org/faq">
- xine-project.org/faq</link> for more information and
- troubleshooting tips.</para>
- </sect3>
-
- <sect3 xml:id="video-ports-transcode">
- <title>The <application>Transcode</application>
- Utilities</title>
-
- <para><application>Transcode</application> provides a suite of
- tools for re-encoding video and audio files.
- <application>Transcode</application> can be used to merge
- video files or repair broken files using command line tools
- with stdin/stdout stream
- interfaces.</para>
-
- <para>In &os;, <application>Transcode</application> can be
- installed using the <package>multimedia/transcode</package> package or
- port. Many users prefer to compile the port as it provides a
- menu of compile options for specifying the support and codecs
- to compile in. If an option is not selected,
- <application>Transcode</application> will not be able to
- encode that format. Use the arrow keys and spacebar to select
- the required formats. When finished, press
- <keycap>Enter</keycap> to continue the port compile and
- installation.</para>
-
- <para>This example demonstrates how to convert a DivX file into
- a PAL MPEG-1 file (PAL VCD):</para>
-
- <screen>&prompt.user; <userinput>transcode -i
+ <para>This will produce output playable by applications such
+ as <command>mplayer</command> and
+ <command>xine</command>.</para>
+
+ <para><filename><replaceable>input.avi</replaceable></filename>
+ can be replaced with <option>dvd://1 -dvd-device
+ /dev/dvd</option> and run as <systemitem
+ class="username">root</systemitem> to re-encode a
+ <acronym>DVD</acronym> title directly. Since it may take a
+ few tries to get the desired result, it is recommended to
+ instead dump the title to a file and to work on the
+ file.</para>
+ </sect3>
+
+ <sect3 xml:id="video-xine">
+ <title>The <application>xine</application> Video
+ Player</title>
+
+ <para><application>xine</application> is a video player with a
+ reusable base library and a modular executable which can be
+ extended with plugins. It can be installed using the
+ <package>multimedia/xine</package> package or port.</para>
+
+ <para>In practice, <application>xine</application> requires
+ either a fast CPU with a fast video card, or support for the
+ XVideo extension. The <application>xine</application> video
+ player performs best on XVideo interfaces.</para>
+
+ <para>By default, the <application>xine</application> player
+ starts a graphical user interface. The menus can then be
+ used to open a specific file.</para>
+
+ <para>Alternatively, <application>xine</application> may be
+ invoked from the command line by specifying the name of the
+ file to play:</para>
+
+ <screen>&prompt.user; <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput></screen>
+
+ <para>Refer to <link
+ xlink:href="http://www.xine-project.org/faq">
+ xine-project.org/faq</link> for more information and
+ troubleshooting tips.</para>
+ </sect3>
+
+ <sect3 xml:id="video-ports-transcode">
+ <title>The <application>Transcode</application>
+ Utilities</title>
+
+ <para><application>Transcode</application> provides a suite of
+ tools for re-encoding video and audio files.
+ <application>Transcode</application> can be used to merge
+ video files or repair broken files using command line tools
+ with stdin/stdout stream interfaces.</para>
+
+ <para>In &os;, <application>Transcode</application> can be
+ installed using the <package>multimedia/transcode</package>
+ package or port. Many users prefer to compile the port as
+ it provides a menu of compile options for specifying the
+ support and codecs to compile in. If an option is not
+ selected, <application>Transcode</application> will not be
+ able to encode that format. Use the arrow keys and spacebar
+ to select the required formats. When finished, press
+ <keycap>Enter</keycap> to continue the port compile and
+ installation.</para>
+
+ <para>This example demonstrates how to convert a DivX file
+ into a PAL MPEG-1 file (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>
- <para>The resulting <acronym>MPEG</acronym> file,
- <filename><replaceable>output_vcd.mpg</replaceable></filename>,
- is ready to be played with <application>MPlayer</application>.
- The file can be burned on a <acronym>CD</acronym> media to
- create a video <acronym>CD</acronym> using a utility such as
- <package>multimedia/vcdimager</package> or <package>sysutils/cdrdao</package>.</para>
-
- <para>In addition to the manual page for
- <command>transcode</command>, refer to <link xlink:href="http://www.transcoding.org/cgi-bin/transcode">transcoding.org/cgi-bin/transcode</link>
- for further information and examples.</para>
- </sect3>
- </sect2>
-</sect1>
+ <para>The resulting <acronym>MPEG</acronym> file,
+ <filename><replaceable>output_vcd.mpg</replaceable></filename>,
+ is ready to be played with
+ <application>MPlayer</application>. The file can be burned
+ on a <acronym>CD</acronym> media to create a video
+ <acronym>CD</acronym> using a utility such as
+ <package>multimedia/vcdimager</package> or
+ <package>sysutils/cdrdao</package>.</para>
+
+ <para>In addition to the manual page for
+ <command>transcode</command>, refer to <link
+ xlink:href="http://www.transcoding.org/cgi-bin/transcode">transcoding.org/cgi-bin/transcode</link>
+ for further information and examples.</para>
+ </sect3>
+ </sect2>
+ </sect1>
-<sect1 xml:id="tvcard">
- <info>
+ <sect1 xml:id="tvcard">
+ <info>
<title>TV Cards</title>
<authorgroup>
@@ -1158,29 +1178,29 @@ zoom=yes</programlisting>
</authorgroup>
</info>
- <indexterm>
- <primary>TV cards</primary>
- </indexterm>
+ <indexterm>
+ <primary>TV cards</primary>
+ </indexterm>
- <para>TV cards can be used to watch broadcast or cable TV on a
- computer. Most cards accept composite video via an
- <acronym>RCA</acronym> or S-video input and some cards include a
- <acronym>FM</acronym> radio tuner.</para>
+ <para>TV cards can be used to watch broadcast or cable TV on a
+ computer. Most cards accept composite video via an
+ <acronym>RCA</acronym> or S-video input and some cards include a
+ <acronym>FM</acronym> radio tuner.</para>
- <para>&os; provides support for PCI-based TV cards using a
- Brooktree Bt848/849/878/879 video capture chip with the
- &man.bktr.4; driver. This driver supports most Pinnacle PCTV
- video cards. Before purchasing a TV card, consult &man.bktr.4; for
- a list of supported tuners.</para>
+ <para>&os; provides support for PCI-based TV cards using a
+ Brooktree Bt848/849/878/879 video capture chip with the
+ &man.bktr.4; driver. This driver supports most Pinnacle PCTV
+ video cards. Before purchasing a TV card, consult &man.bktr.4;
+ for a list of supported tuners.</para>
- <sect2>
- <title>Loading the Driver</title>
+ <sect2>
+ <title>Loading the Driver</title>
- <para>In order to use the card, the &man.bktr.4; driver must be
- loaded. To automate this at boot time, add the following line
- to <filename>/boot/loader.conf</filename>:</para>
+ <para>In order to use the card, the &man.bktr.4; driver must be
+ loaded. To automate this at boot time, add the following line
+ to <filename>/boot/loader.conf</filename>:</para>
- <programlisting>bktr_load="YES"</programlisting>
+ <programlisting>bktr_load="YES"</programlisting>
<para>Alternatively, one can statically compile support for
the TV card into a custom kernel. In that case, add the
@@ -1207,12 +1227,12 @@ iicbus1: &lt;Philips I2C bus&gt; on iicbb0 master-only
smbus0: &lt;System Management Bus&gt; on bti2c0
bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
- <para>The messages will differ according to the hardware.
- If necessary, it is possible to override some of the detected
+ <para>The messages will differ according to the hardware. If
+ necessary, it is possible to override some of the detected
parameters using &man.sysctl.8; or custom kernel configuration
- options. For example, to force the tuner to a Philips
- SECAM tuner, add the following line to a custom kernel
- configuration file:</para>
+ options. For example, to force the tuner to a Philips SECAM
+ tuner, add the following line to a custom kernel configuration
+ file:</para>
<programlisting>options OVERRIDE_TUNER=6</programlisting>
@@ -1257,9 +1277,8 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<para>If any problems are encountered with the TV card, check
that the video capture chip and the tuner are supported by
&man.bktr.4; and that the right configuration options were
- used. For more support or to ask questions
- about supported TV cards, refer to the
- &a.multimedia.name; mailing list.</para>
+ used. For more support or to ask questions about supported TV
+ cards, refer to the &a.multimedia.name; mailing list.</para>
</sect2>
</sect1>
@@ -1268,27 +1287,29 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<para>MythTV is a popular, open source Personal Video Recorder
(<acronym>PVR</acronym>) application. This section demonstrates
- how to install and setup MythTV on &os;. Refer to <link xlink:href="http://www.mythtv.org/wiki/">mythtv.org/wiki</link> for
- more information on how to use MythTV.</para>
-
- <para>MythTV requires a frontend and a backend. These
- components can either be installed on the same system or on
- different machines.</para>
-
- <para>The frontend can be installed on &os; using the <package>multimedia/mythtv-frontend</package> package
- or port. <application>&xorg;</application> must also be
- installed and configured as described in <xref linkend="x11"/>. Ideally, this system has a video card that
- supports X-Video Motion Compensation
- (<acronym>XvMC</acronym>) and, optionally, a Linux Infrared
- Remote Control (<acronym>LIRC</acronym>)-compatible
+ how to install and setup MythTV on &os;. Refer to <link
+ xlink:href="http://www.mythtv.org/wiki/">mythtv.org/wiki</link>
+ for more information on how to use MythTV.</para>
+
+ <para>MythTV requires a frontend and a backend. These components
+ can either be installed on the same system or on different
+ machines.</para>
+
+ <para>The frontend can be installed on &os; using the
+ <package>multimedia/mythtv-frontend</package> package or port.
+ <application>&xorg;</application> must also be installed and
+ configured as described in <xref linkend="x11"/>. Ideally, this
+ system has a video card that supports X-Video Motion
+ Compensation (<acronym>XvMC</acronym>) and, optionally, a Linux
+ Infrared Remote Control (<acronym>LIRC</acronym>)-compatible
remote.</para>
<para>To install both the backend and the frontend on &os;, use
- the <package>multimedia/mythtv</package>
- package or port. A &mysql; database server is also required
- and should automatically be installed as a dependency.
- Optionally, this system should have a tuner card and
- sufficient storage to hold recorded data.</para>
+ the <package>multimedia/mythtv</package> package or port. A
+ &mysql; database server is also required and should
+ automatically be installed as a dependency. Optionally, this
+ system should have a tuner card and sufficient storage to hold
+ recorded data.</para>
<sect2>
<title>Hardware</title>
@@ -1296,20 +1317,24 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<para>MythTV uses Video for Linux (<acronym>V4L</acronym>) to
access video input devices such as encoders and tuners. In
&os;, MythTV works best with <acronym>USB</acronym> DVB-S/C/T
- cards as they are well supported by the <package>multimedia/webcamd</package> package or port
- which provides a <acronym>V4L</acronym> userland application.
- Any Digital Video Broadcasting (<acronym>DVB</acronym>) card
+ cards as they are well supported by the
+ <package>multimedia/webcamd</package> package or port which
+ provides a <acronym>V4L</acronym> userland application. Any
+ Digital Video Broadcasting (<acronym>DVB</acronym>) card
supported by <application>webcamd</application> should work
with MythTV. A list of known working cards can be found at
- <link xlink:href="http://wiki.freebsd.org/WebcamCompat">wiki.freebsd.org/WebcamCompat</link>.
+ <link
+ xlink:href="http://wiki.freebsd.org/WebcamCompat">wiki.freebsd.org/WebcamCompat</link>.
Drivers are also available for Hauppauge cards in the
- <package>multimedia/pvr250</package> and <package>multimedia/pvrxxx</package> ports, but they
- provide a non-standard driver interface that does not work
- with versions of MythTV greater than 0.23. Due to licensing
- restrictions, no packages are available and these two ports
- must be compiled.</para>
-
- <para>The <link xlink:href="http://wiki.freebsd.org/HTPC">wiki.freebsd.org/HTPC</link>
+ <package>multimedia/pvr250</package> and
+ <package>multimedia/pvrxxx</package> ports, but they provide a
+ non-standard driver interface that does not work with versions
+ of MythTV greater than 0.23. Due to licensing restrictions,
+ no packages are available and these two ports must be
+ compiled.</para>
+
+ <para>The <link
+ xlink:href="http://wiki.freebsd.org/HTPC">wiki.freebsd.org/HTPC</link>
page contains a list of all available <acronym>DVB</acronym>
drivers.</para>
</sect2>
@@ -1359,115 +1384,117 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
<para>In &os;, access to image scanners is provided by
<application>SANE</application> (Scanner Access Now Easy), which
is available in the &os; Ports Collection.
- <application>SANE</application> will also use
- some &os; device drivers to provide access to the scanner
- hardware.</para>
+ <application>SANE</application> will also use some &os; device
+ drivers to provide access to the scanner hardware.</para>
<para>&os; supports both <acronym>SCSI</acronym> and
- <acronym>USB</acronym> scanners. Depending
- upon the scanner interface, different device drivers are
- required. Be sure the
+ <acronym>USB</acronym> scanners. Depending upon the scanner
+ interface, different device drivers are required. Be sure the
scanner is supported by <application>SANE</application> prior
- to performing any configuration. Refer to <link xlink:href="http://www.sane-project.org/sane-supported-devices.html">
+ to performing any configuration. Refer to <link
+ xlink:href="http://www.sane-project.org/sane-supported-devices.html">
http://www.sane-project.org/sane-supported-devices.html</link>
- for more information about
- supported scanners.</para>
+ for more information about supported scanners.</para>
<para>This chapter describes how to determine if the scanner has
been detected by &os;. It then provides an overview of how to
configure and use <application>SANE</application> on a &os;
system.</para>
- <sect2 xml:id="scanners-kernel-usb">
- <title>Checking the Scanner</title>
+ <sect2 xml:id="scanners-kernel-usb">
+ <title>Checking the Scanner</title>
- <para>The <filename>GENERIC</filename> kernel
- includes the device drivers needed to support <acronym>USB</acronym> scanners.
- Users with a custom kernel should ensure that the following
- lines are present in the custom kernel configuration
- file:</para>
+ <para>The <filename>GENERIC</filename> kernel includes the
+ device drivers needed to support <acronym>USB</acronym>
+ scanners. Users with a custom kernel should ensure that the
+ following lines are present in the custom kernel configuration
+ file:</para>
- <programlisting>device usb
+ <programlisting>device usb
device uhci
device ohci
device ehci</programlisting>
- <para>To determine if the <acronym>USB</acronym> scanner is
- detected, plug it in and use <command>dmesg</command> to determine
- whether the scanner appears in the system message
- buffer. If it does, it should display a message similar to
- this:</para>
-
- <screen>ugen0.2: &lt;EPSON&gt; at usbus0</screen>
-
- <para>In this example, an &epson.perfection;&nbsp;1650
- <acronym>USB</acronym> scanner was detected on
- <filename>/dev/ugen0.2</filename>.</para>
-
- <para>If the scanner uses a <acronym>SCSI</acronym> interface, it is important to
- know which <acronym>SCSI</acronym> controller board it will use. Depending
- upon the <acronym>SCSI</acronym> chipset, a custom kernel configuration file
- may be needed. The <filename>GENERIC</filename> kernel
- supports the most common <acronym>SCSI</acronym> controllers. Refer to
- <filename>/usr/src/sys/conf/NOTES</filename> to determine
- the correct line to add to a custom kernel configuration
- file. In addition to the <acronym>SCSI</acronym> adapter driver, the following
- lines are needed in a custom kernel configuration file:</para>
-
- <programlisting>device scbus
+ <para>To determine if the <acronym>USB</acronym> scanner is
+ detected, plug it in and use <command>dmesg</command> to
+ determine whether the scanner appears in the system message
+ buffer. If it does, it should display a message similar to
+ this:</para>
+
+ <screen>ugen0.2: &lt;EPSON&gt; at usbus0</screen>
+
+ <para>In this example, an &epson.perfection;&nbsp;1650
+ <acronym>USB</acronym> scanner was detected on
+ <filename>/dev/ugen0.2</filename>.</para>
+
+ <para>If the scanner uses a <acronym>SCSI</acronym> interface,
+ it is important to know which <acronym>SCSI</acronym>
+ controller board it will use. Depending upon the
+ <acronym>SCSI</acronym> chipset, a custom kernel configuration
+ file may be needed. The <filename>GENERIC</filename> kernel
+ supports the most common <acronym>SCSI</acronym> controllers.
+ Refer to <filename>/usr/src/sys/conf/NOTES</filename> to
+ determine the correct line to add to a custom kernel
+ configuration file. In addition to the
+ <acronym>SCSI</acronym> adapter driver, the following lines
+ are needed in a custom kernel configuration file:</para>
+
+ <programlisting>device scbus
device pass</programlisting>
- <para>Verify that the device is displayed in the system
- message buffer:</para>
+ <para>Verify that the device is displayed in the system message
+ buffer:</para>
- <screen>pass2 at aic0 bus 0 target 2 lun 0
+ <screen>pass2 at aic0 bus 0 target 2 lun 0
pass2: &lt;AGFA SNAPSCAN 600 1.10&gt; Fixed Scanner SCSI-2 device
pass2: 3.300MB/s transfers</screen>
- <para>If the scanner was not powered-on at system boot, it
- is still possible to manually force detection by
- performing a <acronym>SCSI</acronym> bus scan with
- <command>camcontrol</command>:</para>
+ <para>If the scanner was not powered-on at system boot, it is
+ still possible to manually force detection by performing a
+ <acronym>SCSI</acronym> bus scan with
+ <command>camcontrol</command>:</para>
- <screen>&prompt.root; <userinput>camcontrol rescan all</userinput>
+ <screen>&prompt.root; <userinput>camcontrol rescan all</userinput>
Re-scan of bus 0 was successful
Re-scan of bus 1 was successful
Re-scan of bus 2 was successful
Re-scan of bus 3 was successful</screen>
- <para>The scanner should now appear in the <acronym>SCSI</acronym> devices
- list:</para>
+ <para>The scanner should now appear in the
+ <acronym>SCSI</acronym> devices list:</para>
- <screen>&prompt.root; <userinput>camcontrol devlist</userinput>
+ <screen>&prompt.root; <userinput>camcontrol devlist</userinput>
&lt;IBM DDRS-34560 S97B&gt; at scbus0 target 5 lun 0 (pass0,da0)
&lt;IBM DDRS-34560 S97B&gt; at scbus0 target 6 lun 0 (pass1,da1)
&lt;AGFA SNAPSCAN 600 1.10&gt; at scbus1 target 2 lun 0 (pass3)
&lt;PHILIPS CDD3610 CD-R/RW 1.00&gt; at scbus2 target 0 lun 0 (pass2,cd0)</screen>
- <para>Refer to &man.scsi.4; and &man.camcontrol.8; for more
- details about <acronym>SCSI</acronym> devices on &os;.</para>
+ <para>Refer to &man.scsi.4; and &man.camcontrol.8; for more
+ details about <acronym>SCSI</acronym> devices on &os;.</para>
</sect2>
<sect2>
<title><application>SANE</application> Configuration</title>
<para>The <application>SANE</application> system is split in two
- parts: the backends (<package>graphics/sane-backends</package>) and the
- frontends (<package>graphics/sane-frontends</package> or
- <package>graphics/xsane</package>). The
- backends provide access to the scanner. Refer to
- <link xlink:href="http://www.sane-project.org/sane-supported-devices.html">http://www.sane-project.org/sane-supported-devices.html</link>
- to determine which backend supports the
- scanner. The frontends provide the graphical scanning
- interface. <package>graphics/sane-frontends</package>
- installs <application>xscanimage</application> while
+ parts: the backends
+ (<package>graphics/sane-backends</package>) and the frontends
+ (<package>graphics/sane-frontends</package> or
+ <package>graphics/xsane</package>). The backends provide
+ access to the scanner. Refer to <link
+ xlink:href="http://www.sane-project.org/sane-supported-devices.html">http://www.sane-project.org/sane-supported-devices.html</link>
+ to determine which backend supports the scanner. The
+ frontends provide the graphical scanning interface.
+ <package>graphics/sane-frontends</package> installs
+ <application>xscanimage</application> while
<package>graphics/xsane</package> installs
<application>xsane</application>.</para>
- <para>After installing the <package>graphics/sane-backends</package> port or
- package, use <command>sane-find-scanner</command> to check the
- scanner detection by the
- <application>SANE</application> system:</para>
+ <para>After installing the
+ <package>graphics/sane-backends</package> port or package, use
+ <command>sane-find-scanner</command> to check the scanner
+ detection by the <application>SANE</application>
+ system:</para>
<screen>&prompt.root; <userinput>sane-find-scanner -q</userinput>
found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3</screen>
@@ -1477,18 +1504,17 @@ found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3</screen>
The vendor and the product model may or may not appear.</para>
<note>
- <para>Some <acronym>USB</acronym> scanners require firmware to be loaded. Refer
- to sane-find-scanner(1) and sane(7) for
+ <para>Some <acronym>USB</acronym> scanners require firmware to
+ be loaded. Refer to sane-find-scanner(1) and sane(7) for
details.</para>
</note>
<para>Next, check if the scanner will be identified by a
- scanning frontend. The
- <application>SANE</application> backends include
- <command>scanimage</command> which can be used
- to list the devices and perform an image acquisition. Use
- <option>-L</option> to list the scanner devices. The first
- example is for a <acronym>SCSI</acronym> scanner and the
+ scanning frontend. The <application>SANE</application>
+ backends include <command>scanimage</command> which can be
+ used to list the devices and perform an image acquisition.
+ Use <option>-L</option> to list the scanner devices. The
+ first example is for a <acronym>SCSI</acronym> scanner and the
second is for a <acronym>USB</acronym> scanner:</para>
<screen>&prompt.root; <userinput>scanimage -L</userinput>
@@ -1502,91 +1528,90 @@ device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner<
<literal>/dev/ugen0.2</literal> is the device node used by the
scanner.</para>
- <para>If <command>scanimage</command> is unable to
- identify the scanner, this message will appear:</para>
+ <para>If <command>scanimage</command> is unable to identify the
+ scanner, this message will appear:</para>
- <screen>&prompt.root; <userinput>scanimage -L</userinput>
+ <screen>&prompt.root; <userinput>scanimage -L</userinput>
No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).</screen>
- <para>If this happens, edit the backend
- configuration file in <filename>/usr/local/etc/sane.d/</filename>
- and define the scanner device used. For example, if the undetected scanner model is
- an &epson.perfection;&nbsp;1650 and it uses the
+ <para>If this happens, edit the backend configuration file in
+ <filename>/usr/local/etc/sane.d/</filename> and define the
+ scanner device used. For example, if the undetected scanner
+ model is an &epson.perfection;&nbsp;1650 and it uses the
<literal>epson2</literal> backend, edit
- <filename>/usr/local/etc/sane.d/epson2.conf</filename>.
- When editing, add a line specifying the interface and the
- device node used. In this case, add the following
- line:</para>
+ <filename>/usr/local/etc/sane.d/epson2.conf</filename>. When
+ editing, add a line specifying the interface and the device
+ node used. In this case, add the following line:</para>
<programlisting>usb /dev/ugen0.2</programlisting>
- <para>Save the edits and verify that the scanner is
- identified with the right backend name and the device node:</para>
+ <para>Save the edits and verify that the scanner is identified
+ with the right backend name and the device node:</para>
<screen>&prompt.root; <userinput>scanimage -L</userinput>
device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner</screen>
- <para>Once <command>scanimage -L</command> sees the scanner, the
- configuration is complete and the scanner is now ready to
- use.</para>
-
- <para>While <command>scanimage</command> can be used to perform an image
- acquisition from the command line, it is often preferable to
- use a graphical interface to perform image scanning. The
- <package>graphics/sane-frontends</package>
- package or port installs a simple but efficient graphical
- interface, <application>xscanimage</application>.</para>
-
- <para>Alternately, <application>xsane</application>, which is installed with
- the <package>graphics/xsane</package> package
- or port, is another popular graphical scanning frontend. It
- offers advanced features such as various scanning modes, color
- correction, and batch scans. Both of these applications are
- usable as a <application>GIMP</application> plugin.</para>
- </sect2>
+ <para>Once <command>scanimage -L</command> sees the scanner, the
+ configuration is complete and the scanner is now ready to
+ use.</para>
+
+ <para>While <command>scanimage</command> can be used to perform
+ an image acquisition from the command line, it is often
+ preferable to use a graphical interface to perform image
+ scanning. The <package>graphics/sane-frontends</package>
+ package or port installs a simple but efficient graphical
+ interface, <application>xscanimage</application>.</para>
+
+ <para>Alternately, <application>xsane</application>, which is
+ installed with the <package>graphics/xsane</package> package
+ or port, is another popular graphical scanning frontend. It
+ offers advanced features such as various scanning modes, color
+ correction, and batch scans. Both of these applications are
+ usable as a <application>GIMP</application> plugin.</para>
+ </sect2>
- <sect2>
- <title>Scanner Permissions</title>
-
- <para>In order to have access to the scanner, a user needs
- read and write permissions to the device node used by the
- scanner. In the previous example, the <acronym>USB</acronym> scanner uses the
- device node <filename>/dev/ugen0.2</filename> which is really a
- symlink to the real device node
- <filename>/dev/usb/0.2.0</filename>. The symlink and the device
- node are owned, respectively, by the
- <systemitem class="groupname">wheel</systemitem> and
- <systemitem class="groupname">operator</systemitem> groups. While adding the user to
- these groups will allow access to the scanner, it is considered insecure to
- add a user
- to <systemitem class="groupname">wheel</systemitem>. A better
- solution is to create a group and make the scanner device
- accessible to members of this group.</para>
-
- <para>This example creates a group called
- <systemitem class="groupname"><replaceable>usb</replaceable></systemitem>:</para>
-
- <screen>&prompt.root; <userinput>pw groupadd usb</userinput></screen>
+ <sect2>
+ <title>Scanner Permissions</title>
+
+ <para>In order to have access to the scanner, a user needs read
+ and write permissions to the device node used by the scanner.
+ In the previous example, the <acronym>USB</acronym> scanner
+ uses the device node <filename>/dev/ugen0.2</filename> which
+ is really a symlink to the real device node
+ <filename>/dev/usb/0.2.0</filename>. The symlink and the
+ device node are owned, respectively, by the <systemitem
+ class="groupname">wheel</systemitem> and <systemitem
+ class="groupname">operator</systemitem> groups. While
+ adding the user to these groups will allow access to the
+ scanner, it is considered insecure to add a user to
+ <systemitem class="groupname">wheel</systemitem>. A better
+ solution is to create a group and make the scanner device
+ accessible to members of this group.</para>
+
+ <para>This example creates a group called <systemitem
+ class="groupname"><replaceable>usb</replaceable></systemitem>:</para>
+
+ <screen>&prompt.root; <userinput>pw groupadd usb</userinput></screen>
<para>Then, make the <filename>/dev/ugen0.2</filename> symlink
and the <filename>/dev/usb/0.2.0</filename> device node
- accessible to the <systemitem class="groupname">usb</systemitem> group with write
+ accessible to the <systemitem
+ class="groupname">usb</systemitem> group with write
permissions of <literal>0660</literal> or
- <literal>0664</literal> by adding the
- following lines to
+ <literal>0664</literal> by adding the following lines to
<filename>/etc/devfs.rules</filename>:</para>
<programlisting>[system=5]
add path ugen0.2 mode 0660 group usb
add path usb/0.2.0 mode 0666 group usb</programlisting>
- <para>Finally, add the users to
- <systemitem class="groupname"><replaceable>usb</replaceable></systemitem> in order
- to allow access to the scanner:</para>
+ <para>Finally, add the users to <systemitem
+ class="groupname"><replaceable>usb</replaceable></systemitem>
+ in order to allow access to the scanner:</para>
<screen>&prompt.root; <userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput></screen>