Skip to content
Donald Oakes edited this page Jul 30, 2015 · 35 revisions

A streamlined, mobile-first program guide for MythTV.

###Contents Installation
Customization
Record & Transcode
MythTV 0.28 Features

###Installation Mythling EPG comes embedded in the [Mythling](http://oakesville.github.io/mythling/) Android app. If you've installed Mythling according to the [Setup Guide](Home), the fully-functional EPG is available through the action menu. However, Mythling EPG is 100% HTML5 and can also run on its own in any browser. You may choose to host Mythling EPG outside of the app so that you can access it from your desktop PC or iOS device. Or you may want to customize the source. Either way, if you decide to host outside of Mythling, you can then configure the Mythling app to also use your hosted/custom EPG.

####Instructions for hosting outside of Mythling:

  • You need MythTV 0.27 or later (see below). The easiest way to host Mythling EPG is to use MythTV's built-in web server.
  • Download the distribution zip file and unpack it into the root directory of your backend's built-in web server. On Fedora Linux the root directory is as follows:
    • /usr/share/mythtv/html (for pre-packaged MythTV installations)
    • /usr/local/share/mythtv/html (for built-from-source MythTV)
  • Point your browser to: http://:6544/mythling-epg/guide.html (or guide-omb.html for older browsers).
###Customization There are a number of user options that Mythling EPG supports. These can be passed as standard URL parameters from the browser, or in the Mythling app they can be set through the Program Guide settings screen. The mythling-epg look-and-feel can also be customized through stylesheets.

####Parameters

  • startTime - ISO-formatted start time for MythTV guide data. Defaults to the present client time.
    • startTime=2015-07-12T06:00:00.000Z
  • guideInterval - Hours to retrieve when more data is needed (i.e. when scrolling right). Default is 12 hours.
    • guideInterval=24
  • bufferSize - As scrolling approaches the end of available data, retrieval will be triggered to keep this many screen widths available to the right. Default is 8.
    • bufferSize=6
  • guideHistory - Hours to retrieve prior to start time. Must be less than guideInterval. Defaults to zero.
    • guideHistory=2
  • channelGroupId - ID of the MythTV Channel Group for listings display. Requires MythTV 0.28 or the mythlingServices parameter. Defaults to 0, which means all channels.
    • channelGroupId=1
  • mythlingServices - Whether to use Mythling Media Services for guide data retrieval. Can be much faster, but requires that mythling-epg be proxied through Apache so it's available on the same host/port as Mythling services. Defaults to false. In Mythling settings this is under Connections rather than Program Guide.
    • mythlingServices=true
  • demoMode - Loads data from JSON files on the server, as in the Mythling EPG Demo. Defaults to false.
    • demoMode=true
  • revertLabelsToFixed - Some mobile browsers may give a better experience if the headers and channel label elements revert to CSS position="fixed". Value is in ms. Default is zero, meaning no reversion.
    • revertLabelsToFixed=500

####Look-And-Feel

  • Stylesheets - You can customize all Mythling style classes without need to modify mythling.css. Simply drop in your own stylesheet to your hosted mythling location and update guide.html to reference it after mythling.css:
    <link rel="stylesheet" href="css/mythling.css"> 
    <link rel="stylesheet" href="css/my-mythling.css">
    
    Make sure you follow the filename convention <something>-mythling.css, or else the slot-width, row-height, header-height and label-width classes will not be recognized by mythling-epg's javascript.
  • Zoom - To maximize scrolling performance, Mythling EPG is not user-scalable on mobile browsers. However, you can adjust the fixed scale by modifying the viewport meta tag in guide.html. For example to set zoom at 150% you'd use the following:
    <meta name="viewport" content="width=device-width,initial-scale=1.5,user-scalable=no"> 
    
    The Mythling app injects this automatically according to the Program Guide Zoom setting; however, the Android WebView seems to ignore this setting so it's considered experimental.
  • Channel Icons - TODO: provide an example of a modified guide.html and my-mythling.css to show channel icons instead of numbers.
###Record & Transcode Mythling EPG is not intended as a replacement for the full-blown recording rules editors in MythTV's WebFrontend and MythWeb. Instead, its focus is on simplicity and mobile-friendliness. An example of this approach is the *Record & Transcode* menu option. This is meant to provide an easy way to schedule a recording and subsequent transcode job. It always uses MythTV's Default Recording Profile and the Autodetect Transcoder. To configure these, set the following in mythtv-setup: - General > Allow transcoding jobs - Recording Profiles > (Selected Recorder) > (Default Profile) > Enable auto-transcode after recording ###MythTV 0.28 Features Some features in Mythling EPG only work with [MythTV 0.28](https://www.mythtv.org/wiki/Release_Notes_-_0.28). These include Search, Cast Display and Channel Groups, as well as the Don't Record and Never Record menu options.

Also, apparently HTTP Digest authentication support is targeted for MythTV 0.28's built-in web server: https://www.mythtv.org/wiki/WebFrontend.
If this comes to pass, it will significantly simplify Mythling External Network Access setup. Stay tuned.

Clone this wiki locally