Kodi Community Forum
Some questions regarding sharing xbmc from a server - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: General Support (https://forum.kodi.tv/forumdisplay.php?fid=111)
+---- Forum: OS independent / Other (https://forum.kodi.tv/forumdisplay.php?fid=228)
+---- Thread: Some questions regarding sharing xbmc from a server (/showthread.php?tid=134315)

Pages: 1 2


Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-19

Hi, i just tried xbmc and it's quite awesome.
I plan to implement it to an internet cafe with :
- A multimedia server running ubuntu
- 25 Clients running windows xp
All running on the same local network

My questions are :

1. I know there are ways to make xbmc works over the network,
but is there anyway to share the a single metadata file on that server
so that my clients don't have to download covers and metadata stuff all over again?
Could anyone guide me step by step?

I've read the sharing guide with mysql,
but can i share the metadata files without xbmc on the ubuntu server?

2. My second question regarding xbmc sharing, is the state of the video shared between all users?
If it Is there anyway to make xbmc stand individually for a user?
i mean it wouldn't be funny if one user pause a movie and the others got paused too Sad

3. Regarding the video player,
Is there anyway or patch to get rid the track bar below the video?
Because majority of the movies in here uses subtitle, and that thing is covering it.
I know you can just right click to remove it, but for casual user it might take a while to figure it out.

4. Is there a patch to add "Download" option on right click when browsing movies / music ?
I'm aware there's a file manager already, but it's a little too complicated for my customers..

Thanks




RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-19

1. You can use MySQL with just about any OS, including Windows. You don' t have to use Ubuntu at all

2. Clients can't pause other clients, so this won't be an issue.

3. If you change the skin that XBMC is using.

4. nope


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-19

(2012-06-19, 11:21)Ned Scott Wrote: 1. You can use MySQL with just about any OS, including Windows. You don' t have to use Ubuntu at all

2. Clients can't pause other clients, so this won't be an issue.

3. If you change the skin that XBMC is using.

4. nope

Thanks for the answer,

1. Sorry should have been more specific, the media files (video, music, etc) is stored on the multimedia server.
And the content is updated periodically.. I'm trying to share it across 25 clients with xmbe, problem is :
Each of those clients is using Deepfreeze (you know the rollback program that restores the state on restart) on C Drive
So i'm trying to figure out,
how to automate the metadata updating process across clients whenever the multimedia server is updated with movies / music..

Because if you update it on client individually it be get restored to its previous state on restarts..
Would it be possible to share the metadata files without exporting them ? Perhaps on the multimedia server?
(I have like 2 TB of movies and exporting metadata takes ages)

4. Hmm.. Is there absolutely no way to add "Download" Button on the movie page? That would make things alot easier..
I don't mind looking up the source code and compiling it..but i hope there's a guide for this..

Got one more question.

5. Any clue which file should i tweak if i want to remove certain feature? Like settings, this is for public usage so it should be a little strict

Btw i managed to browse an ubuntu multimedia server without setting up the MySQL though.. What's the point of using it then?
My ubuntu server had MySQL and samba installed though


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-20

Btw.. Is the metadata format different between linux (ubuntu version) and windows version?
Is it still the same xml file found on windows when you export the library?

I'm trying to share metadata database from my ubuntu server like this

Ubuntu multimedia server --> 25 windows xp clients
I think that's the most effective way..
I'll then exclude the shared folder with metadata files from deepfreeze on the client side
Client then update the library manually but they still need to fetch the metadata files from server..

The library is smaller so individual update is still ok, but the metadata files are big, that's why i need it to be shared..

But i read here :
http://wiki.xbmc.org/index.php?title=HOW-TO:Sync_multiple_libraries/Sync_other_parts_of_XBMC
That you should not try to share database.. Which "database" is the article referring to here? Metadata or library?
and why is that?


RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-20

metadata is stored in the library. If you are talking about files that are with the media, like nfo files, those are only used when files are scanned into the library. XBMC then uses an SQL db file in the userdata folder to store all the information.

It sounds like the best thing for you would be to not use MySQL sharing, but instead just set up everything just as you like it on one computer and use that userdata (wiki) folder for your deepfreeze. That way you just update the one copy and it's copied over to all the others.

Since you have the deepfreeze setup then you don't need to actively share the DB between computers.

There are also certain skins that have what is called a "Kiosk" mode and can have settings locked, so people can't change things (unless you have a passcode that you can set).

Off the top of my head I can't recall which skins have kiosk modes, but you can lock certain things in any skin by going to Settings/System/Master lock (wiki).


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-20

(2012-06-20, 01:30)Ned Scott Wrote: metadata is stored in the library. If you are talking about files that are with the media, like nfo files, those are only used when files are scanned into the library. XBMC then uses an SQL db file in the userdata folder to store all the information.

It sounds like the best thing for you would be to not use MySQL sharing, but instead just set up everything just as you like it on one computer and use that userdata (wiki) folder for your deepfreeze. That way you just update the one copy and it's copied over to all the others.

Since you have the deepfreeze setup then you don't need to actively share the DB between computers.

There are also certain skins that have what is called a "Kiosk" mode and can have settings locked, so people can't change things (unless you have a passcode that you can set).

Off the top of my head I can't recall which skins have kiosk modes, but you can lock certain things in any skin by going to Settings/System/Master lock (wiki).

Thanks for the explanation, i see.. So metadata is stored inside the library,,

Yes ideally it would be like that,
but would it work if i share it from an ubuntu server? Considering it's in different language?
So the scenario would be like this :

1. Ubuntu server with xbmc for linux installed with all medias database
2. Client side (with deepfreeze opened first) is installed xbmc plus all database
3. Setup Xbmc Client to use shared userdata from the ubuntu server > this is what you mean right?
4. Client deepfreezed
5. 1 week later for instance, server is updated with movies & music, userdata in server updated.
6. Client's userdata follows servers', so it's updated as well

Would it work if i just share MyVideos60.db and MyMusic18.db?
Also where's the option to share user data from external source?

Regarding the master lock..It's kinda strange because it makes the program always ask password when the program starts..
I've created another user, so it's master and user1
When i restart the program and try to login user1, it still asks for master password even though i already disabled "ask password on startup"
and there's no password set on user1
I need the client to be able to use the user1 client w/o pass.. is this a bug?


RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-20

XBMC is very easy going cross platforms for it's settings files. It's actually possible to copy a userdata folder and have most, if not all, of the settings work across Macs, Windows, and Linux. There are some things that might not transfer over well, but often those are just ignored by XBMC rather than causing any issue. Things like the library DBs are definitely compatible across OSes. All those files are basically either SQL DBs or XML files.

The listed scenario sounds like it would work.

Sharing the MyVideos60.db and MyMusic18.db is generally not recommended. If two clients make a change in any way at the same time, then it could mess up the database. SQL, which is what XBMC uses locally, can't handle multiple connections/clients like that, so that's why we recommend a MySQL server, which can handle multiple connections.

However, it might work if your clients only had read-only access to the DB files. I've never tried something like that, so I'm not sure if there's something that XBMC wouldn't like about not being able to write to the DB (other than things like the client not being able to save stuff, which is actually what you want in your set up).

To add different buttons to the XBMC GUI you can just edit skin files. When you say "download" do you mean to copy from the central server to the local client? Or some kind of interface for people to download new files all together from the internet?


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-20

(2012-06-20, 02:18)Ned Scott Wrote: XBMC is very easy going cross platforms for it's settings files. It's actually possible to copy a userdata folder and have most, if not all, of the settings work across Macs, Windows, and Linux. There are some things that might not transfer over well, but often those are just ignored by XBMC rather than causing any issue. Things like the library DBs are definitely compatible across OSes. All those files are basically either SQL DBs or XML files.

The listed scenario sounds like it would work.

Sharing the MyVideos60.db and MyMusic18.db is generally not recommended. If two clients make a change in any way at the same time, then it could mess up the database. SQL, which is what XBMC uses locally, can't handle multiple connections/clients like that, so that's why we recommend a MySQL server, which can handle multiple connections.

However, it might work if your clients only had read-only access to the DB files. I've never tried something like that, so I'm not sure if there's something that XBMC wouldn't like about not being able to write to the DB (other than things like the client not being able to save stuff, which is actually what you want in your set up).

To add different buttons to the XBMC GUI you can just edit skin files. When you say "download" do you mean to copy from the central server to the local client? Or some kind of interface for people to download new files all together from the internet?

I see, so i'll just have to share the folder on ubuntu.. alright i'll give it a try and let you know the result.
Yes, on the server the folder should just be read-only (for security purpose as well)

Download that specific folder movie that the user is viewing, e.g
"inception folder" right click > there's a download button, then it links to windows explorer or something like that..
The file manager is great, but majority here only knows windows, so at least adding download button could make the process easier..

Thanks, i'll have a look at the skinning tutorial

I think there's a bug on master lock btw, read my previous post..



RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-20

hmm, not sure on the password thing. It could be a bug. I'll play around with it and see if I can recreate the issue on my side. Sometimes it will ask for a password anyways if something else got locked, like a video source.


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-20

I managed to hide the program menu by tweaking the guisettings.xml,
but i can't find the command to hide settings..

Creating advanced settings like this doesn't work either..

Code:
<advancedsettings>
    <skinsettings>
        <setting type="bool" name="skin.confluence.HomeMenuNoSystemButton">true</setting>
    </skinsettings>
</advancedsettings>

Could anyone help?

Edit :
Alright maybe i'll try recompiling it,
could anyone tell me which cpp file contains the "right click" function on the source code?
Also, which file has the rule to hide/show "settings" menu

thanks


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-20

Anyone?
Could someone at least point me out which cpp file i should edit,
If i want to do this?
1. Hide system menu
2. Adding a download on right click menu (ideally it should apply to parent folder as well)

If its too hard to code I'm willing to pay or donate as well (preferably paypal)
As long the amount is reasonable Wink





RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-21

Not sure on hiding the system menu, but you can map mouse buttons the same way keyboard buttons get mapped. Just place a copy of mouse.xml in the keymap folder (inside of the userdata (wiki) folder): https://github.com/xbmc/xbmc/blob/Eden/system/keymaps/mouse.xml


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-21

Image [/b]
(2012-06-21, 08:21)Ned Scott Wrote: Not sure on hiding the system menu, but you can map mouse buttons the same way keyboard buttons get mapped. Just place a copy of mouse.xml in the keymap folder (inside of the userdata (wiki) folder): https://github.com/xbmc/xbmc/blob/Eden/system/keymaps/mouse.xml

Sorry should have been more specific, i want to add download option between the right click option on the pic i attached... shoildnt be too hard for the developers since the path to the item is already clear..
Btw i tried the sharing userdata method and it doesn't work, xbmc won't read shared userdata.. im trying mysql method now..


RE: Some questions regarding sharing xbmc from a server - Ned Scott - 2012-06-21

Ah, you want to add it to the contextual menu.


RE: Some questions regarding sharing xbmc from a server - denywinarto - 2012-06-21

Hmm i think i'll try to solve the sharing issue first.
I still can't share the userdata from my Ubuntu server to Windows XP client
could anyone tell me how exactly does XBMC read userdata?

I've tried almost all method,
- MySQL doesn't work because ubuntu won't push the files to MySQL database
- Sharing the folder by samba-ing the userdata folder to Windows XP doesn't work
- Adding special protocol on advancedsettings.xml, nope
- I even tried a suggestion some guy mentioned on his site, by exporting userdata as a separate folder, but on xp xbmc won't import a separate userdata..

Replacing winxp userdata folder with ubuntu userdata folder works,
so there shouldn't be any language problem..

Help please?