PLEASE READ THE FULL TEXT BELOW BEFORE INSTALLING MY BUILD.
Here is some information in regards to my build:
Based on CoreELEC "NG" for full DV FEL functionality (Display-Led and Player-Led), includes all of 21.3 final updates. Backported a few relevant CoreELEC "NO" commits since CoreELEC NG has stopped development, added a few relevant OSMC commits/patches, added as much as possible cpm's (including post A14) and MCFFHAB's functionality, and further added my additional functionality/features and fixes.
This build video image result was verified by different experts/testers using Scopes, so not just a personal opinion but actual technical results.
This build will work on a S905X4 SoC but it will perform much better on a S922X SoC. I do not have a S905X4 and although the S905X4 testers did a great job, it is difficult for me to find and solve problems compared to the S922X that I do have. So "your mileage may vary" with the S905X4 SoC using my build.
Additional Features and Fixes are included on my build but the list below are the more relevant items (minor items not listed):
A) *** My Most Important New Addition (from my perspective) *** - I developed a New Feature for Video Processors:
A.1) Full FEL capability.
A.2) No DV bugs (e.g., black levels, over brightness, etc...).
A.3) No DV DTM so Video Processor can be the only/sole dynamic tone mapper (no double DTM).
A.4) This feature can be used with displays that perform well with HDR10 videos since full HDR10 InfoFrame Metadata is correctly assigned and sent to the display.
B) New Feature for showing the Display HDMI VSVDB maximum luminance and ColourSpace EDID values on the Settings screen.
C) Fixed bug when using VS10 to convert HDR10 to DV when HDR10 has a 10,000 nits MDL - image is very dark without my fix. Example - Blade Runner 2049 (US Version that is 10,000 nits, not the other countries/regions versions that are normally 4,000 nits).
D) New "HDR10 422 12 Bit" output format (previously only HDR10 444 12 Bit available).
E) Handling of "fancy" subtitles backported from latest xbmc/kodi.
F) Backported OSMC patch for faster skin response.
G) Customized avdvplus estuary skin for showing new Audio Input and Output features - good alternative for S905X4 given that is a lighter skin (skin from @frodo19). All skins designed for cpm builds will work.
H) Improvements of PPI information presentation for skins (request from @jamal2362), include porting changes from CoreELEC NO for Audio Input and Output (from @frodo19). Build fully supported by Frodo's and Jamal's latest skins.
I) VC1 hardware acceleration for both progressive and interlaced videos backported from @cpm-code / OSMC. There are still some issues with some VC-1 files.
J) PCM Audio output layout correctly handle for AVR/Audio Processor with passthrough and all CoreELEC NG supported audio codecs working (improvements based on @cpm-code work). Only layout not being correctly interpreted by AVR is 6.X.
K) Convert HDR10+ to DV CMv4.0 instead of CMv2.9 (improvements based on @cpm-code work).
L) Improvements for the stability of skin VS10 buttons (improvements based on @cpm-code work).
M) Improved LLDV bug fixes (improvements based on @MCFFHAB work):
M.1) Over brightness correction when vsvdb max is over source MDL achieving correct nit levels.
M.2) More precise output nits assignment for all nits values for DV videos.
M.3) Black level/clipping correction without changing brightness.
N) Improvements handling for automatically and accurately generating HDR10 InfoFrame Metadata when using the Player Led and Video Processor DV as HDR10 output formats (improvements based on @MCFFHAB work).
O) Improvements of auto/default selection of the best settings/options for DV playback (improvements based on @MCFFHAB work). User selections are available for DV-STD vs DV-LL, Video Processor features, HDR10+ conversion to DV, VS10 conversion, etc...
P) For the S922X SoC - Fix for audio loss with seamless branching (e.g. M3GAN 2.0) and almost no audio sync issues. For the S905X4 SoC - reduced audio sync issues and reduced audio loss with seamless branching. I did not plan, nor wanted, to work on audio issues but the above improvements aggravated the audio issues which made me work on these issues.
Q) Able to play DV profile 4 files (as CoreELEC NG).
NOTES:
First and foremost, I want to thank the contributors (experts, testers, etc...) that became part of the virtual testing organization and spent their time testing and validating this build. Your significant contributions were paramount for the development of this build. Although this build is not free of issues (no build has zero issues) the issues have been reduced due to the diligent work of the contributors testing and their feedback. Below is the list of contributors that participated on the testing and feedback. This list includes experts in different areas, testers, etc... This list is not in any specific order, so no order should be implied. Some contributors do not have a GitHub user name / ID so they are not listed below but my sincere thanks were sent to them:
CONTRIBUTORS
@SamuriHL
@DMDreview
@R3S3t9999
@frodo19
@myterabay
@todochief
@joemacjr92
@okvcos
@gilgameshinter
@djnice
@Krobar
@Sebastiii
@Avballer
@jamal2362
@Akila3
@Sunset-1982
Of course special thanks goes to the CoreELEC team, @cpm-code, @MCFFHAB, and the OSMC team for their great development work that I used as the basis for my further development work.
The best way to install my build is to move the tar file to the .update folder, then turn off your device, unplug power, leave it off for 15 seconds, re-plug power and update by startup (instead of the reboot method).
After you install my build please make sure to go to Settings/System/CoreELEC on the bottom of the screen and press "Reset above settings to default" and confirm with "yes" so my screen changes are aligned correctly. This is the screen settings "reset" NOT the CoreELEC "soft reset" and definitely NOT the "hard reset". After resetting the screen settings you can then select the appropriate settings for your equipment.
If you are using an AVR/Audio Processor and had adjusted the Audio Delay before it is recommended that you adjust it again on your equipment since whatever you had set before could not be the same as with my build. You can use the video files from https://photojoseph.com/tips/2021/3/30/downloadable-audiovideo-sync-tests-2398-24-25-2997-50-5994 or any other video/audio sync files you prefer to calibrate your equipment.
With certain media types and in certain conditions, such as when you start (re)playing or use the VS10 skin buttons, you could see a brief discontinuity on the video image, this is not a "glitch in the Matrix", it is expected behavior given part of my code to fix audio issues.
When you use my Video Processor feature the OSD colors will be different than the normal OSD colors, you are not becoming color blind, it is expected behavior given my code to reduce CSC.
Some of my private test builds were shared as being stable builds unfortunately. Only my official public release builds are satisfactorily stable. All of my private test builds have issues (sometimes major issues) that I was working to solve, that is why they were private test builds.
Given that I ran out of time developing this build, below are some items that I was working on but was not able to complete (interested parties in completing these items are welcome):
- Playing ISOs correctly. Given all of the improvements listed above the ISO playback performance was impacted, and further development needs to be done to improve ISO playback. I do not use ISOs so it is difficult for me to develop and test this functionality.
- Upgrade to Kodi 22 (as much as possible). A few Kodi 22 commits have already been backported but much more needs to be done.
I do not plan to do any further "major" development (unless there is a compelling new reason). I do plan to keep the build up to date with relevant new code and I plan to fix any significant issues that are found. I also plan to do some code refactoring and code cleanup that was not done yet, this does not, and will not change the user experience or functionality.
If you are looking for a perfect build that can play anything, can do everything, and has zero issues, this is NOT the build for you. Use this build and see what it can do for you. For some this build will fulfill their needs, for others there are other great builds available, including from @cpm-code and the latest CoreELEC NG stable with the finalized Kodi 21.3 - assuming you still want DV FEL.
If you want to contribute - appropriate and well tested PRs are welcome.