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

A streamlined, mobile-first program guide for MythTV.

###Contents Installation
Customization

###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 configure the Android app to also use your hosted EPG.

####Instructions for hosting outside of Mythling:

  • You need MythTV 0.27 or later. The easiest way to host Mythling EPG is to use MythTV's built-in web server.
  • Download the distribution zip file and unpack the distribution zip file 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. Defaults to 0, which means all channels.
    • channelGroupId=1
  • mythlingServices - Whether to use Mythling Media Services for guide data retrieval. Can be much faster. 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.
Clone this wiki locally