PleXBMC client for XBMC

Hey Hippojay, sorry I’m a bit confused. I see how to turn Plex integration on for the old Quartz skin, but haven’t you been working on Quartz 3? If so, where is that download and how do you enable Plex integration?



Quartz V3 for PlexBMC is a Work in Progress - although it's working I've not polished some bits and bobs (so some things may look odd). It also hasn't been updated for a few months and so I haven't pulled any upstream updates from Pecinko's original.

If you want to check it out, then it's all under Git: https://github.com/hippojay/quartz/tree/plexbmc

This version is slightly different for integration (which I must give Pecinko credit for). There is a menu entry under XBMC on the home screen, which says "Go Plex". This entry will only show if you have the plexbmc addon installed. Select this and your home screen is updated with PleXBMC items. I think it makes it easier to to activate without having to dig into the settings menu.


Plex already provides the data for recentlyAdded, I just hadn't put the section into Shelf yet (probably because of the image problems with movies/tv shows). Anyway, I've added it now, although I haven't had time to test it (as I can't remember off ht top of my head what changes I needed to do in QuartzV3 to make it visible).

However, if you want to test in your skin - then you just need to download the latest version from git: https://github.com/hippojay/plugin.video.plexbmc/tree/eden

I've made some other changes in the repository, so i would recommend getting all files, not just default.py.


Thanks for the update

I am still unsure about what you mean when you say you're getting image problems...I didn't seem to have an issue with images on eden and I'm not getting any probelems with Frodo beta 2 either.

I'm currently using the default confluence skin w/ modded recently added on Frodo beta 2 without issues. Is this a quartz v3 issue?

It must be a quartz v3 issue then. It would be interesting to see your recently added code and how that differs from that used in Quartz.



Hmm, I might reinstall XBMC as well to make sure it not something I’ve introduced when I was coding/testing early frodo nightlies.

This is the default code:



						<br />
<item><br />
	<label>$INFO[Window.Property(LatestMovie.1.Title)]</label><br />
	<label2></label2><br />
	<onclick>PlayMedia($ESCINFO[Window.Property(LatestMovie.1.Path)])</onclick><br />
	<icon>$INFO[Window.Property(LatestMovie.1.Thumb)]</icon><br />
	<thumb>-</thumb><br />
	<visible>!IsEmpty(Window.Property(LatestMovie.1.Title))</visible><br />
</item><br />




and this is the modded code.
All I have done is add 'Plexbmc' before 'LatestMovie':


						<br />
<item><br />
	<label>$INFO[Window.Property(Plexbmc.LatestMovie.1.Title)]</label><br />
	<label2></label2><br />
	<onclick>PlayMedia($ESCINFO[Window.Property(Plexbmc.LatestMovie.1.Path)])</onclick><br />
	<icon>$INFO[Window.Property(Plexbmc.LatestMovie.1.Thumb)]</icon><br />
	<thumb>-</thumb><br />
	<visible>!IsEmpty(Window.Property(Plexbmc.LatestMovie.1.Title))</visible><br />
</item><br />




I have to run this for it to work though, otherwise it fails to load:


XBMC.RunScript(plugin.video.plexbmc,skin)



Thanks - the problem must be how quartz v3 is loading the images. I'll compare with confluence and see.



Yes, that activates the skin function which sets all of these window properties that you use. Shelf is part of skin (shelf does the recentlyadded, skin does the menu item data)

I tried the shelf music script but couldn’t get it to fully work…I could get the titles, thumbs etc but the path was incorrect



I then changed the s_url to:



<br />
s_url="ActivateWindow(VideoLibrary, plugin://plugin.video.plexbmc?url=%s&mode=%s%s, return)" % ( getLinkURL('http://%s' % server,media,server), _MODE_TRACKS, aToken) <br />




This seemed to work.


Ok, thanks - is this on Eden or Frodo? I know that Frodo has some funny goings on with mixed video and music addons (like plexbmc). If this is Eden then MusicFiles should have worked, so you might see some odd data formatting (and it's probable that it will only play one track in an album/playlist and stop)


Ah-ha - looks like I've found the Quartz V3 shelf problem (I say problem, but I may have introduced it) - two separate controls trying to load/display the same image at the same time. So I should be able to get a QuartzV3 going for plexbmc.



I'm currently using Frodo.

Initially, as is was, selecting one of the albums used to bring up a blank menu.

After changing it, selecting the album brings up the list with all the songs in that album.

Edit: I just realised I changed the musicfiles to videolibrary. The change I was originally implying was _MODE_TRACKS. Sorry about the confusion.


Ah - my bad. It's an album you select, but it's the tracks you want to display :D I'll put that change into the master code.

Edit: After a bit more searching I see a lot of people having similar issues and they are not related to PleXBMC. I have upgraded some stuff on my ATV. Will see if that helps. Will revisit topic if not.



Almost every time I watch something the ATV crashes and reboots. Not XBMC, the whole ATV. I get nothing in the XBMC log, but in the /var/log/syslog has a lot.



This does not happen when I watch the same movies with XBMC over SMB.



I run PleXBMC 2.0 beta 6 on ATV2, XBMC 11.0 Eden and Plex Media Server 0.9.7.7.339 (latest as of today) on Mac OS X.



Here is the log:

http://pastebin.com/SK5WLdgU



I have the ethernet cable plugged in and that is what is used. Seems to happen when there’s some WiFi stuff going on.



Thanks - I was scratching my head a little at the crash report. The only other thing I could think of was some issue with the python modules that XBMC is using, as I hit these quite a bit with the plugin.

Right, rather large update time:



PleXBMC Version 2.1



I’ve decided to lose the BETA tags now, as everything seems to be running ok. I’ve also had to up the version to 2.1, as XBMC was having trouble releasing that 2.0 was bigger than 2.0b6.



[list]

[] ADD: Search menus in channels

[
] ADD: Preference settings in Channels

[] ADD: Subtitles in Transcoded media

[
] ADD: Audio stream selection in transcoded media

[] ADD: enforce views in skins (only Quartz, QuartzV3 and confluence)

[
] ADD: Recently added media/channel abilities (aka the Shelf)

[] FIX: space/special chars in searches

[
] FIX: g_stream error/informational messages

REMOVED: flv transcoding (as it’s not needed by XBMC anymore)

[/list]





https://github.com/downloads/hippojay/plugin.video.plexbmc/plugin.video.plexbmc-v2.1.zip



Enforcing skin views has turned out to be very difficult to do indeed. XBMC skins have no way to set these and no real functions to allow you to do it if you wanted. Therefore I’ve taken a round about route and am having PleXBMC force the view upon the skin.



To enable it, select the option from the “look and feel” settings, select the skin you are using and then the name of the view you want to use. This will then be used when viewing that type of media.



NOTE that the view is only enforced on screens with metadata (movies, tv shows/season/episodes/music). If you change a view, it will be reset to the selected default next time you use it. Intermediate menus will still have XBMC controlled views, so they will follow/remember the last set view.



If anyone wants me to add extra view setting in I’m happy to do that, but I’m afraid you’ll will have to do the hardwork and gather the information. I need the names of the available views for each different category and the XBMC control ID for each view (which you can find in skin debug mode).





QUARTZ V3



I have also been hard at work on a Quartz V3 version for PleXBMC - so here it is:



The main reason for this release is to show the recently added “Shelf” now on the main screen. This will show the last movies, TV Shows and music added, plus the last channels used. Plus QV3 has some nicer views than QV2.



https://github.com/downloads/hippojay/quartz/skin.quartzV3.plexbmc-v0.5.zip



QUARTZ

I’ve also put up a small fix to the older Quartz skin - which reverses an integration logic problem (‘on’ was ‘off’ and ‘off’ was ‘on’)…



https://github.com/downloads/hippojay/skin.quartz.plexbmc/skin.quartz.plexbmc.v0.6.zip



hippojay, thank you very much for your work on the plugin and skin!

Two things:

1. Is possible to restrict the recently added shelf items under the Movies section to just show Movies? Right now it shows everything setup in PMS under Movies section, in my case concerts and podcasts. Or do i have to simply setup the not wanted items under different sections like music?

2. Dow to disable this debug-log-line which displays the current windows id's and position?


The movies shelf shuold only show things that are in move sections. If you have podcasts and concerts in there, then I'm afraid they will show up too (as wuold be the case with the official plex clients).


Damn, I always miss something out when I put out a release. Unfortunately teh debug line is hardcoded within the addon.xml file - I discarded the changes, and it doesn;t show in the master code, so perhaps I forgot to save it. I'll have to put together a replacement package later on (or you can manually edit the addon.xml file in skin.quartzV3.plexbmc to set the debugging= line to false


Ok, just figured out that it's not that simple...
No chance to get Concert movies scanned under Music section in PMS. So it has to be Movies. But then again, i'm not able to separate these items from the Movies section on Home.

In XBMC-mode i can of course set up Concerts as Favourites under the Music section on Home. But the i don't have any shelf activity at all...

Any thoughts?


I'm guided by the data that comes out of PMS - it only marks things as Movies, tvshows, etc - without subdivisons. A library ID is passed along with the data, if you wanted to exclude a certain section - but this ID is a number and I would need to translate it into a name so there was someway of setting what was allowed to be displayed. I then have to look at how this is handled with multiple PMS and across myplex. I would be at least a further call into PMS and perhaps a couple if myplex was involved - web calls tend to be the slowest part of teh plugin as it means talking over the network.

I would be better if PMS did that at the media centre level and then this data would be excluded across all apps.

EDIT: if you wanted quick and dirty, then I could simply do an ID based filter, but you would need to find out the section ID and use this - with no translation. But you would need to keep concerts within a separate plex section (which I guess you must do anyway?). Yuo can find the ID under http://:32400/library/sections and look for the 'key' field


And there's the problem. I can't change the section of Concerts as PMS won't handle video files under Music section. So it has to be MOVIES or TV SHOWS. Or am i missing something??

Concert section would be key=10 in my case.