Living Legend Posted March 31, 2017 Share Posted March 31, 2017 (edited) I just compiled an image file from LibreELEC 8.0 Kyrpton that can be run on a VM without a graphics card if anyone is interested. We've been working on it over here: @CHBMB, just to verify. after installing the docker, the only thing I should have to do is copy over the advancedsettings.xml and the sources.xml page, and presto? Or is there something glaringly obvious that I'm missing.... Edited March 31, 2017 by Living Legend Quote Link to comment
dalben Posted March 31, 2017 Share Posted March 31, 2017 7 hours ago, CHBMB said: 18:47:17.554 T:47002372306688 NOTICE: VideoInfoScanner: Finished scan. Scanning for video info took 00:38 I get the same message in my logs, but it doesn't, scan any folders where the content is Movies Quote Link to comment
Living Legend Posted April 1, 2017 Share Posted April 1, 2017 (edited) Went complete nuke on my Kodi setup. Delete all instances of libraries, sources, etc across all devices. I added libraries from one client. I went to do an update from the docker: 16:29:32.123 T:47223469459200 NOTICE: VideoInfoScanner: Starting scan .. 16:29:32.123 T:47223465178880 DEBUG: CAnnouncementManager - Announcement: OnScanStarted from xbmc 16:29:34.363 T:47223469459200 DEBUG: VideoInfoScanner: Skipping dir 'smb://192.168.1.3/tv/Cosmos' due to no change ....... (many more skips due to no change on all tv folder sources) ....... 16:30:36.089 T:47223469459200 NOTICE: VideoInfoScanner: Finished scan. Scanning for video info took 01:03 16:30:36.089 T:47223465178880 DEBUG: CAnnouncementManager - Announcement: OnScanFinished from xbmc And as before, it never checked the other source, the movies folder. I triple checked, and on the WEB UI, under browser, it is visible. The scan however does not scan. Unfortunately, this docker is broke for me at the moment and I will continue to utilize the VM I created until I can figure this one out. Edited April 1, 2017 by Living Legend Quote Link to comment
killeriq Posted April 4, 2017 Share Posted April 4, 2017 Question to confirm: 1. What kind of kodi version is this? It can be run only via IP address (so some kind of remote) or can i put it straight via HDMI port into TV or so? 2. Tried those Libre/Open Elec versions but they wont work via HDMI on my ASROCK-J4205 ITX system just via remote desktop which is useless for media center and 5.1 sound Thanks Quote Link to comment
saarg Posted April 5, 2017 Share Posted April 5, 2017 9 hours ago, killeriq said: Question to confirm: 1. What kind of kodi version is this? It can be run only via IP address (so some kind of remote) or can i put it straight via HDMI port into TV or so? 2. Tried those Libre/Open Elec versions but they wont work via HDMI on my ASROCK-J4205 ITX system just via remote desktop which is useless for media center and 5.1 sound Thanks 1. It's stated in the Readme of the git link in the first post. 2. Headless means that it doesn't have any video or audio output. This one is used to update a Kodi database and not for viewing. Quote Link to comment
DZMM Posted April 11, 2017 Share Posted April 11, 2017 Hi I'm trying to set this up for the first time. I'm trying to create a fresh library rather than import an existing one (I haven't been using Kodi long so don't have much play history), but I'm struggling. I've edited advancedsettings.xml and created sources.xml in userdata, but nothing seems to be happening in the docker and I keep getting websocket lost messages. What am I doing wrong? I couldn't find a step by step guide anywhere - sorry if I've missed it <advancedsettings> <!-- ##################################################### # For more information on the settings available in # # this file, refer to the kodi wiki at # # http://kodi.wiki/view/Advancedsettings.xml # ##################################################### --> <videodatabase> <type>mysql</type> <!-- don't change this value --> <host>172.30.12.2</host> <!-- change this to the IP address of your mysql/mariadb server --> <port>3306</port> <!-- change this to the port of your mysql/mariadb server --> <user>root</user> <!-- change this to the user for your database, not root --> <pass>xxxxxxxxxxx</pass> <!-- change this to the password for your database --> </videodatabase> <musicdatabase> <type>mysql</type> <!-- don't change this value --> <host>172.30.12.2</host> <!-- change this to the IP address of your mysql/mariadb server --> <port>3306</port> <!-- change this to the port of your mysql/mariadb server --> <user>root</user> <!-- change this to the user for your database, not root --> <pass>xxxxxxxxxxxxxx</pass> <!-- change this to the password for your database --> </musicdatabase> <services> <devicename>KODI Server</devicename> <esallinterfaces>true</esallinterfaces> <!-- don't change this value --> <escontinuousdelay>25</escontinuousdelay> <esenabled>true</esenabled> <!-- don't change this value --> <esinitialdelay>750</esinitialdelay> <esmaxclients>20</esmaxclients> <esport>9777</esport> <!-- don't change this value --> <esportrange>10</esportrange> <upnpannounce>true</upnpannounce> <upnprenderer>false</upnprenderer> <upnpserver>true</upnpserver> <webserver>true</webserver> <!-- don't change this value --> <webserverpassword>kodi</webserverpassword> <webserverport>8080</webserverport> <!-- don't change this value --> <webserverusername>kodi</webserverusername> <webskin>webinterface.default</webskin> <zeroconf>true</zeroconf> </services> <videolibrary> <importresumepoint>true</importresumepoint> <!-- import previously exported resume point from .nfo files --> <importwatchedstate>true</importwatchedstate> <!-- import previously exported playdate and playcount from .nfo files --> <backgroundupdate>true</backgroundupdate> <dateadded>1</dateadded> <!-- 0 results in using the current datetime when adding a video; 1 (default) results in prefering to use the files mtime (if it's valid) and only using the file's ctime if the mtime isn't valid; 2 results in using the newer datetime of the file's mtime and ctime --> </videolibrary> <musiclibrary> <backgroundupdate>true</backgroundupdate> <!-- don't change this value --> </musiclibrary> <videoscanner> <ignoreerrors>true</ignoreerrors> <!-- Set to true to silently ignore errors while scanning videos. This prevents the error dialogue box, so you don't have to keep hitting "yes" to keep scanning.--> </videoscanner> <splash>false</splash> <bginfoloadermaxthreads>2</bginfoloadermaxthreads> <myvideos> <extractflags>false</extractflags> <extractthumb>false</extractthumb> </myvideos> <lookandfeel> <enablerssfeeds>false</enablerssfeeds> </lookandfeel> <audiooutput> <guisoundmode>0</guisoundmode> <ac3passthrough>false</ac3passthrough> <dtspassthrough>false</dtspassthrough> <multichannellpcm>false</multichannellpcm> <truehdpassthrough>false</truehdpassthrough> <dtshdpassthrough>false</dtshdpassthrough> <mode>2</mode> </audiooutput> <videoscreen> <vsync>2</vsync> </videoscreen> <input> <enablemouse>false</enablemouse> <remoteaskeyboard>false</remoteaskeyboard> </input> <general> <addonnotifications>false</addonnotifications> </general> <skinsettings> <setting type="bool" name="skin.confluence.FirstTimeRun">false</setting> </skinsettings> </advancedsettings> <sources> <programs> <default pathversion="1"></default> </programs> <video> <default pathversion="1"></default> <source> <name>DZMM TV Series</name> <path pathversion="1">smb://dzmm:[email protected]/media/tv shows/library</path> <allowsharing>true</allowsharing> </source> <source> <name>Movies</name> <path pathversion="1">smb://dzmm:[email protected]/media/movies/library</path> <allowsharing>true</allowsharing> </source> </video> <music> <default pathversion="1"></default> <source> <name>Music</name> <path pathversion="1">smb://dzmm:[email protected]/media/music/library</path> <allowsharing>true</allowsharing> </source> </music> <pictures> <default pathversion="1"></default> </pictures> <files> <default pathversion="1"></default> </files> </sources> Quote Link to comment
Energen Posted April 30, 2017 Share Posted April 30, 2017 Hey guys.. read through a lot of the pages in this thread trying to determine what the practical usage is for a headless kodi. I haven't really been able to determine what it's use is. I understand that it will keep the database updated with changes to the media, right? What's the practical use of that when every kodi-client will still have to do a library update to get the new media listed? Am I missing something here? I've previously used a shared db via advancedsettings.xml to remember play/watch status, but that didn't change anything about not having to scan for new files on each device. I guess I can't say for sure whether or not if I scanned on one device if any new files showed up on the second device without scanning --- I imagine that's what is supposed to happen? And by virtue of the headless scanning for library changes any other device will already be updated? Does Kodi, when you start it up, scan the remote database for changes automatically? It's not something I've noticed... Sorry for the newb-ness of the question, it's probably an obvious answer.. Also I imagine that this would essentially be the same as having kodi running in a windows vm updating the remote database rather than the headless docker? I've already got a windows vm running for another task, it would be just as easy to run kodi in there rather than this headless thing I'm not too sure about.. Thanks for indulging me Quote Link to comment
Squid Posted April 30, 2017 Share Posted April 30, 2017 (edited) 15 minutes ago, Energen said: I haven't really been able to determine what it's use is. If you don't have a HTPC on 24/7 then running a headless Kodi install as a docker will keep your library (mySQL) up to date. Point CP/Radarr/Sonarr to the headless to update the library when d/ls are completed 15 minutes ago, Energen said: What's the practical use of that when every kodi-client will still have to do a library update to get the new media listed? Am I missing something here? The best way to set up multiple clients is to have them share a single database (mySQL). No client will ever have to scan the database. 15 minutes ago, Energen said: Does Kodi, when you start it up, scan the remote database for changes automatically? Yes 15 minutes ago, Energen said: I guess I can't say for sure whether or not if I scanned on one device if any new files showed up on the second device without scanning --- I imagine that's what is supposed to happen? Yes 15 minutes ago, Energen said: Also I imagine that this would essentially be the same as having kodi running in a windows vm updating the remote database rather than the headless docker? I've already got a windows vm running for another task, it would be just as easy to run kodi in there rather than this headless thing I'm not too sure about.. Yes. And more flexible at the expense of greater overhead. In my case, I have one of my servers running a libreelec VM for the HTPC, so since the VM is always on, there's zero point in running a headless kodi docker when the VM can do the exact same thing. 15 minutes ago, Energen said: I've previously used a shared db via advancedsettings.xml to remember play/watch status, but that didn't change anything about not having to scan for new files on each device. You have to set up all clients to utilize the SQL db Edited April 30, 2017 by Squid Quote Link to comment
Energen Posted April 30, 2017 Share Posted April 30, 2017 Thanks Squid, very helpful. It appears that in the nightly builds of Kodi 17.x they have fixed that SMB issue from my other thread, so I'm going to look at redoing everything on those nightly builds and perhaps put Kodi into my windows vm. Quote Link to comment
lostincable Posted May 2, 2017 Share Posted May 2, 2017 I have been using this docker for a while without issue. As of late I am getting the below entry in my sys log. I can't access the WebUi for kodi headless and in the options for the docker the web ui is not listed. Anyone else having this trouble? I have tried latest and krypton branches and also deleted the docker image but still no web ui option and can't access the panel. Any help appreciated. ____________ May 2 16:45:43 Tower kernel: docker0: port 1(vethee14e6e) entered disabled stateMay 2 16:45:43 Tower kernel: device vethee14e6e left promiscuous mode ____________ Quote Link to comment
DZMM Posted May 4, 2017 Share Posted May 4, 2017 I'm having another go at setting up this docker, but I'm struggling as I can't find an E-2-E guide. I think I'm messing up the mariadb settings. I've entered a password in the docker settings, but how do I create a new non-root user and does that new user have the password setup in the docker? Thanks Quote Link to comment
Squid Posted May 4, 2017 Share Posted May 4, 2017 1 hour ago, DZMM said: I'm having another go at setting up this docker, but I'm struggling as I can't find an E-2-E guide. I think I'm messing up the mariadb settings. I've entered a password in the docker settings, but how do I create a new non-root user and does that new user have the password setup in the docker? Thanks Easiest way would be to install MySQL workbench on your desktop, point it at the IP of your server (port 3306), and enter in the commands that are listed on Kodi's website: Type in: CREATE USER 'kodi' IDENTIFIED BY 'kodi'; and press return Type in: GRANT ALL ON *.* TO 'kodi'; and press return Quote Link to comment
DZMM Posted May 4, 2017 Share Posted May 4, 2017 Still no joy. It's just whirring around saying 'Just a sec' with occassional messages popping up saying 'Attempting websocket reconnect' and then 'lost websocket connection'. Here's what I've done so far. 1. Installed Kodi Docker 2. Installed MariaDB 3. Ran the commands you listed above 4. Copied my sources.xml over to the userdata folder <sources> <programs> <default pathversion="1"></default> </programs> <video> <default pathversion="1"></default> <source> <name>tv shows</name> <path pathversion="1">smb://HIGHLANDER/media/tv shows/adults/</path> <path pathversion="1">smb://HIGHLANDER/media/tv shows/kids/</path> <allowsharing>true</allowsharing> </source> <source> <name>movies</name> <path pathversion="1">smb://HIGHLANDER/media/movies/library/adults/</path> <path pathversion="1">smb://HIGHLANDER/media/movies/library/kids/</path> <allowsharing>true</allowsharing> </source> </video> <music> <default pathversion="1"></default> <source> <name>music</name> <path pathversion="1">smb://HIGHLANDER/media/music/library/adults/</path> <allowsharing>true</allowsharing> </source> </music> <pictures> <default pathversion="1"></default> </pictures> <files> <default pathversion="1"></default> </files> </sources> 5. Filled in advancedsettings.xml <advancedsettings> <!-- ##################################################### # For more information on the settings available in # # this file, refer to the kodi wiki at # # http://kodi.wiki/view/Advancedsettings.xml # ##################################################### --> <videodatabase> <type>mysql</type> <!-- don't change this value --> <host>172.30.12.2</host> <!-- change this to the IP address of your mysql/mariadb server --> <port>3306</port> <!-- change this to the port of your mysql/mariadb server --> <user>kodi</user> <!-- change this to the user for your database, not root --> <pass>PASSWORD</pass> <!-- change this to the password for your database --> </videodatabase> <musicdatabase> <type>mysql</type> <!-- don't change this value --> <host>172.30.12.2</host> <!-- change this to the IP address of your mysql/mariadb server --> <port>3306</port> <!-- change this to the port of your mysql/mariadb server --> <user>kodi</user> <!-- change this to the user for your database, not root --> <pass>PASSWORD</pass> <!-- change this to the password for your database --> </musicdatabase> <services> <devicename>KODI Server</devicename> <esallinterfaces>true</esallinterfaces> <!-- don't change this value --> <escontinuousdelay>25</escontinuousdelay> <esenabled>true</esenabled> <!-- don't change this value --> <esinitialdelay>750</esinitialdelay> <esmaxclients>20</esmaxclients> <esport>9777</esport> <!-- don't change this value --> <esportrange>10</esportrange> <upnpannounce>true</upnpannounce> <upnprenderer>false</upnprenderer> <upnpserver>true</upnpserver> <webserver>true</webserver> <!-- don't change this value --> <webserverpassword>kodi</webserverpassword> <webserverport>8080</webserverport> <!-- don't change this value --> <webserverusername>kodi</webserverusername> <webskin>webinterface.default</webskin> <zeroconf>true</zeroconf> </services> <videolibrary> <importresumepoint>true</importresumepoint> <!-- import previously exported resume point from .nfo files --> <importwatchedstate>true</importwatchedstate> <!-- import previously exported playdate and playcount from .nfo files --> <backgroundupdate>true</backgroundupdate> <dateadded>1</dateadded> <!-- 0 results in using the current datetime when adding a video; 1 (default) results in prefering to use the files mtime (if it's valid) and only using the file's ctime if the mtime isn't valid; 2 results in using the newer datetime of the file's mtime and ctime --> </videolibrary> <musiclibrary> <backgroundupdate>true</backgroundupdate> <!-- don't change this value --> </musiclibrary> <videoscanner> <ignoreerrors>true</ignoreerrors> <!-- Set to true to silently ignore errors while scanning videos. This prevents the error dialogue box, so you don't have to keep hitting "yes" to keep scanning.--> </videoscanner> <splash>false</splash> <bginfoloadermaxthreads>2</bginfoloadermaxthreads> <myvideos> <extractflags>false</extractflags> <extractthumb>false</extractthumb> </myvideos> <lookandfeel> <enablerssfeeds>false</enablerssfeeds> </lookandfeel> <audiooutput> <guisoundmode>0</guisoundmode> <ac3passthrough>false</ac3passthrough> <dtspassthrough>false</dtspassthrough> <multichannellpcm>false</multichannellpcm> <truehdpassthrough>false</truehdpassthrough> <dtshdpassthrough>false</dtshdpassthrough> <mode>2</mode> </audiooutput> <videoscreen> <vsync>2</vsync> </videoscreen> <input> <enablemouse>false</enablemouse> <remoteaskeyboard>false</remoteaskeyboard> </input> <general> <addonnotifications>false</addonnotifications> </general> <skinsettings> <setting type="bool" name="skin.confluence.FirstTimeRun">false</setting> </skinsettings> </advancedsettings> Quote Link to comment
Squid Posted May 4, 2017 Share Posted May 4, 2017 10 minutes ago, DZMM said: <host>172.30.12.2</host> That's the IP of the docker... Use the IP of your server Quote Link to comment
DZMM Posted May 4, 2017 Share Posted May 4, 2017 1 minute ago, Squid said: That's the IP of the docker... Use the IP of your server I think this is where I'm getting confused. I've got Kodi-Headless running on my unraid machine which has an IP of 172.30.12.2 - should I be be putting in the IP of one of my kodi clients e.g. my mi box 3 which has an IP of 172.30.12.10???? Quote Link to comment
Squid Posted May 4, 2017 Share Posted May 4, 2017 3 minutes ago, DZMM said: I think this is where I'm getting confused. I've got Kodi-Headless running on my unraid machine which has an IP of 172.30.12.2 - should I be be putting in the IP of one of my kodi clients e.g. my mi box 3 which has an IP of 172.30.12.10???? You use the IP address of your server. Or where ever MariaDB is running. But when you created the Kodi user on mariadb, if you didn't create a password (and the commands as listed do not create a user -> and Kodi suggests to not create passwords due to the complexities), then you have to remove the password entry from AdvancedSettings.xml Quote Link to comment
Squid Posted May 4, 2017 Share Posted May 4, 2017 Also, if you used workbench to run those commands, then if you didn't hit the lightning bolt or something to actually run them, then they were never executed. You should see a result of something akin to blah blah blah 0 rows affected Quote Link to comment
DZMM Posted May 4, 2017 Share Posted May 4, 2017 1 hour ago, Squid said: Also, if you used workbench to run those commands, then if you didn't hit the lightning bolt or something to actually run them, then they were never executed. You should see a result of something akin to blah blah blah 0 rows affected yep, that's what I saw. Still no joy. Latest attempt: - removed mariadb and reinstalled with no password - made no other changes to mariadb - removed password from advancedsettings.xml (also tried with password kodi just in case) Still getting websockets messages popping up and no media in kodi headless. Quote Link to comment
Squid Posted May 4, 2017 Share Posted May 4, 2017 yep, that's what I saw. Still no joy. Latest attempt: - removed mariadb and reinstalled with no password - made no other changes to mariadb - removed password from advancedsettings.xml (also tried with password kodi just in case) Still getting websockets messages popping up and no media in kodi headless.Question first. So your clients already use sql? If not set one of them up first to do that and from it scan the media. Much simpler to see if anything works in the first placeSent from my LG-D852 using Tapatalk Quote Link to comment
DZMM Posted May 4, 2017 Share Posted May 4, 2017 16 minutes ago, Squid said: Question first. So your clients already use sql? If not set one of them up first to do that and from it scan the media. Much simpler to see if anything works in the first place Sent from my LG-D852 using Tapatalk ok, tried setting up a client following the instructions on the kodi site with the advancedsettings.xml they have: <advancedsettings> <videodatabase> <type>mysql</type> <host>172.30.12.2</host> <port>3306</port> <user>kodi</user> <pass></pass> </videodatabase> <musicdatabase> <type>mysql</type> <host>172.30.12.2</host> <port>3306</port> <user>kodi</user> <pass>/pass> </musicdatabase> <videolibrary> <importwatchedstate>true</importwatchedstate> <importresumepoint>true</importresumepoint> </videolibrary> </advancedsettings> Tried with and without password kodi inserted and no joy with files added to library. Giving up - thanks for trying anyway Quote Link to comment
CHBMB Posted May 4, 2017 Share Posted May 4, 2017 Try scanning to populate the database from a client. Then checking on another client. Quote Link to comment
DZMM Posted May 5, 2017 Share Posted May 5, 2017 21 hours ago, CHBMB said: Try scanning to populate the database from a client. Then checking on another client. Thanks. I focussed today on just getting mysql working by installing a kodi client going on my daily driver VM - figured this is as good as the headless version as my VM is on 24/7. I think my problems yesterday were with setting up the kodi database user. Using MySQL workbench was easy to do this (thanks for the advice Squid) as I just clicked on 'Users and privilidges' , added a new user account 'kodi/kodi', then clicked on 'Administrative Roles' and ticked the 'DBA' box to give that user full privilidges. My VM kodi installation is now populating the library. I think I jumped the gun earlier and added the mysql settings to one of my TV clients, but it seemed to crash the whole process, so I've started again and waiting until the VM has finished before adding more clients. I am a little bit worried though that it seemed a bit flaky with concurrent usage....we will see. I might still try and setup the headless client, as it'd be nice to have everything dockerised. Quote Link to comment
CHBMB Posted May 5, 2017 Share Posted May 5, 2017 I've been using a centralised MySQL database for years now and always been rock solid. Quote Link to comment
DZMM Posted May 5, 2017 Share Posted May 5, 2017 3 minutes ago, CHBMB said: I've been using a centralised MySQL database for years now and always been rock solid. Good to know. I think I'll still wait until the full initial build has been done before adding other clients. Quote Link to comment
DZMM Posted May 30, 2017 Share Posted May 30, 2017 is there a way to add additional user profiles? Thanks Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.