github SamuriHL/CoreELEC v22.0-samurihl-20260926193745
[EXPERIMENTAL] CoreELEC 22 · samurihl DV build (20260926193745)

pre-release3 hours ago

⚠️ EXPERIMENTAL · UNSUPPORTED · USE AT YOUR OWN RISK

This is an unofficial, experimental CoreELEC 22 build. It is NOT an official
CoreELEC release and it is NOT a supported CE22 port.
I am not a CoreELEC 22
port maintainer, and I will not be providing support, bug fixes, updates, or
ongoing maintenance for this build.

The only purpose of this build is to give Amlogic AM9 Pro-class users a more
complete Dolby Vision experience than stock CoreELEC 22, by carrying a set of
custom Kodi features I built for my own device. That is the entire scope.

READ THIS BEFORE YOU FLASH ANYTHING

  • USE ENTIRELY AT YOUR OWN RISK. There is no warranty of any kind, express
    or implied. It may fail to boot, misbehave, break Dolby Vision, or do nothing
    useful on your hardware.
  • BACK UP YOUR CURRENT INSTALLATION FIRST. Take a full CoreELEC backup
    (Settings → CoreELEC → Backup) and/or image your existing boot media before
    you install anything from here. Assume you may have to restore it.
  • Prefer a SEPARATE SD card or USB stick you can boot from, instead of
    overwriting a working internal (eMMC) install.
  • Do NOT report problems with this build to the CoreELEC team or forums.
    This is not their build; it is not their responsibility. Do not ask them to
    support it.
  • I am also not offering support. If it breaks, you keep both pieces.

By downloading or using any file in this release you accept all of the above.

Install

  • Clean install (recommended): flash the *.img.gz to an SD card or USB with
    balenaEtcher (or the Amlogic USB Burning Tool for eMMC), then boot from it.
  • In-place update: copy the *.tar to the /storage/.update folder on an
    existing CoreELEC install and reboot. (Back up first — see above.)
  • Verify your download against the SHA256 sums below before flashing.

What's changed in this update

This update follows
v22.0-samurihl-20260926115953.
It is all about Blu-ray discs. Java (BD-J) menus now run in step with what is on
screen, pressing Play on a menu starts the film straight away, Dolby Vision FEL now
works when you enter a film from its menu, Turbo 3D starts reliably, and Star Trek
style VC-1 discs no longer switch the TV's refresh rate in the middle of a clip.

⚠️ Still experimental and completely unsupported. See the disclaimer above.
Back up your current install before flashing.

Dolby Vision still requires dovi.ko (the CE22 5.15 build) installed on your
device. It is not bundled; install it yourself as on stock CoreELEC 22. You do
not need to modify it. This build corrects it automatically at boot.


🛠️ Fixed: Dolby Vision FEL played base-layer only when a film was started from its menu

On some UHD discs, starting the film from the disc menu played it without its full
enhancement layer (FEL), so the picture was base layer only. M3GAN 2.0 did this every
time from its menu. The player carried the menu's video decoder straight into the
film instead of reopening it for the film's format.

The film now gets a full switch when it differs from the menu (menu vs film, or a
different video format), and FEL engages as it should. Menu to menu moves of the same
format stay seamless.

Thanks to alexscotti, whose Dolby Vision FEL report prompted the measurements that
found this.


🛠️ Fixed: pressing Play on a Blu-ray Java menu took up to half a minute

On M3GAN 2.0, pressing Play on the menu left the menu on screen for about 28 seconds
before the film started. The player was showing ~16 seconds of already-buffered menu
video before it acted on the disc's jump. The film now starts almost immediately.


✨ New: Blu-ray Java menus now run on the picture's clock

Blu-ray Java (BD-J) menus are small programs on the disc. They react to where playback
is: chapter marks, the end of a clip, the playback time. Until now they were told where
the reader was, which can be many seconds ahead of what is on screen, so a menu
could act on something you had not seen yet. They are now told when the picture
gets there, as on a standalone player.

When the disc's program then jumps (for example after you press Play), whatever was
buffered past that point is dropped instead of played out. A clip that simply ends is
still played to its last frame.

This applies to Java menu titles only. Non-Java (HDMV) disc menus and ordinary file
playback (MKV, MP4 and so on) are unchanged.


🛠️ Fixed: Turbo 3D (and similar discs) often hung on a black screen at start

Turbo 3D hung on a black screen on most starts, and only sometimes reached its menu.
The disc starts with a small BD+ "handshake" program that launches the real menu
program, but only if that menu program has not been loaded yet. The Blu-ray library
prepares menu programs early on its own, so the handshake usually found it already
prepared and gave up.

The early preparation is now invisible to the disc's programs until one of them starts
it, which is what a standalone player shows them. Turbo 3D now reached its menu on
every start in testing, including a cold start.
Other Java-menu discs were checked and still start normally: M3GAN 2.0, Superman,
True Blood and John Wick 3.


🛠️ Fixed: VC-1 Blu-rays switched the TV's refresh rate a few seconds into each clip

Some VC-1 discs (Star Trek Season 2 is one) were opened at twice their real frame rate
(47.95 instead of 23.976). The player picked 59.94 Hz, then corrected itself about six
seconds in and switched the TV to 23.98 Hz mid-clip, a visible drop in the opening
video and again on the menu. The frame rate now comes from the disc's own playlist, so
the TV goes to 23.98 Hz from the first frame.

A clip that really is a different rate still switches the TV when it starts, as before
(on Star Trek, the 59.94 Hz DTS logo before the menu).


⚠️ Still wanted

  • More Java-menu discs. The menu timing change affects every BD-J disc. If a disc's
    menu behaves differently from before (buttons, animations, autoplay, resume
    prompts), please tell us the title.
  • SDR output. The tone-mapped route for subtitles and menus on SDR TVs still has
    not been checked on screen. Reports welcome.

Under the hood

  • libbluray patch 13 (BD-J presentation timing, opt-in). Play mark, play item,
    chapter and end-of-playlist notifications and PSR 8 writes to a BD-J title are held
    in a numbered queue and released when the player reports the picture has reached
    them; Libbluray.tellTime reports the presented position. Everything held is
    released before a seek, a playlist close and a BD-J start/stop/close, so HDMV titles
    on mixed discs read what BD-J saw. API: bd_bdj_set_presentation_timing,
    bd_bdj_pending_seq, bd_bdj_release, bd_bdj_release_all.
  • Kodi side. Menu playback enables it; each read stamps the newest held batch with
    the last delivered video dts on the disc timeline queue, and the render clock
    releases it. At a BD-J end of playlist, Read() runs the timeline itself while it
    waits (no deadlock), and events are polled with bd_read_ext(len 0) while the queues
    are full.
  • BD-J jump discard. A seek or a different playlist started by the BD-J
    application is classified DISCARD_BDJ_APP_JUMP (full close, queue dropped, held
    notifications released). Not applied after a natural end of playlist (latched when the
    end-of-playlist batch is released), to a same-playlist loop, or when there is no video
    timeline (audio-only playlists). HDMV and file playback never set it.
  • Seamless-carry FEL fix. A PLAYLIST event inside the post-seamless HOLD_DATA
    window whose menu/feature domain or first-clip video format differs from the running
    clip now forces HOLD_HELD, i.e. a full transition with a fresh decoder.
  • libbluray patch 14. A PRESENT xlet that only BDJLoader has initialised reports
    NOT_LOADED and sends no state event until an application touches its proxy; a
    hidden load()/init() reports success. Libbluray has initialised PRESENT xlets
    eagerly since 2013, which lost the race with BD+ Handshake xlets that start the menu
    xlet only from NOT_LOADED. Unchanged in libbluray 1.5.1 and master.
  • VC-1 frame rate. For VC-1 on a progressive BD format whose ffmpeg rate is exactly
    twice the STN-declared rate (pulldown flags), the declared rate is used.

Source

  • CoreELEC (distro): SamuriHL/CoreELEC tag v22.0-samurihl-20260926193745
  • Kodi: SamuriHL/coreelec-xbmc tag v22.0-samurihl-20260926193745

Checksums (SHA256)

07104042e11500a8bd9b8d7081ae2442445621a3c9db356de86990d086dd6c2a  CoreELEC-Amlogic-no.aarch64-22.0-Piers-samurihl-EXPERIMENTAL_20260926193745.tar
720c8c7470700f335f3c70369f5d5d783c661d93bf539965ea93914b0f960495  CoreELEC-Amlogic-no.aarch64-22.0-Piers-samurihl-EXPERIMENTAL_20260926193745-Generic.img.gz

Don't miss a new CoreELEC release

NewReleases is sending notifications on new releases.