Skip to content

Releases: djnice/CoreELEC-samurihl

Dolby Vision P7 FEL and 3D MVC on S928X (S5) - SamuriHL CE22 based experimental build 2026-10-01

Choose a tag to compare

Experimental build of SamuriHL's CoreELEC 22
for Amlogic S928X (S5) with Dolby Vision Profile 7 FEL composed on the GPU - now also with
3D Blu-ray (MVC) decoded in software and output as full resolution frame packing.

This is an unofficial test build: SamuriHL's samurihl-ce22 branch (f91de32, Kodi
SamuriHL/coreelec-xbmc aa9f70523e) with the FEL composition from
djnice/CoreELEC dv-fel-s5 on top. It is not
made or supported by SamuriHL. Use it at your own risk and keep a backup of your system.

A build of the same work on plain CoreELEC 22 is available at
djnice/CoreELEC releases. This SamuriHL based one adds
SamuriHL's highly configurable player-led (LLDV) Dolby Vision options, the L1 readout of the demo mode
and the full black level range - recommended for projectors and Samsung TVs.

New: 3D Blu-ray (MVC) in software, full resolution frame packing

The S5's hardware MVC decoder corrupts the second (dependent) view of some 3D titles (blocky right eye
for a fraction of a second, the left eye clean). 3D MVC is now decoded on the CPU with
edge264-mvc (multithreaded, about 1.5-3 cores for a 3D
Blu-ray) and both views go to the video layer through a new kernel module (mvcout):

  • Frame packing at full resolution (1920x2205: left view, 45 lines of active space, right view; HDMI
    1080p24 3D), for 3D projectors and 3D TVs: both eyes keep their full 1920x1080.
  • 2D (mono) from the left or right view, following Kodi's stereoscopic 3D settings as usual. Half
    resolution side-by-side / top-bottom output is there too but not tested on a display yet.
  • Works with 3D MKV/MK3D files and 3D Blu-ray folders/ISOs (main title).
  • On S5 3D MVC always uses the software decoder. On the other Amlogic SoCs it is a setting:
    Settings → CoreELEC → Decode 3D MVC in software (expert level, off by default).

Frame packing needs a display that offers it (its EDID): the 3D modes show up in the resolution
whitelist as e.g. 1920x1080 @ 23.98 - Full Screen 3D FP/TB. If you use a custom whitelist, add
that mode
, otherwise Kodi cannot switch to frame packing. Kodi's stereoscopic playback mode (Settings
→ Player → Videos → Stereoscopic 3D
) decides between 3D and 2D, as with any 3D source.

Fixes

  • Hardware EL after a seek on FEL titles whose EL has another picture order than the BL (e.g. the
    common P7_FEL_STDL1 test clip, its dual-track variant DTDL2): after a seek the EL never came back
    and the rest of the title played without it. The layers are now paired by each picture's place in the
    display order, taken from the stream (POC and random access points) instead of counting decoded
    pictures, which differs between the layers after a seek. A few frames right after a seek are still
    shown without the EL on these files, until the EL's next keyframe: that follows from how they are coded.
  • GUI stretched after 3D frame packed playback (only its top part visible): leaving frame packing
    kept the 3D timing because the display mode name does not change. A mode switch now also happens when
    frame packing is entered or left, and frame packing is only used on a mode that offers it (no more
    "unsupported signal" when Kodi falls back to a 2D mode).
  • Kodi no longer re-evaluates the display mode on every frame for the first seconds of a 3D title played
    in 2D on a 3D capable display.
  • Hardware MVC decoder (other SoCs): picture buffers are released in order, so the decoder no longer
    decodes into the picture on screen (tearing, older pictures mixing in).

Also included

  • Dune front display: the clock on the TM1628 front panel works (openvfd, display type 0x0B), tested on
    the Dune HD Pro 8K Plus and the Dune HD Pro One 8K Plus.
  • R_volution PlayerPro 8K device tree (device_trees/s5_s928x_rvolution_playerpro_8k.dtb) with its
    front display config. Not tested on the hardware yet - feedback welcome.
  • Dune HD Pro One 8K Plus: booting from the USB 3.0 ports. The VIA hub behind them never woke up once
    suspended, so a stick or SSD there was not found. USB autosuspend is now off on the Dune and R_volution
    device trees.
  • Booting from a USB 3.0 port on vendor bootloaders that only start the first USB controller, and the Dune
    HD Pro 8K Plus device tree (from the previous build; see there).

Features (unchanged)

  • P7 FEL composition on the GPU for S5 with the enhancement layer decoded in hardware (see What
    the FEL composition does
    below).
  • Split screen demo mode with an L1 readout. With Dolby Vision FEL demo mode on, the left half
    shows the full FEL composition and the right half the base layer as regular CoreELEC shows P7
    converted to P8.1. The top of each half shows the brightness measured over the whole picture as a level 1
    (maximum and average of max(R', G', B') in PQ, in nits) for both versions: left FEL, RPU L1 and
    AREA, right BL and FEL-BL. Letterbox bars are left out (RPU level 5, or bars found in the base
    layer).
  • Whole black level range for the VSVDB injection (PQ 0 to PQ 620). Player-led Dolby Vision only.

What the FEL composition does

The Dolby Vision hardware in the S5 has no enhancement-layer input, so CoreELEC converts P7 to P8.1 and
drops the EL: FEL titles lose their full-enhancement detail. This build adds the FEL reconstruction back,
while the output still goes through the hardware Dolby Vision pipeline:

  1. The hardware HEVC decoder decodes the base layer and the enhancement layer (10-bit AFBC).
  2. A vfm node (dvfel kernel module, between the decoder and the display) decompresses each base layer
    frame and its EL picture with the VICP block into linear 10-bit buffers shared with the GPU (dma-buf).
  3. Kodi parses the original P7 RPU (libdovi).
  4. The Mali-G57 composes every frame in GLES 3.2 in fp32: Lanczos-3 EL upsampling, NLQ (linear with dead
    zone) and base layer prediction (polynomial / MMR) from the RPU.
  5. The result is quantized to 10 bits with a static blue noise dither to keep gradients free of banding.
  6. VICP recompresses the composed frame to AFBC for the display; the hardware DV core gets it with a
    no-op P8.1 RPU, so the dynamic metadata and SamuriHL's RPU processing (L5, CMv4.0, ...) apply as usual.

The composition matches a CPU reference implementation within ±1 LSB.

Requirements

  • S928X (S5) device using the Amlogic-no image. FEL: TV or projector with Dolby Vision, DV enabled.
    3D: a 3D TV or projector (frame packing), or any display for 2D playback of 3D titles.
  • The original dovi.ko is required (the Dolby Vision kernel module from your box's firmware, set up as
    for any Dolby Vision playback in CoreELEC). It does not need to be patched: the Dolby Vision core gets a
    regular profile 8.1 stream.
  • Only P7 FEL streams use the FEL path. MEL, P5, P8, HDR10 and SDR, and all other SoCs, play as in
    SamuriHL's build.

Install

  • Update: copy the .tar to the /storage/.update folder (the Update Samba share) and reboot.
  • New install: write the -Generic.img.gz to an SD card / USB stick (e.g. with balenaEtcher or Rufus)
    and set up the device tree as usual for your box.

Note: SamuriHL's update checker add-on is part of the image. Updating to an official SamuriHL build
from it removes this work again.

Settings

In Settings → CoreELEC (expert level):

  • Dolby Vision FEL composition (S5, on by default): off gives the regular behaviour (P7 converted to
    P8.1 without the enhancement layer). Takes effect when playback starts.
  • Dither Dolby Vision FEL output (S5, on by default): blue noise dither of the composed picture to 10
    bits. Takes effect immediately.
  • Dolby Vision FEL demo mode (S5, off by default): split screen with the L1 readout, see above.
  • Decode 3D MVC in software (not on S5, where it is always on; off by default).

Limitations / known issues

  • FEL: 4K 24p only for now (about 35 ms of GPU time per 4K frame, budget 41.7 ms).
  • The S5 display path takes at most 10 bits, so the FEL output is 10 bits plus dither, not a true 12-bit
    signal.
  • 3D MVC: 1080p titles only (3D Blu-ray). Tested on 3D MKV/MK3D samples, a 3D Blu-ray ISO and one 3D
    projector; chapter skipping on full 3D Blu-ray discs is not tested yet.
  • On one test clip (P7_FEL_STDL2) a single frame flashes blue or red now and then; it happens with the
    software EL decoder too and is being investigated.

Debug switches (on the box)

  • /storage/dvfel_sw_el: if the file exists, the FEL EL is decoded in software (comparison).
  • /storage/dvfel_dither: overrides the setting, 0 off, 1 on, 2 left half only (comparison).
  • /storage/dvfel_pattern: 1 shows a 12-bit grey ramp test pattern instead of the video.
  • Statistics: cat /sys/kernel/debug/dvfel/stats (needs debugfs mounted).

Source: https://github.com/djnice/CoreELEC-samurihl/tree/dv-fel-s5

Dolby Vision P7 FEL on S928X (S5) - SamuriHL CE22 based experimental build 2026-09-30 (hardware EL)

Choose a tag to compare

Experimental build of SamuriHL's CoreELEC 22
for Amlogic S928X (S5) with Dolby Vision Profile 7 FEL composed on the GPU instead of dropping the
enhancement layer - now with the enhancement layer decoded in hardware.

This is an unofficial test build: SamuriHL's samurihl-ce22 branch (f91de32, Kodi
SamuriHL/coreelec-xbmc aa9f70523e) with the FEL composition from
djnice/CoreELEC dv-fel-s5 on top. It is not
made or supported by SamuriHL. Use it at your own risk and keep a backup of your system.

A build of the same FEL work on plain CoreELEC 22 is available at
djnice/CoreELEC releases. This SamuriHL based one adds
SamuriHL's highly configurable player-led (LLDV) Dolby Vision options, the L1 readout of the demo mode
and the full black level range - recommended for projectors and Samsung TVs.

New: hardware decoded enhancement layer

Until now Kodi decoded the EL in software, and on heavy UHD remuxes (70-90 Mbit/s, e.g. Airplane!,
Jurassic Park) the CPU could not keep up in busy scenes: those frames were shown without the EL, visible
as flicker between the FEL and the base layer picture. Now the S5's HEVC decoder decodes both layers
(Dolby Vision dual layer decoding, the EL in a second decoder instance) and the dvfel kernel module hands
the decoded EL picture of every frame to the GPU together with the base layer.

  • No more frames without the EL on heavy remuxes (Airplane!: 0 in minutes of playback, was dozens per
    minute), and no CPU for the EL: Kodi uses about 5-10 % of one core during FEL playback.
  • BL, EL and RPU stay frame-exactly paired, also when the EL is coded in another picture order than the
    BL (paired by display order; the RPU comes with the EL picture, as with the software decoder).
  • Used automatically for P7 FEL. MEL, P5, P8, HDR10 and SDR play as before. The software EL decoder is
    still there (see Debug switches); it now uses every CPU core instead of three.

Making the S5 dual layer decoder work for this needed fixes in the HEVC decoder driver (media_modules):
the layer switch followed a stale flag after a repeated decoder run (error pictures and 200 ms decoder
timeouts on the EL, the EL trailing the BL by up to a second), the EL pictures came out a whole decode cycle
late, streams without reordering showed their first picture twice, and the pairing label of the pictures
was overwritten.

Fixes

  • Kernel panic when a Dolby Vision title starts (rare, timing dependent): switching the display mode
    for playback (e.g. 1080p60 -> 2160p24) resets the HDMI transmitter, and the Dolby Vision vsync handler
    could write an HDMI packet into it right then (SError). HDMI packets are no longer written from the vsync
    handler while the output is being reconfigured. Tested with repeated playback starts.
  • Dual-track MP4 whose EL has a decode delay the BL has not (e.g. BL without B-frames, EL with them):
    the first EL packet collided with the second one on the timeline and was dropped, so the EL could not be
    decoded until its next keyframe (about the first second without EL, after every seek too). The EL is now
    put onto the BL's decode timeline.
  • FEL titles whose EL is coded 1920x1088 (cropped to 1080, common): with the hardware EL these were
    shown without the EL; the EL picture is now read cropped.

Features (unchanged)

  • P7 FEL composition on the GPU for S5 (see What the FEL composition does below).
  • Split screen demo mode with an L1 readout. With Dolby Vision FEL demo mode on, the left half
    shows the full FEL composition and the right half the base layer as regular CoreELEC shows P7
    converted to P8.1. The top of each half shows the brightness measured on the picture as a level 1
    (maximum and average of max(R', G', B') in PQ, in nits): left FEL, RPU L1 and AREA, right BL and
    FEL-BL. Letterbox bars are left out (RPU level 5, or bars found in the base layer).
  • Whole black level range for the VSVDB injection. Black level (VSVDB) (under Display peak
    luminance
    → Force peak onto display (VSVDB)) lists every step the VSVDB v2 can carry, PQ 0 to PQ 620
    (0 to about 1.05 cd/m²). Player-led Dolby Vision only.

What the FEL composition does

The Dolby Vision hardware in the S5 has no enhancement-layer input, so CoreELEC converts P7 to P8.1 and
drops the EL: FEL titles lose their full-enhancement detail. This build adds the FEL reconstruction back,
while the output still goes through the hardware Dolby Vision pipeline:

  1. The hardware HEVC decoder decodes the base layer and the enhancement layer (10-bit AFBC).
  2. A vfm node (dvfel kernel module, between the decoder and the display) decompresses each base layer
    frame and its EL picture with the VICP block into linear 10-bit buffers shared with the GPU (dma-buf).
  3. Kodi parses the original P7 RPU (libdovi).
  4. The Mali-G57 composes every frame in GLES 3.2 in fp32: Lanczos-3 EL upsampling, NLQ (linear with dead
    zone) and base layer prediction (polynomial / MMR) from the RPU.
  5. The result is quantized to 10 bits with a static blue noise dither to keep gradients free of banding.
  6. VICP recompresses the composed frame to AFBC for the display; the hardware DV core gets it with a
    no-op P8.1 RPU, so the dynamic metadata and SamuriHL's RPU processing (L5, CMv4.0, ...) apply as usual.

The composition matches a CPU reference implementation within ±1 LSB.

Requirements

  • S928X (S5) device using the Amlogic-no image, TV or projector with Dolby Vision, DV enabled.
  • No patched dovi.ko is needed: the Dolby Vision core gets a regular profile 8.1 stream.
  • Only P7 FEL streams use the new path. MEL, P5, P8, HDR10 and SDR, and all other SoCs, play as in
    SamuriHL's build.

Install

  • Update: copy the .tar to the /storage/.update folder (the Update Samba share) and reboot.
  • New install: write the -Generic.img.gz to an SD card / USB stick (e.g. with balenaEtcher or Rufus)
    and set up the device tree as usual for your box.

Note: SamuriHL's update checker add-on is part of the image. Updating to an official SamuriHL build
from it removes the FEL composition again.

Settings

Shown on S5 (S928X) only, in Settings → CoreELEC (expert level):

  • Dolby Vision FEL composition (on by default): off gives the regular behaviour (P7 converted to P8.1
    without the enhancement layer). Takes effect when playback starts.
  • Dither Dolby Vision FEL output (on by default): blue noise dither of the composed picture to 10
    bits. Takes effect immediately.
  • Dolby Vision FEL demo mode (off by default): split screen with the L1 readout, see above.

Limitations / known issues

  • 4K 24p only for now: about 35 ms of GPU time per 4K frame (budget 41.7 ms). 4K 30/50/60 FEL does
    not fit.
  • The S5 display path takes at most 10 bits, so the output is 10 bits plus dither, not a true 12-bit
    signal.
  • On one test clip (P7_FEL_STDL2, a few minutes long) a single frame flashes blue or red now and then;
    it happens with the software EL decoder too and is being investigated.
  • Blu-ray FEL playback from a disc folder was tested on one UHD title (menus, chapter skips); other discs
    are not tested yet.

Debug switches (on the box)

  • /storage/dvfel_sw_el: if the file exists, the EL is decoded in software as before (comparison).
  • /storage/dvfel_dither: overrides the setting, 0 off, 1 on, 2 left half only (comparison).
  • /storage/dvfel_pattern: 1 shows a 12-bit grey ramp test pattern instead of the video.
  • Statistics: cat /sys/kernel/debug/dvfel/stats (needs debugfs mounted).

Also included

  • Booting from a USB 3.0 port: some vendor bootloaders (e.g. Dune HD Pro 8K Plus) only start the first
    USB controller, so CoreELEC on the USB 3.0 port was not found and Android started. The install script
    (aml_autoscript) now makes the bootloader try the other controllers too. It is written to the
    bootloader environment on the first install (toothpick / recovery button boot). On a box that already
    runs CoreELEC, either do that boot once more, or run over SSH:

    fw_setenv bootfromusb 'usb start; if usb storage; then run cfgloadusb; fi; for i in 1 2; do usb stop; usb start ${i}; if usb storage; then run cfgloadusb; fi; done'
    
  • Dune HD Pro 8K Plus device tree (device_trees/s5_s928x_dune_hd_pro_8k_plus.dtb): the Ugoos SK1
    tree plus the power of the internal HDD bay. Copy it as dtb.img to the root of the CoreELEC FAT
    partition.

Source: https://github.com/djnice/CoreELEC-samurihl/tree/dv-fel-s5

Dolby Vision P7 FEL on S928X (S5) - SamuriHL CE22 based experimental build 2026-09-29 #2

Choose a tag to compare

Experimental build of SamuriHL's CoreELEC 22
for Amlogic S928X (S5) with Dolby Vision Profile 7 FEL composed on the GPU instead of dropping the
enhancement layer.

This is an unofficial test build: SamuriHL's samurihl-ce22 branch (f91de32, Kodi
SamuriHL/coreelec-xbmc aa9f70523e) with the FEL composition from
djnice/CoreELEC dv-fel-s5 on top. It is not
made or supported by SamuriHL. Use it at your own risk and keep a backup of your system.

A build of the same FEL work on plain CoreELEC 22 (nightly) is available at
djnice/CoreELEC releases. This SamuriHL based one adds
SamuriHL's highly configurable player-led (LLDV) Dolby Vision options, the L1 readout of the demo mode
and the full black level range below - recommended for projectors and Samsung TVs.

Features

  • P7 FEL composition on the GPU for S5 (see What the FEL composition does below).

  • Split screen demo mode with an L1 readout. With Dolby Vision FEL demo mode on, the left half
    shows the full FEL composition and the right half the base layer as regular CoreELEC shows P7
    converted to P8.1. The top of each half shows the brightness measured on the picture, as a level 1:
    maximum and average of max(R', G', B') in PQ, in nits, from every 8th pixel, updated four times a second.

    • left: FEL - the composed picture (RPU mapping + enhancement layer), RPU L1 - the level 1 the RPU
      carries, and AREA - the measured area,
    • right: BL - the base layer, and FEL-BL - how much the enhancement layer adds.

    Both pictures are measured on the whole active area (not on the visible half), so they are comparable.
    Letterbox bars are left out: the active area comes from the RPU's level 5 when it has one, otherwise from
    the black bars found at the top and bottom of the base layer (taken after two seconds, so dark scenes do
    not crop the picture); the AREA line shows L5, AUTO or FULL. These are the signal levels
    (mastering nits), before the display mapping. Costs about 1.6 ms of GPU time per 4K frame, only in demo
    mode.

  • Whole black level range for the VSVDB injection. Black level (VSVDB) (under Display peak
    luminance
    → Force peak onto display (VSVDB)) lists every step the VSVDB v2 can carry, PQ 0 to PQ 620
    (0 to about 1.05 cd/m²), instead of five steps up to 0.0083 nit - for projectors and other displays
    without a true black. Stored values keep their meaning. Player-led Dolby Vision only.

Fixes

  • Playback no longer stalls for good after skipping chapters on Blu-ray discs (seen on a UHD disc
    played with menus, skipping chapters quickly). A chapter skip into another clip can hand the decoder a
    first frame without a timestamp; Kodi took it as time 0, the clock jumped, and with the FEL composition
    the pipeline deadlocked (without it playback recovered after a few seconds). Two fixes:

    • dvfel kernel module: frames the display returns after a reset are released at once, and when every
      buffer is still held it passes one frame through instead of waiting forever.
    • Kodi (AMLCodec): a decoder timestamp of 0 is treated as "no timestamp", and such a frame is dropped
      when it is the first one after a reset, so the clock follows the new position.

    Tested with 20+ fast chapter-skip runs on the same disc: no stall.

  • libbluray: drawing a null image from a BD-J menu no longer throws an exception into the menu
    application (the JDK draws nothing there).

What the FEL composition does

The Dolby Vision hardware in the S5 has no enhancement-layer input, so CoreELEC converts P7 to P8.1 and
drops the EL: FEL titles lose their full-enhancement detail. This build adds the FEL reconstruction back,
while the output still goes through the hardware Dolby Vision pipeline:

  1. The hardware HEVC decoder decodes the base layer as usual (10-bit AFBC).
  2. A new vfm node (dvfel kernel module, between the decoder and the display) decompresses each base
    layer frame with the VICP block into a linear 10-bit 4:4:4 buffer shared with the GPU (dma-buf).
  3. Kodi splits the EL NAL units from the stream (single-track MKV, dual-track MP4 or Blu-ray), decodes
    them in software (FFmpeg) and parses the original P7 RPU (libdovi).
  4. The Mali-G57 composes every frame in GLES 3.2 in fp32: Lanczos-3 EL upsampling, NLQ (linear with dead
    zone) and base layer prediction (polynomial / MMR) from the RPU.
  5. The result is quantized to 10 bits with a static blue noise dither to keep gradients free of banding.
  6. VICP recompresses the composed frame to AFBC for the display; the hardware DV core gets it with a
    no-op P8.1 RPU, so the dynamic metadata and SamuriHL's RPU processing (L5, CMv4.0, ...) apply as usual.

BL, EL and RPU are paired frame-exactly. The composition matches a CPU reference implementation within
±1 LSB.

Requirements

  • S928X (S5) device using the Amlogic-no image, TV or projector with Dolby Vision, DV enabled.
  • No patched dovi.ko is needed: the FEL is composed on the GPU and the Dolby Vision core gets a
    regular profile 8.1 stream, so the stock dovi.ko does the rest.
  • Only P7 FEL streams use the new path. MEL, P5, P8, HDR10 and SDR, and all other SoCs, play as in
    SamuriHL's build.

Install

Copy the .tar to the /storage/.update folder (the Update Samba share) and reboot.

Note: SamuriHL's update checker add-on is part of the image. Updating to an official SamuriHL build
from it removes the FEL composition again.

Settings

Shown on S5 (S928X) only, in Settings → CoreELEC (expert level):

  • Dolby Vision FEL composition (on by default): off gives the regular behaviour (P7 converted to P8.1
    without the enhancement layer). Takes effect when playback starts.
  • Dither Dolby Vision FEL output (on by default): blue noise dither of the composed picture to 10
    bits. Takes effect immediately.
  • Dolby Vision FEL demo mode (off by default): split screen with the L1 readout, see above.

Limitations / known issues

  • 4K 24p only for now: about 35 ms of GPU time per 4K frame (budget 41.7 ms). 4K 30/50/60 FEL does
    not fit.
  • The S5 display path takes at most 10 bits, so the output is 10 bits plus dither, not a true 12-bit
    signal.
  • After a seek, a few frames (longer on encodes whose EL keyframes are not aligned with the BL) are shown
    without the EL until the next EL keyframe.
  • Kodi CPU load is higher during FEL playback (software EL decoding).
  • Blu-ray FEL playback from a disc folder was tested on one UHD title (menus, chapter skips); other discs
    are not tested yet.

Debug switches (on the box)

  • /storage/dvfel_dither: overrides the setting, 0 off, 1 on, 2 left half only (comparison).
  • /storage/dvfel_pattern: 1 shows a 12-bit grey ramp test pattern instead of the video.
  • Statistics: cat /sys/kernel/debug/dvfel/stats (needs debugfs mounted).

Also included

  • Booting from a USB 3.0 port: some vendor bootloaders (e.g. Dune HD Pro 8K Plus) only start the first
    USB controller, so CoreELEC on the USB 3.0 port was not found and Android started. The install script
    (aml_autoscript) now makes the bootloader try the other controllers too. It is written to the
    bootloader environment on the first install (toothpick / recovery button boot). On a box that already
    runs CoreELEC, either do that boot once more, or run over SSH:

    fw_setenv bootfromusb 'usb start; if usb storage; then run cfgloadusb; fi; for i in 1 2; do usb stop; usb start ${i}; if usb storage; then run cfgloadusb; fi; done'
    
  • Dune HD Pro 8K Plus device tree (device_trees/s5_s928x_dune_hd_pro_8k_plus.dtb): the Ugoos SK1
    tree plus the power of the internal HDD bay. Copy it as dtb.img to the root of the CoreELEC FAT
    partition.

Source: https://github.com/djnice/CoreELEC-samurihl/tree/dv-fel-s5