Difference between revisions of "Setup General"

From MythTV Official Wiki
Jump to: navigation, search
(Running mythtv-setup)
(prev. said "vertical blanking interrupt", which is a software technique of display updating (w/ h/w assistance from the video controller), which has nothing to do with CC data.)
(46 intermediate revisions by 15 users not shown)
Line 1: Line 1:
{{Navigate|User Manual:Setting Up|User Manual:Index|User Manual:Detailed configuration Frontend}}
+
{{User Manual TOC}}
  
Backend
+
This page is up-to-date to MythTV version 0.21, the current release is {{CurrentRelease}}
  
MythTV Detailed Backend Configuration v. 0.21. (Incomplete)
+
== Introduction ==
  
 +
This manual takes you through a detailed walk through into the various backend configuration options. Before doing this, a few ground concepts and terms should be explained so that the backend setup tasks sound logical to you:
  
== MythTV Backend ==
+
With the backend of MythTV we mean the portion of the system that enables you to use [[Video capture card|capture devices]] as well as [[Scheduling Recordings]] on those cards, [[Commercial Detection]], and [[transcoding]]. In short the backend process interacts with the [[Database]] and the [[hardware]] primarily. 
  
The backend process (mythbackend) is the portion of the system that handles the [[Video capture card]]s as well as [[Scheduling Recordings]] on those cards, [[Commercial Flagging]], and [[transcoding]]The backend process interacts with the [[Database]] and the [[hardware]] primarily.   
+
As with the [[Mythfrontend]], there can be multiple backends.  One backend process is designated as the master backend.  This is usually the first backend installed on a system.  This backend is responsible for coordinating the activities of the other backends known as slavesThis is especially true for scheduling as the master backend will determine the best distribution of programs across all available tuners.  Each backend can have any number of tuners.  [[Commercial Detection]] can be distributed across different backends, thereby spreading the load of that process.   
  
As with the [[MythFrontend]], there can be multiple backends.  One backend process is designated as the master backend.  This is usually the first backend installed on a system.  This backend is responsible for coordinating the activities of the other backends known as slaves.  This is especially true for scheduling as the master backend will determine the best distribution of programs across all available tuners.  Each backend can have any number of tuners.  [[Commercial Flagging]] can be distributed across different backends, thereby spreading the load of that process.
+
There is no requirement for direct user interaction with the backend.  The backend can use local [[Hardware]]/[[File Storage]] or have it mounted from another system.  If remotely mounted, network performance should be considered as there will be considerable traffic on the network as recordings are stored and retrieved by the backend process.
  
There is no requirement for direct user interaction with the backend.  The backend can use local [[HardWare]]/[[File Storage]] or have it mounted from another system.  If remotely mounted, network performance should be considered as there will be considerable traffic on the network as recordings are stored and retrieved by the backend process.
+
: ''The backend and frontend communicate using their own Communications Protocol ([[:Category:Myth Protocol|Myth Protocol]]).  The developer of [[Win Myth]], a windows frontend to MythTV for playing recordings on Windows, has documented his workings on the protocol [http://winmyth.sourceforge.net/mythprotocol.html here].  Work on defining the [[:Category:Myth Protocol|Myth Protocol]] is also being performed on this Wiki.}}''
  
===Communications Protocol===
 
  
The backend and frontend communicate using their own [[Myth Protocol]].  The developer of [[Win Myth]], a windows frontend to MythTV for playing recordings on Windows, has documented his workings on the procotol [http://winmyth.sourceforge.net/mythprotocol.html here].  Work on defining the [[Myth Protocol]] is also being performed on this Wiki.
+
==Running [[Mythtv-setup | mythtv-setup]]==
 
 
===Backend Configuration===
 
 
 
The MythTV Backend configuration has two main objectives
 
* Tell MythTV what TV Capture/Tuner cards to use
 
* Populate the Myth Database with information about channels and tuning information
 
 
 
There are additional items that can be configured, but without successfully achieving the above two steps you will not be able to get Live TV.
 
 
 
====Running [[Mythtv-setup | mythtv-setup]]====
 
  
 
Configure the Myth backend like so
 
Configure the Myth backend like so
  
> /usr/bin/mythtv-setup
+
<code>> /usr/bin/mythtv-setup</code>
  
 
You will now see the GUI for MythTV to setup the backend server and in particular the channel tuning for our broadcast streams. You will need to set up:
 
You will now see the GUI for MythTV to setup the backend server and in particular the channel tuning for our broadcast streams. You will need to set up:
  
#General &mdash; General Backend settings, most user can use the defaults
+
# General General Backend settings (most user can use the defaults) ''See the next section for detailed explanation.''
#Capture Cards &mdash; you will configure your capture cards/devices here
+
# Capture Cards — Add and configure your capture devices here  
#Video Sources &mdash; create guide data.
+
# Video Sources create guide data. This may require you to subscribe to an online service that provides programming information specific to your location and TV service.
#Input connections &mdash; connect the Capture Card name to the Video Source
+
# Input connections — tell your Capture Card(s) to which Video Source they should connect. (If you are setting up an IR blaster, you will need to add a script here that controls it.)
#Channel Editor &mdash; scan for your channels here
+
# Channel Editor scan and configure your channels here  
#Storage Groups &mdash; Configure which folders your recordings will be saved.
+
# Storage Groups Configure which folders your recordings will be saved to.  
  
====Starting mythbackend====
 
  
Once configuration is done you can test to see if the mythbackend process is running correctly by starting it in a Terminal window:
+
Following we will discuss the general backend settings the other configuration items will be discussed in the next chapter.
  
> /usr/bin/mythbackend
+
==General==
  
Watch out for any error messages.
+
The General settings is where you will set up the core settings of your backend. In case you are running a basic backend/frontend combined setup, you will most probably want to leave the default settings for most of this section, but in case your setup involves several separate backends and frontends, this is where you will determine the role of the backend you're currently configuring. There are two types of backends:
  
You may also find it useful to read about [[Mythwelcome]] and [[ACPI Wakeup]]
+
* Master backend: you need at least one master backend on any MythTV setup
 +
* Slave backend: TODO, explain the role of slave backends...
  
===Backend Reference===
+
===Host Address Backend Setup===
  
 
{| border="1" cellspacing="0" cellpadding="5" align="center"
 
{| border="1" cellspacing="0" cellpadding="5" align="center"
Line 63: Line 53:
 
|IP address for mythtv
 
|IP address for mythtv
 
| align="center" | 127.0.0.1
 
| align="center" | 127.0.0.1
|Enter the IP address of this machine. Use an externally accessible address (ie, not 127.0.0.1) if you are going to be running a frontend or Slave Backend on a different machine than this one.
+
|Enter the IP address of this (backend) machine. Use an '''externally accessible''' address if you are going to be running a '''frontend''' or '''Slave Backend''' on a different machine than this one. (ie, not 127.0.0.1)
|MythTV is made up of two major components, the Backend and the Frontend. If you run the Backend and Frontend on the same machine then you can leave the setting at its default value of 127.0.0.1. This is referred to as the local loopback address. If you run multiple frontends, or run your frontend on a different machine then you will need to set this to a value the machines static IP address. This value will be determined by your TCPIP Network addressing scheme.
+
|MythTV is made up of two major components, the Backend and the Frontend. If you run the Backend and Frontend on the same machine then you can leave the setting at its default value of 127.0.0.1. This is referred to as the local loopback address which is reserved for networking within a single machine. If you run multiple frontends, or run frontends over network connections on different machines, then you will need to set this to the backend machines' static IP address. This value will be determined by your TCP/IP Network addressing scheme.
 
|-
 
|-
 
|Port the server runs on
 
|Port the server runs on
Line 75: Line 65:
 
|Port which the server will listen to for HTTP requests. Currently, it shows a little status information.
 
|Port which the server will listen to for HTTP requests. Currently, it shows a little status information.
 
|You can connect to your MythTV box via a web browser at the machine's IP and this port. It shows some information on the status of the box but you should configure MythWeb for more advanced purposes.
 
|You can connect to your MythTV box via a web browser at the machine's IP and this port. It shows some information on the status of the box but you should configure MythWeb for more advanced purposes.
 +
|-
 +
|Security Pin (Required)
 +
| align="center" | 0000
 +
|  You will need to enter this PIN to authenticate to your backend. 
 +
|When using a remote frontend MythTV will auto discover your backend.  For security you must enter this PIN into the frontend to gain access.  This feature removes the need for manually configuring the $HOME/.mythtv/config.xml (or the deprecated mysql.txt). Use four zero's (0) to allow any client to connect and request database credentials.  Leave the setting blank to forbid any client from receiving database credentials.
 
|-
 
|-
 
|Master Server IP address
 
|Master Server IP address
Line 86: Line 81:
 
|If you're running only a frontend, set the port for your backend here.
 
|If you're running only a frontend, set the port for your backend here.
 
|-
 
|-
|colspan="4" align="center" style="background: #efefef;" | '''Host-Specific Backend Setup'''
+
|}
|-
+
 
! |Setting
+
===Locale Settings===
! |Default Value
+
{| border="1" cellspacing="0" cellpadding="5" align="center"
! |Settings Page's Description
+
|colspan="4" align="center" style="background: #efefef;" | '''Locale Settings'''
! |Additional Comments
 
|-
 
|Directory to hold recordings (versions prior to 0.21, .21+ use Storage Groups)
 
| align="center" |/mnt/store/
 
|All recordings get stored in this directory.
 
|Be sure this directory exists and that proper permissions are set for the mythtv user. If the directory does not exist or is inaccessible, the backend will not start.
 
|-
 
|Save original files after transcoding
 
| align="center" |Not checked
 
|When set and the transcoder is active, the original nuv files will be renamed to nuv.old once the transcoding is complete.
 
|When checked, the original .nuv files are saved after a video has been transcoded to a different codec/format (MPEG2,MPEG4, etc.). Otherwise, MythTV automatically deletes them.
 
|-
 
|colspan="4" align="center" style="background: #efefef;" | '''Global Backend Setup'''
 
 
|-
 
|-
 
! |Setting
 
! |Setting
Line 112: Line 94:
 
|TV format
 
|TV format
 
| align="center" |NTSC
 
| align="center" |NTSC
|The standard to use for viewing TV in the USA.  
+
|The standard to use for viewing TV.  
|Other choices include: ASTC, PAL, SECAM, PAL-NC, PAL-M, PAL-N, NTSC-JP. Be sure to set to the proper format for your region.  
+
|Other choices include: ATSC, PAL, SECAM, PAL-NC, PAL-M, PAL-N, NTSC-JP. Be sure to set to the proper format for your region.  
 
|-
 
|-
 
|VBI format
 
|VBI format
 
| align="center" |None
 
| align="center" |None
|VBI stands for Vertical Blanking Interrupt. VBI is used to carry Teletext and Closed Captioning data.
+
|VBI stands for vertical blanking interval, the time between tracing the last line on the display and returning to the first, when the CRT's electron beam is turned off (blanked). The VBI is used to carry Teletext and Closed Captioning data.
 
|In TV broadcasting not all of the available lines in each frame of the picture are used. For example in CCIR systems (PAL and SECAM)25 lines per field (50 per frame) are specified for other uses. The remaining lines can be used for data broadcasting, and are typically used for closed caption or teletext. You may sometimes notice a squiggly black and white line or cube right at the top of the screen in a transmission; this is data being transmitted. In some countries, specific data broadcasting companies have exclusive rights on the use of the VBI lines. Options are None, PAL Teletext,  
 
|In TV broadcasting not all of the available lines in each frame of the picture are used. For example in CCIR systems (PAL and SECAM)25 lines per field (50 per frame) are specified for other uses. The remaining lines can be used for data broadcasting, and are typically used for closed caption or teletext. You may sometimes notice a squiggly black and white line or cube right at the top of the screen in a transmission; this is data being transmitted. In some countries, specific data broadcasting companies have exclusive rights on the use of the VBI lines. Options are None, PAL Teletext,  
 
|-
 
|-
Line 127: Line 109:
 
|Time offset for XMLTV listings
 
|Time offset for XMLTV listings
 
| align="center" | None
 
| align="center" | None
|If your local timezone does not match the timezone returned by XMLTV, use this setting to have mythfilldatabase adjust the program start and end times. None disables this feature, Auto automatically detects your local timezone.
+
|If your local time zone does not match the time zone returned by XMLTV, use this setting to have mythfilldatabase adjust the program start and end times. None disables this feature, Auto automatically detects your local time zone.
|Leave this alone if you're an American using the SchedulesDirect xml service.  
+
|Leave this alone if you're an American using the SchedulesDirect XML service.  
 +
|-
 +
|}
 +
 
 +
===Miscellaneous Settings===
 +
{| border="1" cellspacing="0" cellpadding="5" align="center"
 +
|colspan="4" align="center" style="background: #efefef;" | '''Miscellaneous Settings'''
 +
|-
 +
! |Setting
 +
! |Default Value
 +
! |Settings Page's Description
 +
! |Additional Comments
 
|-
 
|-
 
|Master Backend Override
 
|Master Backend Override
Line 140: Line 133:
 
|This is the meat of the subject
 
|This is the meat of the subject
 
|-
 
|-
 +
|Delete Files Slowly
 +
| align="center" | Not checked
 +
|Some filesystems use a lot of resource when deleting large recording files.  This option makes Myth delete the file slowly on this backend to lessen the impact.
 +
|Use this option if you experience video stutter while Myth deletes recordings in the background.
 +
|-
 +
|HD Ringerbuffer size (kb)
 +
| align="center" | 4700
 +
|The HD device ring buffer allows the backend to weather moments of stress.  the larger the ring buffer, the longer the moments of stress can be.  However, setting this too large can cause swapping, which is detrimental.
 +
|The default setting should be used in normal conditions.  If you experience crashes when watching HD try increase this.  You may need a stronger signal to eliminate the errors.
 +
|-
 +
|Storage Group disk scheduler
 +
|????
 +
|????
 +
|????
 +
|-
 +
|Miscellaneous Status Application
 +
| align="center" | blank
 +
| External Application or script that outputs extra information for inclusion in the backend status page.  See contrib/misc_status_info/README
 +
|no comments.
 +
|-
 +
|Disable Firewire Reset
 +
| align="center" | Unchecked
 +
| By default MythTV will reset the firewire bus when a firewire recorder stops responding to commands.  But if this causes problems you can disable this here for Linux firewire recorders.
 +
|no comments.
 +
|-
 +
|}
 +
 +
===Shutdown/Wakeup Options===
 +
{| border="1" cellspacing="0" cellpadding="5" align="center"
 
|colspan="4" align="center" style="background: #efefef;" | '''Shutdown/Wakeup Options'''
 
|colspan="4" align="center" style="background: #efefef;" | '''Shutdown/Wakeup Options'''
 
|-
 
|-
Line 147: Line 169:
 
! |Additional Comments
 
! |Additional Comments
 
|-
 
|-
|Startup command (new to 0.19)
+
|Startup command
 
| align="center |(empty)
 
| align="center |(empty)
 
|This command is executed right after starting the backend. As a parameter '$status' is replaced by either 'auto' if  the machine was started or 'user' if a user switched it on.
 
|This command is executed right after starting the backend. As a parameter '$status' is replaced by either 'auto' if  the machine was started or 'user' if a user switched it on.
Line 177: Line 199:
 
|Set this parameter to be the same as that expected by the BIOS clock.
 
|Set this parameter to be the same as that expected by the BIOS clock.
 
|-
 
|-
|Set wakeuptime command
+
|Command to set Wakeup Time
 
| align="center" |Blank
 
| align="center" |Blank
 
|The command used to set the time (passed as $time) to wake up the master backend.
 
|The command used to set the time (passed as $time) to wake up the master backend.
Line 202: Line 224:
 
|Pre Shutdown check-command
 
|Pre Shutdown check-command
 
| align="center" |Blank
 
| align="center" |Blank
|A command executed before the backend would shutdown. The return value determines if the backend can shutdown. 0 - yes, 1 - restart idling, 2 - reset the backend to wait for a frontend.
+
|A command executed before the backends would shutdown. The return value determines if the backends can shutdown. 0 - yes, 1 - restart idling, 2 - reset the backends to wait for a frontend. On a single combined frontend/backend "/usr/bin/mythshutdown --check" will do.
|Your machine may be doing other things such as Samba file sharing or streaming music that are not MythTV related. In this case you will want to have script here that checks stuff before it shuts down.
+
|Your machines may be doing other things such as Samba file sharing or streaming music that are not MythTV related. In this case you will want to have script here that checks stuff before it shuts down.
 +
If you want to run a check on both master and slave backend, you can use the following script for /usr/local/bin/mythtv-preshutdown.sh on the master backend. In this case it does not shutdown if someone is logged in on the machines.
 +
 
 +
  logfile=/var/log/mythtv/mythpreshutdown.log
 +
  exstate=0
 +
  ps_who=`who | grep -v mythtv | grep -c ':'`
 +
  if [ $ps_who != 0 ]; then
 +
    echo "User logged in" >> $logfile 
 +
    exstate=1
 +
  fi
 +
  #run the next check on master backend only. Slave backend hostname is hardcoded...
 +
  ping -c 3 slavebackend > /dev/null
 +
  errorlvl=$?
 +
  if [ $errorlvl == 0 ]; then
 +
    echo "slave backend is up" >> $logfile
 +
    ssh slavebackend /usr/local/bin/mythtv-preshutdown.sh
 +
    if [ $? === 1 ]; then
 +
      echo "slave backend not ready for shutdown yet" >> $logfile
 +
      exstate=1
 +
    fi
 +
  fi
 +
  /usr/bin/mythshutdown --check
 +
  if [ $? == 1 ]; then
 +
    echo "mythshutdown builtin checks prevent shutdown" >> $logfile
 +
    exstate=1
 +
  fi
 +
  exit $exstate
 +
 
 +
after setting up ssh authentication without passwords from master backend to slave backend.
 +
|-
 
|}
 
|}
  
====WakeOnLan settings====
+
===WakeOnLan settings===
 
MasterBackend
 
MasterBackend
  
Line 217: Line 268:
 
Wake command for slaves:
 
Wake command for slaves:
  
====Job Queue (Host-Specific)====
+
===Job Queue (Host-Specific)===
 
Maximum simultaneous jobs on this backend:
 
Maximum simultaneous jobs on this backend:
  
Line 223: Line 274:
  
 
Job Queue Check frequency (in seconds)
 
Job Queue Check frequency (in seconds)
 +
 +
Job Queue Start Time:
 +
 +
Job Queue End Time:
  
 
CPU Usage
 
CPU Usage
  
 
Allow Commercial Detection jobs
 
Allow Commercial Detection jobs
 +
 +
Allow Transcoding jobs
  
 
Allow User Job #1 jobs
 
Allow User Job #1 jobs
Line 236: Line 293:
 
Allow User Job #4 jobs
 
Allow User Job #4 jobs
  
====Job Queue (Job Commands)====
+
===Job Queue (Global)===
 +
{| border="1" cellspacing="0" cellpadding="5" align="center"
 +
| colspan="4" align="center" style="background: #efefef;" | '''Job Queue (Global)'''
 +
|-
 +
! |Setting
 +
! |Default Value
 +
! |Settings Page's Description
 +
! |Additional Comments
 +
|-
 +
|Run Jobs only on original recording backend
 +
|
 +
|If set, jobs in queue will be required to run on the backend that made the original recording.
 +
|
 +
|-
 +
|Start Auto-commercial Detection jobs when the recording starts
 +
|
 +
|If set and Auto Commercial Detection is ON for a recording, the detection job will be started as soon as the recording starts. NOT recommended on underpowered systems.
 +
|
 +
|-
 +
|Commercial Detector command
 +
| align="center" |mythcommflag
 +
|The program used to detect commercials in a recoding. The Defaults is 'mythcommflag' if this setting is empty.
 +
| [[User Jobs#User Job arguments|List]] of arguments. <br>
 +
Equivalent default command: '''mythcommflag -j %JOBID% -V %VERBOSELEVEL%'''
 +
|-
 +
|Transcoder command
 +
| align="center" |mythtranscode
 +
|The program used to transcode recordings. The Defaults is 'mythtranscode' if this setting is empty.
 +
| [[User Jobs#User Job arguments|List]] of arguments. <br>
 +
Equivalent default command: '''mythtranscode -j %JOBID% -V %VERBOSELEVEL% -p %TRANSPROFILE% [-l]''' <br>
 +
('-l' is passed only if cutlists are to be used in transcoding)
 +
|-
 +
|Run Transcode Jobs before Auto-Commercial Detection
 +
| align="center" |Not Checked
 +
|If set, if both auto-transcode and auto commercial detection are turned ON for a recording, transcoding will run first, otherwise, commercial detection runs first.
 +
|
 +
|-
 +
|Save original files after transcoding (globally)
 +
| align="center" |Not Checked
 +
|When set and the transcoder is active, the original files will be renamed to .old once transcoding is complete.
 +
|
 +
|-
 +
|}
 +
 
 +
===Job Queue (Job Commands)===
 
User Job #1 Description:
 
User Job #1 Description:
  
Line 253: Line 354:
 
User Job #4 Command:
 
User Job #4 Command:
  
 +
==Starting mythbackend==
 +
 +
Once configuration is done you can test to see if the mythbackend process is running correctly by starting it in a Terminal window:
 +
 +
$ /usr/bin/mythbackend
 +
 +
Watch out for any error messages.
  
{{Navigate|User Manual:Setting Up|User Manual:Index|User Manual:Detailed configuration Frontend}}
+
You may also find it useful to read about [[Mythwelcome]] and [[ACPI Wakeup]]

Revision as of 14:09, 14 July 2013


This page is up-to-date to MythTV version 0.21, the current release is 34.0

Introduction

This manual takes you through a detailed walk through into the various backend configuration options. Before doing this, a few ground concepts and terms should be explained so that the backend setup tasks sound logical to you:

With the backend of MythTV we mean the portion of the system that enables you to use capture devices as well as Scheduling Recordings on those cards, Commercial Detection, and transcoding. In short the backend process interacts with the Database and the hardware primarily.

As with the Mythfrontend, there can be multiple backends. One backend process is designated as the master backend. This is usually the first backend installed on a system. This backend is responsible for coordinating the activities of the other backends known as slaves. This is especially true for scheduling as the master backend will determine the best distribution of programs across all available tuners. Each backend can have any number of tuners. Commercial Detection can be distributed across different backends, thereby spreading the load of that process.

There is no requirement for direct user interaction with the backend. The backend can use local Hardware/File Storage or have it mounted from another system. If remotely mounted, network performance should be considered as there will be considerable traffic on the network as recordings are stored and retrieved by the backend process.

The backend and frontend communicate using their own Communications Protocol (Myth Protocol). The developer of Win Myth, a windows frontend to MythTV for playing recordings on Windows, has documented his workings on the protocol here. Work on defining the Myth Protocol is also being performed on this Wiki.}}


Running mythtv-setup

Configure the Myth backend like so

> /usr/bin/mythtv-setup

You will now see the GUI for MythTV to setup the backend server and in particular the channel tuning for our broadcast streams. You will need to set up:

  1. General — General Backend settings (most user can use the defaults) See the next section for detailed explanation.
  2. Capture Cards — Add and configure your capture devices here
  3. Video Sources — create guide data. This may require you to subscribe to an online service that provides programming information specific to your location and TV service.
  4. Input connections — tell your Capture Card(s) to which Video Source they should connect. (If you are setting up an IR blaster, you will need to add a script here that controls it.)
  5. Channel Editor — scan and configure your channels here
  6. Storage Groups — Configure which folders your recordings will be saved to.


Following we will discuss the general backend settings the other configuration items will be discussed in the next chapter.

General

The General settings is where you will set up the core settings of your backend. In case you are running a basic backend/frontend combined setup, you will most probably want to leave the default settings for most of this section, but in case your setup involves several separate backends and frontends, this is where you will determine the role of the backend you're currently configuring. There are two types of backends:

  • Master backend: you need at least one master backend on any MythTV setup
  • Slave backend: TODO, explain the role of slave backends...

Host Address Backend Setup

Host Address Backend Setup
Setting Default Value Settings Page's Description Additional Comments
IP address for mythtv 127.0.0.1 Enter the IP address of this (backend) machine. Use an externally accessible address if you are going to be running a frontend or Slave Backend on a different machine than this one. (ie, not 127.0.0.1) MythTV is made up of two major components, the Backend and the Frontend. If you run the Backend and Frontend on the same machine then you can leave the setting at its default value of 127.0.0.1. This is referred to as the local loopback address which is reserved for networking within a single machine. If you run multiple frontends, or run frontends over network connections on different machines, then you will need to set this to the backend machines' static IP address. This value will be determined by your TCP/IP Network addressing scheme.
Port the server runs on 6543 Unless you’ve got a good reason to, don’t change this. As noted here you don't need to change this.
Port the server shows status on 6544 Port which the server will listen to for HTTP requests. Currently, it shows a little status information. You can connect to your MythTV box via a web browser at the machine's IP and this port. It shows some information on the status of the box but you should configure MythWeb for more advanced purposes.
Security Pin (Required) 0000 You will need to enter this PIN to authenticate to your backend. When using a remote frontend MythTV will auto discover your backend. For security you must enter this PIN into the frontend to gain access. This feature removes the need for manually configuring the $HOME/.mythtv/config.xml (or the deprecated mysql.txt). Use four zero's (0) to allow any client to connect and request database credentials. Leave the setting blank to forbid any client from receiving database credentials.
Master Server IP address 127.0.0.1 The IP address of the master backend server. All frontend and non-master backend machines will connect to this server. If you only have one backend, this should be the same IP address as above. If you're running only a frontend, set the IP address for your backend here.
Port the master server runs on 6543 Port which the server will listen to for HTTP requests. Currently, it shows a little status information. If you're running only a frontend, set the port for your backend here.

Locale Settings

Locale Settings
Setting Default Value Settings Page's Description Additional Comments
TV format NTSC The standard to use for viewing TV. Other choices include: ATSC, PAL, SECAM, PAL-NC, PAL-M, PAL-N, NTSC-JP. Be sure to set to the proper format for your region.
VBI format None VBI stands for vertical blanking interval, the time between tracing the last line on the display and returning to the first, when the CRT's electron beam is turned off (blanked). The VBI is used to carry Teletext and Closed Captioning data. In TV broadcasting not all of the available lines in each frame of the picture are used. For example in CCIR systems (PAL and SECAM)25 lines per field (50 per frame) are specified for other uses. The remaining lines can be used for data broadcasting, and are typically used for closed caption or teletext. You may sometimes notice a squiggly black and white line or cube right at the top of the screen in a transmission; this is data being transmitted. In some countries, specific data broadcasting companies have exclusive rights on the use of the VBI lines. Options are None, PAL Teletext,
Channel frequency table us-cable Select the appropriate frequency table for your system. If you have an antenna, use a “-bcast” frequency. Other choices include: us-bcast, us-cable-hrc, japan-bcast, japan-cable, europe-west, europe-east, italy, newzealand, australia, ireland, france, china-bcast, southafrica, argentina, australia-optus.
Time offset for XMLTV listings None If your local time zone does not match the time zone returned by XMLTV, use this setting to have mythfilldatabase adjust the program start and end times. None disables this feature, Auto automatically detects your local time zone. Leave this alone if you're an American using the SchedulesDirect XML service.

Miscellaneous Settings

Miscellaneous Settings
Setting Default Value Settings Page's Description Additional Comments
Master Backend Override Checked If enabled, the master backend will stream and delete files if it finds them in the video directory. Useful if you are using a central storage location, like a NFS share, and your slave backend isn’t running. This is the meat of the subject
Follow Symbolic links when deleting files Not checked This will cause Myth to follow symlinks when recordings and related files are deleted, instead of deleting the symlink and leaving the actual file. This is the meat of the subject
Delete Files Slowly Not checked Some filesystems use a lot of resource when deleting large recording files. This option makes Myth delete the file slowly on this backend to lessen the impact. Use this option if you experience video stutter while Myth deletes recordings in the background.
HD Ringerbuffer size (kb) 4700 The HD device ring buffer allows the backend to weather moments of stress. the larger the ring buffer, the longer the moments of stress can be. However, setting this too large can cause swapping, which is detrimental. The default setting should be used in normal conditions. If you experience crashes when watching HD try increase this. You may need a stronger signal to eliminate the errors.
Storage Group disk scheduler ???? ???? ????
Miscellaneous Status Application blank External Application or script that outputs extra information for inclusion in the backend status page. See contrib/misc_status_info/README no comments.
Disable Firewire Reset Unchecked By default MythTV will reset the firewire bus when a firewire recorder stops responding to commands. But if this causes problems you can disable this here for Linux firewire recorders. no comments.

Shutdown/Wakeup Options

Shutdown/Wakeup Options
Setting Default Value Settings Page's Description Additional Comments
Startup command (empty) This command is executed right after starting the backend. As a parameter '$status' is replaced by either 'auto' if the machine was started or 'user' if a user switched it on. You may want to have post-startup tasks execute autonomously once the backend server has fully initialized. Use this parameter to specify a script that will get executed along with the backed server startup routines.
Block shutdown before client connected Checked If set, the automatic shutdown routine will be disabled until a client connects. If you have shutdown wakeup enabled, the backend will normally check to see if its busy before it shuts down. Of course if you have just turned your machine on manually then you don't want it to shut down before you have had a chance to start the frontend. Once the frontend has been started then the shutdown command will take effect as soon as the frontend closes down. This means that you only need to exit the frontend and the machine will go down. With MythTV 0.18 this created a problem with Mythweb, in that as soon as Mythweb connected to a backend which had no frontend process attached, it would think that a frontend connected then disconnected and consequently shut down. This has been fixed in 0.19.
Idle timeout (secs) 0 The amount of time the master backend idles before it shuts down all backends. Set to 0 to disable auto shutdown. MythTV can have multiple backends for the hardcore recording guy. Quite nice if you want to record lots of stuff at one time or if you are just a collector of all things broadcast. One of these backend machines will be designated as the Master Backend. This parameter controls how long the master backend idles, ie is not recording, transcoding or serving frontends before it decides to shut down all backends.
Max. wait for recording (min) 15 The amount of time the master backend waits for a recording. If it's idle but a recording starts within this time period, the backends won't shut down. You don't want the machine to think its idle only to find that by the time it has shut down it has to start again to record the next schedule. This parameter tells the system to wait a period of time just in case a recording is due.
Startup before rec. (secs) 120 The amount of time the master backend will be woken up before a recording starts. You often want to start a scheduled recording before it's actually scheduled according to the guide data. This is just in case it starts early or because you need to allow your machine time to boot in a wake up to record scenario. This parameter sets how much time you want to start the backend before the scheduled recording.
Wakeup time format hh:mm yyyy-MM-dd The format of the time string passed to the 'setWakeuptime Command' as $time. See QT::QDateTime.toString() for details. Set this parameter to be the same as that expected by the BIOS clock.
Command to set Wakeup Time Blank The command used to set the time (passed as $time) to wake up the master backend. This command needs to call an external script. Here is an example command '
sudo /usr/bin/mythsettime $time

where mythsettime is an external script that sets the wakeup command parameters in the bios. Here is the mythsettime script contents

 sudo echo $1 > /home/mythtv/myth.time
 sudo echo $1 > /proc/acpi/alarm
Server halt command sudo /sbin/halt -p The command used to halt the backends. This command needs to call an external script. Here is an example command '
 sudo /usr/sbin/mythshutdown

where mythshutdown is an external script that shuts the machine down. Here is the mythshutdown script contents

 sudo /sbin/halt -p
Pre Shutdown check-command Blank A command executed before the backends would shutdown. The return value determines if the backends can shutdown. 0 - yes, 1 - restart idling, 2 - reset the backends to wait for a frontend. On a single combined frontend/backend "/usr/bin/mythshutdown --check" will do. Your machines may be doing other things such as Samba file sharing or streaming music that are not MythTV related. In this case you will want to have script here that checks stuff before it shuts down.

If you want to run a check on both master and slave backend, you can use the following script for /usr/local/bin/mythtv-preshutdown.sh on the master backend. In this case it does not shutdown if someone is logged in on the machines.

 logfile=/var/log/mythtv/mythpreshutdown.log
 exstate=0
 ps_who=`who | grep -v mythtv | grep -c ':'`
 if [ $ps_who != 0 ]; then
   echo "User logged in" >> $logfile  
   exstate=1
 fi
 #run the next check on master backend only. Slave backend hostname is hardcoded...
 ping -c 3 slavebackend > /dev/null
 errorlvl=$?
 if [ $errorlvl == 0 ]; then
   echo "slave backend is up" >> $logfile
   ssh slavebackend /usr/local/bin/mythtv-preshutdown.sh
   if [ $? === 1 ]; then
     echo "slave backend not ready for shutdown yet" >> $logfile
     exstate=1
   fi
 fi
 /usr/bin/mythshutdown --check
 if [ $? == 1 ]; then
   echo "mythshutdown builtin checks prevent shutdown" >> $logfile
   exstate=1
 fi
 exit $exstate

after setting up ssh authentication without passwords from master backend to slave backend.

WakeOnLan settings

MasterBackend

Reconnect wait time (secs):

Count of reconnect tries:

Wake Command

Wake command for slaves:

Job Queue (Host-Specific)

Maximum simultaneous jobs on this backend:

Run Jobs only on original recording host

Job Queue Check frequency (in seconds)

Job Queue Start Time:

Job Queue End Time:

CPU Usage

Allow Commercial Detection jobs

Allow Transcoding jobs

Allow User Job #1 jobs

Allow User Job #2 jobs

Allow User Job #3 jobs

Allow User Job #4 jobs

Job Queue (Global)

Job Queue (Global)
Setting Default Value Settings Page's Description Additional Comments
Run Jobs only on original recording backend If set, jobs in queue will be required to run on the backend that made the original recording.
Start Auto-commercial Detection jobs when the recording starts If set and Auto Commercial Detection is ON for a recording, the detection job will be started as soon as the recording starts. NOT recommended on underpowered systems.
Commercial Detector command mythcommflag The program used to detect commercials in a recoding. The Defaults is 'mythcommflag' if this setting is empty. List of arguments.

Equivalent default command: mythcommflag -j %JOBID% -V %VERBOSELEVEL%

Transcoder command mythtranscode The program used to transcode recordings. The Defaults is 'mythtranscode' if this setting is empty. List of arguments.

Equivalent default command: mythtranscode -j %JOBID% -V %VERBOSELEVEL% -p %TRANSPROFILE% [-l]
('-l' is passed only if cutlists are to be used in transcoding)

Run Transcode Jobs before Auto-Commercial Detection Not Checked If set, if both auto-transcode and auto commercial detection are turned ON for a recording, transcoding will run first, otherwise, commercial detection runs first.
Save original files after transcoding (globally) Not Checked When set and the transcoder is active, the original files will be renamed to .old once transcoding is complete.

Job Queue (Job Commands)

User Job #1 Description:

User Job #1 Command:

User Job #2 Description:

User Job #2 Command:

User Job #3 Description:

User Job #3 Command:

User Job #4 Description:

User Job #4 Command:

Starting mythbackend

Once configuration is done you can test to see if the mythbackend process is running correctly by starting it in a Terminal window:

$ /usr/bin/mythbackend

Watch out for any error messages.

You may also find it useful to read about Mythwelcome and ACPI Wakeup