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.
I think I was very prolific in the information provided . English is not my mother tongue , maybe something was misunderstood for this reason.
Anyway , I try to redo a list of what I want to do :

the reason is simple , I want to differentiate my content with four external Player . If it is impossible to achieve it the target , well , otherwise , I'm sorry for having lost your precious time.

External Player KMPlayer , Reproduce videocodec HEVC - UHD HDR , video resolution 2160p
External Player PotPlayer , Reproduce videocodec HEVC , video resolution 1080p for TV shows and Movies
External Player MPC-HC , Reproduce video resolution 480,576,720 for TV shows , videocodec xvid and divx
External Player MPC-BE , Reproduce Movies rip from BD BluRay SDR , video resolution 1080p

clearer than that, I do not know what to list .

mine PCF.xml it is constantly evolving after all these test.

<playercorefactory>
    <players>
        <player name="MPC-BE" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\MPC-BE x64\MPC-BE64.exe</filename>
            <args>"{1}" /fullscreen /close</args>
            <hidekodi>false</hidekodi>
            <hideconsole>false</hideconsole>
            <warpcursor>none</warpcursor>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>
        <player name="MPC-HC" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\MPC-HC\MPC-HC64.exe</filename>
            <args>"{1}" /fullscreen /close</args>
            <hidekodi>false</hidekodi>
            <hideconsole>false</hideconsole>
            <warpcursor>none</warpcursor>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>
        <player name="PotPlayer" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\DAUM\PotPlayer\PotPlayerMini64.exe</filename>
            <args>"{1}" /fullscreen /close</args>
            <hidekodi>false</hidekodi>
            <hideconsole>false</hideconsole>
            <warpcursor>none</warpcursor>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>     
        <player name="KMPlayer" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\KMPlayer 64X\KMPlayer64.exe</filename>
            <args>"{1}" /fullscreen /close</args>
            <hidekodi>false</hidekodi>
            <hideconsole>false</hideconsole>
            <warpcursor>none</warpcursor>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>            
    </players>  
    <rules action="prepend">
        <rule videocodec="h264|h262|avc|mpeg-2|vc-1|xvid|divx" player="MPC-BE"/>
          <rule videoresolution="480|576|720" player="MPC-HC"/>
            <rule videocodec="hevc|h265" player="PotPlayer"/>
              <rule filename=".*HDR10.*|.*HDR.*|.*hdr.*" player="KMPlayer"/>
    </rules>
</playercorefactory>

latest rules provided by Warner306.
External Player MPC-HC , Reproduce video resolution 480,576,720 for TV shows , videocodec xvid and divx
External Player MPC-BE , Reproduce Movies rip from BD BluRay SDR , video resolution 1080p

Why do these need to be different players?  Why not use one player for both?  MPC-HC or MPC-BE?
All video opens with MPC-HC except,
titles with HEVC in file name open with PotPlayer exclusively and,
titles with HDR, hdr, or HDR10 in the file name open with KMPlayer exclusively.
(Providing the rule filename is able to be used twice)
HEVC in the file name CANNOT include HDR, hdr, or HDR10 in the file name for titles to be played using PotPlayer.
Likewise, HDR, hdr, or HDR10 CANNOT include HEVC in the file name for titles to be played using KMPlayer.
Rules videocodec and videoresolution cannot separate HDR from HEVC because they are one in the same.  HDR is also HEVC.  These can only be separated using filename.  I don't think filename can be used more than once but you can try.
You can still add MPC-BE as another player.  It just won't be a default player for anything but you can still manually select it in the 'play using' menu by pressing C.
All this assuming you do NOT want to use VideoPlayer for anything since you didn't list it.

I think you can get rid of all these instances.  I don't use any of it.  Most of it is for x86 only anyway.
<args>"{1}" /fullscreen /close</args>
            <hidekodi>false</hidekodi>
            <hideconsole>false</hideconsole>
            <warpcursor>none</warpcursor>


<playercorefactory>
     <players>
         <player name="MPC-BE" type="ExternalPlayer" audio="false" video="true">
         <filename>C:\Program Files\MPC-BE x64\mpc-be64.exe</filename>             (You had these in caps instead of lower case)
         <playcountminimumtime>1140</playcountminimumtime>
    </player>
         <player name="MPC-HC" type="ExternalPlayer" audio="false" video="true">
         <filename>C:\Program Files\MPC-HC\mpc-hc64.exe</filename>                  (You had these in caps instead of lower case)
         <playcountminimumtime>1140</playcountminimumtime>         
    </player>
         <player name="PotPlayer" type="ExternalPlayer" audio="false" video="true">
         <filename>C:\Program Files\DAUM\PotPlayer\PotPlayerMini64.exe</filename>
         <playcountminimumtime>1140</playcountminimumtime>
    </player>    
         <player name="KMPlayer" type="ExternalPlayer" audio="false" video="true">
         <filename>C:\Program Files\KMPlayer 64X\KMPlayer64.exe</filename>
         <playcountminimumtime>1140</playcountminimumtime>
    </player>           
    </players> 
      <rules action="prepend">
          <rule video="true" player="MPC-HC"/>
            <rule filename=".*HEVC.*" player="PotPlayer"/>
               <rule filename=".*HDR10.*|.*HDR.*|.*hdr.*" player="KMPlayer"/>
      </rules>
 </playercorefactory>
(2019-01-31, 20:23)gotham_x Wrote: [ -> ]I understood this that there is a conflict , there is not  a Type regexp or boolean that can be helpful To differentiate the rule on the same videocodec HEVC ? Then , there is no solution...
I think you can just move the first rule to the end. They must select in order.

Edit: Sorry, maybe second last.
Well , I have enough stressed out your patience , with your help and Warner306 , and also something me too , long last , I found the solution to automate the four external player as I wanted I


<rules action="prepend">
      <rule videocodec="h264|vc-1" player="MPC-BE"/> it is opened external player MPC-BE , only for content videocodec h264 - 2D SDR !!!
       <rule videoresolution="480|576" player="MPC-HC"/>  it is opened external player MPC-HC , only for content videoresolution 480|576!!!
        <rule filename=".*HEVC.*" player="PotPlayer"/> it is opened external player PotPlayer , only for content HEVC , HEVC it's not in the file name!!!
         <rule filename=".*HDR10.*|.*HDR.*|.*hdr.*" player="KMPlayer"/> it is opened external player KMPlayer , only for content HDR - UHD 2160p , HDR it's in the file name!!!  


my definitive playercorefactory
       

<playercorefactory>
    <players>
        <player name="MPC-BE" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\MPC-BE x64\mpc-be64.exe</filename>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>
        <player name="MPC-HC" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\MPC-HC\mpc-hc64.exe</filename>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>
        <player name="PotPlayer" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\DAUM\PotPlayer\PotPlayerMini64.exe</filename>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>     
        <player name="KMPlayer" type="ExternalPlayer" audio="false" video="true">
            <filename>C:\Program Files\KMPlayer 64X\KMPlayer64.exe</filename>
            <playcountminimumtime>1140</playcountminimumtime>
            </player>            
    </players>  
     <rules action="prepend">
      <rule videocodec="h264|vc-1" player="MPC-BE"/>
       <rule videoresolution="480|576" player="MPC-HC"/>  
        <rule filename=".*HEVC.*" player="PotPlayer"/>
         <rule filename=".*HDR10.*|.*HDR.*|.*hdr.*" player="KMPlayer"/>              
 </rules>
</playercorefactory>


if some users will want try to this playercorefactory , I wish over two pages of Thread have been useful for something of constructive.

Thanks you again for the profuse support!!!
Good stuff. So the rules will always select the last rule that matches, even if there are duplicates. Good to know.
Thank you for helping out Warner.
@gotham_x 

I've never seen KMPlayer before. The website is in Chinese, but after translation I saw most of the features listed. I believe it plays all media files & resolutions up to 4K. Does it require any special hardware to playback HDR? And most importantly, does it automatically switch to HDR (like MPC-BE, DVDFab 3) without the use of the Windows 10 HDR Toggle in Display Settings?

Thanks.
Yes . The website is in Chinese , but it does not matter , I use it too Google translation. If does it require any special hardware to playback HDR ? no, I do not think , I think with a good GPU is more than enough , on the other hand it is an external player how can it be MPC-BE/MPC-HC etc...Yes affirmative , does it automatically switch to HDR ,for MPC-BE/MPC-HC ,PotPlayer and KMPlayer. I have no idea for DVDFab 3. Anyway , I use , passthrough HDR to display , with madVR.
Today LAV Filters nightly is offering a new video hardware decoding codec for Intel h.264 MVC.
https://www.videohelp.com/software/LAV-Filters
(2019-02-07, 17:24)gotham_x Wrote: [ -> ]Yes . The website is in Chinese , but it does not matter , I use it too Google translation. If does it require any special hardware to playback HDR ? no, I do not think , I think with a good GPU is more than enough , on the other hand it is an external player how can it be MPC-BE/MPC-HC etc...Yes affirmative , does it automatically switch to HDR ,for MPC-BE/MPC-HC ,PotPlayer and KMPlayer. I have no idea for DVDFab 3. Anyway , I use , passthrough HDR to display , with madVR.
 Ah! I didn't realize you were using MadVR + KMPlayer for decoding. I thought KMPlayer was able to handle UHD HDR without MadVR. So this is essentially similar to MPC-BE + MadVR.

Thanks for the info.
This is just a quick post to mention that I was able to fix Kodi’s “In Progress” status of externally played content. It could be that folks already know about this, but I could never find an answer posted anywhere. I think it would be handy to add this to the HOW TO guides for external players, as well. I use MPC for playing 4k UHD movies, so this was a big deal for me.

Background: External players do not update Kodi with progress, and therefore runtime is always NULL. These movies will then never show in the out-of-box 'In Progress' list in the Kodi interface.

The fix is accomplished by editing the XML file 'inprogress_movies.xsp' (found in Program Files -> Kodi -> addons -> skin.estuary - playlists). Keep in mind this only works with the default Estuary skin. In the XML code you need to remove the existing rule and add two new ones. The list will then use the combined ‘lastplayed’ time stamp and ‘unwatched’ status to filter its results. Set the duration value of the lastplayed to your own preference (I chose 3 weeks).

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<smartplaylist type="movies">
    <name>In-progress movies</name>
    <match>all</match>
    <rule field="lastplayed" operator="inthelast">
    <value>3 weeks</value>
    </rule>
    <rule field="playcount" operator="lessthan">
    <value>1</value>
    </rule>

    <limit>15</limit>
    <order direction="descending">lastplayed</order>
</smartplaylist>


I really hope this helps someone else in eliminating one more nagging downside of external players.
hello!  I have lurked here for years and finally decided to register and straight up ask a question that has me in a pickle.  

I recently built my own PC (I will put the specs in the bottom of the post in case it helps), and I am looking to play 4k HDR content with Kodi.  My TV and Receive both allow full 4K and HDR to be played correctly but for some reason Kodi is displaying my 4k videos as washed out of extremely saturated.   Am I doing this wrong?  I have the most recent version of Kodi Leia and all of my 1080p content looks phenomenal.  I don't know what i could be missing.  The videos play fine and the audio is fine, but the image looks rough.  Normally during outdoor or white scenes.  

Hoping someone can help me because I don't know what else to tinker with.  Sorry if these are rookie questions. 

PC specs are :
CPU - AMD Ryzen 7 2700X
GPU - GeForce RTX 2080 Overclocked Edition
Motherboard - Gigabyte x470 Aorus Gaming 7 Wifi
Memory - Corsair Vengeance RGB Pro 32 GB
Storage - Samsung 970 Pro 1TB SSD
Yes, the mistake you have made is trying to use a free open source app to accomplish a very specific and high level task that is not being developed by paid developers.

In all seriousness l have no idea and don't know why I even responded. I bid you adeiu herman.
(2019-02-22, 19:09)bebeto21 Wrote: [ -> ]hello!  I have lurked here for years and finally decided to register and straight up ask a question that has me in a pickle.  

I recently built my own PC (I will put the specs in the bottom of the post in case it helps), and I am looking to play 4k HDR content with Kodi.  My TV and Receive both allow full 4K and HDR to be played correctly but for some reason Kodi is displaying my 4k videos as washed out of extremely saturated.   Am I doing this wrong?  I have the most recent version of Kodi Leia and all of my 1080p content looks phenomenal.  I don't know what i could be missing.  The videos play fine and the audio is fine, but the image looks rough.  Normally during outdoor or white scenes.  

Hoping someone can help me because I don't know what else to tinker with.  Sorry if these are rookie questions. 

PC specs are :
CPU - AMD Ryzen 7 2700X
GPU - GeForce RTX 2080 Overclocked Edition
Motherboard - Gigabyte x470 Aorus Gaming 7 Wifi
Memory - Corsair Vengeance RGB Pro 32 GB
Storage - Samsung 970 Pro 1TB SSD
 This is a shorter response than I usually make, but the answer is Kodi Windows doesn't yet support HDR passthrough and likely won't for some time. See the first post for your current options.