2004-03-23, 22:10
i recently setup mythtv and am waiting for my pvr-250 tv tuner card to arrive. while i wait, i have setup the xbox version of mythtv that runs linux but was a bit disappointed. it takes a long time to boot up and a lot of the features are already handled by xbmc (e.g. weather, games, music, videos, dvd). the only additional feature that i currently want to use is the ability to view recorded tv shows, program recordings, delete recordings, look at tv schedule. as a result, i started playing with the python interpreter in xbmc.
after writing some scripts, i have a few questions. i'm new to python (just learned it on the weekend) so if the language supports something natively, i might not have discovered this yet so go easy on me.
1. does the xbmc version of python provide hooks to access smb shares natively? i found a pure python implementation of the smb client side protocol and have been able to get that working nicely but i was just wondering if there already exists a way to do this? i know that xbmc.player() can access files over smb shares if the "url" is constructed properly but i haven't found a way to do this using, for example, nt.listdir(dir).
2. xbmc obviously parses xml. is this exposed anywhere in the python interpreter? in order to bootstrap to the mysql database, i need a place to store the hostname, database name, user, and password. i was thinking of adding this to my xboxmediacenter.xml file. if there was a way for python scripts to get access to the parsed config file or to call the xml parser on a file, that would be handy.
3. does anyone know of a pure python mysql client interface module? in order to learn python, i wrote a python module that supports connecting and authenticating to mysql over a socket, select, insert, update, and deleting of rows in the database, creating and dropping databases. it does what i need it to do and i'm willing to contribute this to the project... but i'd like to add some more documentation to it and use it in a useful script so that i can make sure i'm happy with the api. if there already exists such a beast, then there's no point in me working any further on it.
4. i ran into a weird problem with the following code:
the avi starts to play as expected but when i hit stop on the xbox remote, the screen goes black and the xbmc interface never comes back. i haven't waited to see what happens when the entire avi finishes. i am using the march 9, 2004 build... is this a known problem? if you replace the avi file with a mp3 file, it seems to work fine. any ideas?
5. someone mentioned in the forum about having buttons bound to python scripts... it would be fantastic if a user could add a button to the main xbmc menu (e.g. mythtv) that launches a python script. at the moment, the only way i could launch my scripts is to go into the settings ->scripts screen and pick the name of my script. i tried creating a shortcut to the python script so that i could pick the shortcut under programs but this did not work. i tried placing my python script in an apps folder but it didn't work either. is there any other way to launch a python script other than through the settings screen?
keep up the great work on the python interface! the possibilities are endless...
after writing some scripts, i have a few questions. i'm new to python (just learned it on the weekend) so if the language supports something natively, i might not have discovered this yet so go easy on me.
1. does the xbmc version of python provide hooks to access smb shares natively? i found a pure python implementation of the smb client side protocol and have been able to get that working nicely but i was just wondering if there already exists a way to do this? i know that xbmc.player() can access files over smb shares if the "url" is constructed properly but i haven't found a way to do this using, for example, nt.listdir(dir).
2. xbmc obviously parses xml. is this exposed anywhere in the python interpreter? in order to bootstrap to the mysql database, i need a place to store the hostname, database name, user, and password. i was thinking of adding this to my xboxmediacenter.xml file. if there was a way for python scripts to get access to the parsed config file or to call the xml parser on a file, that would be handy.
3. does anyone know of a pure python mysql client interface module? in order to learn python, i wrote a python module that supports connecting and authenticating to mysql over a socket, select, insert, update, and deleting of rows in the database, creating and dropping databases. it does what i need it to do and i'm willing to contribute this to the project... but i'd like to add some more documentation to it and use it in a useful script so that i can make sure i'm happy with the api. if there already exists such a beast, then there's no point in me working any further on it.
4. i ran into a weird problem with the following code:
Quote:import xbmc
filename = "smb://banshee/videos/foobar.avi"
xbmc.player().play(filename)
the avi starts to play as expected but when i hit stop on the xbox remote, the screen goes black and the xbmc interface never comes back. i haven't waited to see what happens when the entire avi finishes. i am using the march 9, 2004 build... is this a known problem? if you replace the avi file with a mp3 file, it seems to work fine. any ideas?
5. someone mentioned in the forum about having buttons bound to python scripts... it would be fantastic if a user could add a button to the main xbmc menu (e.g. mythtv) that launches a python script. at the moment, the only way i could launch my scripts is to go into the settings ->scripts screen and pick the name of my script. i tried creating a shortcut to the python script so that i could pick the shortcut under programs but this did not work. i tried placing my python script in an apps folder but it didn't work either. is there any other way to launch a python script other than through the settings screen?
keep up the great work on the python interface! the possibilities are endless...