Opened 14 years ago

Closed 13 years ago

#1495 closed patch (fixed)

Initial uPnp support

Reported by: MythTv@… Owned by: dblain
Priority: minor Milestone: 0.20
Component: mythtv Version: head
Severity: medium Keywords: upnp
Cc: Ticket locked: no

Description

I have attached my first diff (against SVN 9320) for uPnp support.

Installation:

There are 3 xml files that are used to describe the upnp devices/services in mythtv. A 'make install' will copy them to the same directory as the executables. In order for the application to know where the files are you MUST add a setting to the database:

upnpDescXmlPath = /usr/local/bin/

I'm sure there is a better way to handle this, and am open to suggestions.

Also, if you want to assign a friendly name to be displayed on upnp clients you can add this setting to the database (If it does not exist, it will build a default name with the hostname embedded in it.)

upnpFriendlyName = "MythTv?..."

Features / Limitations

1) Only Recorded programs are displayed on the client and I have not included groups yet.

2) I used a D-Link DSM-520 as the playback client when testing... I had to add device specific code for it not to treat MythTv? as a foreign server. (If an <mpeg file name>.idx file existing, then FF & FB work... I don't know how to create these files yet, I had to use videoi.exe on a windows machine to generate one)

3) The Connection Manager Service is NOT implemented yet.

4) uPnp Subscriptions & Events are not implemented yet.

5) All upnp & other methods can be accessed via SOAP, Form POST or by REST (query strings).

6) I have added a handful of methods that return XML (these were added before I started the upnp support... Some will be enhanced in the future to be more upnp like).

        /                     Same as getStatusHTML
	xml                   Same as getStatusXML

	getStatusHTML  		Returns the original HTML Status Page

	*** All of the following return XML ***

	getStatusXML   		Returns the current Status Data
	getProgramGuide		Returns a subset of the program listings
	getHosts       		Returns a list of unique Hosts contained in the Setting table.
	getKeys        		Returns a list of unique Keys in the Setting Table
	getSetting     		Returns a Keys value
	putSetting     		Sets a Keys Value
	getChannelIcon 		Retrieves the channel Icon
	getRecorded    		Retrieves a list of Recorded Programs
	getPreviewImage		Retrieves a recorded programs thumbnail image
	getRecording   		Retrieves a complete recorded video (*** Used for upnp playback)

Attachments (3)

upnp20060312.diff.gz (58.7 KB) - added by MythTv@… 14 years ago.
uPnp Diff against SVN 9320
upnp20060417.diff.gz (61.2 KB) - added by mythtv@… 14 years ago.
Updated to SVN r9728
MythXMLTest.zip (10.4 KB) - added by MythTv@… 14 years ago.
Standalone html page to test extra XML methods

Download all attachments as: .zip

Change History (8)

Changed 14 years ago by MythTv@…

Attachment: upnp20060312.diff.gz added

uPnp Diff against SVN 9320

comment:1 Changed 14 years ago by Isaac Richards

Status: newassigned

comment:2 Changed 14 years ago by mythtv@…

Updated patch (upnp20060417.diff.gz) to SVN r9728 and added more complete support for Recorded Programs (multiple categories)

Recordings

  • All Programs + <recording 1> + <recording 2> + <recording 3>
  • By Title
    • <title 1> + <recording 1> + <recording 2>
  • By Genre

...

  • By Date

...

  • By Channel

...

  • By Group

...

Changed 14 years ago by mythtv@…

Attachment: upnp20060417.diff.gz added

Updated to SVN r9728

Changed 14 years ago by MythTv@…

Attachment: MythXMLTest.zip added

Standalone html page to test extra XML methods

comment:3 Changed 13 years ago by dblain

Owner: changed from Isaac Richards to dblain
Status: assignednew

comment:4 Changed 13 years ago by dblain

Status: newassigned

comment:5 Changed 13 years ago by dblain

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.