Central database (or understanding XBMC direction and features implentation)
#1
Question 
I've been using XBMC for several years now. I've come to love all of its qualities while learning to work with its little flaws and oddities.

For me, the most major milestone that it reached over the years is the ability to use a central MySQL database. That's exactly when XBMC became the central piece of my home's digital entertainment.

At first, I think at version 9 or 10, it was required to add entries to advancedsettings.xml in order to set this up. 2 or 3 versions later, this is still the case.

The other problem is that visuals are not stored in the database. I completely understand the reason why, but it requires then another "hack" in advancedsettings.xml to have them available to all clients.

All of this to ask a simple question, why oh why hasn't it evolved? XMBC keeps growing, adding support for more and more clients every year. Please tell me, in 2012, who only has a single media player in their home?

I just fail to understand why this wouldn't be a central piece of the whole XBMC experience. Any XBMC "client" should be able to be turned into a server and all other clients be able to connect to it, all from the main interface, not from hackety-hack xml edits. Also, for all the not-so-tech-savvy end users out there, the MySQL (or any other db engine really) should be, to some extent, built-in XBMC (ie. not requiring a separate setup and configuration). I also can't see why the default database couldn't be shared on the network for other clients to connect to (even autodiscovery?).

I want to make this clear, this is NOT a XBMC bashing post. I LOVE this software, and I'm infinitely grateful for all the time and effort the devs are putting into it. I really just want to understand what goes into deciding which features are pushed over others. I mean, I don't want to get into a "feature a > feature b" debate but PVR functionnality...? In 2012?

Again, this is not a feature request, I'm sure you are well aware of the need for this. I really want to understand the thinking process that goes into deciding features and more precisely why this doesn't even seem planned!

Thanks!
Reply
#2
v12 now handles thumb sync automatically. We're also headed in the direction of a MySQL replacement (most likely in the forum of the evolved UPnP server) that will be a lot easier than how MySQL is set up now. Basically, all the same features, but where any XBMC instance can become the server itself, and other XBMC instances can automatically discover that server. That's the direction we're working towards now.

Library sharing over UPnP is a feature now, actually, but lacks the ability to share watched and resume statuses and integrate with the internal library. It's still not a bad option, and loads easier than setting up MySQL. It's just that a lot of people don't seem to know about the feature.

As for what features go in and when, it depends on who's working on them. Features get accepted when there's someone around to maintain and take care of that feature, and the feature doesn't break or bloat things up for everyone else (to put it simply). There's no formal command chain that goes "you have to work on this feature, and you have to work on that feature". All the XBMC devs work on what they want, when they want, and in their free time. It just so happens that most of our devs want to create an awesome Media Center software, which is why everything isn't just chaos, but this should help explain why some features come sooner than others, etc.

Team XBMC also has a good chemistry with each other. We want to help each other out, see each others ideas grow, etc. At least to a certain degree. We also see the pay off in handling the not-so-exciting things that lead to the exciting things.
Reply
#3
(2012-10-16, 13:20)Ned Scott Wrote: Library sharing over UPnP is a feature now, actually, but lacks the ability to share watched and resume statuses and integrate with the internal library. It's still not a bad option, and loads easier than setting up MySQL. It's just that a lot of people don't seem to know about the feature.

actually i think this was also added. At least watched status from server to client. Not sure about client ->server


Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#4
(2012-10-16, 13:30)Martijn Wrote: actually i think this was also added. At least watched status from server to client. Not sure about client ->server

kick ass!
Reply
#5
This is terrific news! I too use an SQL server and have found it to be a terrific benefit. I don't yet share a directory for art but am also moving in that direction, it simply makes sense to store this centrally. One thing I've noticed is that XBMC get very unhappy when the database server is down. Everything from crashes to lockups can occur. If things move towards a shared database I hope that a little attention might be paid towards what occurs when the datastore isn't available

Using a database really does make things work better, glad to hear that this may become more formalized in the future. It really is a very nice hidden feature right now!
Openelec Gotham, MCE remote(s), Intel i3 NUC, DVDs fed from unRAID cataloged by DVD Profiler. HD-DVD encoded with Handbrake to x.264. Yamaha receiver(s)
Reply
#6
Great! Thanks for the info guys, much appreciated!

Ned, I read one of your post about this UPnP implementation but it didn't sound the same as how you explain it here. Sounds freaking awesome! Smile

Can't wait to see it in action.

Cheers!
Reply
#7
(2012-10-16, 13:30)Martijn Wrote:
(2012-10-16, 13:20)Ned Scott Wrote: Library sharing over UPnP is a feature now, actually, but lacks the ability to share watched and resume statuses and integrate with the internal library. It's still not a bad option, and loads easier than setting up MySQL. It's just that a lot of people don't seem to know about the feature.

actually i think this was also added. At least watched status from server to client. Not sure about client ->server

That's all been added this month (hooray GSOC and alcoheca). There will be much to write about in the October cycle.
Reply
#8
(2012-10-17, 02:47)natethomas Wrote: That's all been added this month (hooray GSOC and alcoheca). There will be much to write about in the October cycle.

Almost all. I know the "control other UPnP/DNLA devices" part didn't quite make it into the merge window.
Reply
#9
How is the UPNP stuff setup? I run code compiled nightly on two machines and maintain a third for a friend. I'd love to check this out and perhaps help find bugs!
Openelec Gotham, MCE remote(s), Intel i3 NUC, DVDs fed from unRAID cataloged by DVD Profiler. HD-DVD encoded with Handbrake to x.264. Yamaha receiver(s)
Reply
#10
it's not in master, you have to pull the pr. as ned said, it didn't make it for the window.
Reply
#11
(2012-10-17, 02:47)natethomas Wrote:
(2012-10-16, 13:30)Martijn Wrote:
(2012-10-16, 13:20)Ned Scott Wrote: Library sharing over UPnP is a feature now, actually, but lacks the ability to share watched and resume statuses and integrate with the internal library. It's still not a bad option, and loads easier than setting up MySQL. It's just that a lot of people don't seem to know about the feature.

actually i think this was also added. At least watched status from server to client. Not sure about client ->server

That's all been added this month (hooray GSOC and alcoheca). There will be much to write about in the October cycle.

Looking forward to hearing about the new features for the Oct cycle.
Nvidia Shield with Kodi 18
Reply
#12
I moved away from XBMC to Plex because of the centralised database. It was so much easier to just update the server that's constantly on anyway and have all my latest vids pop up rather than having to wait for each client to scan the entire DB.

So I'd love this. I also use XBMC as a uPnP renderer, wish Plex had this feature too but still have to rely on XBMC.
Reply
#13
(2012-10-24, 14:56)RXP91 Wrote: I moved away from XBMC to Plex because of the centralised database. It was so much easier to just update the server that's constantly on anyway and have all my latest vids pop up rather than having to wait for each client to scan the entire DB.

So I'd love this. I also use XBMC as a uPnP renderer, wish Plex had this feature too but still have to rely on XBMC.

Have you tried the centralised database XBMC can use now?
Reply
#14
I've not, I've always been put off the config of it as it requires manually editing files. The nice thing about Plex server was I just installed it and configured through the web-interface. I do prefer XBMC as a player due to the uPnP playback.
Reply
#15
Three lines or so in the advanced.xml file isn't onerous IMO. Setting up the SQL server only takes a few moments too. I've been running an SQL server on my desktop for over a year for this and just last night moved it to an ESX instance. It took me only a few moments and had I not changed the host name I wouldn't have even had to do that! Being able to have XBMC spin up a database server itself might be nice but it isn't too bad the way things are now.

Not tried the upnp feature between machines yet, the sql server seems to work really well for me though....
Openelec Gotham, MCE remote(s), Intel i3 NUC, DVDs fed from unRAID cataloged by DVD Profiler. HD-DVD encoded with Handbrake to x.264. Yamaha receiver(s)
Reply

Logout Mark Read Team Forum Stats Members Help
Central database (or understanding XBMC direction and features implentation)0