after a lot of work, which isn't finished by far, I can present you first, somehow usable, images.
Images for following boards are available here:
H3 based boards:
- BananaPi M2+
- Beelink X2
- Libretech ALL-H3-CC (Tritium) (H3 SoC)
- OrangePi 2
- OrangePi Lite
- OrangePi One
- OrangePi PC
- OrangePi PC Plus
- OrangePi Plus/Plus 2 (same image for both boards)
- OrangePi Plus 2E
A64 based boards:
- OrangePi Win
- Pine64 LTS
- Pine64 Plus
Once you prepared base image, take the latest update for your SoC here. It works with any board. Just grab the latest by the date. It would be too much work and it would take too much space if I would upload fresh image for each board each time.
If you have different board, drop a message here. I'm interested what are the most popular boards. TV boxes are not supported, except Beelink X2.
- mainline kernel & U-Boot
- completely open source except GPU (Mali) driver (until Lima project is good enough for Kodi)
- latest Kodi
- zero copy decoding & rendering
- shared decoding & rendering code with other SoCs (with small adjustement for now)
- compared to OpenELEC images with BSP kernel, HDMI should work with any monitor automatically
- HDMI CEC (support depends on the board)
- multi channel HDMI audio (correct audio output must be selected)
- IR receiver
- Analog audio
- only H3 and A64 SoCs are supported for now
- only MPEG2, H264 and H265 (HEVC) codecs are supported in hardware, for now. Others are software decoded.
- 10 bit videos are not supported (hardware limitation)
- MPEG2 should work well
- H265 works in general, with some videos not properly decoded
- H264 works well for videos with width less than 2048
- deinterlacing is not yet implemented (combing is visible)
- OrangePi onboard wifi chips are not supported (RTL8189ETV and RTL8189FTV)
- 4K support is WIP
- probably a lot of drivers need to be enabled in kernel config (mostly wifi and dvb dongles)
- sleep is not implemented
- no eMMC install script, but it should be easily to port it from old OpenELEC images
- no support for TV out
- no temperature sensor for SoC, so it may get a bit hot (driver is WIP)
- HDMI audio passthrough doesn't work yet (it might in some cases)
Plan for the future:
As you can see, most limitations are kernel related. Some of those limitations are already worked upon and I will probably add patches soon after they are posted and work well enough. Others limitations, like drivers for RTL8189ETV and RTL8189FTV are unlikely to being resolved anytime soon, if ever. They are pain to maintain and are not compatible with iwd.
allwinner branch on LE github: GitHub - LibreELEC/LibreELEC.tv at allwinner (official branch for AW SoCs without hardware codecs)
hw_dec_ffmpeg branch on my github: GitHub - jernejsk/LibreELEC.tv at hw_dec_ffmpeg (same as above with hardware codecs support, source for images linked here)
I also accept suggestion which drivers should be enabled in kernel config and which H3 boards should be added. Support for other SoCs is planned to be added later, when kernel support is good enough and appropriate GPU driver is available.
Thanks to all who helped with this in any way.
BTW, eventually, all code should land in LE github repository. Support for HW codecs will be merged once linux 4.20 hits LE master.