From Gentoo Wiki
Jump to: navigation, search
This article is a stub. You can help by expanding it.

MythTV is a powerful media center and video recording software system. The distributed architecture allows analog and digital media to be captured, organized, and streamed over the network to other MythTV instances or network attached devices.


MythTV is a complex and capable system and during the first install can be a little daunting to configure if there is no familiarity with the software. Once the backend has been set up properly and configured with recording devices/sources (DVB or analog capture etc.), there is usually little maintenance here and there in the future.


Depending on how MythTV is going to be configured, there may be options in the kernel that need to be enabled. If support is required for recording media from DVB devices or controlling with a remote control, the relevant devices need to be enabled in the kernel before MythTV or any other applications will be able to access them.

KERNEL Example enabling support for DVB devices
Write kernel feature instructions here.

USE flags

MythTV has quite a few USE flags to customize configuration according to hardware specification and software requirements.

USE flags for media-tv/mythtv Homebrew PVR project

alsa Allows MythTV to directly output sound to ALSA devices, this is needed if you are using ALSA dmix or SPDIF. Note, you will have to physically type your device into the MythTV configuration since it will only give you /dev/dsp devices in the drop down.
altivec Builds ffmpeg's codec libraries with altivec support.
autostart Uses a custom autostart configuration gleaned from experience with MythTV since its early versions and discussed with other MythTV maintainers and users. Does not rely on KDE being installed like most methods do.
bluray Pulls in libbluray for BluRay support.
cec Allows you to control CEC enabled TVs via HDMI. Currently requires a USB based CEC -> HDMI injector between your TV and video card since no graphics drivers support CEC natively.
crystalhd Allows you to utilize a Broadcom CrystalHD hardware based video decoder to improve the performance of video decode.
debug Instructs Qt to use the 'debug' target instead of 'release' target. If your MythTV is crashing or you need a backtrace, you need to compile it with this option otherwise the debugging data is useless.
egl Support EGL video output.
fftw Support visualizations via sci-libs/fftw
hls HTTP Live Streaming support
ieee1394 Allows MythTV to communicate and use Firewire enabled Cable boxes. These are typically found in the United States, where such support is required by law. This will also install Firewire test programs and external channel changers if the internal changer does not work.
jack Allows MythTV to use JACK as your sound output device. You will have to manually configure the path to your JACK settings.
lcd Tells MythTV that you have an instance of app-misc/lcdproc configured on your machine and it should output information such as current time, show name, episode name, etc to that LCD.
libass SRT/SSA/ASS (SubRip / SubStation Alpha) subtitle support
lirc Adds LIRC support directly to MythTV allowing for built in control via a LIRC device.
mythlogserver Enable support for syslog and file logging. Not used with systemd.
perl Builds the perl bindings for MythTV. Allows you to write scripts in Perl to control your MythTV setup or communicate with it.
python Add optional support/bindings for the Python language
theora Add support for the Theora Video Compression Codec
vaapi Enable Video Acceleration API for hardware decoding
vorbis Add support for the OggVorbis audio codec
wrapper Use Ubuntu mythtfrontend wrapper.
xmltv Pulls in the media-tv/xmltv TV listing grabbers for users not using Schedules Direct.
xvid Add support for's open-source mpeg-4 codec


root #emerge --ask media-tv/mythtv


(Explain how to configure the package/software/tool/utility in this section.)

MythTV includes a backend which handles recordings and manages databases of media, this has to be configured and running before the a client, mythfrontend, or other media player can interact with the MythTV system. MythTV also requires a running MySQL compatible database server such as MySQL or MariaDB to function, this is handled through the database modules of Qt.


A database will need to be set up before the MythTV backend can be started. The emerge command should have already pulled in MySQL or MariaDB but the database server may not have been configured yet, if this is the case please refer to MySQL or MariaDB for information. The following command will set up the MythTV database using the emerge config phase, this will require a root user and password for the database.

root #emerge --config media-tv/mythtv


At least one backend must be running to use MythTV, this can be on the same host as the frontend or a different host on the network.

Start the MythTV backend on the chosen host(s) and add it to the default runlevel.

root #/etc/init.d/mythbackend start
root #rc-update add mythbackend default


This page is a work in progress by Gavlee (talk | contribs). Treat its contents with caution.

(Explain how to use the package/software/tool/utility in this section.)


(Remove this section if not applicable.)

MythTV frontend

The mythfrontend application is the frontend process of MythTV for viewing media on the MythTV system.

user $mythfrontend




Removal can be as simple as running:

root #emerge --ask --depclean --verbose media-tv/mythtv

See also

  • MythTV/MythPlugins - Plugins for MythTV handling games, news, weather, etc.
  • MythTV/MythWeb - Web application for allowing control of MythTV from a web browser.
  • Kodi — an open source home theater application.

External resources