PDA

View Full Version : Ability to share and synchronize XBMC userdata profiles between multiple machines


RockDawg
2005-11-01, 16:18
i wish there was a way to synchronize multiple xboxes (maybe there is and i just don't know how?). i currently have two machines around the house that are fed media from a couple servers in the basement. i would like to upgrade to four xboxes, but the pain of managing them all keeps me from doing it.

example: i purchase a new dvd and rip it to the server. i now have to go to each xbox and scan the movie in. if imdb scans in some incorrect info for the movie, i then have to go in and manually edit the db on each machine.

it's not a major problem with two machines, but you can see what a pain it would be with 4 or more. what sucks is that ultimately the movie info in the db needs to be the same across all the machines. it would seem a logical solution would be to move the db's to the server, but i think some db elements like the stored aspect ratio might make that problematic.

does anyone have a suggestion on this or even a better idea that could possibly be implimented in future releases?

kraqh3d
2005-11-01, 16:45
sure, i have the same problem. just copy the database between boxes (assuming all of them are running the same exact version.)

senergy
2005-11-02, 01:53
just run an automated script, or even a quick batch file that will delete the current db and ftp over a new one when ever you run it.

RockDawg
2005-11-02, 19:59
one problem with copying over the db is that i don't leave both the xboxes turned on all the time. if i ever get as many xbmc boxes as i want, i'll be running all over the house turning them on just so i can update the db on all of them and then run all around and turn them all back off. that's why something like a non-local db would be so great.

in any event it looks like copying the db will be my only option.

senergy - i don't know how to write a script or batch file. do you know anywhere i can get some info on how to write one to do that?

xlilcasper
2005-11-02, 22:49
well.. xbmc can run a script at startup right? what about when closing? if you can get it to do it when closing you could always....

make a small script that on closing, uploads the database file to your server.

then just make a script that upon loading xbmc it downloads the latest database when it starts.

this way you don't have to do it. every time you turn on your xbox and start up xbmc it would grab the latest database.

RockDawg
2005-11-03, 00:17
that sounds like a great idea. *is it possible? *can the xbox initiate a file download from a computer? *

really, all it would need to do is run at startup and delete the current db on the system and download the updated one from my server. *i wouldn't need a script to run at shutdown, because i would always keep a up-to-date copy of the db on the server and that would be the one i edit.

that would be a killer solution if it's possible... and if i can figure out how to write the script to do it!

RockDawg
2005-11-05, 22:28
anyone with anymore input on whether this is doable or not? are there any potential pitfalls?

xlilcasper
2005-11-06, 02:24
well it should be possable, if you can't get it to work with ftp (which it should be able to do, belive i've seen ftp scripts...) you could always run a web server on the server and just grab the file that way. we know the xbmc python can do web pages, that's how quicktime browser and all that work. so i would say it's very possable.

RockDawg
2005-11-15, 21:47
anyone care to help me out with this script? i've never wrote on before and i've been reading some python tutorials, but they're more about making some text or a window pop up. i don't see anything about initiating an ftp session and copying a file. nor do i see how to run a script at startup and shutdown.

after thinking about it more, and i think xlilcasper is right. i need it to copy the db from the server on startup and copy to the server on shutdown.

i'd really appreciate any help on getting started with this.

balthisar
2006-04-17, 21:29
is there an easy* way to share all of the database data between multiple xbmc's on the same subnet? i have a mythtv box that's on 24 hours connected to my xbmc's using smb, so that would be a likely candidate for hosting.

essentially, i'd be looking to do something like this: whenever i get imdb data on one xbox, that data's stored someplace on my server. even cooler, when i stop a video on one xbmc, that stop point would be stored on the server so that regardless of which xbox i'm at, the video resumes from that stop point.

any ideas?

*"easy" meaning one or more text files i can edit without have to recompile all of my own code.

nsmoller
2006-04-18, 05:31
i'm doing a nas (network attached server) which is basically a crappy old pc with a few hds in it attached to a router with win xp and smb set up.

i then have multiple xboxes with xbmc and stream to each. all xboxes have a common xboxmediacenter.xml which have bookmarks pointing at the nas

that does what you want to do!

sCAPe
2006-04-18, 14:26
that's not what he meant.

he meant he wants his mymusic.db, myvideos.db, etc stored on a network location and not locally on his xbox.
he then could access the database files from all the other xboxes in his home.

not sure if this is possible..

balthisar
2006-04-18, 15:54
he meant he wants his mymusic.db, myvideos.db, etc stored on a network location and not locally on his xbox.
he then could access the database files from all the other xboxes in his home.
yeah, that's exactly what i meant -- keep the databases on the server somewhere.

nsmoller, your answer is basically what i already do -- my entire video and dvd library is on the mythtv server, and i use xbmcmythtv for the recorded television. i don't actually have a mythtv front end anywhere. it works supurbly. the only missing piece of the puzzle is the shared databases for the several xboxes, which could live happily on the mythtv server since it's always on.

JoyMonkey
2006-06-24, 20:54
i've got a couple of xbox's at home that i use primarily to play movies, tv shows and music from a small server computer. can i use common xbmc databases for both?
what i mean is, can i tell xbmc to store the video database file on my server (perhaps the whole user data folder), so both instances of xbmc will pull information from the same database?

i realize that this probably isn't possible right now (i'm pretty sure it's not), is this a feature that could end up in a future build?

i can see how having the user data folder on a remote computer might cause problems if xbmc is running and the remote computer is turned off, maybe xbmc could keep a local cache of the remote user data folder?

would any of this be possible? or have i smoked too much crack again?

HarshReality
2006-06-25, 02:31
if you had both xboxes with the same info in settings and say they pointed to a smbshare certainly but it would be slow as hell as they tend to cache and the transfer alone... well you get the idea.

but by all means give it a try.

JoyMonkey
2006-06-25, 03:14
sorry, it was my understanding that each instance of xbmc stores its databases inside the xbmc/user data folder.
how do i tell xbmc to look for the user data folder on a samba share? i can't see any reference to it in xboxmediacenter.xml

HarshReality
2006-06-25, 05:58
could edit source... mainly settings.cpp but in the whole of the code there are 115 references scattered for the userdata.

of course if you edited the source code and did a compile and then installed that xbe on 2 xboxes they would both access the same userdata folder.. in fact they would mirror settings and the like for the lot.

Livin
2006-06-25, 09:14
seems much easier just to create a script to sync them periodically...

Rager
2006-07-10, 23:54
hi all

i was wondering is there a way to have a centralized database of thumbnails or a way to updated the thumbnails database etc.

i have 4 xboxes at home all looking at the same server. is it possible to have all the xboxes gather or synchronise the data between themselves. or to have an option to upload databases to other xboxes transparently.

even if one xbox has to be set as master.

but preferably having a network share that all the xboxes point to. but to also have them cached to the local hdd in the event the server is down.

i hope this makes sense.

thanks

SleepyP
2006-07-11, 08:36
i am guessing you use xbmc itself to acquire your thumbs? with so many boxes, it is a better idea to put the thumbs in with the media.
http://www.xbmc.xbox-scene.com/wiki/index.php?title=thumbnails
this is how i do it and it's very nice & easy once you get through the initial annoyance of having to go get icons and rename them as needed.

Rager
2006-07-11, 13:20
hi.

thanks for that. it looks like it will work, however it isn't very transparent and can be a little difficult to impliment.

but thats the basic idea i would like to do.

thanks

AnonyOne
2006-07-11, 15:55
hi

i have the very same issue and have made a simple suggestion earlier this week :

http://www.xboxmediaplayer.de/cgi-bin....t=21653 (http://www.xboxmediaplayer.de/cgi-bin/forums/ikonboard.pl?act=st;f=4;t=21653)

a.

RockDawg
2006-10-06, 05:38
I currently have 2 xboxes that run nothing but XBMC, but I would like to make it 4. The reason I don't is that it's a pain to keep even the two machines synched as far as the movie and music databases and thumbs. I would be sweet if there were a way to only have to add say a movie with a custom thumb to one machine and have the rest auto update when powered up or something. I don't know anything about coding or the limitations of XBMC and the Xbox platform, but I was thinking something along one of these lines:

1. Remote storage and reading/caching of necessary files (db and thumbs).
2. Some code that copies the files from/to a server at startup/shutdown.
3. Remote access of the GUI to manually save on each machine like normally would be done on any single machine.

There's probably a reason why each one isn't already implimented, but I figured I'd ask since it would seem to be mega-useful to anyone with multiple Xboxes connected to a media server and I've never see it requested.

kkampen
2007-08-13, 12:42
Hi,

I have multiple Xbox's in my house. And i share all my movie & music out on one server.

Unfortunately I have to add all the Media Info for each xbox.

It would be great if there was a way to "proliferate" this information to all the xbox's.

Even cooler if you could have a "Master XBOX" and see all the profiles and select what movies go to which profiles. All profiles being seen on all xbox's so anyone can log into any xbox and see thier items.

ultrabrutal
2007-08-13, 16:18
...or have a common database on the server/NAS

althekiller
2007-08-14, 03:02
There would need to be some kind of subversion client to handle revision changes. Otherwise when two xboxes get the same db you'll only see modifications made by one.

TheBoxMan
2007-08-15, 13:21
I've been thinking about this kind of setup for a while now. I'll likely be trying to set one up in a week or so. (by the way has anyone any advice for a cheap adapter that will allow xboxes to join a wireless network?)

Webserver/or FTP you could even send and recieve it over samba (I think. XBMC has the client but not the server. However I assume your media server is running it so it sounds possible).

Maybe it would be a good idea to do a checksumon the local Userdata (and save it to some file along with the date and time the checksum was done which will be sent over to the server with it) and compare it to the one on the latest remote database (done when it was sent over) to prevent syncing the database when the xbox is uptodate.

Actually I think this is a function we would do well to look at integrating with Official XBMC release rather than simply being a python script.

Similarly with TV links and XOT. ;)

kkampen
2007-08-15, 13:59
The problem with synching is the Watched / Unwatched tag. But this is also a problem with profiles. i think the watched unwatched should be in the profile. Then the movie data & profile db's be synced with no problem. And all users can watch the movies on any tv.

The_Dogg
2007-08-18, 17:46
what we would need to do instead of synching multiple xboxs is have a global database on the PC that all xboxs use, like a mysql server (or any other format) on the pc.

but maybe that's not possible to do for the devs, i have no idea! :)

sho
2007-08-18, 20:59
Please look here (http://xbmc.org/forum/showthread.php?t=27990)

TheBoxMan
2007-08-19, 00:49
what we would need to do instead of synching multiple xboxs is have a global database on the PC that all xboxs use, like a mysql server (or any other format) on the pc.

Yes *but* if it's going to stay up to date then the xbox will need to update the PC periodically/on shutdown/or something.

Ergo the uploading and downloading model the guys proposed before (as making XBMC use a profile which is entirely remote is likely **too** hard to effect).

wayne4186
2007-09-01, 17:06
Hi,

each time I upgrade XBMC I am faced with the same horrible task.. I have 5 Xbox's in my house all looking at the same central server where all of the movies, music and photos are stored. I don't upgrade the versions until IMDB change their site and the lookup movie information changes because it is such a nightmare to get A: a compiled version B: a version that plays my media without freezing or choppy audio/video C: go into my new version on 5 systems and redo all of the thumbnails and IMDB information for some 500 movies (exponentially - 2500 IMDB lookups!!.:mad:

So my question is this - Is there a version of XBMC out there that allows me to provide within the config file a parameter to define where each system should look for the thumbnails directory and the database that holds all of the IMDB information for the movies that I have? If not - then can I simply carry out the IMDB work after installing a new version on one xbox and then go in and copy the thumbnails directory and the DB across to the other 4 xbox's using ftp? If so - where do I copy them from on the new upgrade and put them in the other 4?

By the way - does anybody know which version is the most stable now? I tried a few versions and they are playing my videos really poorly - unwatchable. Also my photos have never been able to display (takes a long time to get one photo - I think this may be a caching problem.. each photo is around 2mb).

thanks

Wayne

ps - my usrname used to be wayne186 and I can not reset the password - so here I am.. wayne4186 aka wayne186 :-)

calibos
2007-09-01, 17:43
I have 4 XBMC xboxes. I just recently finished ripping my dvd collection to H.264 and copied the 600 movies onto one of my D-Link DNS 323 servers. I have another DNS 323 for TV shows, music and photos.

Anyway I kinda already have centralised thumbnails because I don't use the IMDB coverart thumbnails. Instead I used a neat little applet called eckes mediaicon downloader. You just point it to the movie folder and it imports the list of movies. You double click the movie, the applet searches mediaicons.org for the relevent tilted dvd thumbnails (much nicer then imdbs). You double click on the icon you want and it saves it as [moviename].tbn straight into your movie folder. What would have taken a week for my 600 movies if I manually did it through the site took one night. ie 2 double clicks per movie rather than typing the name of the movie into the sites search, clicking through about 4 or 5 screens to get to the icon, followed by save as and retyping the movie name .tbn and then having to delete .png off every single file. This applet was an absolute godsend.

So anyway because the thumnails are central each xbox just has to automatically cache the new ones next time its switched on.

As for the database, I do remember a thread about centralising the database on a server but I think one of the devs reckoned it was either impossible or very messy.

What I do is just do it on one xbox and then just FTP the userdata folder to the other xboxes. I rename the other xboxes userdata folder to userdatabackup incase anything goes wrong. It takes about 20 minutes to ftp across for each xbox but I think that is because I have the full apple movie trailers site cached!!. Probably take a lot less time without all the apple trailer files.

Likewise with an upgrade to a new version. Copy the userdata folder to a new extracted build and then ftp that to each xbox.

All I have to do each time after I do this is go into appearance and video settings and reconfigure for the displays some of which are sd crt and one of which is a 720p projector

hicaow
2007-09-01, 18:49
just don't delete the UserData folder when you update and it keeps everything ..

"By the way - does anybody know which version is the most stable now?"

the newest SVN 10100 build works great .. T3CH XBMC 2007-08-26 SVN rev10100 ..
im sure the one tomorrow will work fine as well ..

run088
2007-09-17, 19:08
i have two questions first i have 5 xboxes running in my system and a pretty big library as well that just gets bigger and bigger and i have to update each xbox manually when anything new is added to the system. so what i would like to do is make one xbox a master where i would manually update it then transfer its library to all the other xboxes in the system the only problem is i dont know what exactly needs to be transfered and where it is located? my second question is if the dvd thumbnail cant be located how do you make one and get it to show up?

spiff
2007-09-17, 19:26
go read the friendly manual. both of your questions are ofc answered in there

run088
2007-10-06, 07:09
i must be retarded because i still cant figure out how to transfer one library to another after reading the manual several times.can someone atleast point me in a more specific direction.any help will be greatly apprecated.

spiff
2007-10-06, 10:40
use export library or copy the database in userdata/database/myvideos34.db

i'm sure its in there

Kronenbourg
2007-10-17, 14:42
The ideal situation for me would be the ability to have the database as a remote MySQL DB connected via ODBC. As with others on here, have multiple xboxes streaming all my content off a couple of central NAS servers and I also have a CentOS based server with MySQL on it. Would be nice if you could set the xbox to use that machine for its database and have the calls running over odbc.

No idea if this is feasible as I haven't had a look at the code to see how the DB calls are handled.

stanley87
2007-10-18, 00:10
Hey, i can write that script for you if u like, problem is, how does the script no when u turn the xbox off via the button, you would always need to shutdown the xbox via xbmc.

jonathh
2007-10-18, 11:34
It'd be great if it could store the thumbnails either with the files it is representing or some such?

But on a side note.

I'd love to see a central bookmark place.. so if i watch a movie over the network in my front room, and then go to another room i can access where i was... ? is this possible?

stanley87
2007-10-18, 14:29
I wrote a script called ResumeX which does what you want on one xbox. But if resumex stored its data on a central server, then it could load the data from any xbox and continue on

jonathh
2007-10-18, 16:09
My googling for 'ResumeX script' suggests it resumes the <i>last</i> movie/song played? I was think of just storing the book mark info centrally so i can *choose* to 'see' the bookmarks.. and it shows where i got to downstairs on a another xbox....

Schnard
2007-11-09, 22:11
I have two Xboxes set upi nmy house. One upstairs, one downstairs. How is the best way to sync the Libraries/thumbs, etc. . . I seem to have to to scan and update both whenever I add something for the deatils to show up. and I would like to simplify the process.

Is coying one UserData folder an option??

Thanks in advance!

Schnard

Coco
2007-11-09, 23:12
Copying the userdata folder would work just fine. As far as I know it's currently the best way to do it as well. There is no way to automaticly sync them.

hicaow
2007-11-09, 23:21
yes you can copy the Userdata folder from one to the other ..

jmarshall
2007-11-09, 23:46
yep - just copy userdata across. This assumes the paths etc. are the same on both xboxes which I presume is a valid assumption in this case.

EDIT: Must type faster :p

a804570
2007-11-11, 23:35
I have two XBMC's running in my household that are used exclusively for media (audio/video) playback (no emulators, scripts, etc.).

Over the last few weeks I have started burning all of my movies (around 1300) to Xvid for playback on XBMC, but I am looking for an easier way of updating both boxes with the same library information.

Is there an easy way that allows me to update the library on one Xbox, fix the import errors, and then share the info out to the other Xbox without having to duplicate the effort? I realize I could copy the user data folder over from one to the other, but that would require me to re-calibrate the receiving xbox.

Any help out there?

Coco
2007-11-12, 03:45
Why would that require you to re-calibrate the receiving xbox? I suppose if they run at a diffrent res then you'd have to reset that, but that's about it unless they are diffrent networks, in which case this wouldn't work.

The easiest way is to copy the userdata folder. Of course you don't have to copy the whole thing. You could just take the database folder inside it. Thus perserving settings of the other xbox. Other then that there is no other solution.

jaredharley
2007-11-12, 06:52
I have the same type of setup. What I've done is taken the time to make sure all of the files import correctly into XBMC on one xbox. For videos, I use .nfo files to make sure the scraper goes to the right movie, and most of my movies have higher-resolution thumbnails (saved as .tbn files). This way, when I update the library, all of the movies scan in properly.

One of the reasons I did this is so that, hopefully I won't have to fix any errors in the event I have a fresh xbox (add a new one to the house, one up and dies on me, etc).

jgawera
2007-11-12, 10:07
Me too,

Just keep the nfo and tbn files with your movies, then all xboxes get the same correct data.

a804570
2007-11-13, 01:49
Wow. I didn't expect my simple question to generate that many responses.

Reading through all them gave me one more idea. I'm not a NAS expert, but I have 8 TB of storage spread through 4 separate FreeNAS servers. Is anyone out there familiar with either FreeNas or Rsync in general to answer the following?.....

Is it possible to set up Rsync to copy the User Data file from one XBox, move it to the NAS and then Rsync up with the other Xbox to move the data there? FreeNas does support FTP transfers.

jpc82
2007-12-03, 13:57
I have multiple XBoxs (currently 3) and I want to be able to have some sort of centralized library for large shows. I have some full season and series that I watch when I get time but I constantly forget which episode I last played so I waste time searching. So I had the idea of making some sort of script that will keep track of the last episode I watched and start the next one when I want.

My basic I idea is to store all the config files on my network share (where my files are stored) so that any of my boxes an access it. When I run the script it will find the last file played and start the next file alphabetically. Then when the show finishes it will update the script to mark that episode as watched.

Is this possible, and if so where should I start? Where can I find a good tutorial on how to create a script to do this?

Loto_Bak
2007-12-05, 06:31
This db/thumbnail syncing is overkill.

As previous posters have said use id3 tags, and .nfo files to tag your movies and music.
XBMC recently got a autoscan on boot feature and using these would ensure that all xbox have the latest data.

TV shows are currently reliant on filenames. I'm sure tagging export will come for them in the future if the new movie .nfo export goes well

WaTTiK
2008-01-30, 09:15
Hi, i have two xbox conected to a router. All the movies and tv shows are in my computer, is there a way to store the library db on the computer and that the library db is used by the two xbox from the computer.

Or that one xbox keeps updating the library while the other copies the db from the first xbox. Thanks in advance.

jmarshall
2008-01-30, 09:23
Second one is doable assuming you have the same paths setup on each box.

I suggest copying over UserData/ from one box to the other (assuming you use DHCP for network stuff)

SandmanCL
2008-07-02, 11:32
I'm gonna piggyback off of these feature requests that I'm assuming have been collected in one thread over time my the mods :grin:

As XBMC is being ported to more platforms it becomes increasingly more common that users have multiple copies of XBMC running and hence spend an increasing amount of time updating libraries and thumbnails, I feel this feature is becoming more crucial.

I had thought that the following approach would be cleanest:

* If autodetection is enabled and other xboxes are discovered, look for newer versions of the user data on other xboxes
* for any newer *.db or Thumbnails/ files found, copy said file to the local box

If something the equivalent of 'rsync' is not available, a possible way to implement it would be to maintain a large text file on each box which contains a sorted list of files and and the last modified time for that file. Copy any file from the remote xbox if the file does not exist or if it the remote copy is newer.

SandmanCL
2008-07-02, 11:48
Sorry (can't edit my pots ;)) but I realized too late that post is under python script requests rather than under feature suggestions. If someone comes up with script to do the same thing I can live with that too :)

cowboyrock
2008-07-15, 20:52
2 xbmc boxs in the house can they shear the same DB so that when i update 1 both updates and shear the same user data setting DB files and thumbnails





thanks for making the best meda player ever

my rig
xbox 1.1
x3
x3 ir
x3 faceplate usb lcd frost blue
xbcm frost blue
underglow blue

Combat Vet Box OIF 05-06

coastal
2008-07-15, 20:56
you could write a batch file on a pc to ftp across the db files i suppose.

ultrabrutal
2008-07-15, 22:02
sqlite doesn't work well over a network. it depends on filelocking.
maybe someday someone will add the ability to use a mssqlexpress or similar. that would be great! however alot of the sql must be rewritten to work. I vulenteer if someone writes the c++ code to access mssql plus adds a table for clients (mac address used for id or something) ;)

if you had a server with mssqlexpress you could also write a pc app which did the scanning of new media into the library as soon as it's added, so when you turn on your xbox or whereever you have xbmc running these days, everything is just up to date.

I totally get why the devs use sqlite since it's opensource and can be embedded, however it puts ahold to some really neat and useful features when you have multiple clients.

lawina900
2008-07-26, 22:38
I have three xbox's using XBMC Pre 2.1 (may 19 build and later). I am adding my entire DVD collection to a 8TB RAID server that all three xbox's stream from. It is cumbersome to have each Xbox rescan to retrieve movie info/thumbnails for the movies when they are added or renamed. I would like keep one xbox up to date and then copy the database file with the thumbnails and info to the other two.

After I rescan the main Xbox would it be sufficient to copy over the file folders Thumbnails and Database in APPS/XBMC/UserData to the other two xbox's or are there other files I need to transfer over.

OR is there an easier way to sync all the xbox info?

Thanks in advance.

kraqh3d
2008-07-27, 02:13
There is no other way. Just copy the entire UserData folder between them.

troutbum
2008-08-19, 00:37
I have 4 different machines running XBMC, I would love to find a way to share userdata across all machines, I tried copying the userdata dir to my server and then create symlinks on the host machines...this kind of worked. The machine where the userdata dir originated seemed to work fine, but the second host wasn't picking up all of my movies in the library?? It was only showing a handful?? Anyone already worked through this?? Be nice to have my library update regardless of what machine I am using.

althekiller
2008-08-19, 01:16
Your best bet is probably to setup the home dir for you xbmc user on an NFS or SMB share. Just be aware that XBMC doesn't support this so concurrent db accesses will overwrite each other.

Oxyg3n
2008-08-27, 17:39
Ok, I have 3 XBox's running specifically XBMC

I now have another PC running XBMC aswell as everything else, im also looking at building another PC for the TV to specifically run XBMC.

Is there any way to be able to move the point of the UserData folder, to say a samba share, and have all my XBMC systems look at that point. This will be pretty useful, since all the data i will ever read is on a single point (I have a Data Storage server i keep everything on, TV Shows, Movies, etc etc)

Thanks in advance for your help

micster
2008-08-29, 07:01
Is there any way to be able to move the point of the UserData folder, to say a samba share, and have all my XBMC systems look at that point.

This might be a hack'ish way and I'm not too sure if it's very efficient, but you could create a "symbolic link" that points to a single "userdata" folder on your samba share. I'm not sure if symbolic links can be created on the Xbox though.

I would start by copying my current working "userdata" folder to my network share (samba,nfs,etc.). You probably need to adjust the permissions so that this shared "userdata" folder can be read/written to.

For example:
I have mine auto mount to a folder /media/xbmc/

Then for each installation of XBMC, navigate to your userdata folder and delete it. And create a symbolic link to the shared "userdata" folder.

For example:
sudo ln -s /media/xbmc/userdata /home/username/xbmc/userdatawhere the first path is the location of the actual files that now exist on your network share, and the second path is the location that XBMC is looking for the files (the one we just deleted).

I haven't tested this, so be sure to investigate it more on your own before trying.

alexodwyer
2008-09-08, 13:45
Is this possible now?

Gamester17
2008-09-08, 17:50
Is this possible now?No, there is no built-in feature to ability to share and synchronize userdata databases and thumbnails between multiple XBMC installations.

alexodwyer
2008-09-08, 18:19
It may well be a feature worth considering in the future. It seems more and more people now are having more than one mediacentres. And many are now setting up a server to hold all the data.

It would be awesome to be able to point each xbmc install to the server and to update and maintain a single database.

So things such as watched status', pause points etc are all propegated between all your mediacentres. As are any new files added to the libraries.

Gamester17
2008-09-08, 18:44
Please search trac if there is not already a feature request for this, if not then feel free to submit a new ticket, see: http://xbmc.org/wiki/?title=What_is_XBMC_%26_What_Can_it_Do%3F#Where_ca n_I_suggest.2Frequest_a_new_feature_or_function_to _be_implemented_into_XBMC.3F

nc88keyz
2008-09-11, 06:08
Is there a Win32 APP for XBMC that will clone your profile to all computer via ip address or something.

I see great things in the future for xbmc as far as thin client distributions and such.

I service running on a server that listens to XBMC and when it detects changes it updates and reboots/restrarts with the updates.

Full House XBMC , Fanart, ect.

Kind of like an extender but different in the respect that you could toggle to update to XBMC FullHomeSync "F.H.S" or run as standalone profile.

Interesting thoughts, Im no developer though.

wells
2008-09-18, 05:34
Would it be feasible/possible/an interest for an XBMC "Server" this server would be on a local PC or NAS device and would recognize devices that are netbooting , save the device(s) HW settings and run a centralized version of XBMC ala Linuxmce (http://wiki.linuxmce.org/index.php/User's_Manual#Media_Directors). Or go the way similar to VMWare VDI (http://www.vmware.com/products/vdi/faqs.html)

This way all of the devices (XBOX's, PC's laptops, Webtablets) would run the same version of XBMC, same settings, fanart/thumbs, profiles etc.)
With the webserver enabled on the "server" (PSP's iphones, smartphones) could be used as remotes to control these devices in different rooms like an ORBITER used HERE (http://wiki.linuxmce.org/index.php/Orbiters)

I think this is a logical step in the evolution of the remarkable XBMC cross platform program. More and more people have multliple XBMC devices. I have 3 XBOX's 2 win laptops 2 win PC's and 2 linux PC all running XBMC. So a solution along the lines above would benefit me and others like me greatly.

Can this be done and how?

By no means am I a scripter or developer - but I would like to pitch in if there is anyone willing to work this, I have a networking background.

marathont
2008-09-25, 21:30
Hi, I have two xbmcs, and would like to no if its possible to share music and video library dbs between them. If the database files were stored on a network drive or something, save me from updating things twice?
Thanks

althekiller
2008-09-25, 21:59
This will likely cause you more problems than it will fix, due to how the db is currently handled. Search the forums for more details, I've personally answered this question at least twice.

S__G
2008-10-07, 05:22
I think there is a way for Linux and Windows systems. Create a symlink (on Linux) or NTFS Link (on Windows) to a shared directory (in this case, the UserData for XBMC) on all systems. This way, all computers are using the same data located on one computer.

However, you cannot use local media in your library if you do this. The reason for this is that computer1 will have H:\Films\, but computer2 should access \\computer1\Films\ for the movies. So, when adding items to your library, you need to add them over the network -- even for the local computer. So, computer1 accesses \\computer1\...\, as will all other computers on the network.

peol
2008-11-20, 18:50
First of all, I've got to thank every each of you hardworkin' developers for even making XBMC possible. I've used it since the early versions on Xbox and followed (and used) the project since early linux port.

The library function is awesome, and I've come to like it more and more. The thing is that I got four different computers running XBMC (two laptops, one stationary and XBOX) and to keep all those up to date I've got to update their libraries manually. That's were my feature suggestion comes in;

What about adding a remote library function? Like, say 192.168.0.2 got XBMC running and "serving" its library (possibly password protected) and other computers can just enter 192.168.0.2 as library path and "check out" the library, kinda like a SVN repos. That would be extremely comfortable and maybe could introduce a network online buddy recommendations and tips in the future, based on what you've liked and disliked in your own library.

My apologies if this has already been suggested, I did a few searches though and couldn't find anything quite like thisso I thought I'd post a new thread about it.

Thanks and greetings,
peol.

chris1h1
2008-12-20, 02:39
I too would very much like this feature if it is possible - rather than storing several copies of the same library on each individual XBOX or computer, an option to browse to a single library stored on a network share would be a really good feature. Presuming of course that several instances of XBMC would be able to use this shared library at the same time - perhaps the first instance could check it out to allow read/write, while all other instances would only be able to read.

sho
2008-12-20, 10:43
http://xbmc.org/trac/ticket/4826

Gamester17
2008-12-20, 14:22
http://xbmc.org/trac/ticket/4826and read these => http://xbmc.org/forum/tags.php?tag=synchronize

:rolleyes:

cnschulz
2008-12-26, 12:43
I think there is a way for Linux and Windows systems. Create a symlink (on Linux) or NTFS Link (on Windows) to a shared directory (in this case, the UserData for XBMC) on all systems. This way, all computers are using the same data located on one computer.

However, you cannot use local media in your library if you do this. The reason for this is that computer1 will have H:\Films\, but computer2 should access \\computer1\Films\ for the movies. So, when adding items to your library, you need to add them over the network -- even for the local computer. So, computer1 accesses \\computer1\...\, as will all other computers on the network.

you can create a symlink called "H:" that links to whatever you like... so you can have windows like naming on unix... thts how i host my itunes library and have other apps use it. :)

cap.dsh
2009-02-05, 11:20
Hi all,
I've two PC with Xbmc installed.
The first one , let's call it "master" has all the media files on its disks.
The second one , let's call it "player" gets media from the master using windows folder sharing (I've got same path name for media on both PCs)
Now I copy library whenever I get updates on master

Is it possible to have only one library shared between the two PCs?

Is it possible to share the whole XBMC installation (settings included)?

I suppose I've to work with "portable" installation fo xbmc but I'd like to understand if you have better suggestions.

Thanks in advance to all you.

Ciao

CAP

cap.dsh
2009-02-05, 14:35
Possible solution: install XBMC in the same shared folders as media.
Is it feasible?

CAP

xexe
2009-02-05, 15:00
I have no experience of using mapped drives but what i can teel you is that if you are using a new SVN then you can share the userdata folder with the exclusion of the guisettings file.

I share but by syncing folders not mapping drives

Hitcher
2009-02-05, 15:47
If you're only watching on the 'player' PC then you don't even need XBMC on the 'master'.

cap.dsh
2009-02-05, 18:18
If you're only watching on the 'player' PC then you don't even need XBMC on the 'master'.

I obviously use both PC....:nod:

Hitcher
2009-02-05, 18:38
Not really sure then, sorry.

Chilternburt
2009-02-05, 19:06
Not sure if this is possible, but i know u can choose the location of your library on the OS X build so thought id ask...
I've got a normal Xbox, running XBMC, and a mac laptop, also running XBMC for when the housemates are using the TV, but i get tired of updating my library depending on which device i watch on... is there a way of hosting the library on say my macserver (where the smb shares are) and linking both the xbox and laptop to it..

thanks..
and sorry if its been asked before?

jmarshall
2009-02-05, 22:49
It has been asked before, yes.

The easiest way to do it is to just copy your userdata over from one build to the other, though this assumes that the paths used on both machines are the same (i.e. the media files are shared off a remote share on both machines etc.) and that the versions of XBMC used are in sync (at least as far as the versions of the database files are concerned).

There's a couple of alternatives to this:

1. Do all updating on the one machine, then just export your library to individual files. That way, all the information is kept next to your media files, and so scanning the library is very fast.

2. Use upnp to share your library on one machine to the other, though this isn't quite as rich as the local library experience as yet.

Cheers,
Jonathan

Chilternburt
2009-02-06, 12:33
oops sorry my bad, thanks anyway..

http://www.chilternburt.com/downloads/repost.jpg

Arkade
2009-02-10, 03:40
Hey guys,

I've been using XBMC for years, but I constantly have the problem where I try to play a file thats not available, because the server computer is powered down.
I use XBMC with multiple PCs (one for each member of family) and everything is shared through SMB. I was wondering if there would perhaps be some possibility to share the libraries so that it would be a little more... dynamic.

I mean that if I was using XBMC on the pcs (which I do) I could set it up on each computer to only find the media on the pc, and share it via upnp (if configured). That way any other XBMC could detect the machine, and get the library, thus not needing to scan all the data again. The other advantage would be that it would therefore hide offline content automatically (unless the folder was left open for ages).

What do you think? A possibility... eventually, or just a pipe dream?
Cheers
- Arkade

garyi
2009-02-10, 09:06
I am considering putting XBMC onto my mini. Currently all scrape info etc is on the AppleTV

Is there anyway I can transfer the info over as it will be accessing the same library?

ultrabrutal
2009-02-10, 12:24
Anything is possible in the future, but right now the library is a local embedded database.
I have a dream too of a central database for all my xbmc's :)

sho
2009-02-10, 12:40
Feature request thread:
http://xbmc.org/forum/showthread.php?t=37315

Ticket on trac:
http://xbmc.org/trac/ticket/4826

MrTourettes
2009-02-12, 14:10
This is something I wish to do always. My media setup is spread around the house. I have the main media box in lounge, Media box in bedroom and I access media databases from development pc. All my media is stored on a 15tb nas.

Basically I just want 1 database and configuration setup. I want to be able to have xbmc installed on all machines throughout the house and they all access that 1 set of databases and configs.

This will save me having to mod every machine everytime I add something new or update something.

xexe
2009-02-12, 14:31
your not alone

Maxim
2009-02-12, 15:19
I haven't installed XBMC in Windows so i'm not sure exactly how it works, but I think a mapped network drive would be best.

Have a share on the NAS Box, mount that directory as a drive, and then install XBMC there. Then Map the directory as a drive on all of the client PCs.

The only thing I'm not sure about is the userdata and where it stores the databases. I hear that it stores these in the Documents and Settings folder of the user, that might be able to be changed, but I think it might be permanent. In that case it makes things a little more difficult.

Also another thing about multiple users accessing the DBs it needs to be setup on the server that there can only be one instance of Write access at any given time, otherwise it could be very easy to corrupt the DB if two sessions tried to write to the DB in different places.

kno1
2009-02-16, 14:59
It has been asked before, yes.
There's a couple of alternatives to this:

1. Do all updating on the one machine, then just export your library to individual files. That way, all the information is kept next to your media files, and so scanning the library is very fast.


I would also like an ability to share the "library". I'm putting it in quotes, because I hardly ever use the library view of xbmc, I'm always using fileview. All my media is ordered logically on my NAS.

Wouldn't it be possible to have and option in xbmc to have it automatically create separate nfo files next each media file, if so desired? That would synchronise all the media in one go. Possible add a bookmark file next to each file too. OK, library mode wouldn't really work then anymore, but all media info would then be shared... It doesn't seem like a big change, since the functionality to do all things separately already exists in the codebase...

Remco

jmarshall
2009-02-16, 22:56
Export to library individual files already does that (other than the bookmarks thing). You've got to have them in the library at some point obviously.

kno1
2009-02-17, 10:51
Export to library individual files already does that (other than the bookmarks thing). You've got to have them in the library at some point obviously.

The thing is, I don't want there to be any manual steps At the moment my library is autoupdating everytime I switch it on, but it would be nice if it could auto export to individual files at the time of getting the info from the scraper. No manual intervention needed....

I though it might be a quick (and dirty) in between step until a good sharing solution is made (The master/slave architecture being discussed in this thread (http://xbmc.org/forum/showthread.php?t=37315))

Remco

spritemv
2009-03-09, 19:49
I run XBMC on both a HTPC in my living room and a desktop in my bedroom. My media is on my desktop PC and the HTPC accesses it over the network. I like to customize the thumbnail and fanart for my media and find it annoying that I have to do it separately on both PCs. Also, I am making my way through seasons of several different shows simultaneously and frequently use the "watched" and "unwatched" icons to remind myself which episode I'm on. However, XBMC only marks the episode as "watched" if I watched it on that computer. Therefore, I have to manually update the watched status on the other computer later.

Is there any way to sync XBMC between my two computers so if I change the thumbnail/fanart on one, it will change on the other? Is it possible to keep the "watched" status synced between the two computers, so if I watch an episode in my bedroom, it will also be marked as watched on my HTPC?

Thanks in advance!

Maxim
2009-03-09, 19:59
If both systems are running on the same platform, and have the same version of XBMC, they could likely share the same DB, just as long as there aren't any changes made to the DB by both systems are the same time. Only one should have write access to the DB at any given time.

Other than that there shouldn't be a huge issue with them accessing the same DB. I know an easy way to set this up in Linux, but Windows it might be a bit tricky. You'll have to get XBMC to point to the DB wherever it's located somehow. Maybe there is a way to do it with command line options, or advancedsettings.xml?

spritemv
2009-03-09, 21:30
The desktop in my bedroom is currently running Vista. The HTPC is running XP (but dual boots Ubuntu). I've been keeping it in XP for XBMC purposes because I was encountering some bugs under Linux.

I've been considering possibly keeping the DB files synced between the two PCs using something like SyncToy. Would this work or is there a simpler solution? Will I have a problem simply syncing the DBs since one is pointing to its own HD as the source while the other is pointing to the media over my home network?

LaTropa64
2009-03-10, 00:14
Will I have a problem simply syncing the DBs since one is pointing to its own HD as the source while the other is pointing to the media over my home network?Yes. The paths stored in the db are likely different... One would be "E:\Movies\Movie.avi" and the other "smb://SERVER/Movies/Movie.avi".

You could get around it by mapping the network drive to the exact same drive letter it is on the server instead of using SMB.

TeknoJnky
2009-03-10, 00:29
you should be able to use the same smb paths, even if the smb path is local to the computer, it will simply go through the network stack instead of local file system.

in other words,

smb://server/movies/movie.avi

should work for both

spritemv
2009-03-10, 01:13
in other words,

smb://server/movies/movie.avi

should work for both

Thanks for the replies guys. Where can I go to edit the smb path? After doing so, are you suggesting I use a syncing solution such as SyncToy to keep the two computers on the same page or how do I jump that hurdle?

mauwf
2009-04-12, 21:48
Hi all, I wonder if anyone can help me. I have two Xboxes running XBMC in different rooms. All my media is on a NAS which they can both access fine through a SMB share.

At the moment they are pretty much set up identically. However, if I add more items to my media library I have to remember to update both libraries (updating on startup isn't practical due to the volume of media) and when I watch something on one Xbox, I have to tag it as watched manually on the other.

Is it possible for the media library info to be on the NAS and both Xboxes access it. In particular would there be issues if both tried to access it at the same time and would it cause a bog slowdown?

Cheers for any help.

smack
2009-04-30, 04:54
I do not have an answer to this but wanted to know if you got an answer and what it was. Could you let me know?

gavo
2009-04-30, 06:17
I think correct me if Im wrong with the newer xbmc builds tech daily builds. You can export your library from there if you have your library exported into your nas drive. It should pick it up?

joebrady
2009-04-30, 06:34
When you get one xbox set-up the way you need, you can just transfer the Userdata folder to the other xbox.

geocas1
2009-05-09, 07:01
I have been using Microsoft's Live Mesh to sync the userdata folder between machines to sync databases and info between machines. The only drawback I had before was that the username had to be the same on the different machines. This maybe fixed by installing it in portable mode. I found that This method also helps with my info on watched movies in library mode and with thumbs nails for all medias also I can add something to the DB on one machine and it is added on the others.

www.mesh.com its free just make sure you dont sync with the Live desktop only between the systems themselves.

Warning if you have a huge library ( I have over 800 movies) it will take some time to sync initially

colejv
2009-05-10, 20:09
I've got 6 instances of xbmc running on various platforms (XP,Vista,ubuntu 9.04,Sabayon 4,mythbuntu 8.10 and Sabayon MCE 4.0 )

So this has become a real hassle for me, the best idea I've come up with would be to have a set content option that would do the lookups to another xbmc instance (perhaps by smb sharing the DB), I think this method would be easier to implement cross-platform and would only require one machine to be on all time, which in my case is always true because one macine hosts the content.

That however is as far as I have went with the concept if if was PHP/Mysql I could probably bang out a quick solution, but I've never picked up python and have not even looked into what the DB is in xbmc.

spiff
2009-05-10, 20:14
xbmc uses sqlite

AnalogKid
2009-05-11, 22:46
To do this across multiple PC's, running NT or Vista...

Create a folder on your server to act as the shared USERDATA folder.

Install XBMC on each of your PCs and install in 'portable mode'.

Now, within each PC's XBMC folder... delete the userdata folder then create the following SYMBOLIC LINK to your network userdata folder...

mkdir /d "userdata" "\\myserver\shareduserdata\"


this will make a symbolic link from each of your PC's to one common folder on the server.

HOWEVER... never manipulate data from multiple PC's at the same time.... do your scanning on one PC only.
Also... be aware that the 'local' database is now on a server, so you better have a fast network, since XBMC wasn't designed to do this!

If any of this is confusing to you.... be careful, this isn't rocket science but it's also not for beginners.

TigerHeart
2009-05-15, 13:35
Hey guys,

I've been using XBMC for years, but I constantly have the problem where I try to play a file thats not available, because the server computer is powered down.
I use XBMC with multiple PCs (one for each member of family) and everything is shared through SMB. I was wondering if there would perhaps be some possibility to share the libraries so that it would be a little more... dynamic.

I mean that if I was using XBMC on the pcs (which I do) I could set it up on each computer to only find the media on the pc, and share it via upnp (if configured). That way any other XBMC could detect the machine, and get the library, thus not needing to scan all the data again. The other advantage would be that it would therefore hide offline content automatically (unless the folder was left open for ages).

What do you think? A possibility... eventually, or just a pipe dream?
Cheers
- Arkade

I think it would be possible if the database will be splitted to some separate parts, which will be stored on each media source (1 part per each media source). So, when XBMC starts up, it lookups all media sources (both local and remote), loads the parts of database from it. And then merges them to one common database. So, if some sources are temporary unavailable, the proper database part will not been added to the common database at the current start up.
By the way, if you have more then 1 XBMC device, you could update the database only once, all other XBMC devices will load already updated database parts at the next start up.

TigerHeart
2009-05-15, 14:10
And one more idea.
XBMC device could even cache downloaded database parts locally and then (on next start up) check the checksum, and, if they not been changed/updated from the last start up, use the cached part to improve start up time. So, it would download only changed database parts, but not all of them.

Nattal
2009-05-19, 00:03
Just tagging on the back of this as my question is related (I think). I currently have XBMC setup on my main comp, but am building a new HTPC. I plan to try a live install on the new rig, could I just export my library from my existing setup and import to the live install (on a USB drive)? Its only a one time run to transfer the library, not something I need to sync or repeat.

colejv
2009-05-21, 04:15
xbmc uses sqlite

OK I can do PHP/sqlite and just fake one of the existing lookup options by editing the hosts file and using wireshark to learn the expected format, now all I need is some time

chunkhead
2009-05-26, 11:55
Ok, i've read through this entire thread 3 times now...

Can somebody PLEASE just write a script!?

I know you can trigger scripts when XBMC loads as I had a script running a few years back.

What it needs to do is:

1) On the Master Xbox (the one that you update and make changes to), open an FTP session, copy the 'MyVideos34.db' from '/E/XBMC/UserData/Database' to the server (Where the shared files are).

2) On the Slave Xboxs have a different script that opens an FTP session, copies the 'MyVideos34.db' from the server location to '/E/XBMC/UserData/Database'.

This will allow the entire network to have the most up to date database at all times!

Am I missing something else?

Help regarding this script would be greatly appreciated!

alexei100
2009-05-26, 16:05
Hey spritemv .. did you get this working? Want to do the same thing with my machines, but I'm also not sure where can I go to edit the smb path?

spritemv
2009-05-26, 20:30
Hey spritemv .. did you get this working? Want to do the same thing with my machines, but I'm also not sure where can I go to edit the smb path?

I never figured it out... I'd love to hear if you get it working though!

kemik
2009-05-27, 19:34
Yeah I'd be interested in a solution to this too

Thanks

vknutt
2009-06-04, 05:04
Hi guys,

I've currently got XBMC running in 3 rooms in my house, Lounge Bed and Office. I am sharing movies and music from a Dedicated machine in the Office. I was wondering if there was any way to share the library between these three computers. I currently customise the library individually on all three and as you can imagine, this is quite time consuming. Can I for example, customise the library on the office computer and have each of the other computers read the library info across the network rather than using their individual one?

Many thanks in anticipation,

vknutt

theuni
2009-06-04, 05:09
Please search. There are many threads on this topic.

TheUni

AnalogKid
2009-06-04, 21:27
For windows users.... I've already given a solution to having a shared library on a remote server (or shared folder on one of the PCs). The only caveat with ANY sharing is that you don't update the library from multiple PC's at the same time.

I'd explain how to do Symbolic links to network drives once again, but I'm enjoying some cheesecake and a coffee... and NOTHING interrupts my cheesecake and coffee.

Numus
2009-06-12, 01:23
Ability to share the video database over multiple platforms and clients (example share the same video database over 2 different xboxes) also including play state.. in one room watching a movie.. pause the movie, have the ability to click a sync script and it pulls that movie up and puts you right at the time you paused it so you can continue in another room...

ccMatrix
2009-06-12, 03:37
Have a look at the ODBC thread (http://xbmc.org/forum/showthread.php?t=37449).

steve1977
2009-07-25, 06:59
Read through this and quite a few other threads in the forum. It appears to me that there are basically two ways to access the same library from two computers running XBMC:

1) Symlink the path from one computer pointing it to the other library

2) Manual copy and paste of the library


While I understand option 1 to be the more elegant, I would actually prefer option 2. One question before I go ahead. All my movies are on the computer with XBMC 1 and XBMC 2 accesses the files over SMB (of computer 1).

In order now to make the "copy&paste" technique work, do I need to change the path of XBMC 1? It currently just points on the local disk. Do I need to change this that XBMC actually goes through SMB although it would be on the same local harddisk?

ccMatrix
2009-07-25, 08:27
You would need to change the path so that both XBMC setups to use the exact same paths (smb in this case) to make it work. If you are on linux you could try looking into rsync to do the synchronization otherwise you might need to copy files that haven't changed since the last sync. On Windows I'm currently using SyncToy to do that.

hobartgeorge
2009-08-23, 10:06
Hi all,

My main use for this kind of thing would be to synchronise playcounts/watched status between machines. I've decided that the best way to achieve this is to use a sidecar file.

I've put up a spec for it here http://xbmc.org/forum/showthread.php?p=390990#post390990 if you would like to view it and contribute please do.