File no longer availabe remove it from library?

Here is my basic setup:
Windows 7 PC that acts as my main HTPC with 3 external hard drives attached with recorded TV Shows and Movies.

Rpi running OSMC connecting wirelessly to my network.

Kodi on the HTPC functions properly and the library is shared using MySQL database.

On the RPI if I go to the main Kodi screen and try to select TV SHOWS in the banner and select a show to watch I get ‘THis file is no longer available. Would you like to remove it from the library?’

But if I go in the VIDEO and Files and browse to my SMB share for TV Shows I can play the show with no issues.

How do I link what the RPi Library is seeing (and not playing) to the SMB Share? I’m definitely missing something between the MySQL DB library and the RPi seeing and playing the show just like on my HTPC.

Thanks for the help!

Is it possible that the drive had spin down and did not come back fast enough for Films but when using Video and browsing the spin up request came much earlier in the process so the file could be found?

I found where I have to change how my HTPC is pointing to the files on my drive(s).

Currently HTPC (where all my tv shows and movies reside) is pointing the local drives.

So the SQL database is sharing that local path via the library to my Rpi.

So I have to have Kodi on my HTPC point via SMB to the drives that have my tv shows and movies on them. That way the path that is being shared to my Rpi is the path it needs to play the videos.

Now that I know all of that the hard part is figuring out how to get Kodi to see my drives being shared via SMB like my RPi already sees. I can’t get that working right now

To solve you problem you have two options:

  1. Access the files on the HTPC also via SMB to the files instead of locally. But this would mean you need to rescan them into the database and also you would have performance overhead of accessing them locally via SMB
  2. On the clients who are accessing them via SMB use path-substitution
    http://kodi.wiki/view/Path_substitution

You’re better off leaving the paths alone in the library and using path substitution on all the remote Kodi installs instead, this is what I do, with an advancedsettings.xml on all Kodi devices except the server which has the files stored locally:

<advancedsettings>
  <videodatabase>
    <type>mysql</type>
    <host>192.168.0.10</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>----</pass>
  </videodatabase>
  <musicdatabase>
    <type>mysql</type>
    <host>192.168.0.10</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>----</pass>
  </musicdatabase>
  <pathsubstitution>
    <substitute>
      <from>/Users/admin/Movies/</from>
      <to>nfs://192.168.0.10/Users/admin/Movies/</to>
    </substitute>
  </pathsubstitution>
</advancedsettings>

The server which has the files stored locally (a Mac) has the library as well and all library entries were scanned in using local paths, then the other clients sharing the MySQL database substitute an nfs network path.

This is more efficient than having the server connect back to itself unnecessarily over nfs when it is playing video.