Submit pvr.wmc addon to official pvr addons repo #245

wants to merge 20 commits into


None yet

3 participants



pvr.wmc is an XBMC PVR Addon that talks to a custom backend service, that ultimately utilises the Microsoft WMC engines for tuner hardware, recording, EPG and so on.

As per this XBMC forum post, the addon was granted it's own subforum on the condition it was submitted to the official repostory. This PR is the official submission. We have tested xbmc_pvr_addons builds on Windows, Linux and OSX platforms which are all compiling OK with the new addition. We just released version 0.1.92 (Frodo) and 0.2.92 (Gotham) of this addon, from the github repo source in the krustyreturns fork of xbmc_pvr_addons. This PR contains all code for the recently released Gotham 0.2.92 build of this addon.

Below is more detailed information on the addon. Please reply if you require any changes to be made on our side, in order to be incorporated into the official repo

Forum/Wiki Pages


Clients Supported

Windows, Linux, OSX and Raspberry Pi

Addon Architecture

Backend service running on windows, hooking into Microsoft WMC recording and EPG services
LiveTV is remuxing from inprogress WMC live recording into TS files which XBMC plays
Recordings are WMC WTV format files that are played by XBMC

Live TV Functionality

Viewing channels live, including "timeshift buffer" and pause/seek support
Multi client aware sharing time shift buffer on the same channel (2nd client can rewind to when first client was watching channel if desired)
Signal Strength/Status information provided to XBMC
Importing channel icons configured in WMC

Recordings Functionality

Instant record, including timeshift data from the moment the user started watching the channel
Scheduled recordings, including Series recording options via a custom SBMC gui popup (confluence plus several skins now have these dialogs)
Extensive customisation for pre/post padding and conflict resolution options
Delete/rename recordings
Watching in progress recordings
Watching completed recordings (including a setting to help raspberry pi's that cant play large WTV files)
Recordings displayed in stacked/heirarchical view in XBMC
Multi client aware - resume status shared between multiple clients

EPG Functionality

Using WMC EPG service means EPG in many countries/technology is supported, from internet sources or from OTA broadcast scans etc

Hardware Support

Using WMC recording service means all tuners/tv technologies supported by Microsoft are able to be supported by this addon

Future Plans

Support for favourites and channel groups being imported from WMC
Implement cleaner instant record that starts from last show boundary rather than beginning of timeshift buffer
Implement rolling timeshift window rather than ever growing
Auto resume/restart live TV if failures occur
Android development (if we can get/gain required skill in this area)

Not Supported

Subtitles on live TV or in progress recordings. (subtitles on completed recordings are present, but an XBMC issue with subtitles in PVR section currently preventing those from working too)

ryangribble and others added some commits Dec 3, 2013
@ryangribble ryangribble Add pvr.wmc addon code to github and prepare for official XBMC repo
Initial check in is frodo code base for posterity, this will then be upgraded to gotham
@ryangribble ryangribble Adjust xbmc_pvr_addons build to include the new addon
- Add vcxproj to VS2010 solution
- Add makefile to master makefile for non windows builds
@ryangribble ryangribble Updates to pvr.wmc to set gotham build - add #define _GOTHAM_ to vcxp…
…roj and makefile

Update addon.xml to gotham values
@invalid-email-address invalid-email-address Add pvr.wmc to fd70490
@ryangribble ryangribble tidy up client code - remove commented out segments and unused functi…
…ons, tidy up formatting
krustyreturns uped version, got rid of window readme file 0bfdad7
@ryangribble ryangribble client side changes for signal status calls a056287
@ryangribble ryangribble Merge branch 'pvr.wmc' of…
…ddons into pvr.wmc
krustyreturns upped version take 2 6192da4
@ryangribble ryangribble add more build artefacts to gitignore file 67e0a76
@ryangribble ryangribble Keep both versions up to date 548da15
@ryangribble ryangribble Add AddOn setting to permanently enable/disable signal status calls b…
…eing sent to the backend

Add temporary flag to discard signal status calls for a channel when the backend tells us it had an error.  flag is reset on next OpenLiveStream
krustyreturns fixed dialog text problem, first cut at resume that works across clients ebd1071
@ryangribble ryangribble SignalStatus - Implement throttling on the client side (only send eve…
…ry Xth request to server)

Default is 10 and can be set in the addon options in XBMC GUI
SignalStatus data is cached and used for calls that are not sent to the backend
@ryangribble ryangribble Fix compile error and update scarecrow gotham dev location 57a8588
krustyreturns resume recording trigger update added to get resume point working fa1a6e0
krustyreturns multi resume setting added, changed the way length live stream is ret…
krustyreturns fixed build event path 01ebec1
da-anda commented Dec 10, 2013

thanks for the PR, but could you please squash everything related to only your adodn down to one commit (which schould be everything for a glance, except .gitignore change maybe)? We don't need your development history in mainline. You ofc can and should keep your history in your repo. To achieve this, create a local branch only for this PR and squash the commits in there. Then do a forcepush to the github branch you used to create this PR and the PR will autoupdate (local branch names and the ones on github can differ).

scarecrow420 and others added some commits Dec 11, 2013

Hi da-anda,

Ive got the squashed version sitting in a local branch (pvr.wmc_squash) but having troubles pushing it up to our repo. From what you've said it sounds like i need to force push it to the "pvr,wmc" branch in our repo, which is where this PR came from but it first was saying the top was infront of the remote, so i then updated our repo with all the latest official changes again and resquashed, but then the push was just saying everythign was up to date. I think Ill just ask this PR to be closed, and submit a new one from the "pvr.wmc_squashed" branch

Resubmitted as #247

da-anda commented Dec 11, 2013

yes, you have to do a force push, then you shouldn't get the message you described. Feel free to ping me on IRC (freenode:#xbmc) if you need help with git

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment