RPi3B+ and 1080p H265 files

  • Hello !

    First, sorry for my english I'm a frog ! I'm a beginner with a rasberry pi 3B+ and Libreelec and not at all a geek (but using linux for years). If I can play the most of my video files on my tv not a 4K tv, it doesn't work for those that are 1080p H265 (often videos in the native language with subtitles). I tried to read, to search the net and to play with the settings without any success. After reading some things on the onternet I tried to search for the HEVC add-on. I only found HEIF add-on. I installed it anyway but without success. I would appreciate some help.

    Thanks !

  • RPi3B+ supports H264 hardware decode. It does not support HEVC hardare decode. Older LE releases (up to LE 9.2) have patches to share the decoding effort between CPU and GPU to improve HEVC decoding. It is normally possible to play low-bitrate 1080p files.

    After LE10 the RPi3B is using a newer GBM/V4L2 display pipeline and this does not support the CPU+GPU decoding method. The board can still software decode HEVC, but without the GPU offload the maximum resolution is reduced to SD and 720p media.

    Your options are:

    a) Use handbrake/ffmpeg to re-encode files from HEVC to H264 ($0).

    b) Use handbrake/ffmpeg to re-encode files to SD or 720p ($0).

    c) Use an older LE 9.2.8 release ($0).

    d) Change the RPi3 for something that supports native HEVC decode, e.g. RPi4, or RPi5 ($$).

  • Hello !

    Thanks a lot for your answer. I found the wiki to downgrade and a thread where you give also advices how to do it. I have a question tough. I installed LibreElec via PINN. I guess that I will not be able to downgrade Librelec using PINN ? Do I need to erase all my sd card and install directly Libreelec 9.2.8 on it ?

    By curiosity : why the newest version does not take with it the ancient decoding CPU + GPU metod ? When a upgrade is made on a software it's to be better and better, no ? And of what I understand the 1080P H265 is a newer format ? So why this choice not to take the old features ?

    Thanks again !

  • The old methods require OMXplayer/MMAL decoding and these were removed from Kodi (c.2018) in a purge of vendor proprietary decoding methods as Kodi moved forwards with open standards (GBM/V4L2, VAAPI, VDPAU). RPi devs have reimplemented the video pipeline for older RPi0/1/2/3 boards using GBM/V4L2, but the end goal of that effort was to upstream all their kernel driver code instead of hoarding ever-more in the downstream RPi kernel fork. The CPU+GPU approach, while clever, was always a big hack that would never be allowed upstream, and as it would be architecturally hard to reimplement (rewriting from scratch) under GBM/V4L2 the work has never been done. Around the same time RPi4 also launched bringing native HEVC decoding. There was no intent from RPi devs to "drive RPi4 upgrades" by not reimplementing the CPU+GPU approach, but it did reduce the need.

    Having never used PINN, I can't really say whether downgrades are possible, but going back to 9.2.8 (or I think 9.2.6 for RPi3 as 9.2.8 was a respin solely for RPi4 support) is a big jump, so best to reimage and start over clean.

  • Hello ! I don't make it work. As I have to remove PINN to install Libreelec 9.2.6 I formated the micro SD card in Fat 32 and wrote the image (that I extract from the img.gz file I had of LibreElec with the RPI imager. It said everything went good but when I start my Rasberry with the sd card in it nothing happens. I don't understand what I do wrong.

  • You don't need to do any image extraction - Raspberry Pi Imager, and Balena Etcher (both good burning tools) - allow you to flash an img.gz file directly to your uSD card with no requirement to do any processing to the downloaded file (the tool handles the compressed file internally).

    You also don't need to format the uSD card prior to flashing - the flashing process writes the image (including the disk formatting data) to the card (it will usually re-size the drive partition to maximise the uSD Card capacity on first boot)

    If you're using Windows you can probably use the LibreElec USB-SD creator tool as well as a third option along with the Pi imager and Balena. I usually use Balena.

    The most common issue I've had with uSD cards not working is failure of the uSD card... I used to use a variety of brands (often whatever I could get a good deal on - but had a number of failures) - I then switched exclusively to Samsung EVOs and have had no issues since. (I'm not saying other manufacturers are terrible - just that my 'sample size of 1' experience is that Samsung EVOs work reliably for me. I don't use uSD cards on my Pi 5s though)

  • Thanks for you reply. Tried what you said but at the end of the writing with RPI it said "ERROR : partition has no FAT file". Don't know if it's normal. I downloaded LibreELEC-Generic.x86_64-9.2.6. Maybe it's not the good file ?


    Thanks once again for you help.

  • Thanks for you reply. Tried what you said but at the end of the writing with RPI it said "ERROR : partition has no FAT file". Don't know if it's normal. I downloaded LibreELEC-Generic.x86_64-9.2.6. Maybe it's not the good file ?


    Thanks once again for you help.

    You cant install LE Generic on a Pi 3B+, use the Pi 2 image.

  • Thanks for you reply. Tried what you said but at the end of the writing with RPI it said "ERROR : partition has no FAT file". Don't know if it's normal. I downloaded LibreELEC-Generic.x86_64-9.2.6. Maybe it's not the good file ?


    Thanks once again for you help.

    The x86_64 = Intel 64-bit architecture, which is not used by a Raspberry Pi. That's the wrong file for a Pi 3B+.

  • Hi !

    Sorry for the late reply but hard to find time to do it. I downloaded the file that MatteN told me from this page https://ftp.halifax.rwth-aachen.de/libreelec/ wrote it on the sd card with RPI Imager but once again the rasberry pi is not starting on it... :(

    Do I need to do something with the sd card before writing the LibreElec image on it ?


    Thanks for helping !

    It would help if you told us precisely which image you downloaded - there are a lot there.

    You need the img.gz file to flash to an SD card. I use BalenaEtcher but RPi Imager should also work.

    Out of interest why aren't you downloading from the LE site here : https://libreelec.tv/downloads/raspberry/

    If you scroll down you can find : https://releases.libreelec.tv/LibreELEC-RPi2.arm-9.2.8.img.gz which is the Raspberry Pi 3 LE 9.2.8 release that I think you want to use?

    chewitt advised that 9.2.8 is the last build with the legacy support for the hardware accelerated HEVC decode on the Pi 3 series. (That's why LE are still hosting it)

  • Thanks for helping a newbie like me ! I downloaded this one LibreELEC-RPi2.arm-9.2.6.img.gz

    I will try the one you told me. I'll do that right now and let you know right away.

    Thanks again !


    Unfortunately like all my tries, nothing happens when I start the rasberry pi. Even if I plug out and in again it doesn't start...

    It works with PINN that I installed and reinstalled a few times now so I don't understand what the problem can be with the old version of LE.

    Edited once, last by Seth: Merged a post created by Seth into this post. (August 24, 2024 at 10:02 AM).

  • Thanks for helping a newbie like me ! I downloaded this one LibreELEC-RPi2.arm-9.2.6.img.gz

    I will try the one you told me. I'll do that right now and let you know right away.

    Thanks again !


    Unfortunately like all my tries, nothing happens when I start the rasberry pi. Even if I plug out and in again it doesn't start...

    It works with PINN that I installed and reinstalled a few times now so I don't understand what the problem can be with the old version of LE.

    I don't know anything about PINN I'm afraid - I only use Raspberry Pi OS, Ubuntu, OpenWRT and LibreElec on my Raspberry Pis.

    How are you flashing your uSD card - and have you tried more than one to rule out a failed uSD card (that can happen)?

    You definitely have a Pi 3B+?

    What is your display you are connected to via HDMI?

    Do you see the rainbow Pi screen?


    I'll see if I can dig out a 3A or 3B and give it a go with that image to double check.

    ** EDIT **

    Just downloaded the image above, flashed it to my uSD card using the latest Mac version of Raspberry Pi imager.

    I selected Raspberry Pi 3, as my device, chose my LibreELEC-RPi2.arm-9.2.8.img.gz file using the custom.img option in the Operating System drop down, my uSD card in the Storage System - and no customisation when prompted.

    I then plugged that uSD card into a Raspberry Pi 3B and powered up. I got the standard Raspberry Pi rainbow screen, then a LibreElec splash screen, then the resizing file system stuff, then it rebooted into LibreElec and the Welcome set-up wizard.

    So either you have a problem with your uSD card, how you are flashing your uSD card or how you are looking at the output of your Pi.


    Personally I'd try BalenaEtcher for flashing your uSD - it's much simpler to use and it does a verify after flashing.


    Can also confirm it plays 1080p25 HEVC/h.265 Main 10 files at 5Mbs with 50% CPU on all cores and no major frame drops (just a couple of skips at the start), but 12Mbs stuff is too much for it.

    Edited 3 times, last by noggin (August 24, 2024 at 11:38 AM).

  • "PINN is An enhanced Operating System installer for the Raspberry Pi

    PINN is a version of the NOOBS Operating System Installer for the Raspberry Pi. See the change history below for the additional features.

    Documentation on how to use PINN can be found in README_PINN.md, which includes all of the original NOOBS documentation."

    ( https://github.com/procount/pinn )

    It allows you to install and charge different OS directly. But of what I understand only the latest versions.

    I didn't flashed my sd card because one told me the IMAGER do all that needs to be done. Maybe it's wrong and I need to format and make partitions ? I don't think the failure comes from the uSD card since I can install LE through PINN.

    I definitely have a Rasberry 3 B+, just checked on the mother card.

    I don't see anything on my tv screen connected through HDMI, just a black screen with the message 'no signal". I tought it could be the HDMI cable but once again it works with LE installed via PINN.


    Thanks once more for helping

  • Ah - those types of installers aren't recommended these days ISTR - which is why NOOBs was deprecated.

    What do you mean by "I didn't flashed my sd card because one told me the IMAGER do all that needs to be done. Maybe it's wrong and I need to format and make partitions ? I don't think the failure comes from the uSD card since I can install LE through PINN."

    How have you flashed the .img.gz image to your uSD card? Flashing doesn't mean doing it manually - it just means taking the .img.gz file and copying it in a certain way to your uSD card - which is referred to as flashing or burning (the media used to be called Flash ROM)

    You have to flash/burn/write to the uSD card - whether you use Pi imager or Balena Etcher or Rufus etc. - those applications are designed to flash the card in the way that will allow the Pi to boot correctly from it.

    What you can't do is just copy the .img.gz to the uSD card - it needs to be flashed.

    How many uSD cards have you tried? You can find that failing uSD cards work in some ways and not in others.

    Personally I'd install Balena Etcher and try that as it's simpler than Pi Imager, though I've just got my Pi 3B+ working fine using Pi Imager and that LE-hosted img.gz file... I'd also try a different uSD card.

    I'm assuming your HDMI display is a normal one capable of 1080p60, 1080p50 etc.?

    Edited 2 times, last by noggin (August 24, 2024 at 12:26 PM).

  • So you mean I just can't use my uSD card directly using Imager and I need to prepare the card first, to flash it via gparted in FAT 32 ? But do I need to make different partitions in FAT 32 on the sd card ?

    I din't try any other uSD card because I really didn't have a clue it could work with a software and not working with another one. And I don't have any other uSD card. Is there one size and constructor that is better ? So I can buy one to see if it works best.

    Using linux without beeing a geek, it's too complicate for me to install balenaEtcher since they don't have a .deb file for it.