Kodi Community Forum
[RELEASE] Cinema Experience - the new Home Theater Experience Script - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Program Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=151)
+---- Thread: [RELEASE] Cinema Experience - the new Home Theater Experience Script (/showthread.php?tid=87563)



- ezechiel1917 - 2011-07-10

Hi giftie,
why does folder.py uses this json query:

Code:
json_query = '{"jsonrpc": "2.0", "method": "Files.GetDirectory", "params": {"directory": "%s", "media": "%s"}, "id": 1}' % ( escapeDirJSON( dir_name ), media_type )

for local trailer scraper? It takes several minutes to get content of local directory (hundreds of trailers) as it does some checking within library for all the files (there are movie,episode,music select queries in the log for every previously watched trailers) It takes several minutes before trailers starts to play. Any reason for that?

Once I change the query to:
Code:
json_query = '{"jsonrpc": "2.0", "method": "Files.GetDirectory", "params": {"directory": "%s", "media": "files"}, "id": 1}' % ( escapeDirJSON( dir_name ) )

it gets back to normal.


- kiboy6 - 2011-07-10

giftie Wrote:Keep in mind that you are using a development version of XBMC and these things pop up... Also things have changed in XBMC that affect this version of Cinema Experience. There is a newer version available here -> http://www.mediafire.com/file/8qr0d0k2k1eh6l7/script.cinema.experience.1.4.8.zip that should work a bit better with pre-Eden(though untested with the latest version)

Thanks for the new version...hangs XBMC very infrequently now, and even then seems to only be whe tv-tunes is enable via the skin.

One other question - I am currently rebuilding my profile folder from scratch. Is there a file I can copy over from the old profile to maintain the Cinema Experience "watched" status for my locally stored trailers?

Thanks


- giftie - 2011-07-10

kiboy6 Wrote:Thanks for the new version...hangs XBMC very infrequently now, and even then seems to only be whe tv-tunes is enable via the skin.
I noticed that tv-tunes runs when every entering the Library. I'm going to add some code that the skinners can use to disable things(tv-tunes, buffering pop up, music overlays)

Quote:One other question - I am currently rebuilding my profile folder from scratch. Is there a file I can copy over from the old profile to maintain the Cinema Experience "watched" status for my locally stored trailers?

Thanks

Inside your 'xbmc/userdata/appdata' folder you will find folder called 'script.cinema.experience' This is were everything is stored(even your settings) if you copy this to a safe place, then copy it back later everything should be back to normal.


- giftie - 2011-07-10

ezechiel1917 Wrote:Hi giftie,
why does folder.py uses this json query:

Code:
json_query = '{"jsonrpc": "2.0", "method": "Files.GetDirectory", "params": {"directory": "%s", "media": "%s"}, "id": 1}' % ( escapeDirJSON( dir_name ), media_type )

for local trailer scraper? It takes several minutes to get content of local directory (hundreds of trailers) as it does some checking within library for all the files (there are movie,episode,music select queries in the log for every previously watched trailers) It takes several minutes before trailers starts to play. Any reason for that?

jsonrpc is used to get the exact path format that XBMC has access to. This is needed since some people do not map thier network drives and programming language now does not have 'wrapped' file access since moving to pre-Eden. The valid options for media are actually video, music, pictures, files and programs. The code is in such away that it can be used to request different media types(music for building the trivia music playlist, video for the main playlist and files for everything else(trivia) ) I just tested the code on both pre-Eden and Dharma and it does take significantly longer on pre-Eden than it does on Dharma(8x to 10x more time required on pre-Eden) This is probably because of added code(getting library file ID's which are completely unneeded in this situtation.) I'll post to a message on the development thread for JSONRPC to see if there is a way to disable this added 'feature'

Quote:Once I change the query to:
Code:
json_query = '{"jsonrpc": "2.0", "method": "Files.GetDirectory", "params": {"directory": "%s", "media": "files"}, "id": 1}' % ( escapeDirJSON( dir_name ) )

it gets back to normal.

This sends all the files that are located in the folder. I must specify somewhere else to only use videos(though I don't think so) this would cause files that are not video file to be added to the play list and possibly crash XBMC.

If it's not causing any problems with your system then you can leave it(which I think you will) and wait until I get this sorted out, as I can use python to sort out the unneeded files, though it is slower when compared to letting XBMC sort the files out, it will still be faster than it is in it's present state for pre-Eden..

Also what version are you using?


- kiboy6 - 2011-07-10

giftie Wrote:Inside your 'xbmc/userdata/appdata' folder you will find folder called 'script.cinema.experience' This is were everything is stored(even your settings) if you copy this to a safe place, then copy it back later everything should be back to normal.

Thanks - I've now installed the new version you gave me the link to...can i copy the whole folder over and then re-upgrade (install from .zip) to preserve the settings?

Or would it be easier just to copy over the single relevant file and leave the upgrade intact (if that's possible!)

Quote:I noticed that tv-tunes runs when every entering the Library. I'm going to add some code that the skinners can use to disable things(tv-tunes, buffering pop up, music overlays)

Thanks - hopefully this bug will get squashed pretty quickly then Smile


- giftie - 2011-07-10

kiboy6 Wrote:Thanks - I've now installed the new version you gave me the link to...can i copy the whole folder over and then re-upgrade (install from .zip) to preserve the settings?

Or would it be easier just to copy over the single relevant file and leave the upgrade intact (if that's possible!)



Thanks - hopefully this bug will get squashed pretty quickly then Smile

It probably would be best to Install the file from the zip, then copy the folder over.

I'll get to coding that in soon then release the info to the skinners so they can add the conditional tests before running TV-Tunes.


- Method007 - 2011-07-11

Method007 Wrote:First off, awesome plugin. Second - anybody know any way I can convert this so it just plays trailers? I have a lot of movies and I want to be able to just click a button and have all of my trailers randomly play so i can just figure out what I want to watch based on random trailer. I do have it set up so it only plays trailers, but I only can get it to play 10 then a movie plays. Anyone know a way I can mod something to make it just keep playing trailers over and over?


I've seen this line:

<setting id="trailer_count" value="6" />

And i've tried adjusting it to a larger number, but it ends up just turning off the movie trailer functionality. Anybody got any ideas what part of the xml to edit to get it to play more then 10 trailers?


- giftie - 2011-07-11

Method007 Wrote:I've seen this line:

<setting id="trailer_count" value="6" />

And i've tried adjusting it to a larger number, but it ends up just turning off the movie trailer functionality. Anybody got any ideas what part of the xml to edit to get it to play more then 10 trailers?

That is because the script does not understand anything greater than 6. How it breaks down is the following:

0 - None
1 - 1
2 - 2
3 - 3
4 - 4
5 - 5
6 - 10

as these are the options in settings.xml(the one in the script.cinema.experience/resources/ folder) There isn't an area to change in the settings.xml to get more than 10 trailers, the script would need to be changed. To get more trailers, you need to change code in the 'xbmcscript_player.py' file(lines 270-276)

original code:
Code:
xbmc.log( "[script.cinema.experience] - Retriving Trailers: %s Trailers" % (0, 1, 2, 3, 4, 5, 10,)[ int( _S_( "trailer_count" ) ) ],level=xbmc.LOGNOTICE )
        trailers = _get_trailers(  items=( 0, 1, 2, 3, 4, 5, 10, )[ int( _S_( "trailer_count" ) ) ],
                                        mpaa=equivalent_mpaa,
                                       genre=genre,
                                       movie=movie,
                                       mode = "playlist"
                                )

you notice the sequence( 0, 1, 2, 3, 4, 5, 10,)? if you change these values to different numbers(for instance ( 0, 2, 4, 8, 16, 32, 64,) you will get different number of trailers. So, with the above instance, a <setting id="trailer_count" value="6" /> would give you 64 trailers. Both lines should have the same sequence(the first one is for logging, the second one is for the retrieval of the trailers)


- ezechiel1917 - 2011-07-11

giftie Wrote:jsonrpc is used to get the exact path format that XBMC has access to. This is needed since some people do not map thier network drives and programming language now does not have 'wrapped' file access since moving to pre-Eden. The valid options for media are actually video, music, pictures, files and programs. The code is in such away that it can be used to request different media types(music for building the trivia music playlist, video for the main playlist and files for everything else(trivia) ) I just tested the code on both pre-Eden and Dharma and it does take significantly longer on pre-Eden than it does on Dharma(8x to 10x more time required on pre-Eden) This is probably because of added code(getting library file ID's which are completely unneeded in this situtation.) I'll post to a message on the development thread for JSONRPC to see if there is a way to disable this added 'feature'



This sends all the files that are located in the folder. I must specify somewhere else to only use videos(though I don't think so) this would cause files that are not video file to be added to the play list and possibly crash XBMC.

If it's not causing any problems with your system then you can leave it(which I think you will) and wait until I get this sorted out, as I can use python to sort out the unneeded files, though it is slower when compared to letting XBMC sort the files out, it will still be faster than it is in it's present state for pre-Eden..

Also what version are you using?

I see, I'm using 1.0.48/1.0.46 , after the change it works fine so far, there are also nfo and tbn files in that folder. I though you are retrieving only trailers in local\scraper.py

Code:
self.tmp_trailers = dirEntries( self.settings[ "trailer_folder" ], "video", "TRUE", "-trailer" )

EDIT: Thinking about it, In my code I've also changed part of code above to .mov from -trailer to reflect my directory structure. So maybe because of that I have no issues with "not video" files as you mentioned.


- giftie - 2011-07-11

ezechiel1917 Wrote:I see, I'm using 1.0.48/1.0.46 , after the change it works fine so far, there are also nfo and tbn files in that folder. I though you are retrieving only trailers in local\scraper.py

Code:
self.tmp_trailers = dirEntries( self.settings[ "trailer_folder" ], "video", "TRUE", "-trailer" )

your nfo and tbn files don't contain '-trailer'? I ask this beacuse the script looks for a matching filename(with different extention) for getting the Info and thumbnail of the video(so it shows up properly if Info is pressed, or on some skins Pause)(although it does strip filename down when looking for thumbnails)

Those database queries they added really slow down the access..

I also was wondering what version of XBMC you are using. Wasn't sure you signature was correct or not, I think I made that mistake before Smile

Quote:EDIT: Thinking about it, In my code I've also changed part of code above to .mov from -trailer to reflect my directory structure. So maybe because of that I have no issues with "not video" files as you mentioned.

That would indeed eliminate any other none video files. Which is somewhat of the code change that I would be making if the JSONRPC call doesn't change. Gotta love the Development stage... Smile


- noodles90 - 2011-07-15

I'm running 10.1 xbmc with the latest Aeon MQ2 and the latest Cinema Experience. For some reason, it will skip all the trailers and intros. It will only play the intro when I set the trailer scraper to stream Apple Trailers Newest, but even then it'll freeze and won't play any trailers or the movie.

Any help?


- giftie - 2011-07-15

noodles90 Wrote:I'm running 10.1 xbmc with the latest Aeon MQ2 and the latest Cinema Experience. For some reason, it will skip all the trailers and intros. It will only play the intro when I set the trailer scraper to stream Apple Trailers Newest, but even then it'll freeze and won't play any trailers or the movie.

Any help?


with out seeing a debug log, I would guess the possiblity is that 'Select only Unwatched Trailers' is turned on and the script has logged that it has watched all. If that option is set, click on the line below(Reset Trailers Watched status' should take care of it(not freezing part)

If this is not the case, I need a debug log to know more..


- noodles90 - 2011-07-15

giftie Wrote:with out seeing a debug log, I would guess the possiblity is that 'Select only Unwatched Trailers' is turned on and the script has logged that it has watched all. If that option is set, click on the line below(Reset Trailers Watched status' should take care of it(not freezing part)

If this is not the case, I need a debug log to know more..
It wasn't the case.

http://pastebin.com/EkpxN7fe


- giftie - 2011-07-15

noodles90 Wrote:It wasn't the case.

http://pastebin.com/EkpxN7fe

None of your trailers have '-trailer' before the extention.


- noodles90 - 2011-07-15

feel really silly now since it was such a simple fix. Thanks