NFS Shares and External Player
#1
Problem
I would like to use the "External Player" to play files over a NFS share with MPC-HC. SMB shares play just fine, but NFS does not and I understand that MPC-HC does not include NFS libraries. 

Question
I've considered the following workarounds. Any tips or alternative suggestions to play media over NFS using MPC-HC as an external player?

Potential Workarounds
  1. Instead of executing "MPC-HC.exe" in playercorefactory.xml, execute a script that modifies the path from nfs://10.10.10.10/MYMEDIA to smb://10.10.10.10/MYMEDIA 
    • Both NFS and SMB shares are valid, so could be possible
    • I'm fairly skilled with programming Linux/Unix's bash scripting, but am not familiar with Windows scripting
    • Any example scripts or pointers would be appreciated
  2. Convert my entire library from NFS shares to SMB shares
    • I use a separate MySQL server, multiple Kodi clients on the network connect to it using advancedsettings.xml
    • I have concerns that I may lose "watched" status for media if I attempt a conversion
    • I'm not exactly sure how to complete such a conversion
  3. Use a player that supports both MadVR as well as NFS
    • Are there any?
  4. Other options?
 


System
  • Windows Server 2016
  • NFS client is installed on Server 2016
  • Kodi 18.2
  • Intel Xeon E5-1650 v4
  • 24G ECC ram
  • Nvidia 1060
playercorefactory.xml
Quote:<playercorefactory>
 <players>
   <player name="MPC-HC" type="ExternalPlayer" audio="false" video="true">
     <filename>C:\Program Files\MPC-HC\mpc-hc64.exe</filename>
     <args>"{1}"</args>
     <hidexbmc>false</hidexbmc>
     <hideconsole>false</hideconsole>
     <warpcursor>none</warpcursor>
   </player>
 </players>
</playercorefactory>
sources.xml
Quote:<sources>
    <programs>
        <default pathversion="1"></default>
    </programs>
    <video>
        <default pathversion="1"></default>
        <source>
            <name>movies_complete</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/movies_complete/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>tv_complete</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/tv_complete/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>video_misc</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/video_misc/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>torrent_files</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/torrent_files/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>local_videos</name>
            <path pathversion="1">/local_videos/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>4K_Movies</name>
            <path pathversion="1">smb://CHEWY/deathstar/4K_Video/4K_Movies/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>4K_TV</name>
            <path pathversion="1">smb://CHEWY/deathstar/4K_Video/4K_TV/</path>
            <allowsharing>true</allowsharing>
        </source>
    </video>
    <music>
        <default pathversion="1"></default>
        <source>
            <name>music</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/music/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>torrent_files</name>
            <path pathversion="1">nfs://192.168.70.10/deathstar/torrent_files/</path>
            <allowsharing>true</allowsharing>
        </source>
    </music>
    <pictures>
        <default pathversion="1"></default>
        <source>
            <name>picmnt</name>
            <path pathversion="1">/mnt/picmnt/</path>
            <allowsharing>true</allowsharing>
        </source>
    </pictures>
    <files>
        <default pathversion="1"></default>
    </files>
</sources>
advancedsettings.xml
Quote:<advancedsettings>
  <videodatabase>
    <type>mysql</type>
    <host>192.168.70.35</host>
    <port>3306</port>
    <user>REDACTED</user>
    <pass>REDACTED</pass>
  </videodatabase>
  <musicdatabase>
    <type>mysql</type>
    <host>192.168.70.35</host>
    <port>3306</port>
    <user>REDACTED</user>
    <pass>REDACTED</pass>
  </musicdatabase>
  <videolibrary>
    <importwatchedstate>true</importwatchedstate>
    <importresumepoint>true</importresumepoint>
  </videolibrary>
</advancedsettings>
Reply
#2
Can MPC-HC access the NFS shares directly itself (if run outside of Kodi and just used directly)?

Just to clarify whether this is something with MPC-HC itself (in which case you're stuck I think as iirc it's no longer being supported/updated) or with the hand-over from Kodi itself to it as an external player.
|Banned add-ons (wiki)|Forum rules (wiki)|VPN policy (wiki)|First time user (wiki)|FAQs (wiki) Troubleshooting (wiki)|Add-ons (wiki)|Free content (wiki)|Debug Log (wiki)|

Kodi Blog Posts
Reply
#3
(2019-05-15, 17:47)DarrenHill Wrote: Can MPC-HC access the NFS shares directly itself (if run outside of Kodi and just used directly)?

Just to clarify whether this is something with MPC-HC itself (in which case you're stuck I think as iirc it's no longer being supported/updated) or with the hand-over from Kodi itself to it as an external player.

I think so, yes. Here's what I've tried. Does this help?
  1. Mount NFS share in Windows Server 
  2. Access files within the share using Windows Explorer 
  3. Right click on media and "open" with MPC-HC
  4. Stream works 100% fine
Reply
#4
No, I meant open directly, as that's basically what you're asking Kodi to do. I suspect MPC-HC may not be able to do that, which would be the root of your problem.

The other way around though would be to make your mount as you mention above, and then use that as the source within Kodi and scrape the media therein into Kodi through that and play it that way.

You could probably test the above by mounting your NFS share and then using the file mode in Kodi (videos > files in the main menu), browse to the media and see if you can use MPC-HC as an external player when accessing the media that way as it will tell it to use the mount.
|Banned add-ons (wiki)|Forum rules (wiki)|VPN policy (wiki)|First time user (wiki)|FAQs (wiki) Troubleshooting (wiki)|Add-ons (wiki)|Free content (wiki)|Debug Log (wiki)|

Kodi Blog Posts
Reply
#5
Thanks. I have years of watch history with my current NFS sources .Is there a way to switch to SMB without completely nuking my prior history?

I'm knowledgeable enough to set up a dedicated MySQL server, and keep it backed up daily. But I'm not very skilled at editing individual items within a database.
Reply
#6
You could maybe mess around with the database to do so, but that is beyond my skills and experience.

Either that or perhaps something like trakt, but again that's not something I've done either.

Maybe someone else can jump in with experience at this point.
|Banned add-ons (wiki)|Forum rules (wiki)|VPN policy (wiki)|First time user (wiki)|FAQs (wiki) Troubleshooting (wiki)|Add-ons (wiki)|Free content (wiki)|Debug Log (wiki)|

Kodi Blog Posts
Reply
#7
(2019-05-15, 20:49)oddworld Wrote: Thanks. I have years of watch history with my current NFS sources .Is there a way to switch to SMB without completely nuking my prior history?
The easiest method would be to export your library to Separate files then scan them back into your fresh new library. No need to fiddle with the databases. Fresh new setup will also remove years of stale records and artwork cache.

See... Import-export_library (wiki)
My Signature
Links to : Official:Forum rules (wiki) | Official:Forum rules/Banned add-ons (wiki) | Debug Log (wiki)
Links to : HOW-TO:Create Music Library (wiki) | HOW-TO:Create_Video_Library (wiki)  ||  Artwork (wiki) | Basic controls (wiki) | Import-export library (wiki) | Movie sets (wiki) | Movie universe (wiki) | NFO files (wiki) | Quick start guide (wiki)
Reply
#8
Thanks. Would this be the right process: Wiki Link Here ?

In short, I would

1. Export separate files. The NFOs would contain watched status. 
2. Delete MySQL database
3. Disconnect all Kodi clients using that database
4. Change advancedesettings to use SMB
5. Open one Kodi client
6. Do a fresh scan for new sources
7. When finished, reconnect other Kodi clients to centralized DB
Reply
#9
Yes, that seems correct.

Also in Step 4. be sure to add the xml tags to allow importing of Watched Status, Play Counts etc as shown on the export wiki page. It is exported by default, but not imported by default.

I would also be deleting the textures.db and thumbnails cache to clear out artwork otherwise your cache folder will double in size as all artwork is re-cached with the new database.

I don't know how much effort you have expended setting up kodi with add-ons, skins, music library, pvr's etc, but if it is minimal maybe just a complete fresh start would be better?
My Signature
Links to : Official:Forum rules (wiki) | Official:Forum rules/Banned add-ons (wiki) | Debug Log (wiki)
Links to : HOW-TO:Create Music Library (wiki) | HOW-TO:Create_Video_Library (wiki)  ||  Artwork (wiki) | Basic controls (wiki) | Import-export library (wiki) | Movie sets (wiki) | Movie universe (wiki) | NFO files (wiki) | Quick start guide (wiki)
Reply
#10
install the client for nfs in windows and mount your nfs share so it gets a drive letter ( windows 10 pro and above)then add that drive to kodi so mpc will think it’s a local drive

Mpc is trying to access the full nfs path which kodi supplies
Reply
#11
(2019-05-15, 23:50)orby Wrote: install the client for nfs in windows and mount your nfs share so it gets a drive letter ( windows 10 pro and above)then add that drive to kodi so mpc will think it’s a local drive

Mpc is trying to access the full nfs path which kodi supplies

I'm onboard with mounting, but what do you mean about adding the NFS drive to Kodi? These locations are currently NFS shares within Kodi, as detailed in my sources.xml
Reply
#12
(2019-05-15, 22:58)Karellen Wrote: Yes, that seems correct.

Also in Step 4. be sure to add the xml tags to allow importing of Watched Status, Play Counts etc as shown on the export wiki page. It is exported by default, but not imported by default.

I would also be deleting the textures.db and thumbnails cache to clear out artwork otherwise your cache folder will double in size as all artwork is re-cached with the new database.

I don't know how much effort you have expended setting up kodi with add-ons, skins, music library, pvr's etc, but if it is minimal maybe just a complete fresh start would be better?

Kodi is quite vanilla at this stage. I don't use any add-ons except for TVheadend. I'm open to starting over if I can retain my watched status somehow.
Reply
#13
(2019-05-16, 00:48)oddworld Wrote: I'm open to starting over if I can retain my watched status somehow.
Yes, those xml tags will do it.

Just to reassure yourself, once you export your library open one of the NFO Files and look for the following...
xml:

<playcount>3</playcount>
<lastplayed>2019-01-04</lastplayed>
<userrating>8</userrating>
<resume>
<position>1211.000000</position>
<total>1776.000000</total>
</resume>

If you are also exporting Music Library and want to preserve the same user type data, then use the Single File method... https://kodi.wiki/view/Import-export_lib...ingle_File


All you need to do is rename the %appdata% folder to something different and Kodi will recreate the new folders fresh. You then still have your old folders and can easily swap back if needed...

Image

For testing purposes I swap between those 4 kodi folders on a regular basis with no ill effect.
My Signature
Links to : Official:Forum rules (wiki) | Official:Forum rules/Banned add-ons (wiki) | Debug Log (wiki)
Links to : HOW-TO:Create Music Library (wiki) | HOW-TO:Create_Video_Library (wiki)  ||  Artwork (wiki) | Basic controls (wiki) | Import-export library (wiki) | Movie sets (wiki) | Movie universe (wiki) | NFO files (wiki) | Quick start guide (wiki)
Reply

Logout Mark Read Team Forum Stats Members Help
NFS Shares and External Player0