[TESTING] Linux 4.9 kernel and improved video stack for Vero 4K / 4K +

Summary

Since we launched the Vero 4K in February 2017, we’ve been shipping Linux 3.14 to support this hardware. In 2018, we modernised the media stack by backporting Linux 4.9 drivers to this 3.14 kernel, which enabled us to support a wider variety of DVB tuners.

Linux 3.14 has been end of life for some time. As part of our commitment to long term support, we’d like to move to a more modern kernel and take advantage of a number of upstream improvements from the system-on-chip (SoC) vendor. We have brought up a 4.9 kernel for Vero 4K and Vero 4K +. This kernel is supported upstream until January 2023 and by the SoC vendor until the end of 2020. The SoC vendor have also finished working on a 4.19 kernel for an upcoming Android BSP release. One of the reasons why this update has taken so long is because we have backported these 4.19 changes to our 4.9 kernel. This allows us to keep in sync with upstream changes from the SoC vendor and build an off-ramp for the future of video acceleration in Kodi, which will use V4L2 M2M decoding with a GBM rendering backend. We will then move to a 5.x kernel.

Improvements

There are a number of significant improvements, but the main ones you can expect from this update are:

  • Added support for Hybrid Log-Gamma (HLG) video output
  • Added support for full HDR10 metadata output (MaxFALL/MaxCLL metadata is now passed through)
  • Added support for HDR10+ dynamic metadata, with fallbacks to HDR10 or SDR where appropriate
  • Improved 3D MVC support to resolve stuttering issues when playing clips with an NTSC flag
  • Improved video playback:
    • Decoder microcode updates
    • Solved some issues playing back some problematic clips
  • Improved WiFi driver performance for Vero 4K / Vero 4K +
  • Updated GPU driver, which should yield improved GUI performance
  • HDR to SDR tonemapping for those watching HDR content on SDR only displays
  • Initial Hi10 decode support (work in progress)
  • Reduced system temperatures under load

Known issues (will be added as discovered / reported)

  • This kernel does not utilise backported media drivers. Our 3.14 kernel had drivers backported from 4.9 and users were relatively happy with this; so in the interim we are using the drivers that are available in tree. If there is demand and regressions can be mitigated, then we will look at backporting media drivers from Linux 5.x to this kernel.

Solved issues

  • Fixed an issue preventing NFS kernel support from working
  • Improved thermal stability on Vero 4K/4K+
  • Fixed interlace output
  • Improved playback of M2TS files
  • Fixed some stability issues with crashes during playback (sad faces)

Instructions

Please note that the only way to downgrade after installing this is to reinstall OSMC; unless you really know what you are doing. Please take a backup of any important data before testing.

We expect there will be some issues and corner cases with this release. For us to improve this kernel further and ready it for general release, we need feedback. As always, full debug logs when a situation arises will be helpful.

This kernel (and supporting packages) have been made available via a separate APT repository until it is deemed stable enough to be included in the staging repository, followed by being included in a stable release.

To test this update:

  1. Ensure your system is up to date via My OSMC.
  2. Login via the command line
  3. Edit the file /etc/apt/sources.list
  4. Add the following line: deb http://apt.osmc.tv videoimprovevero main
  5. Run the following commands to update: sudo apt-get update && sudo apt-get dist-upgrade && reboot
  6. Your system should have have received the update.

Changelog

  • March 25th 2020 - initial release
  • 5th April 2020 - Kodi and kernel updated

Many thanks to @tanio99 and @grahamh for helping ready this kernel and for those that tested in advance.

Thanks to early testers that verified our new boot process and allowed us to deliver OTA bootloader updates (something we were always a bit worried about doing) to facilitate the transition to the new kernel.

We’re looking forward to your feedback

Sam

7 Likes

Just installed this on my kitchen Vero, runs through a Panasonic soundbar to a Panny TV. The Vero is no longer picking up any of the 1080x resolutions that the TV supports, the previous kernel did. Max resolution is 720, and the OSMC splash screen is 480.

Is any kind of log helpful here? I have already power-cycled the Vero in case that would help.

Yes, logs are necessary.

Your issue sounds like you have started the device before your AVR and TV were on.

1 Like

The TV and sound bar were already on when I started the Vero. Hope the log offers something useful.

https://paste.osmc.tv/erereceyan

I think i have run into the same issue. I originally had only hash for sound but when i enabled debug and rebooted twice the audio problem seems to have resolved itself. However i can’t select any resolutions (it’s greyed out) and stuck on 720p.

Logs https://paste.osmc.tv/duciruwepa

Cheers

Mine experienced the same issue, a reboot resolved it. Have you rebooted yet?

4 or 5 times now. Including completely powering down and cold booting.
Connected direct to Samsung 4k tv with passthrough to optical to an external amp

I’ve rebooted mine several times.

Also, it is not recognisiing my USB reinstaller stick to drop down to a previous version when I do a cold boot with the stick plugged in. Slightly concerned, ability to reinstall OSMC may be broken?

[Edit] Looks like the OSMC installer is a bit flaky on my new Win10 Intel NUC, after a couple of extra attempts I was able to get the reinstaller to format the stick properly.

I have installed and so far is ok , just couple of things, in audio the soundbar was on HDMI , after installation it was changed to spdif , so I was not getting Atmos. I changed again to HDMI , also I got a sad face after installation , had to reboot device .

Finally and this happened already 2 or 3 times , when stopping a movie , I do get again the sad face and vero just restarts.

Ah and I got few more modes to whitelist which before were not available.

Not sure how relevant but i looked in whitelist and noticed only 1280x720p 59.94hz in there. Ive never used whitelist before.

Sounds like you simply need to disable whitelisting then.

The only entry isn’t highlighted. Doesn’t that mean it’s disabled?
From what i understand it should list all resolutions available and you select the ones you want

Similar for me. I do not use the whitelist feature, but when I clicked on it, all the x1080 resolutions were missing from the list with the test build. The Vero is back on the January build for now and all’s well.

Did any of you guys test the 4.9 pre-release and find this?

Sam

This is my first time on 4.9

@afonso1.6 do you have any missing modes?

Sam

No, I got even 2 extra modes which were not there before.

The rest of modes were there and whitelisted as before.

Can you post a log so we can compare this to other people’s systems?

Thanks

https://paste.osmc.tv/marukemewe

I have also tried to reproduce issue mentioned before, where when i stop a movie , vero restarts by itself, but seems fine now. At least i couldn’t reproduce it again.