XBMC Community Forum
XBMC.MyLibrary - Scan any source to the library (Hulu/Netflix/Plugins) - Printable Version

+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: Supplementary Tools for XBMC (/forumdisplay.php?fid=116)
+--- Thread: XBMC.MyLibrary - Scan any source to the library (Hulu/Netflix/Plugins) (/showthread.php?tid=98210)



- Aenima99x - 2012-01-31 02:58

dugan26 Wrote:Request -

Idea: Integrate this incredible app with Jason's also incredible Psuedo TV app

Basically giving you a cable guide with all this great content.

Insane!

+1 NodNodNod


- Ryoga79 - 2012-01-31 17:47

dugan26 Wrote:Request -

Idea: Integrate this incredible app with Jason's also incredible Psuedo TV app

Basically giving you a cable guide with all this great content.

Insane!

Dugan - you can kindof already do this with some creative playlisting. I have playlists set up for online and offline content, as well as smart playlists set up for different television networks. I then told PseudoTV to make channels based on those playlists. The timeshifting kindof doesn't work right, but it still works pretty well!


1.3.1 Release - bradvido88 - 2012-01-31 17:56

Version 1.3.1 is available now
Users of 1.3 only need to replace their dist/XBMC.MyLibrary.jar with the one from 1.3.1

Here is a sample Amazon Prime search filter:

Code:
<Amazon path="plugin://plugin.video.amazon" recursive="true" prefix="[A] " movie_set=" Amazon" >

        <!-- All TV Episodes of Lost -->
        <subfolder name="Television/HDTV Shows/Lost" type="episodes" />                
                    
        <!--All TV Shows' Episodes from ABC, (HD and SD) -->                        
        <subfolder name="Television/Networks/ABC" type="episodes" >
            <filter><!--First, get the HD episodes -->
                <contains> [HD]</contains>
            </filter>
        </subfolder>
        <subfolder name="Television/Networks/ABC" type="episodes">            
            <exclude><!--Then add any SD episodes that aren't available in HD-->
                <contains> [HD]</contains>
            </exclude>                
        </subfolder>                        
        
        <!-- Movies filtered by year -->
        <subfolder name="Movies/Years" type="movies" >
            <filter>
                <regexp>Years/20(13|12|11|10|09|08)</regexp><!--Movies from 2008 and newer-->
            </filter>
        </subfolder>
        
        <!-- Movies filtered by genre -->
        <subfolder name="Movies/Genres" type="movies"  >
            <filter>
                <regexp>(Action|Comedy|Thriller)</regexp>                    
            </filter>
        </subfolder>
        
</Amazon>



- TheCasa - 2012-01-31 21:11

You rock!! Thanks! My wife will be very happy when this is idiot proof.


- dugan26 - 2012-02-03 16:32

Ryoga79 Wrote:Dugan - you can kindof already do this with some creative playlisting. I have playlists set up for online and offline content, as well as smart playlists set up for different television networks. I then told PseudoTV to make channels based on those playlists. The timeshifting kindof doesn't work right, but it still works pretty well!

this sounds perfect - can you explain how to make a playlist with "online content" ?

Clear something up too - (silly question i know)
local content = offline content
content on the internet = online content?

Im wondering how to get the playlist for content which is streaming over the internet ...


- Ryoga79 - 2012-02-03 18:57

dugan26 Wrote:this sounds perfect - can you explain how to make a playlist with "online content" ?

Clear something up too - (silly question i know)
local content = offline content
content on the internet = online content?

Im wondering how to get the playlist for content which is streaming over the internet ...

you're exactly right with the "offline" and "online" content - "offline" is stuff on my server, "online" is stuff that's streaming.

I kindof "faked" it - basically i have all of my tv shows in one network location, (\\media\television\) and my mylibrary dropbox in another location (\\misc\streaming\drop\tv shows). So i made two separate playlists that triggered based on path:

"Television - Streaming" is a smart playlist that contains everything that has a path that contains "streaming"

"Television - Local" is a smart playlist that contains everything that has a path that contains "media"

That way i can use those playlists to differentiate in other plugins and on the front page (i have links on the main menu for "offline tv" and "streaming tv" linked to those playlists. You could also add criteria for individual channels, by doing something like "path contains media AND studio contains 'ABC'" or something like that, if you want to drill down even further.

By the by, my way is a bit of a kludgy way to do it - if anyone else on the thread knows of a more elegant way to do it, i'm all ears!


- dugan26 - 2012-02-03 20:39

so the "streaming" content is literally just txt files with a url saved as a .strm file?


- Ryoga79 - 2012-02-03 23:44

@bradvido - quick question, does the plugin support multiple references to the same plugin in the XML? My understanding is that it processes the plugin searches first to last, so what i'd like to do is an extension of the "HD First" example you put in your amazon code above...something like:

1) search hulu and filter for HD shows
2) search amazon and filter for HD shows
3) search hulu *again* and exclude HD shows
4) search amazon *again* and exclude HD shows
5) search freecable to fill in the gaps

Is something like these multiple calls possible? Or is the plugin going to freak out at step 3 when i call hulu again?


- bradvido88 - 2012-02-03 23:48

Ryoga79 Wrote:@bradvido - quick question, does the plugin support multiple references to the same plugin in the XML? My understanding is that it processes the plugin searches first to last, so what i'd like to do is an extension of the "HD First" example you put in your amazon code above...something like:

1) search hulu and filter for HD shows
2) search amazon and filter for HD shows
3) search hulu *again* and exclude HD shows
4) search amazon *again* and exclude HD shows
5) search freecable to fill in the gaps

Is something like these multiple calls possible? Or is the plugin going to freak out at step 3 when i call hulu again?

Yes, this will work as you expect. I do the same thing. Just use different names for your source elements. The paths can be duplicates. Something like:

Code:
<HuluHD path="plugin.video.hulu"/>
<AmazonHD  path="plugin.video.amazon"/>
<Hulu  path="plugin.video.hulu"/>
<Amazon  path="plugin.video.amazon"/>
<Freecable />



- Ryoga79 - 2012-02-04 01:15

bradvido88 Wrote:Yes, this will work as you expect. I do the same thing. Just use different names for your source elements. The paths can be duplicates. Something like:

Code:
<HuluHD path="plugin.video.hulu"/>
<AmazonHD  path="plugin.video.amazon"/>
<Hulu  path="plugin.video.hulu"/>
<Amazon  path="plugin.video.amazon"/>
<Freecable />

Thanks!

One last question, and it's low priority since i'm not sure how easy it would be to implement...Is there any way to separately categorize anime into a separate folder? I typically "wife-proof" my HTPC by keeping the anime in a separate playlist, so as to keep it from clogging up my "main" TV show list, but if i scrape the anime from plugins, i'm not sure how i'd filter them out via playlist, since pretty much everything is just dumped into "TV Shows" in the dropbox. Can there be a separate "Anime" section in the dropbox that i could use for Anime shows?


- Ryoga79 - 2012-02-04 20:13

Ryoga79 Wrote:Thanks!

One last question, and it's low priority since i'm not sure how easy it would be to implement...Is there any way to separately categorize anime into a separate folder? I typically "wife-proof" my HTPC by keeping the anime in a separate playlist, so as to keep it from clogging up my "main" TV show list, but if i scrape the anime from plugins, i'm not sure how i'd filter them out via playlist, since pretty much everything is just dumped into "TV Shows" in the dropbox. Can there be a separate "Anime" section in the dropbox that i could use for Anime shows?

Nevermind, i'm actually overthinking the problem. I just made a separate instance of mylibrary that only scrapes for anime, with a separate dropbox, and then just playlisted on that second dropbox for the anime list.


- Aenima99x - 2012-02-04 20:37

bradvido88 Wrote:Problem here is that I stupidly hardcoded a windows-only path as the fallback for the base directory. I'll change it and release an update soon

Bradvido - Any update on this? I'd love to get this fixed so I can kill the WinXP VM and just run it straight from my Ubuntu box. Thanks!


changed to UNC/SMB paths - actapon - 2012-02-04 21:43

I recently made a change to my system so that my database was moved to mysql and all my video sources were accessible over upnp or smb shares.

To transition mylibrary, i cleared out the old video sources in xbmc related to my library, deleted the strm files, and purged the cache db files used by mylibrary. I also updated mylibrary's config file to use unc instead.

But... the update meta data part of the script is failing: "SKIPPING meta-data update: the video is not yet in XBMC's library"

I can see in your source that you're substituting the unc paths with smb paths for xbmc's database, so i was puzzled. I was staring at the values in xbmc's episode information and my library's log to find the problem, but didn't see it. When i opened the mysql db, i saw it right away (i think). My smb path in xbmc appears to be holding my un and pw in clear text after the smb:\\.

first - i'm not happy my pw is in clear text there - not the problem of this forum though.

Second - how can i get the meta data to update my db entries when my smb path contains a username and password?


- nocut12 - 2012-02-05 05:30

Is there a way to rename movies/TV shows automatically with this? I don't see a way to do it in the search filters.

I'm looking to append dates to certain movies and TV shows so that the scraper will recognize it correctly. Doing it manually is works, but it's a huge pain and each time I run this program it messes up renamed shows.


- ginsengbomb - 2012-02-06 19:15

Has anybody messed around with getting this to work on OS X? I just took an initial stab, played around for 45 minutes or so, and didn't get terribly far. I'm going to have another go at it later tonight but was wondering if anybody else has tried and has some pointers.