Kodi Community Forum

Full Version: HOW TO - Kodi 2D - 3D - UHD (4k) HDR Guide Internal & External Players
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
But KODI does support HDR to SDR and it doesn't look "washed out" or "extremely saturated".  I think it looks very good and my display is decent so I know good vs bad.  Not as good as passing through, which I prefer, but for those that don't scrutinize much, it's acceptable imo.  Simply select pixel shaders KODI adjustment for your render method.  Leaving the setting doesn't affect other playback for me so no harm done and gives yet another option for HDR playback.  Contrary to popular belief, the Windows HDR setting still remains off.  Never turn it on.  Given you are using an RX2080, you have more than enough GPU to decode what ever you want and run stronger algorithms like madVR provides.  I highly suggest you take advantage of your investment and set up KODI to use madVR compatible player(s).  You may want to consider DVDFab Media Player v.3 also.  This way you get full menus.  It too looks very good imo and uses the same private API's madVR does meaning you get full passthrough and the Windows HDR switch still remains off.
I have recently converted my system from a low power Intel i-5 to an AMD Ryzen system. I did this because my Intel motherboard was having very flaky bluetooth issues that were so bad they'd even conflict with a bluetooth dongle I was trying to use with the motherboard bluetooth disabled. I could get everything working for a few months then began a process of uninstalling / reinstalling bluetooth drivers for a few hours. I finally threw in the towel.

On 18.1, Ryzen, and newer NVidia drivers, I have an almost perfect system. Kodi has stopped crashing when exiting external player. Videos play faster and the system boots up much faster.

I did use the word "almost" for a reason. There's one wrinkle here. I use .iso for both 4K and 3D files on MPC-BE x64. On this sytem, if the "Stereoscopic 3D" box is not checked, I don't get 3D. If it is checked, MPC-BE crashes out playing a 4k iso. The display flashes HDR then blinks back and MPC-BE is gone. It's not frozen and there's no error messages, it's just gone. This happens outside of Kodi as well is launching from Kodi but I believe I can use Kodi playercorefactory or mpc-be.bat to fix.

The solutions I see are

1) start playing with various video driver versions to find one that behaves more like the drivers behaved on the Intel system where the checkmark no longer mattered.
2) live with it, using a keyboard to toggle 3D on
3) adjust the MPC-BE.bat file or playercorefactory. My filenames do have either .4k.uhd.iso or .3d.iso in them. For the .3d.iso's I could then re-add the old 

C:\Program Files (x86)\NVIDIA Corporation\3D Vision\nvstlink.exe" /enable
C:\Program Files (x86)\NVIDIA Corporation\3DVision\nvstlink.exe" /disable

back in if I can figure out the rules.


I think I'm leaning towards #3. Fiddling with the system again does not seem desireable. I need to start enjoying it more. Thoughts?
(2019-02-26, 16:38)twinpeaks Wrote: [ -> ]I use .iso for both 4K and 3D files on MPC-BE x64. On this sytem, if the "Stereoscopic 3D" box is not checked, I don't get 3D. If it is checked, MPC-BE crashes out playing a 4k iso. The display flashes HDR then blinks back and MPC-BE is gone. It's not frozen and there's no error messages, it's just gone. This happens outside of Kodi as well is launching from Kodi but I believe I can use Kodi playercorefactory or mpc-be.bat to fix.
 
3D stereoscopic should always be enabled.  All players know how to handle 2D and 3D plus madVR has settings to force the GPU and global settings appropriately.  MPC has an additional d/l for 3D included in it's installer as well.
MPC is crashing because you are not mounting your iso's.  The player does not have an internal mounting mechanism.  W10 does but you would have to manually mount and expand the iso and play using index.bdmv which I do all the time for testing.  This is why I created .bats to introduce the external mounting program Virtual Clone Drive for the players called by the PCF.xml.  None of this is anything new and is already included in the guide so you don't have to solve and create anything that doesn't already exist.  I don't know why KODI continued crashing for you when exiting an external player?  This was resolved in the early alpha releases of 18.1 a long time ago.  Your setup before upgrading recently must have been wonky for some reason(s).  If you haven't kept up with the thread in a while, your best bet for drivers is 385.28 instead of newer ones.  This could also be contributing to the errors you are experiencing.  Outside of what I've written, I've no other ideas for you.  Everything is working pretty good here and has been.
madVR "Envy".  I don't know what it is, but I'm pretty sure I want a couple.  Stay tuned...
Thanks for the solid reply. I’ll mess with everything you mentioned above and see if it fixes my issue.
Brazen!!!! I cannot thank you enough. The pixel shaded setting fixed this immediately. Everything looks fantastic! I can’t believe it was just one setting that did it. The windows her setting doesn’t seem to impact it at all but I’ll probably leave it off.

I owe you! Thanks again for your amazing reply and helpful input!
Whoa use Pixel Shader does fix the washed out color 4K movies problem. 
Just registered simply to say Thank You !
(2019-03-01, 01:15)brazen1 Wrote: [ -> ]madVR "Envy".  I don't know what it is, but I'm pretty sure I want a couple.  Stay tuned...
 It seems it would be an expensive hardware solution as Madshi said:

"As mentioned I can't really say much right now, but after reading through all your posts, I feel the need to manage expectations a bit and to clear a few basic things up.

1. madVR is about way more than just tone mapping, as is the Envy.

2. madVR's algorithms require tons of processing power. There will be hardware parts in the Envy that each cost more than an HD Fury device. The initial release is going to be for the high-end home theater market. Pricing is not set yet, but I can say that if you're looking for prices anywhere near to an HD Fury device I'm afraid you will be deeply disappointed.

3. There are still some hurdles to clear before I know when (or even if) the Envy will be available, but I hope it will be available soon. Ideally I would have waited longer before pre-announcing the Envy, but interest in HTPCs for madVR has really taken off lately, mainly due to all the recent improvements in HDR tone mapping, so I wanted people to know about the Envy in case they prefer not to build an HTPC and wanted something that needs no tweaking and is more versatile.

I hope this helps clear some things up, as I can't really say more at this point, but I'll try to release some tidbits along the way."
Yes, I saw that too, sigh...
I suppose considering the cost of hardware and development it will be out of reach for the 99%ers and a mere drop in the bucket for the other 1% and he needs to make a well deserved profit too.  I imagine there will be promoters receiving free units and evaluating so I can stay informed on what I'll be missing.  I don't mind continuing to use my HTPC and understand others loath them enough to justify the cost.
Hi im having a issue with playback in Kodi 17.6 to allow playback of .iso file types with the external player ? I believe my playercorefactory.xml file iis setup correct as it allows me to playback BDMV folder structure and uses the external player MPC-HC and MadVR in Kodi v17.6 ,,but still no joy in allowing it to open a .iso file in the same way just fails and does nothing when the film selected? where am I going wrong or is the revision 17.6 unable to playback .iso files and use MadVR within kodi?
Short version:  You need to mount your iso and a way to initiate it.
Long version:
It doesn't matter what version of Kodi you use when launching an external player.  I use v.18.1 now.  Without getting into another lengthy explanation, you're better off using a packed iso vs unpacked folder structure.  Iso extensions need some handling to 'unpack' them from the container so they are readable.  This is called 'mounting'.  Some players have an internal mounting program built into them like PowerDVD, DVDFab Media Player, Kodi internal VideoPlayer, and Windows itself.  MPC-HC/BE do not have an internal mounting program so one must be provided for them otherwise they remain packed and are unreadable.  I use Virtual Clone Drive (VCD)  http://www.slysoft.com/en/virtual-clonedrive.html and assign a drive letter for this virtual BDMV drive just as if it was an actual dedicated hardware player you placed your physical disc into.

A playercorefactory.xml (PCF.xml) is not a mounting program.  It just interrupts normal Kodi operations and directs to alternate ones mainly providing an avenue to call external players based on locations you provide and rules to distinguish which and when.  I use it a couple different ways:

For players with their own internal iso mounting program built in, I simply provide the location of the these players .exe's start files and they handle the rest providing full menus of a 1:1 rip.
For players without their own mounting program, I provide VCD to do it for them.  To run this mounting program, the PCF.xml is not enough so I provide a .bat to launch it with the chosen player.  Even though they mount and become readable, all I have accomplished is to unpack them from their iso container and reveal the folders and files called 'structure'.  Just because everything is now accessible doesn't mean the player(s) know what to do with all these folders and files.  So, unlike PowerDVD or Fab players, which do know exactly what to do with all these files and folders displaying them in all their glory with menus, extras and such... players such as MPC-HC/BE, Kodi VideoPlayer, etc., seek the largest file and only play that portion of the rip which is usually only the main movie.  This is all they are designed for and do not share the same intelligent deciphering of the structure other players do.

So, for example, to launch an hdr.iso with MPC-HC and all the other goodies like madVR and LAV Filters, it works like this 'basically':

You press enter or play on the title in Kodi.
Kodi notices you have a PCF.xml and redirects to the commands in it bypassing its own internal player and obeying the PCF.xml.
You know your iso needs to be mounted or nothing is going to happen so you direct your PCF.xml to call a .bat associated for MPC-HC under this condition based on rules you created in the PCF.xml for hdr.iso titles.
Within the .bat are criteria:  If the file is an iso, mount it using the VCD program and once it's mounted, assign a drive letter because Windows requires a drive letter for everything to identify it.  Assign drive letter 'A' because I am not presently using it for anything else and it's available. 
The .bat goes on to command - after this mounting and drive letter assignment is completed, open another program - MPC-HC. 
Once MPC-HC has started, source it to play the mounted structure in drive letter 'A' and let it take over from there.  
MPC-HC proceeds to read the metadata in drive 'A' and determines (per its own settings) to also call upon LAV Filters and madVR to join the party.
LAV Filters and madVR make their own adjustments based on the settings you provided them.
Your GPU drivers are also informed what decoding is needed from them including assistance from LAV and madVR and finally handed to your display.
Your display obeys how to render and makes final adjustments and at last produces a picture.
All of this is accomplished in a few seconds and before you know it, you're watching your iso exactly as you set it up to do.
When finished, everything you called up closes and your iso dismounts leaving Kodi in focus ready for its next assignment.  No trace of what you did exists and will have a fresh start the next time you press play on a title in your Kodi library.
Excellent response very detailed helpful do appreciate  ,I can confirm I all so use virtual clone drive for mounting .iso files and works a treat with launching in MPC-HC within windows...unfortunately I have no code programing experience do apologize so not sure what to configure in the app data folder  kodi to allow this process to execute in Kodi to bypass the xml file and go ahead and mount .iso image before it actually launches MPC-HC with MadVR enabled? Would it be possible to upload your PCF.xml , bat file,playercorefactory.xml ?
That is what this guide is for.  Everything is already provided starting on page one.  Once you have followed it, if you need further refinement I'd be happy to try and help you but do the basics first.
(2019-03-10, 19:01)brazen1 Wrote: [ -> ]That is what this guide is for.  Everything is already provided starting on page one.  Once you have followed it, if you need further refinement I'd be happy to try and help you but do the basics first.
 Yes I will take a look sorry im new to the Kodi profile setups ,im hoping to get the best picture quality out of my Nvidia 1070 SC and trying to figure out the best settings enable in MadVR profile see below my current configuration. currently using NGU at high not to sure about adding any other filter like sharpening or anti ringing
Imagehttps://ibb.co/dDkgmzG
<a href="https://ibb.co/dDkgmzG"><img src="https://i.ibb.co/yqgS4bW/20190310-180633.jpg" alt="20190310-180633" border="0"></a><br /><a target='_blank' href='https://imgbb.com/'>picture sharing</a><br />
Hmmm?  I would have thought your first order of business was to adapt to playing iso's as you requested?  Anyway, I see you are outputting at 60Hz for a 24fps video.  I match refresh rates to avoid the 3:2 pulldown you are experiencing that introduces judder and frankly is unwatchable imo.  Hopefully your display is at least 120Hz capable so you have a perfectly divisible frame rate.  Your frame repeats are excessive yet your stats show there are none.  Perhaps you reset them by pressing Ctrl + R before taking the snapshot which you should never do when sharing.  You are downscaling 2160p to 1080p.  I presume your display must not be native 2160p else you have wrong settings or do this for some other reason on purpose.  I see nothing suggesting you are actually using NGU, instead Lanczos4.  Also nothing to suggest you are HDR decoding anything let alone which method.  Add 2 blank folders to your madVR install folder named 'ShowHdrMode' and 'ShowRenderSteps' to reveal more stats to help you see where your resources are going.