Windows Watching Recordings in Windows with MythTv Player

From MythTV Official Wiki
Revision as of 15:09, 12 February 2007 by ColeSlaw (talk | contribs)

Jump to: navigation, search


There are many ways to watch MythTV recordings on Windows. MythTv Player is the easiest so far to set up and use for streaming recordings over a local network. Over my home wireless 802.11g network, I am able to watch in progress recording from my Windows laptop in a different room.


  • Plays MPEG2, transcoded recordings and High Definition. I've only tested MPEG2 recordings from my Hauppauge WinTV PVR-250.
  • Support for MythTv version 0.18 to 0.20.1, I've used it on 0.20.
  • Independent, so no need for external codecs or other annoyances.
  • Configs are quick, you need to edit a text file to include the host name or static IP for the Myth backend.


If you have not already altered MYSQL on the Myth backend to allow for remote connections to the Myth DB, you will need to do this step:

In a shell on the MythTV backend connect to MYSQL as root

$ mysql -u root mythconverg

mysql> grant all on mythconverg.* to mythtv@"192.168.1.%" identified by "mythtv";

mysql> flush privileges;

mysql> quit

If you have set a MYSQL password for the root user, put a -p on the first command line and enter the root password when prompted.

The 192.168.1.% means any machine on my local network, where the router gives out addresses in this range. Some routers use 192.168.0.%.

Installing MythTv Player

[Download MythTv Player ] by selecting one of the version links on this page. I recommend the latest testing verison, currently: 0.3.4. The link opens a zip file, so save it to your machine and open it with Winzip or use the windows option to open it with "compressed folder". You should extract the contents somewhere you can run it from, such as c:\mythtvplayer.

Edit Config file

Since version 0.3.3 MythTVPlayer will ask you the ip address of your backend machine when it starts. Enter your hostname or ip address of the backend you want to connect to when you first start MythTVPlayer. It will be stored in the file config.xml in the install directory.

Skip ahead if you downloaded 0.3.3.

Prior to version 0.3.3 you have to run the program once to generate the config file. Run MythTv Player and you will receive an error that the config file does not exist. Close the application and look in the install directory. You should now find config.xml. There is a readme here with complete instructions, you might want to look at that too.

Edit the config.xml with notepad and find the line


Change this line to include the name or IP of your MythTV backend. For example:


Other Options that are available in the config.xml file are as follows:

<AutoBookmark>: '1' and a bookmark is automatically set when recording is stopped.

<UseWindowsShare>: '1' and recordings are opened from windows share. '0' they are streamed using the MythTv protocol. Windows shares seems to be much faster.

<WindowsShare>: Point this to the windows share that contains the recordings.

<StreamBufferEnabled> '1' to enable stream buffer. The streambuffer is really only needed when streaming on wireless.

<DeleteRecordingsEnabled> '1' and recordings can be deleted from GUI. '0' to disable.

<SDLAdvancedVideoWindow>: Set to 1 to remove titlebar from window. It does not work on all graphics hardware.

<PreBufferingPercent>: Percentage of buffers to fill before starting to play when starting new recording or seeking.

<ReBufferingPercent>: Percentage of buffers to fill after a buffer underrun.

Save the file and restart MythTV Player to accept any changes made.

Using MythTv Player

When you open MythTv Player, you initially have two windows, one is for controlling, and the other is the resizable viewing window. I usually watch it in slightly less than full screen.


To choose a recording, click the R button. This opens a 3rd window, showing your recordings on the Myth Backend so you can choose one to view.


When you click or select a recording a description, lenght, and other information about the recording is displayed. To play the selected recoding click the Play button. A dialog box will ask you if you want to Auto Skip commercials, you can answer yes or no. If you answer No, you can skip commercials manually (see below).

Resize the view window to your liking.

As of version 0.3.4, the delete button is now available. If pressed, it will delete the highlighted recording from the backend server.

The Status button on the control screen is helpful. It is the S button. There you can see the frames per second, dropped frames, and the buffer size and levels. The control has Play, Pause, foward and backward. The control window also shows the current position in the stream and the total recording length, and your throughput.


You can use several hotkeys while a recording is playing back:

  • (esc) quit
  • (P) to Play or Pause the recording
  • (F) to toggle between fullscreen/window
  • (A) Sets playback window to "Always on Top" mode
  • (Q) to go back to the prior commercial cut point
  • (Z) to go forward to the next commercial cut point
  • (L/R arrows) to navigate the recording (forward or back 2 minutes)
  • (spacebar) to set a bookmark at the current position
  • (W) Zooms in to a different Aspect Ratio
  • (1) Resize to 50%
  • (2) Resize to 100%
  • (3) Resize to 200%

If you saved a position in MythTVPlayer the Myth Frontend will also use that saved position and vice-versa.


The player could not have been created without the following amazing libraries. A big applause goes to the developers of these.

Ffmpeg: Fmpeg is used for demuxing, audio and video decoding. It is included under the terms of the LGPL license. See 'lgpl.txt' in MythTV Player downloaded file.

Fltk: Fast Light ToolKit 2 is used for the Graphical User Interface. It is included under the terms of the LGPL license. See 'lgpl.txt' in MythTV Player downloaded file.

SDL: Simple Directmedia Layer is used for image and audio handling. It is included under the terms of the LGPL license. See 'lgpl.txt' in MythTV Player downloaded file.

TinyXml: The TinyXml library is used for the XML config file.