White space fix only. Translators can ignore.
This commit is contained in:
parent
284cef26f2
commit
ae58ead198
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=43037
1 changed files with 353 additions and 340 deletions
|
@ -32,9 +32,10 @@
|
||||||
recorded audio, adding sound effects, and controlling attached
|
recorded audio, adding sound effects, and controlling attached
|
||||||
MIDI devices.</para>
|
MIDI devices.</para>
|
||||||
|
|
||||||
<para>&os; also supports the playback of video files and <acronym>DVD</acronym>s.
|
<para>&os; also supports the playback of video files and
|
||||||
The &os; Ports Collection contains applications to encode,
|
<acronym>DVD</acronym>s. The &os; Ports Collection contains
|
||||||
convert, and playback various video media.</para>
|
applications to encode, convert, and playback various video
|
||||||
|
media.</para>
|
||||||
|
|
||||||
<para>This chapter describes how to configure sound cards, video
|
<para>This chapter describes how to configure sound cards, video
|
||||||
playback, TV tuner cards, and scanners on &os;. It also
|
playback, TV tuner cards, and scanners on &os;. It also
|
||||||
|
@ -61,12 +62,13 @@
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Play <acronym>DVD</acronym>s, <filename>.mpg</filename>, and
|
<para>Play <acronym>DVD</acronym>s, <filename>.mpg</filename>,
|
||||||
<filename>.avi</filename> files.</para>
|
and <filename>.avi</filename> files.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Rip CD and <acronym>DVD</acronym> content into files.</para>
|
<para>Rip CD and <acronym>DVD</acronym> content into
|
||||||
|
files.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -87,7 +89,7 @@
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem><para>Know how to install applications as described in
|
<listitem><para>Know how to install applications as described in
|
||||||
<xref linkend="ports"/>.</para></listitem>
|
<xref linkend="ports"/>.</para></listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="sound-setup">
|
<sect1 id="sound-setup">
|
||||||
|
@ -112,25 +114,25 @@
|
||||||
|
|
||||||
<title>Setting Up the Sound Card</title>
|
<title>Setting Up the Sound Card</title>
|
||||||
|
|
||||||
<indexterm><primary>PCI</primary></indexterm>
|
<indexterm><primary>PCI</primary></indexterm>
|
||||||
<indexterm><primary>sound cards</primary></indexterm>
|
<indexterm><primary>sound cards</primary></indexterm>
|
||||||
<para>Before beginning the configuration, determine the model of
|
<para>Before beginning the configuration, determine the model of
|
||||||
the sound card and the chip it uses. &os; supports a wide
|
the sound card and the chip it uses. &os; supports a wide
|
||||||
variety of sound cards. Check the supported audio devices
|
variety of sound cards. Check the supported audio devices
|
||||||
list of the <ulink url="&rel.current.hardware;">Hardware
|
list of the <ulink url="&rel.current.hardware;">Hardware
|
||||||
Notes</ulink> to see if the card is supported and which &os;
|
Notes</ulink> to see if the card is supported and which &os;
|
||||||
driver it uses.</para>
|
driver it uses.</para>
|
||||||
|
|
||||||
<indexterm>
|
<indexterm>
|
||||||
<primary>kernel</primary>
|
<primary>kernel</primary>
|
||||||
<secondary>configuration</secondary>
|
<secondary>configuration</secondary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<para>In order to use the sound device, its device driver
|
<para>In order to use the sound device, its device driver must be
|
||||||
must be loaded.
|
loaded. The easiest way is to load a kernel module for the
|
||||||
The easiest way is to load a kernel module for the sound card
|
sound card with &man.kldload.8;. This example loads the driver
|
||||||
with &man.kldload.8;. This example loads the driver for a
|
for a built-in audio chipset based on the Intel
|
||||||
built-in audio chipset based on the Intel specification:</para>
|
specification:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>kldload snd_hda</userinput></screen>
|
<screen>&prompt.root; <userinput>kldload snd_hda</userinput></screen>
|
||||||
|
|
||||||
|
@ -157,23 +159,24 @@
|
||||||
after loading the <filename>snd_driver</filename> metadriver,
|
after loading the <filename>snd_driver</filename> metadriver,
|
||||||
type <command>cat /dev/sndstat</command>.</para>
|
type <command>cat /dev/sndstat</command>.</para>
|
||||||
|
|
||||||
<sect2>
|
<sect2>
|
||||||
<title>Configuring a Custom Kernel with Sound Support</title>
|
<title>Configuring a Custom Kernel with Sound Support</title>
|
||||||
|
|
||||||
<para>This section is for users who prefer to statically compile in support for the
|
<para>This section is for users who prefer to statically compile
|
||||||
sound card in a custom kernel. For more information about recompiling a
|
in support for the sound card in a custom kernel. For more
|
||||||
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
|
<para>When using a custom kernel to provide sound support, make
|
||||||
sure that the audio framework driver exists in the custom kernel
|
sure that the audio framework driver exists in the custom
|
||||||
configuration file:</para>
|
kernel configuration file:</para>
|
||||||
|
|
||||||
<programlisting>device sound</programlisting>
|
<programlisting>device sound</programlisting>
|
||||||
|
|
||||||
<para>Next, add support for the sound card. To continue the example
|
<para>Next, add support for the sound card. To continue the
|
||||||
of the built-in audio chipset based on the Intel specification from the
|
example of the built-in audio chipset based on the Intel
|
||||||
previous section, use the following line in the custom kernel
|
specification from the previous section, use the following
|
||||||
configuration file:</para>
|
line in the custom kernel configuration file:</para>
|
||||||
|
|
||||||
<programlisting>device snd_hda</programlisting>
|
<programlisting>device snd_hda</programlisting>
|
||||||
|
|
||||||
|
@ -215,69 +218,71 @@ hint.sbc.0.flags="0x15"</programlisting>
|
||||||
cases, the IRQ or other settings may need to be changed to
|
cases, the IRQ or other settings may need to be changed to
|
||||||
match the card. Refer to &man.snd.sbc.4; for more information
|
match the card. Refer to &man.snd.sbc.4; for more information
|
||||||
about this card.</para>
|
about this card.</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 id="sound-testing">
|
<sect2 id="sound-testing">
|
||||||
<title>Testing Sound</title>
|
<title>Testing Sound</title>
|
||||||
|
|
||||||
<para>After loading
|
<para>After loading the required module or rebooting into the
|
||||||
the required module or rebooting into the custom kernel,
|
custom kernel, the sound card should be detected. To confirm,
|
||||||
the sound card should be detected.
|
run <command>dmesg | grep pcm</command>. This example is
|
||||||
To confirm, run <command>dmesg | grep pcm</command>. This
|
from a system with a built-in Conexant CX20590 chipset:</para>
|
||||||
example is from a system with a built-in Conexant CX20590 chipset:</para>
|
|
||||||
|
|
||||||
<screen>pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 5 on hdaa0
|
<screen>pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 5 on hdaa0
|
||||||
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 6 on hdaa0
|
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 6 on hdaa0
|
||||||
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> at nid 31,25 and 35,27 on hdaa1</screen>
|
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> at nid 31,25 and 35,27 on hdaa1</screen>
|
||||||
|
|
||||||
<para>The status of the sound card may also be checked using this
|
<para>The status of the sound card may also be checked using
|
||||||
command:</para>
|
this command:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>cat /dev/sndstat</userinput>
|
<screen>&prompt.root; <userinput>cat /dev/sndstat</userinput>
|
||||||
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
|
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
|
||||||
Installed devices:
|
Installed devices:
|
||||||
pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
|
pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
|
||||||
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
|
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
|
||||||
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen>
|
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen>
|
||||||
|
|
||||||
<para>The output will vary depending upon the sound card. If no
|
<para>The output will vary depending upon the sound card. If no
|
||||||
<devicename>pcm</devicename> devices are listed, double-check that the correct
|
<devicename>pcm</devicename> devices are listed, double-check
|
||||||
device driver was loaded or compiled into the kernel. The
|
that the correct device driver was loaded or compiled into the
|
||||||
next section lists some common problems and their solutions.</para>
|
kernel. The next section lists some common problems and their
|
||||||
|
solutions.</para>
|
||||||
|
|
||||||
<para>If all goes well, the sound card should now work in os;. If
|
<para>If all goes well, the sound card should now work in os;.
|
||||||
the <acronym>CD</acronym> or <acronym>DVD</acronym> drive is properly
|
If the <acronym>CD</acronym> or <acronym>DVD</acronym> drive
|
||||||
connected to the sound card, one can insert an audio CD in the
|
is properly connected to the sound card, one can insert an
|
||||||
drive and play it with &man.cdcontrol.1;:</para>
|
audio CD in the drive and play it with
|
||||||
|
&man.cdcontrol.1;:</para>
|
||||||
|
|
||||||
<screen>&prompt.user; <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>
|
<screen>&prompt.user; <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>
|
||||||
|
|
||||||
<warning>
|
<warning>
|
||||||
<para>Audio CDs have specialized encodings which means that they should not be
|
<para>Audio CDs have specialized encodings which means that
|
||||||
mounted using &man.mount.8;.</para>
|
they should not be mounted using &man.mount.8;.</para>
|
||||||
</warning>
|
</warning>
|
||||||
|
|
||||||
<para>Various applications, such as <filename
|
|
||||||
role="package">audio/workman</filename>, provide a friendlier
|
|
||||||
interface. The <filename role="package">audio/mpg123</filename>
|
|
||||||
port can be installed to listen to MP3 audio files.</para>
|
|
||||||
|
|
||||||
<para>Another quick way to test the card is to send data to
|
<para>Various applications, such as <filename
|
||||||
<devicename>/dev/dsp</devicename>:</para>
|
role="package">audio/workman</filename>, provide a
|
||||||
|
friendlier interface. The <filename
|
||||||
|
role="package">audio/mpg123</filename> port can be installed
|
||||||
|
to listen to MP3 audio files.</para>
|
||||||
|
|
||||||
<screen>&prompt.user; <userinput>cat <replaceable>filename</replaceable> > /dev/dsp</userinput></screen>
|
<para>Another quick way to test the card is to send data to
|
||||||
|
<devicename>/dev/dsp</devicename>:</para>
|
||||||
|
|
||||||
<para>where
|
<screen>&prompt.user; <userinput>cat <replaceable>filename</replaceable> > /dev/dsp</userinput></screen>
|
||||||
<filename><replaceable>filename</replaceable></filename> can
|
|
||||||
be any type of file. This command should produce some noise, confirming
|
|
||||||
that the sound card is working.</para>
|
|
||||||
|
|
||||||
<note>
|
<para>where
|
||||||
<para>The <devicename>/dev/dsp*</devicename> device nodes will
|
<filename><replaceable>filename</replaceable></filename> can
|
||||||
be created automatically as needed. When not in use, they
|
be any type of file. This command should produce some noise,
|
||||||
do not exist and will not appear in the output of
|
confirming that the sound card is working.</para>
|
||||||
&man.ls.1;.</para>
|
|
||||||
</note>
|
<note>
|
||||||
|
<para>The <devicename>/dev/dsp*</devicename> device nodes will
|
||||||
|
be created automatically as needed. When not in use, they
|
||||||
|
do not exist and will not appear in the output of
|
||||||
|
&man.ls.1;.</para>
|
||||||
|
</note>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 id="troubleshooting">
|
<sect2 id="troubleshooting">
|
||||||
|
@ -292,7 +297,8 @@ pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen>
|
||||||
solutions:</para>
|
solutions:</para>
|
||||||
|
|
||||||
<table frame="none" pgwide="1">
|
<table frame="none" pgwide="1">
|
||||||
<title>Common Error Messages</title>
|
<title>Common Error Messages</title>
|
||||||
|
|
||||||
<tgroup cols="2">
|
<tgroup cols="2">
|
||||||
<thead>
|
<thead>
|
||||||
<row>
|
<row>
|
||||||
|
@ -327,8 +333,8 @@ pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen>
|
||||||
<entry><errorname>xxx: can't open
|
<entry><errorname>xxx: can't open
|
||||||
/dev/dsp!</errorname></entry>
|
/dev/dsp!</errorname></entry>
|
||||||
<entry><para>Type <command>fstat | grep
|
<entry><para>Type <command>fstat | grep
|
||||||
dsp</command> to check if another application is holding the
|
dsp</command> to check if another application is
|
||||||
device open. Noteworthy troublemakers are
|
holding the device open. Noteworthy troublemakers are
|
||||||
<application>esound</application> and
|
<application>esound</application> and
|
||||||
<application>KDE</application>'s sound
|
<application>KDE</application>'s sound
|
||||||
support.</para></entry>
|
support.</para></entry>
|
||||||
|
@ -337,11 +343,10 @@ pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default</screen>
|
||||||
</tgroup>
|
</tgroup>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<para>Modern graphics cards often come
|
<para>Modern graphics cards often come with their own sound
|
||||||
with their own sound driver for use with
|
driver for use with <acronym>HDMI</acronym>. This sound
|
||||||
<acronym>HDMI</acronym>. This sound device is
|
device is sometimes enumerated before the sound card meaning
|
||||||
sometimes enumerated before the sound card meaning that the sound
|
that the sound card will not be used as the default playback
|
||||||
card will not be used as the default playback
|
|
||||||
device. To check if this is the case, run
|
device. To check if this is the case, run
|
||||||
<application>dmesg</application> and look for
|
<application>dmesg</application> and look for
|
||||||
<literal>pcm</literal>. The output looks something like
|
<literal>pcm</literal>. The output looks something like
|
||||||
|
@ -365,11 +370,12 @@ pcm6: <HDA Realtek ALC889 PCM #2 Digital> at cad 2 nid 1 on hdac1
|
||||||
pcm7: <HDA Realtek ALC889 PCM #3 Digital> at cad 2 nid 1 on hdac1
|
pcm7: <HDA Realtek ALC889 PCM #3 Digital> at cad 2 nid 1 on hdac1
|
||||||
...</programlisting>
|
...</programlisting>
|
||||||
|
|
||||||
<para>In this example, the graphics card (<literal>NVidia</literal>) has
|
<para>In this example, the graphics card
|
||||||
been enumerated before the sound card (<literal>Realtek
|
(<literal>NVidia</literal>) has been enumerated before the
|
||||||
ALC889</literal>). To use the sound card as the default
|
sound card (<literal>Realtek ALC889</literal>). To use the
|
||||||
playback device, change <varname>hw.snd.default_unit</varname>
|
sound card as the default playback device, change
|
||||||
to the unit that should be used for playback:</para>
|
<varname>hw.snd.default_unit</varname> to the unit that should
|
||||||
|
be used for playback:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput></screen>
|
<screen>&prompt.root; <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput></screen>
|
||||||
|
|
||||||
|
@ -401,25 +407,24 @@ pcm7: <HDA Realtek ALC889 PCM #3 Digital> at cad 2 nid 1 on hdac1
|
||||||
Sound Channels</quote> to multiplex the
|
Sound Channels</quote> to multiplex the
|
||||||
sound card's playback by mixing sound in the kernel.</para>
|
sound card's playback by mixing sound in the kernel.</para>
|
||||||
|
|
||||||
<para>Three
|
<para>Three &man.sysctl.8; knobs are available for configuring
|
||||||
&man.sysctl.8; knobs are available for configuring virtual channels:</para>
|
virtual channels:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>
|
<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 dev.pcm.0.rec.vchans=4</userinput>
|
||||||
&prompt.root; <userinput>sysctl hw.snd.maxautovchans=4</userinput></screen>
|
&prompt.root; <userinput>sysctl hw.snd.maxautovchans=4</userinput></screen>
|
||||||
|
|
||||||
<para>This example allocates four virtual channels, which
|
<para>This example allocates four virtual channels, which is a
|
||||||
is a practical number for everyday use. Both
|
practical number for everyday use. Both
|
||||||
<varname>dev.pcm.0.play.vchans=4</varname> and
|
<varname>dev.pcm.0.play.vchans=4</varname> and
|
||||||
<varname>dev.pcm.0.rec.vchans=4</varname> are configurable after a device has been
|
<varname>dev.pcm.0.rec.vchans=4</varname> are configurable after
|
||||||
attached and represent the number of
|
a device has been attached and represent the number of virtual
|
||||||
virtual channels <devicename>pcm0</devicename> has for playback
|
channels <devicename>pcm0</devicename> has for playback and
|
||||||
and recording. Since the
|
recording. Since the <devicename>pcm</devicename> module can be
|
||||||
<devicename>pcm</devicename> module can be loaded independently
|
loaded independently of the hardware drivers,
|
||||||
of the hardware drivers, <varname>hw.snd.maxautovchans</varname>
|
<varname>hw.snd.maxautovchans</varname> indicates how many
|
||||||
indicates how many virtual channels will be given to an audio device
|
virtual channels will be given to an audio device when it is
|
||||||
when it is attached. Refer to &man.pcm.4; for more
|
attached. Refer to &man.pcm.4; for more information.</para>
|
||||||
information.</para>
|
|
||||||
|
|
||||||
<note>
|
<note>
|
||||||
<para>The number of virtual channels for a device cannot be
|
<para>The number of virtual channels for a device cannot be
|
||||||
|
@ -451,10 +456,9 @@ pcm7: <HDA Realtek ALC889 PCM #3 Digital> at cad 2 nid 1 on hdac1
|
||||||
<para>The default values for the different mixer channels are
|
<para>The default values for the different mixer channels are
|
||||||
hardcoded in the source code of the &man.pcm.4; driver. While
|
hardcoded in the source code of the &man.pcm.4; driver. While
|
||||||
sound card mixer levels can be changed using &man.mixer.8; or
|
sound card mixer levels can be changed using &man.mixer.8; or
|
||||||
third-party applications and daemons, this is not a permanent solution.
|
third-party applications and daemons, this is not a permanent
|
||||||
To instead set default
|
solution. To instead set default mixer values at the driver
|
||||||
mixer values at the driver level,
|
level, define the appropriate values in
|
||||||
define the appropriate values in
|
|
||||||
<filename>/boot/device.hints</filename>, as seen in this
|
<filename>/boot/device.hints</filename>, as seen in this
|
||||||
example:</para>
|
example:</para>
|
||||||
|
|
||||||
|
@ -727,18 +731,19 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
|
||||||
|
|
||||||
<title>Video Playback</title>
|
<title>Video Playback</title>
|
||||||
|
|
||||||
<para>Before configuring video playback, determine the model
|
<para>Before configuring video playback, determine the model and
|
||||||
and chipset of the video card. While
|
chipset of the video card. While
|
||||||
<application>&xorg;</application> supports a wide variety of
|
<application>&xorg;</application> supports a wide variety of
|
||||||
video cards, not all provide good playback performance. To obtain
|
video cards, not all provide good playback performance. To
|
||||||
a list of extensions supported by the
|
obtain a list of extensions supported by the
|
||||||
<application>&xorg;</application> server using the card, run
|
<application>&xorg;</application> server using the card, run
|
||||||
<command>xdpyinfo</command> while <application>&xorg;</application> is
|
<command>xdpyinfo</command> while
|
||||||
running.</para>
|
<application>&xorg;</application> is running.</para>
|
||||||
|
|
||||||
<para>It is a good idea to have a short MPEG test file for
|
<para>It is a good idea to have a short MPEG test file for
|
||||||
evaluating various players and options. Since some <acronym>DVD</acronym>
|
evaluating various players and options. Since some
|
||||||
applications look for <acronym>DVD</acronym> media in <filename
|
<acronym>DVD</acronym> applications look for
|
||||||
|
<acronym>DVD</acronym> media in <filename
|
||||||
class="directory">/dev/dvd</filename> by default, or have this
|
class="directory">/dev/dvd</filename> by default, or have this
|
||||||
device name hardcoded in them, it might be useful to make a
|
device name hardcoded in them, it might be useful to make a
|
||||||
symbolic links to the proper device:</para>
|
symbolic links to the proper device:</para>
|
||||||
|
@ -746,14 +751,15 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo</screen>
|
||||||
<screen>&prompt.root; <userinput>ln -sf /dev/cd0 /dev/dvd</userinput></screen>
|
<screen>&prompt.root; <userinput>ln -sf /dev/cd0 /dev/dvd</userinput></screen>
|
||||||
|
|
||||||
<para>Due to the nature of &man.devfs.5;, manually created links
|
<para>Due to the nature of &man.devfs.5;, manually created links
|
||||||
will not persist after a system reboot. In order to recreate the
|
will not persist after a system reboot. In order to recreate
|
||||||
symbolic link automatically when the system boots, add the
|
the symbolic link automatically when the system boots, add the
|
||||||
following line to <filename>/etc/devfs.conf</filename>:</para>
|
following line to <filename>/etc/devfs.conf</filename>:</para>
|
||||||
|
|
||||||
<programlisting>link cd0 dvd</programlisting>
|
<programlisting>link cd0 dvd</programlisting>
|
||||||
|
|
||||||
<para><acronym>DVD</acronym> decryption invokes certain functions that
|
<para><acronym>DVD</acronym> decryption invokes certain functions
|
||||||
require write permission to the <acronym>DVD</acronym> device.</para>
|
that require write permission to the <acronym>DVD</acronym>
|
||||||
|
device.</para>
|
||||||
|
|
||||||
<para>To enhance the shared memory
|
<para>To enhance the shared memory
|
||||||
<application>&xorg;</application> interface, it is
|
<application>&xorg;</application> interface, it is
|
||||||
|
@ -785,35 +791,38 @@ kern.ipc.shmall=32768</programlisting>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>XVideo: an extension to the
|
<para>XVideo: an extension to the
|
||||||
<application>&xorg;</application> interface which
|
<application>&xorg;</application> interface which
|
||||||
allows video to be directly displayed in drawable objects
|
allows video to be directly displayed in drawable objects
|
||||||
through a special acceleration. This extension provides
|
through a special acceleration. This extension provides
|
||||||
good quality playback even on low-end machines. The next section describes
|
good quality playback even on low-end machines. The next
|
||||||
how to determine if this extension is running.</para>
|
section describes how to determine if this extension is
|
||||||
|
running.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para><acronym>SDL</acronym>: the Simple Directmedia
|
<para><acronym>SDL</acronym>: the Simple Directmedia Layer is
|
||||||
Layer is a porting layer for many operating systems,
|
a porting layer for many operating systems, allowing
|
||||||
allowing cross-platform applications to be developed which make
|
cross-platform applications to be developed which make
|
||||||
efficient use of sound and graphics. <acronym>SDL</acronym> provides a
|
efficient use of sound and graphics. <acronym>SDL</acronym>
|
||||||
low-level abstraction to the hardware which can sometimes be
|
provides a low-level abstraction to the hardware which can
|
||||||
more efficient than the <application>&xorg;</application>
|
sometimes be more efficient than the
|
||||||
interface. On &os;, <acronym>SDL</acronym> can be installed using the <filename
|
<application>&xorg;</application> interface. On &os;,
|
||||||
role="package">devel/sdl20</filename> package or port.</para>
|
<acronym>SDL</acronym> can be installed using the <filename
|
||||||
|
role="package">devel/sdl20</filename> package or
|
||||||
|
port.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para><acronym>DGA</acronym>: the Direct Graphics
|
<para><acronym>DGA</acronym>: the Direct Graphics Access is an
|
||||||
Access is an
|
<application>&xorg;</application> extension which allows a
|
||||||
<application>&xorg;</application> extension which allows a
|
program to bypass the <application>&xorg;</application>
|
||||||
program to bypass the <application>&xorg;</application> server
|
server and directly alter the framebuffer. Because it
|
||||||
and directly alter the framebuffer. Because it relies on a low
|
relies on a low level memory mapping, programs using it must
|
||||||
level memory mapping, programs using it must be run as
|
be run as <username>root</username>. The
|
||||||
<username>root</username>. The <acronym>DGA</acronym> extension can be tested and
|
<acronym>DGA</acronym> extension can be tested and
|
||||||
benchmarked using &man.dga.1;. When <command>dga</command> is
|
benchmarked using &man.dga.1;. When <command>dga</command>
|
||||||
running, it changes the colors of the display whenever a key is
|
is running, it changes the colors of the display whenever a
|
||||||
pressed. To quit, press <keycap>q</keycap>.</para>
|
key is pressed. To quit, press <keycap>q</keycap>.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -901,23 +910,22 @@ kern.ipc.shmall=32768</programlisting>
|
||||||
depth: 1
|
depth: 1
|
||||||
red, green, blue masks: 0x0, 0x0, 0x0</screen>
|
red, green, blue masks: 0x0, 0x0, 0x0</screen>
|
||||||
|
|
||||||
<para>The formats listed, such as YUV2 and YUV12, are not present
|
<para>The formats listed, such as YUV2 and YUV12, are not
|
||||||
with every implementation of XVideo and their absence may hinder
|
present with every implementation of XVideo and their absence
|
||||||
some players.</para>
|
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
|
screen #0
|
||||||
no adaptors present</screen>
|
no adaptors present</screen>
|
||||||
|
|
||||||
<para>XVideo is probably not supported for the card. This means
|
<para>XVideo is probably not supported for the card. This means
|
||||||
that it will be more difficult for the display to meet the
|
that it will be more difficult for the display to meet the
|
||||||
computational demands of rendering video, depending on the
|
computational demands of rendering video, depending on the
|
||||||
video card and processor.</para>
|
video card and processor.</para>
|
||||||
|
</sect3>
|
||||||
</sect3>
|
</sect2>
|
||||||
</sect2>
|
|
||||||
|
|
||||||
<sect2 id="video-ports">
|
<sect2 id="video-ports">
|
||||||
<title>Ports and Packages Dealing with Video</title>
|
<title>Ports and Packages Dealing with Video</title>
|
||||||
|
@ -930,162 +938,163 @@ no adaptors present</screen>
|
||||||
playback.</para>
|
playback.</para>
|
||||||
|
|
||||||
<sect3 id="video-mplayer">
|
<sect3 id="video-mplayer">
|
||||||
<title><application>MPlayer</application> and <application>MEncoder</application></title>
|
<title><application>MPlayer</application> and
|
||||||
|
<application>MEncoder</application></title>
|
||||||
|
|
||||||
<para><application>MPlayer</application> is a command-line video
|
<para><application>MPlayer</application> is a command-line video
|
||||||
player with an optional graphical interface which aims to
|
player with an optional graphical interface which aims to
|
||||||
provide speed and flexibility. Other
|
provide speed and flexibility. Other graphical front-ends to
|
||||||
graphical front-ends to <application>MPlayer</application> are available from the &os; Ports
|
<application>MPlayer</application> are available from the &os;
|
||||||
Collection.</para>
|
Ports Collection.</para>
|
||||||
|
|
||||||
<indexterm><primary>MPlayer</primary></indexterm>
|
<indexterm><primary>MPlayer</primary></indexterm>
|
||||||
|
|
||||||
<para><application>MPlayer</application> can be installed using
|
<para><application>MPlayer</application> can be installed using
|
||||||
the <filename
|
the <filename role="package">multimedia/mplayer</filename>
|
||||||
role="package">multimedia/mplayer</filename> package or port. Several
|
package or port. Several compile options are available and a
|
||||||
compile options are available and a variety of hardware
|
variety of hardware checks occur during the build process.
|
||||||
checks occur during the build process. For these reasons,
|
For these reasons, some users prefer to build the port rather
|
||||||
some users prefer to build the port rather than install the
|
than install the package.</para>
|
||||||
package.</para>
|
|
||||||
|
|
||||||
<para>When compiling the port, the menu options should be reviewed to determine the
|
<para>When compiling the port, the menu options should be
|
||||||
type of support to compile into the port. If an option is
|
reviewed to determine the type of support to compile into the
|
||||||
not selected, <application>MPlayer</application> will not be
|
port. If an option is not selected,
|
||||||
able to display that type of video format. Use the arrow
|
<application>MPlayer</application> will not be able to
|
||||||
keys and spacebar to select the required formats. When
|
display that type of video format. Use the arrow keys and
|
||||||
finished, press <keycap>Enter</keycap> to continue the port
|
spacebar to select the required formats. When finished,
|
||||||
compile and installation.</para>
|
press <keycap>Enter</keycap> to continue the port compile
|
||||||
|
and installation.</para>
|
||||||
|
|
||||||
<para>By default, the package or port will build the
|
<para>By default, the package or port will build the
|
||||||
<command>mplayer</command> command line utility and the
|
<command>mplayer</command> command line utility and the
|
||||||
<command>gmplayer</command> graphical utility. To encode
|
<command>gmplayer</command> graphical utility. To encode
|
||||||
videos, compile the <filename
|
videos, compile the <filename
|
||||||
role="package">multimedia/mencoder</filename> port. Due
|
role="package">multimedia/mencoder</filename> port. Due to
|
||||||
to licensing restrictions, a package is not available for
|
licensing restrictions, a package is not available for
|
||||||
<application>MEncoder</application>.</para>
|
<application>MEncoder</application>.</para>
|
||||||
|
|
||||||
<para>The first time <application>MPlayer</application> is
|
<para>The first time <application>MPlayer</application> is run,
|
||||||
run, it will create <filename
|
it will create <filename
|
||||||
class="directory">~/.mplayer</filename> in the user's
|
class="directory">~/.mplayer</filename> in the user's home
|
||||||
home directory. This subdirectory contains default versions
|
directory. This subdirectory contains default versions of
|
||||||
of the user-specific configuration files.</para>
|
the user-specific configuration files.</para>
|
||||||
|
|
||||||
<para>This section describes only a few common uses. Refer
|
<para>This section describes only a few common uses. Refer to
|
||||||
to mplayer(1) for a complete
|
mplayer(1) for a complete description of its numerous
|
||||||
description of its numerous options.</para>
|
options.</para>
|
||||||
|
|
||||||
<para>To play the file
|
<para>To play the file
|
||||||
<filename><replaceable>testfile.avi</replaceable></filename>,
|
<filename><replaceable>testfile.avi</replaceable></filename>,
|
||||||
specify the video interfaces with
|
specify the video interfaces with <option>-vo</option>, as
|
||||||
<option>-vo</option>, as seen in the following examples:</para>
|
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 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 sdl <replaceable>testfile.avi</replaceable></userinput></screen>
|
||||||
|
|
||||||
<screen>&prompt.user; <userinput>mplayer -vo x11 <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 dga <replaceable>testfile.avi</replaceable></userinput></screen>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>mplayer -vo 'sdl: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
|
<para>It is worth trying all of these options, as their
|
||||||
relative performance depends on many factors and will vary
|
relative performance depends on many factors and will vary
|
||||||
significantly with hardware.</para>
|
significantly with hardware.</para>
|
||||||
|
|
||||||
<para>To play a <acronym>DVD</acronym>, replace
|
<para>To play a <acronym>DVD</acronym>, replace
|
||||||
<filename><replaceable>testfile.avi</replaceable></filename>
|
<filename><replaceable>testfile.avi</replaceable></filename>
|
||||||
with <option>dvd://<replaceable>N</replaceable> -dvd-device
|
with <option>dvd://<replaceable>N</replaceable> -dvd-device
|
||||||
<replaceable>DEVICE</replaceable></option>, where
|
<replaceable>DEVICE</replaceable></option>, where
|
||||||
<replaceable>N</replaceable> is the title number to play
|
<replaceable>N</replaceable> is the title number to play and
|
||||||
and <replaceable>DEVICE</replaceable>
|
<replaceable>DEVICE</replaceable> is the device node for the
|
||||||
is the device node for the <acronym>DVD</acronym>. For example, to play
|
<acronym>DVD</acronym>. For example, to play title 3 from
|
||||||
title 3 from <devicename>/dev/dvd</devicename>:</para>
|
<devicename>/dev/dvd</devicename>:</para>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
|
<screen>&prompt.root; <userinput>mplayer -vo xv dvd://3 -dvd-device /dev/dvd</userinput></screen>
|
||||||
|
|
||||||
<note>
|
<note>
|
||||||
<para>The default <acronym>DVD</acronym> device can be defined during the build
|
<para>The default <acronym>DVD</acronym> device can be defined
|
||||||
of the <application>MPlayer</application> port by
|
during the build of the <application>MPlayer</application>
|
||||||
including the
|
port by including the
|
||||||
<makevar>WITH_DVD_DEVICE=/path/to/desired/device</makevar>
|
<makevar>WITH_DVD_DEVICE=/path/to/desired/device</makevar>
|
||||||
option. By default, the device is
|
option. By default, the device is
|
||||||
<filename>/dev/cd0</filename>. More details can be found
|
<filename>/dev/cd0</filename>. More details can be found in
|
||||||
in the port's
|
the port's <filename>Makefile.options</filename>.</para>
|
||||||
<filename>Makefile.options</filename>.</para>
|
</note>
|
||||||
</note>
|
|
||||||
|
|
||||||
<para>To stop, pause, advance, and so on, use a
|
<para>To stop, pause, advance, and so on, use a keybinding. To
|
||||||
keybinding. To see the list of keybindings, run <command>mplayer
|
see the list of keybindings, run <command>mplayer
|
||||||
-h</command> or read mplayer(1).</para>
|
-h</command> or read mplayer(1).</para>
|
||||||
|
|
||||||
<para>Additional playback options include
|
<para>Additional playback options include <option>-fs
|
||||||
<option>-fs -zoom</option>, which engages fullscreen mode,
|
-zoom</option>, which engages fullscreen mode, and
|
||||||
and <option>-framedrop</option>, which helps
|
<option>-framedrop</option>, which helps performance.</para>
|
||||||
performance.</para>
|
|
||||||
|
|
||||||
<para>Each user can add commonly used options to their
|
<para>Each user can add commonly used options to their
|
||||||
<filename>~/.mplayer/config</filename> like so:</para>
|
<filename>~/.mplayer/config</filename> like so:</para>
|
||||||
|
|
||||||
<programlisting>vo=xv
|
<programlisting>vo=xv
|
||||||
fs=yes
|
fs=yes
|
||||||
zoom=yes</programlisting>
|
zoom=yes</programlisting>
|
||||||
|
|
||||||
<para><command>mplayer</command> can be used to rip a <acronym>DVD</acronym>
|
<para><command>mplayer</command> can be used to rip a
|
||||||
title to a <filename>.vob</filename>. To dump the second
|
<acronym>DVD</acronym> title to a <filename>.vob</filename>.
|
||||||
title from a <acronym>DVD</acronym>:</para>
|
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
|
<para>The output file, <filename>out.vob</filename>, will be in
|
||||||
in <acronym>MPEG</acronym> format.</para>
|
<acronym>MPEG</acronym> format.</para>
|
||||||
|
|
||||||
<para>Anyone wishing to obtain a high level
|
<para>Anyone wishing to obtain a high level of expertise with
|
||||||
of expertise with &unix; video should consult <ulink url="http://www.mplayerhq.hu/DOCS/">mplayerhq.hu/DOCS</ulink> as it is technically informative.
|
&unix; video should consult <ulink
|
||||||
This documentation should be considered as required reading
|
url="http://www.mplayerhq.hu/DOCS/">mplayerhq.hu/DOCS</ulink>
|
||||||
before submitting any bug reports.</para>
|
as it is technically informative. This documentation should
|
||||||
|
be considered as required reading before submitting any bug
|
||||||
|
reports.</para>
|
||||||
|
|
||||||
<indexterm>
|
<indexterm>
|
||||||
<primary>mencoder</primary>
|
<primary>mencoder</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<para>Before using <command>mencoder</command>, it is a good
|
<para>Before using <command>mencoder</command>, it is a good
|
||||||
idea to become familiar with the options described at
|
idea to become familiar with the options described at
|
||||||
<ulink
|
<ulink
|
||||||
url="http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html">mplayerhq.hu/DOCS/HTML/en/mencoder.html</ulink>. There are innumerable ways to
|
url="http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html">mplayerhq.hu/DOCS/HTML/en/mencoder.html</ulink>.
|
||||||
improve quality, lower bitrate, and change formats, and some
|
There are innumerable ways to improve quality, lower bitrate,
|
||||||
of these options may make the difference between good or bad
|
and change formats, and some of these options may make the
|
||||||
performance. Improper combinations of command line options
|
difference between good or bad performance. Improper
|
||||||
can yield output files that are unplayable even by
|
combinations of command line options can yield output files
|
||||||
<command>mplayer</command>.</para>
|
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
|
<para>To rip to a file, use <option>-dumpfile</option> with
|
||||||
<command>mplayer</command>.</para>
|
<command>mplayer</command>.</para>
|
||||||
|
|
||||||
<para>To convert
|
<para>To convert
|
||||||
<filename><replaceable>input.avi</replaceable></filename>
|
<filename><replaceable>input.avi</replaceable></filename> to
|
||||||
to the MPEG4 codec with MPEG3 audio encoding, first install
|
the MPEG4 codec with MPEG3 audio encoding, first install the
|
||||||
the <filename role="package">audio/lame</filename> port.
|
<filename role="package">audio/lame</filename> port. Due to
|
||||||
Due to licensing restrictions, a package is not available.
|
licensing restrictions, a package is not available. Once
|
||||||
Once installed, type:</para>
|
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>
|
-ovc lavc -lavcopts vcodec=mpeg4:vhq -o <replaceable>output.avi</replaceable></userinput></screen>
|
||||||
|
|
||||||
<para>This will produce output playable by applications such
|
<para>This will produce output playable by applications such as
|
||||||
as <command>mplayer</command> and
|
<command>mplayer</command> and <command>xine</command>.</para>
|
||||||
<command>xine</command>.</para>
|
|
||||||
|
|
||||||
<para><filename><replaceable>input.avi</replaceable></filename>
|
<para><filename><replaceable>input.avi</replaceable></filename>
|
||||||
can be replaced with <option>dvd://1 -dvd-device
|
can be replaced with <option>dvd://1 -dvd-device
|
||||||
/dev/dvd</option> and run as <username>root</username>
|
/dev/dvd</option> and run as <username>root</username> to
|
||||||
to re-encode a <acronym>DVD</acronym> title directly. Since it may take a few
|
re-encode a <acronym>DVD</acronym> title directly. Since it
|
||||||
tries to get the desired result, it is recommended to instead dump
|
may take a few tries to get the desired result, it is
|
||||||
the title to a file and to work on the file.</para>
|
recommended to instead dump the title to a file and to work on
|
||||||
|
the file.</para>
|
||||||
</sect3>
|
</sect3>
|
||||||
|
|
||||||
<sect3 id="video-xine">
|
<sect3 id="video-xine">
|
||||||
|
@ -1129,8 +1138,8 @@ zoom=yes</programlisting>
|
||||||
with stdin/stdout stream
|
with stdin/stdout stream
|
||||||
interfaces.</para>
|
interfaces.</para>
|
||||||
|
|
||||||
<para>In &os;, <application>Transcode</application> can be installed
|
<para>In &os;, <application>Transcode</application> can be
|
||||||
using the <filename
|
installed using the <filename
|
||||||
role="package">multimedia/transcode</filename> package or
|
role="package">multimedia/transcode</filename> package or
|
||||||
port. Many users prefer to compile the port as it provides a
|
port. Many users prefer to compile the port as it provides a
|
||||||
menu of compile options for specifying the support and codecs
|
menu of compile options for specifying the support and codecs
|
||||||
|
@ -1144,23 +1153,25 @@ zoom=yes</programlisting>
|
||||||
<para>This example demonstrates how to convert a DivX file into
|
<para>This example demonstrates how to convert a DivX file into
|
||||||
a PAL MPEG-1 file (PAL VCD):</para>
|
a PAL MPEG-1 file (PAL VCD):</para>
|
||||||
|
|
||||||
<screen>&prompt.user; <userinput>transcode -i
|
<screen>&prompt.user; <userinput>transcode -i
|
||||||
<replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>
|
<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>
|
&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,
|
<para>The resulting <acronym>MPEG</acronym> file,
|
||||||
<filename><replaceable>output_vcd.mpg</replaceable></filename>,
|
<filename><replaceable>output_vcd.mpg</replaceable></filename>,
|
||||||
is ready to be played with <application>MPlayer</application>.
|
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
|
The file can be burned on a <acronym>CD</acronym> media to
|
||||||
<filename
|
create a video <acronym>CD</acronym> using a utility such as
|
||||||
role="package">multimedia/vcdimager</filename> or <filename
|
<filename
|
||||||
role="package">sysutils/cdrdao</filename>.</para>
|
role="package">multimedia/vcdimager</filename> or <filename
|
||||||
|
role="package">sysutils/cdrdao</filename>.</para>
|
||||||
|
|
||||||
<para>In addition to the manual page for
|
<para>In addition to the manual page for
|
||||||
<command>transcode</command>, refer to <ulink
|
<command>transcode</command>, refer to <ulink
|
||||||
url="http://www.transcoding.org/cgi-bin/transcode">transcoding.org/cgi-bin/transcode</ulink> for further information and examples.</para>
|
url="http://www.transcoding.org/cgi-bin/transcode">transcoding.org/cgi-bin/transcode</ulink>
|
||||||
</sect3>
|
for further information and examples.</para>
|
||||||
</sect2>
|
</sect3>
|
||||||
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="tvcard">
|
<sect1 id="tvcard">
|
||||||
|
@ -1189,16 +1200,16 @@ zoom=yes</programlisting>
|
||||||
<primary>TV cards</primary>
|
<primary>TV cards</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<para>TV cards can be used to watch broadcast or cable TV on
|
<para>TV cards can be used to watch broadcast or cable TV on a
|
||||||
a computer. Most cards accept composite video via an <acronym>RCA</acronym> or
|
computer. Most cards accept composite video via an
|
||||||
S-video input and some cards include a <acronym>FM</acronym> radio tuner.</para>
|
<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
|
<para>&os; provides support for PCI-based TV cards using a
|
||||||
Brooktree Bt848/849/878/879
|
Brooktree Bt848/849/878/879 video capture chip with the
|
||||||
video capture chip with the &man.bktr.4; driver. This driver
|
&man.bktr.4; driver. This driver supports most Pinnacle PCTV
|
||||||
supports most Pinnacle PCTV video cards. Before purchasing a TV card,
|
video cards. Before purchasing a TV card, onsult &man.bktr.4; for
|
||||||
onsult &man.bktr.4; for a
|
a list of supported tuners.</para>
|
||||||
list of supported tuners.</para>
|
|
||||||
|
|
||||||
<sect2>
|
<sect2>
|
||||||
<title>Loading the Driver</title>
|
<title>Loading the Driver</title>
|
||||||
|
@ -1223,9 +1234,9 @@ device smbus</programlisting>
|
||||||
components are interconnected via an I2C bus. Then, build and
|
components are interconnected via an I2C bus. Then, build and
|
||||||
install a new kernel.</para>
|
install a new kernel.</para>
|
||||||
|
|
||||||
<para>To test that the tuner is correctly detected, reboot the system. The TV card
|
<para>To test that the tuner is correctly detected, reboot the
|
||||||
should appear in the boot messages, as seen in this
|
system. The TV card should appear in the boot messages, as
|
||||||
example:</para>
|
seen in this example:</para>
|
||||||
|
|
||||||
<programlisting>bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
|
<programlisting>bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
|
||||||
iicbb0: <I2C bit-banging driver> on bti2c0
|
iicbb0: <I2C bit-banging driver> on bti2c0
|
||||||
|
@ -1247,8 +1258,8 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
|
||||||
|
|
||||||
<screen>&prompt.root; <userinput>sysctl hw.bt848.tuner=6</userinput></screen>
|
<screen>&prompt.root; <userinput>sysctl hw.bt848.tuner=6</userinput></screen>
|
||||||
|
|
||||||
<para>Refer to &man.bktr.4; for a description
|
<para>Refer to &man.bktr.4; for a description of the available
|
||||||
of the available &man.sysctl.8; parameters and kernel options.</para>
|
&man.sysctl.8; parameters and kernel options.</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2>
|
<sect2>
|
||||||
|
@ -1281,10 +1292,10 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
|
||||||
<sect2>
|
<sect2>
|
||||||
<title>Troubleshooting</title>
|
<title>Troubleshooting</title>
|
||||||
|
|
||||||
<para>If any problems are encountered with the TV card,
|
<para>If any problems are encountered with the TV card, check
|
||||||
check that the video capture chip and the tuner are
|
that the video capture chip and the tuner are supported by
|
||||||
supported by &man.bktr.4; and that the right configuration
|
&man.bktr.4; and that the right configuration options were
|
||||||
options were used. For more support or to ask questions
|
used. For more support or to ask questions
|
||||||
about supported TV cards, refer to the
|
about supported TV cards, refer to the
|
||||||
&a.multimedia.name; mailing list.</para>
|
&a.multimedia.name; mailing list.</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
@ -1294,44 +1305,45 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
|
||||||
<title>MythTV</title>
|
<title>MythTV</title>
|
||||||
|
|
||||||
<para>MythTV is a popular, open source Personal Video Recorder
|
<para>MythTV is a popular, open source Personal Video Recorder
|
||||||
(<acronym>PVR</acronym>)
|
(<acronym>PVR</acronym>) application. This section demonstrates
|
||||||
application. This section demonstrates how to install and
|
how to install and setup MythTV on &os;. Refer to <ulink
|
||||||
setup MythTV on &os;. Refer to <ulink
|
|
||||||
url="http://www.mythtv.org/wiki/">mythtv.org/wiki</ulink> for
|
url="http://www.mythtv.org/wiki/">mythtv.org/wiki</ulink> for
|
||||||
more information on how to use MythTV.</para>
|
more information on how to use MythTV.</para>
|
||||||
|
|
||||||
<para>MythTV requires a frontend and a backend. These components
|
<para>MythTV requires a frontend and a backend. These
|
||||||
can either be installed on the same system or on
|
components can either be installed on the same system or on
|
||||||
different machines.</para>
|
different machines.</para>
|
||||||
|
|
||||||
<para>The frontend can be installed on &os; using the <filename
|
<para>The frontend can be installed on &os; using the <filename
|
||||||
role="package">multimedia/mythtv-frontend</filename> package or port.
|
role="package">multimedia/mythtv-frontend</filename> package
|
||||||
<application>&xorg;</application> must also be installed and configured as described in
|
or port. <application>&xorg;</application> must also be
|
||||||
<xref linkend="x11"/>. Ideally, this
|
installed and configured as described in <xref
|
||||||
system has a video card that supports X-Video Motion Compensation
|
linkend="x11"/>. Ideally, this system has a video card that
|
||||||
(<acronym>XvMC</acronym>) and,
|
supports X-Video Motion Compensation
|
||||||
optionally, a Linux Infrared Remote Control
|
(<acronym>XvMC</acronym>) and, optionally, a Linux Infrared
|
||||||
(<acronym>LIRC</acronym>)-compatible remote.</para>
|
Remote Control (<acronym>LIRC</acronym>)-compatible
|
||||||
|
remote.</para>
|
||||||
|
|
||||||
<para>To install both the backend and the frontend on &os;, use the <filename
|
<para>To install both the backend and the frontend on &os;, use
|
||||||
role="package">multimedia/mythtv</filename> package or port.
|
the <filename role="package">multimedia/mythtv</filename>
|
||||||
A &mysql; database server is also required and should
|
package or port. A &mysql; database server is also required
|
||||||
automatically be installed as a dependency.
|
and should automatically be installed as a dependency.
|
||||||
Optionally, this system should have a tuner card
|
Optionally, this system should have a tuner card and
|
||||||
and sufficient storage to hold recorded data.</para>
|
sufficient storage to hold recorded data.</para>
|
||||||
|
|
||||||
<sect2>
|
<sect2>
|
||||||
<title>Hardware</title>
|
<title>Hardware</title>
|
||||||
|
|
||||||
<para>MythTV uses Video for Linux (<acronym>V4L</acronym>) to access video input
|
<para>MythTV uses Video for Linux (<acronym>V4L</acronym>) to
|
||||||
devices such as encoders and tuners. In &os;, MythTV
|
access video input devices such as encoders and tuners. In
|
||||||
works best with <acronym>USB</acronym> DVB-S/C/T cards as they are well supported by the <filename
|
&os;, MythTV works best with <acronym>USB</acronym> DVB-S/C/T
|
||||||
role="package">multimedia/webcamd</filename> package or port which provides
|
cards as they are well supported by the <filename
|
||||||
a <acronym>V4L</acronym> userland application.
|
role="package">multimedia/webcamd</filename> package or port
|
||||||
Any Digital Video Broadcasting (<acronym>DVB</acronym>)
|
which provides a <acronym>V4L</acronym> userland application.
|
||||||
card supported by <application>webcamd</application> should
|
Any Digital Video Broadcasting (<acronym>DVB</acronym>) card
|
||||||
work with MythTV. A list of known working cards can be
|
supported by <application>webcamd</application> should work
|
||||||
found at <ulink
|
with MythTV. A list of known working cards can be found at
|
||||||
|
<ulink
|
||||||
url="http://wiki.freebsd.org/WebcamCompat">wiki.freebsd.org/WebcamCompat</ulink>.
|
url="http://wiki.freebsd.org/WebcamCompat">wiki.freebsd.org/WebcamCompat</ulink>.
|
||||||
Drivers are also available for Hauppauge cards in the
|
Drivers are also available for Hauppauge cards in the
|
||||||
<filename
|
<filename
|
||||||
|
@ -1342,7 +1354,8 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
|
||||||
restrictions, no packages are available and these two ports
|
restrictions, no packages are available and these two ports
|
||||||
must be compiled.</para>
|
must be compiled.</para>
|
||||||
|
|
||||||
<para>The <ulink url="http://wiki.freebsd.org/HTPC">wiki.freebsd.org/HTPC</ulink>
|
<para>The <ulink
|
||||||
|
url="http://wiki.freebsd.org/HTPC">wiki.freebsd.org/HTPC</ulink>
|
||||||
page contains a list of all available <acronym>DVB</acronym>
|
page contains a list of all available <acronym>DVB</acronym>
|
||||||
drivers.</para>
|
drivers.</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
@ -1400,9 +1413,9 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
|
||||||
<para>&os; supports both SCSI and USB scanners. Be sure the
|
<para>&os; supports both SCSI and USB scanners. Be sure the
|
||||||
scanner is supported by <application>SANE</application> prior
|
scanner is supported by <application>SANE</application> prior
|
||||||
to performing any configuration. Refer to the <ulink
|
to performing any configuration. Refer to the <ulink
|
||||||
url="http://www.sane-project.org/sane-supported-devices.html">
|
url="http://www.sane-project.org/sane-supported-devices.html">
|
||||||
supported devices list</ulink> for more information about supported
|
supported devices list</ulink> for more information about
|
||||||
scanners.</para>
|
supported scanners.</para>
|
||||||
|
|
||||||
<sect2>
|
<sect2>
|
||||||
<title>Kernel Configuration</title>
|
<title>Kernel Configuration</title>
|
||||||
|
@ -1444,7 +1457,7 @@ device ehci</programlisting>
|
||||||
<para>If the scanner uses a SCSI interface, it is important to
|
<para>If the scanner uses a SCSI interface, it is important to
|
||||||
know which SCSI controller board it will use. Depending
|
know which SCSI controller board it will use. Depending
|
||||||
upon the SCSI chipset, a custom kernel configuration file
|
upon the SCSI chipset, a custom kernel configuration file
|
||||||
may be needed. The <filename>GENERIC</filename> kernel
|
may be needed. The <filename>GENERIC</filename> kernel
|
||||||
supports the most common SCSI controllers. Refer to
|
supports the most common SCSI controllers. Refer to
|
||||||
<filename>/usr/src/sys/conf/NOTES</filename> to determine
|
<filename>/usr/src/sys/conf/NOTES</filename> to determine
|
||||||
the correct line to add to a custom kernel configuration
|
the correct line to add to a custom kernel configuration
|
||||||
|
|
Loading…
Reference in a new issue