## mythtvsrc mythtvsrc — Control and receive data as a client over the network via raw socket connections using the MythTV protocol |

## Synopsis

    struct              GstMythtvSrc;

## Object Hierarchy

      GObject
       +----GstObject
             +----GstElement
                   +----GstBaseSrc
                         +----GstPushSrc
                               +----GstMythtvSrc

## Implemented Interfaces

GstMythtvSrc implements GstURIHandler.

## Properties

      "location"                 gchar*                : Read / Write
      "mythtv-channel"           gchar*                : Read / Write
      "mythtv-enable-timing-position" gboolean              : Read / Write
      "mythtv-live"              gboolean              : Read / Write
      "mythtv-live-chainid"      gchar*                : Read / Write
      "mythtv-live-id"           gint                  : Read / Write
      "mythtv-version"           gint                  : Read / Write

## Description

MythTVSrc allows to access a remote MythTV backend streaming Video/Audio server, and to render audio and video content through a TCP/IP connection to a specific port on this server, and based on a known MythTV protocol that is based on some message passing, such as REQUEST_BLOCK on a specified number of bytes, to get some chunk of remote file data. You should pass the information aboute the remote MythTV backend server through the "location" property.

### Examples

If you want to get the LiveTV content (set channel, TV tuner, RemoteEncoder, Recorder), use the following URI:

     myth://xxx.xxx.xxx.xxx:6543/livetv?channel=BBC

This URI will configure the Recorder instance (used to change the channel, start the TV multimedia content transmition, etc.), using the IP address (xxx.xxx.xxx.xxx) and port number (6543) of the MythTV backend server, and setting the channel name to "BBC".

To get a already recorded the MythTV NUV file, put the following URI:

     myth://xxx.xxx.xxx.xxx:6543/filename.nuv

Another possible way to use the LiveTV content, and just in the case you want to use the mysql database, put the location URI in the following format:

     myth://mythtv:mythtv@xxx.xxx.xxx.xxx:6543/?mythconverg&channel=9

Where the first field is the protocol (myth), the second and third are user name (mythtv) and password (mythtv), then backend host name and port number, and the last field is the database name (mythconverg).

## Synopsis

### Element Information

plugin | mythtv
author | Rosfran Borges <rosfran.borges@indt.org.br>, Renato Filho <renato.filho@indt.org.br>
class | Source/Network

### Element Pads

name | src
direction | source
presence | always
details | ANY

## Details

### struct GstMythtvSrc

    struct GstMythtvSrc;

## Property Details

### The `"location"` property

      "location"                 gchar*                : Read / Write

Default value: ""

### The `"mythtv-channel"` property

      "mythtv-channel"           gchar*                : Read / Write

Change MythTV channel number.

Default value: ""

### The `"mythtv-enable-timing-position"` property

      "mythtv-enable-timing-position" gboolean              : Read / Write

Enable MythTV Live TV content size continuous updating.

Default value: FALSE

### The `"mythtv-live"` property

      "mythtv-live"              gboolean              : Read / Write

Enable MythTV Live TV content streaming.

Default value: FALSE

### The `"mythtv-live-chainid"` property

      "mythtv-live-chainid"      gchar*                : Read / Write

Sets the MythTV chain ID (from TV Chain).

Default value: ""

### The `"mythtv-live-id"` property

      "mythtv-live-id"           gint                  : Read / Write

Change MythTV version.

Allowed values: [0,200]

Default value: 1

### The `"mythtv-version"` property

      "mythtv-version"           gint                  : Read / Write

Change MythTV version.

Allowed values: [26,30]

Default value: 26

## See Also

nuvdemux