Posts by jernej

    Please OrangePi One

    Added.

    I have a beelink x2 (http://linux-sunxi.org/beelink_x2), would it be possible to make an image for this?

    I'll prepare image for that, but TV boxes are usually unsupported category here. Beelink X2 may be an exception, because it is supported by mainline kernel.

    Orange Pi Plus2 pls?

    If I remember correctly, the only difference between Plus and Plus 2 is the amount of RAM. That means you can easily use image for Plus. However, please note that there might be (bigger than already) issues due to extra RAM (some calculations). Nothing that can't be easily fixed, but I have to test that first.

    This topic is superseded by new one!

    Hello everyone,

    after a lot of work, which isn't finished by far, I can present you first, somehow usable, images.

    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 PC

    - OrangePi PC Plus

    - OrangePi Plus/Plus 2 (same image for both boards)

    - OrangePi Plus 2E

    Boards with less than 1 GiB of RAM are not supported!

    A64 based boards:

    - OrangePi Win

    - Pine64

    - Pine64 LTS

    - Pine64 Plus

    H6 based boards:

    - Pine H64

    IMAGE UPDATES:

    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, unsupported board, drop a message here. I'm interested what are the most popular boards. TV boxes are not supported, except Beelink X2.

    FEATURES:

    - 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

    - multi channel HDMI audio (correct audio output must be selected)

    - IR receiver

    - Analog audio (except H6)

    LIMITATIONS:

    - only H3, H6 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 in general, with some videos not properly decoded

    - deinterlacing is not yet implemented (combing is visible)

    - OrangePi onboard wifi chips are not supported (RTL8189ETV and RTL8189FTV)

    - sleep is not implemented

    - no eMMC install script, but it should be easy 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.

    Code repositories:

    allwinner branch on LE github: GitHub - LibreELEC/LibreELEC.tv at allwinner (official branch for AW SoCs)

    hw_dec_ffmpeg branch on my github: GitHub - jernejsk/LibreELEC.tv at hw_dec_ffmpeg (same as above with work in progress, source for images linked here)

    I also accept suggestion which drivers should be enabled in kernel config and which 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.

    Hi jernej, anything new since your last post?

    Not really. I'm waiting for kernel update to 4.18 before I update Allwinner branch. After that I will probably have to rewrite Kodi hack to support VAAPI with DRMPRIME renderer. Only then I might prepare initial test image with MPEG2 HW acceleration, but I'm not sure how useful such image would be. H264 and H265 are not ready yet.

    I created a branch in my repo with all the newest stuff from Bootlin and Allwinner LE branch. When it will be usable, it will be merged in LibreELEC/Allwinner repo. You can find it here: GitHub - jernejsk/LibreELEC.tv at aw_hw_dec

    It has some additional VPU driver fixes from me which I already reported to Bootlin.

    HW acceleration kind of works. MPEG2 should work in general, but please note that there is a bug in FFmpeg VAAPI handling code. As long as you have properly formed MPEG2 files, you should be fine. If not, you might receive green screen. Note that exactly same bug is visible on PC with same video, FFmpeg and Intel VAAPI, so it's not Bootlin driver fault. H264 is work in progress and most of the time, there are visual artifacts and sometimes video won't even start. Those issues are all known, so no need to report anything yet.

    So for now, this is not yet usable for daily use. Once driver becomes more stable, I'll provide community build for wider testing.

    BTW, if someone wants additional H3 devices to be included, just make a PR against Allwinner branch with necessary. No need for constant manual patching.