PM4K / PlexMod for Kodi (18, 19, 20, 21, 22+)

I have a question about the path mapping feature: what’s wrong with the default HTTP handler and in what situations does it make sense to use alternatives like SMB? My Plex server and the client are on the same network connected via Ethernet, could it be beneficial to switch to SMB in such environment?

It can be, depending on your server. This circumvents the need for the PMS to read and send you the data itself, as well as encapsulating it in the HTTP protocol. It’s highly efficient, but unnecessary.

Using a direct way to access the data without that middleman (such as NFS, SMB, whatever) eliminates that.

I’ve seen certain high bitrate situations, where this solves some buffering/lag issues as well.

It’s definitely not a must, but it doesn’t hurt, either, as you’re skipping a protocol (and complexity, separate buffers etc.) that isn’t necessary.

Edit: if you want to try it out (I haven’t had time to create the wiki, yet), create a network source with credentials in kodi via the file manager, then long press on a library in PM4K you want to mount. This way you don’t have to mess with json files.

I’d also recommend to raise the SMB chunk size in Kodi (21) to 256 (or higher)

3 Likes

It was the plex.direct certificate bundle that we’ve set as new default. Somehow that one doesn’t work with kodi 18 and fails silently. I’ll have to either find out why that is, or force the system or custom certificate on that Kodi version.

Edit: not sure if the benefits of setting the plex.direct bundle as default outweigh the risks. If someone uses their own domain and cert for their PMS, they’ll need to dig through this thread or the AddonSettings to find out why it happens.

I think I’ll reset the default to the system cert in the next beta. That way people can still use the leaner cert or a custom bundle, but we avoid certain pitfalls.

Added shorter repository URL to the installation instructions. I can go even shorter (something like p.nigl.it, k.nigl.it, I went with pm4k.nigl.it for now). Any thoughts? (entering that long github URL is a chore on a remote)

You can just copy/paste using the apps for remote controlling a Shield or Fire Stick. That wont help for CoreElec or other platforms.

Yeah I know, it’s still somewhat of a hassle, though, and you’re not always in an environment, where you can access your media player using your phone (hotels), or the phone isn’t besides you on the couch…

Ah, well I make a point of connecting my travel Fire Stick now before a trip and updating things before I leave. I had trouble authorizing on a certain hotel wi-fi once (couldn’t get the captive portal to load) and it turned out the device firmware had needed an update to fix that. If I had updated before I left it wouldn’t have been an issue.

Yeah, I have a dedicated travel stick that I never maintain at home, because I’m lazy :smiley:

OK, I’ve leveled up a little. I now own pm4k.eu.

https://pm4k.eu now serves the Don’t Panic repository.

Additionally that enables us to serve wiki.pm4k.eu in the future, as well as paste.pm4k.eu, or logs.pm4k.eu as an anonymous log uploader service to upload logs directly from within PM4K.

https://forum.pm4k.eu now redirects to this thread
https://git.pm4k.eu now redirects to github
https://issues.pm4k.eu now redirects to github issues
https://discussions.pm4k.eu now redirects to github discussions

Edit: @nx6 entering https://pm4k.eu is arguably even faster compared to grabbing one’s phone and doing the whole remote shebang :smiley:

5 Likes

PM4K EXISTS FOR EU!

Any news about the official repository update situation? Having to load a third-party repository is a barrier to adoption in itself.

1 Like

Very probably 0.7.9 is going to be PR’d and merged soon. We were close to it never happening, as they’ve discovered that PM4K can write to advancedsettings.xml, but we’ve cleared that up (when installed from the official Kodi repository, PM4K won’t do that anymore for the cache settings, which was a little too intrusive for them).

Fingers crossed.

Nah, it was short and cheap enough. And implied registrar privacy. You’re welcome to donate a better domain :slight_smile:

And yeah, I’m a EU citizen, so why not?

3 Likes

Is it possible show recently added per library on the home section? like how modern plex clients do it? at present it merges together based on type, i.e: Recently Added Series/Movies/Music

We’ve just had the same question a couple of days ago. I’m not sure yet, I’ll have to investigate how that hub display mode is handled from the API side of things.

Right now we simply request /hubs, and whatever that returns, we display.

2 Likes

Had some. “AI” fun last night:





3 Likes

I like the street corner one best.

Is there a setting to specify the length of countdown on the next-episode screen (like the official app has)? I didn’t see one when I looked last night.

Yes, in the external AddonSettings. “Time to wait between videos on post play” in User Interface, default 16s

Edit: you’re active currently :smiley:

2 Likes

As @panni said it needs more things to be extended exposed so to be able to use my templates…

1 Like

OK, I’ve made a mistake with the certificate bundle usage in 0.7.9. It won’t affect most of you (only affects Kodi 18 negatively).

Essentially: we currently use the system bundle (from certifi), always. I’m providing the bundle wrongly to the requests library and it falls back to the system bundle, as it seems. That doesn’t seem to work for Kodi 18, resulting in no connections possible.

I’ll retrofit my findings into 0.7.9-rev2.1 once I find the time. Turns out, in addition to this issue, I didn’t properly understand certificate bundles. The ones we provide for the requests library only needs to contain root CAs, I’ve contained intermediates as well.

For anyone interested, here’s a combined certificate containing the letsencrypt and zerossl roots (for your acme.sh and plex.direct certs, for use with PM4K):
custom_bundle.zip (2.1 KB)

Learning new things, every day :slight_smile:

0.7.9-rev2.1 will use this bundle by default, as opposed to the plex.direct-only one, as it covers most Plex servers. The alternative would be to use the system bundle by default (via certifi), which is unnecessarily huge.

Edit: it makes no real world difference whether we use the plex.direct (letsencrypt) root by default or add zerossl as well, or you use zerossl only, if you have a custom certificate in your PMS, but for some it’s important which certificate is used. The PMS always exposes a plex.direct URL, regardless of whether you have a custom certificate set or not, so it will always work.

Now I can properly answer this question. Yes, you can (with 0.7.9-rev2.1 and 0.8.0-beta, once both are published). The custom bundle should contain the root certificate(s) of your chain(s) only. It can have multiple, but no intermediates or direct certificates, just root CAs.

The bundle I’ve just provided, which will be the default, can be used to verify both plex.direct and your own letsencrypt and zerossl certificates. I don’t think we can control which one is used, but if your PMS exposes itself via a URL that’s not plex.direct, it should come first, so PM4K will use that.

Edit 2: there’s another pretty elegant solution. We could read PLEXSERVERNAME.crt from the addon_data folder and if it exists, use only that one for the server in question. That would ensure the right certificate without any “questionable” fallback, and you’ll have full control about how you connect to your server.

That’ll be an AddonSetting.

2 Likes

New to PM4K! Just installed it on my Shield and set wm size 3840x2160 which tremendously improved the text quality. However, the poster/thumbnail images still look low-res. I know it’s not an issue with the images themselves, as they look crystal clear on my Apple TV 4K. Is there a tweak I can make to enable higher-res posters/thumbnails?

It actually is an issue with the posters. By default PM4K tells the server to render those at 100%. That’s pretty low for 4K (but a sane default for low end clients).

Go to PM4Ks AddonSettings (long press on the icon), and set the poster scaling to 200% (I use 300% on my shield pro). It’s not 3 times the original resolution, don’t worry. It uses proper resolution scaling.

Edit: I might increase the default to 150-175%.