This change adds a new section about MythTV to the multimedia chapter

of the handbook. The section is based on notes from a page in the
FreeBSD wiki.

Converting the wiki page into a handbook chapter was done as part of
the Google Code-In 2011 contest.

GCIN student (initial author):  Isabell Long (isabell121 gmail com)
GCIN task mentors:  decke, wkoszek
Passive voice and other corrections by: Niclas Zeising (zeising daemonic se)
Smaller style fixes by: me
Prodding me to commit this by:  decke
This commit is contained in:
Benedict Reuschling 2012-01-09 20:45:46 +00:00
parent 9e0c7acbb5
commit 4438d461aa
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=38167

View file

@ -1494,6 +1494,93 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>
</sect2> </sect2>
</sect1> </sect1>
<sect1 id="mythtv">
<title>MythTV</title>
<para>MythTV is an open source <acronym
role="Personal Video Recorder">PVR</acronym> software
project.</para>
<para>It is well-known in the &linux; world as a complex
application with many dependencies, and therefore difficult to
install. The &os; ports system simplifies much of the process, but
some components must be set up manually. This section is intended
to help and guide in setting up MythTV.</para>
<sect2>
<title>Hardware</title>
<para>MythTV is designed to utilise <acronym
role="Video for Linux">V4L</acronym> to access video input devices
such as encoders and tuners. At this time, MythTV works best with
<acronym role="Universal Serial Bus">USB</acronym> DVB-S/C/T cards
supported by <filename
role="package">multimedia/webcamd</filename> because
<application>webcamd</application> provides a <acronym
role="Video for Linux">V4L</acronym> userland application. Any
<acronym role="Digital Video Broadcasting">DVB</acronym> card
supported by <application>webcamd</application> should work with
MythTV, but a list of known working cards can be found <ulink
url="http://wiki.freebsd.org/WebcamCompat">here</ulink>. There
are also drivers available for Hauppauge cards in the following
packages: <filename role="package">multimedia/pvr250</filename>
and <filename role="package">multimedia/pvrxxx</filename>, but
they provide a non-standard driver interface that does not work
with versions of MythTV greater than 0.23.</para>
<para><ulink url="http://wiki.freebsd.org/HTPC">HTPC</ulink>
contains a list of all available <acronym
role="Digital Video Broadcasting">DVB</acronym> drivers.</para>
</sect2>
<sect2>
<title>Dependencies</title>
<para>Being flexible and modular, MythTV allows the user to have the
frontend and backend on different machines.</para>
<para>For the frontend, <filename
role="package">multimedia/mythtv-frontend</filename> is required,
as well as an X server, which can be found in <filename
role="package">x11/xorg</filename>. Ideally, the frontend
computer also has a video card that supports <acronym
role="X-Video Motion Compensation">XvMC</acronym> and,
optionally, a <acronym
role="Linux Infrared Remote Control">LIRC</acronym>-compatible
remote.</para>
<para>For the backend, <filename
role="package">multimedia/mythtv</filename> is required, as well
as a &mysql; database, and optionally a tuner and storage for
recordings. The &mysql; package should be automatically installed
as a dependency when installing <filename
role="package">multimedia/mythtv</filename>.</para>
</sect2>
<sect2>
<title>Setting up MythTV</title>
<para>To install MythTV, use the following steps. First, install
MythTV from the &os; Ports collection:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/multimedia/mythtv</userinput>
&prompt.root; <userinput>make install</userinput></screen>
<para>Set up the MythTV database:</para>
<screen>&prompt.root; <userinput>mysql -uroot -p < /usr/local/share/mythtv/database/mc.sql</userinput></screen>
<para>Configure the backend:</para>
<screen>&prompt.root; <userinput>mythtv-setup</userinput></screen>
<para>Start the backend:</para>
<screen>&prompt.root; <userinput>echo 'mythbackend_enable="YES"' >> /etc/rc.conf</userinput>
&prompt.root; <userinput>/usr/local/etc/rc.d/mythbackend start</userinput></screen>
</sect2>
</sect1>
<sect1 id="scanners"> <sect1 id="scanners">
<sect1info> <sect1info>
<authorgroup> <authorgroup>