LE11 - PI4 - few questions

  • Hello,

    So, i finally took some time to switch to LE11 nightly (from 10 Stable) for PI4 r1.5 (EDIT: 4GB). I do realise x11/gbm with new drivers -though much better debugging cap.- is quite the change.

    I managed to install and configure (fresh though I have old backup) quite the few things but I am somewhat well not totally but kinda stuck on the following parts:

    - note: I still would like to use my case/features - https://joy-it.net/en/products/RB-MultimediaCase01

    1.) That implies my first question - hyperion - would it be better to still use an x11 build or go current ver and hope https://github.com/hyperion-project/hyperion.ng/pull/1422 or whatever will reach finals for full usecase? For now I guess I could work with the current state, generally more a nice to have than anything major but yeah ...

    2.) Whats the best way to get supported EDID info on the TV? I couldnt get useable data with modetest so ... tvservice? How and which mode can i use to switch temporary to check? Or connect HDMI to my Win machine using which tool?

    3.) config.txt - couldnt find much info here on LE11, any changes/recommendations and/or thoughts on the following (good/bad/missing):

    Display Spoiler

    4.) I still have some troubles with few 4k testfiles but could be due to above problems, will check that after. Though a problem I had in specific cases with CEC seems to be resolved since the update.

    Edited 2 times, last by rastobil (January 5, 2023 at 11:16 PM).

  • If you are having issues with EDID test without the case, and also a known good (or new) 18Gbps certified, fully wired HDMI cable - those two things solve about 95% of "display not working correctly" issues.

    Don't touch config.txt, gpu_mem=1024 can never work and even if it would it would only reduce usable memory without any benefit. 96 instead of 76 may help in very odd corner cases when dealing with out-of-spec H264 files but that's it.

    So in short: best use stock HW and SW setup - only adjust Kodi settings as outlined eg here https://wiki.libreelec.tv/configuration/4k-hdr

    Concerning hyperion: don't hold your breath for a solution soon, better thing about alternatives (external HDMI grabber or TV with ambilight built in).

    so long,

    Hias

  • Thanks for the answers.

    So 1.) I guess i'll go GBM, test hyperion with that pull when I got time ... if it works for the known situations, fine, and maybe it even gets better or another solution pop up, else yeah .... not prio.

    2.) EDID - I am actually yet still using it without the case, just checking if everything else works at the core before you know using additional harware/features. The question was how to get TV supported modes. Sry if that was unclear. I actually got 2 cables for even higher quali though 1 has golden contacts ... meh ... hate that ... we all know yeah, gold better ... if both contacts use it (like f.e. you see with PCIe), else it gets worse (performance and most important duribility due to metal migration). EDIT: and I cant use tvservice because not supported in vc4 mode.

    3.) Config.txt ... fi. I did yet not change, just checking old config+infos+what i could find for today which wasnt much. I read a bit again into the gpu_mem, so its cam and h264 only, then ok, may a bit higher, I dont use cam, h264 prob. rel. often. I can also try without the dither option and see how it currently works out, did not test . Buffer i even saw now included in the options so may not needed too.

    But what about the other options? do note that I prob. do need the max usb for my external usb drive (though that only needed on startup) and the other 2 options below all for the other options of the case I def. do want/need (rgb is nice but the rest meaning Shutdown/powerup/remote/fan def. wanted). The link above does have an expertguide (manual config - explaining this). About the usure ones - dunno if the dtparam=spi is needed with the patch/pr, thats to look into. dtoverlay=hifiberry-dacplus was needed for linux 4/5. Dunno how it is now on LE11/linux6.

    Edited 3 times, last by rastobil (January 5, 2023 at 11:33 PM).

  • To be clear: There is zero support for hyperion under GBM and that's unlikely to change. It's a fundamental "how GBM video pipeline's work" thing and not "development code is a bit rough" (there is no development code). Hence the previous suggestion to look at external grabbers if hyperion is a must-have for you.

  • I think I already made it clear that its not important? Like after everything else is working fine try to see if I can get it running, else drop it pretty much states the low prio, not? And no, I didnt pick it up because not interested in extra grabber just for for that. I'm already sry for mentioning it like there is more important stuff than that. :/ ;)

    So 2.) is solved too, did connect to win, 3.) i'll have to test few things further but left at default for now. Which brings us to 4.) So I still have playback problems with few 4k files. I did test with quite few files, only some are problematic. F.e. and good as free samples are #20 (+15/16/ all of 23 -the tearing- except the 2*mp4, these force kodi restart/ 25/ 26#1/ 28 audio but no video) and old this. Log: http://ix.io/4kvV . It plays but its like the bottom half full of heavy tearing.

    Edited 2 times, last by rastobil (January 7, 2023 at 10:01 AM).

  • Downloads from the 4ksamples.com site don't work, downloads.4ksamples.com doesn't resolve to an IP address. Please provide a link to a working sample file.


    so long,

    Hias

  • Sry, I did use few test examples I did download quite some time ago (+recent files but out of those with problems all share same tearing-like symptom) and I did check if the saved links still exist, not if dl works :dodgy: :D . New link to same file (also fixed above). Also did test more of the kodi 4k examples and all of those tested would have the tearing(-like) problem, dunno if it actually is. This affects btw. video and any overlay in the bottom half, and the "height" when the "tearing" starts depends, not sure yet on what, as even same file can be different. Meaning sometimes sooner/above half, but mostly somewhere below.

    Whats of interest: #23 both mp4 files - would .... crash kodi? and #28 would play audio but not display video. Probably new logs on that behavior wanted? Any specific testscenario to use? EDIT: Well, for those crashes: http://ix.io/4kyh

    Edited 2 times, last by rastobil (January 7, 2023 at 11:27 AM).

  • Code
    2023-01-07 11:55:21.524 T:852     debug <general>: OnPlayBackStarted: CApplication::OnPlayBackStarted
    2023-01-07 11:55:21.525 T:1231    debug <general>: Thread BackgroundLoader start, auto delete: false
    2023-01-07 11:55:21.531 T:1186    debug <general>: Loading settings for /media/ExternData/HDD/Filme/0-Test/4K/Dolby Vision FEL Test Samples/FEL_test_for_AVS.mkv

    There is no support for Dolby Vision at this time, and that file doesn't appear to have other (normal HDR) tracks to fall back onto.

  • Elysium sample is playing fine here as well.

    Might be worth testing with a different, 18Gbps certified HDMI cable, and without the JoyIT case (which seems to have a HDMI adapter board which could be problematic).

    BTW: RPi4 doesn't support 4k H264 playback, stick to H265 material.

    so long,

    Hias

  • Ah okay, mixed video encodes on the testing so #28 f.e. its clear why. And #23 crashes because of chewitt said - ok.

    I do have 2 cables, one the official RPI4 one for up to 4k60Hz and one 48gbps 8k rdy. Both without any change. Also note the tearing looks quite biased, may 40° shifted down/left and constantly back/forth from the line it starts to break. I'll try to make a vid (had some problem with cam i'll look into now).

    I also did test copying the files onto the SD card (64GB Samsung Evo Plus U3) instad via usb drive. Again I do yet not use the case, placed it in a way it's floating free air, and did disable few tested addons all to be near vanilla like except few settings, and problem did exist from beginning. I do remember having those sort of problems in LE10 already but rarely and a restart would fix it, now I cant avoid it at all.

    So, what now? Anything else to test or could it be my PI is broken for 4kHEVC (though some of those play fine but most do not, everything else 1080p & such is fine too)? Bought last year so still in warranty.

    EDIT: Video showcase

    EDIT2: OK it might not be the PI actually but the TV. Cause I did test again and have similar problems now on desktop with the 23,9Hz fequency. But it somewhat depends, it doesnt happen all the time. But it leads me to another question how to allow 4k60. Or rather is it still "hdmi_enable_4kp60=1" and is that alrdy working with gbm for LE11 (PI per se it is?)? So I could simply go with the 3:2 Pulldown, dunno if was the prev. solution or rather I think it did work without (mostly, with a restart fixing it if needed).

    At least setting that and restart I cant choose higher frequency. I think I read somewhere yesterday about missing GUI support, but cant find it atm. Will look further, else any info might be nice. And there is the question of supported subsampling modes in 4k60, which I sadly cant test on desctop currently.

    Working state

    Couldnt get 4k60 to work, i remember the TV can handle it somewhat but there might be an edid hack needed. If you could enlighten me how to do that would be great - out of curiosity / for testing purposes. Other than that I think I found the culprit - a setting in the TV I recently did change, which seems to enhance in some cases but bad when playing with some 4k23 content. Its a weird combination, I put a note to remember in my pi and tv files. So it works with 4kHEVC content now. Is there any way to force unsupported codecs to 1080p playback?

    Edited 7 times, last by rastobil (January 7, 2023 at 8:52 PM).

  • Ok so besides the 4k60 testcase (no advancement here), I did enounter (a few times as forced power-off on testings) something else:

    Dirty bit in an ntfs drive (yes, needed). There should be fsck but doesnt ntfs check the drive (but as ext2, see below). fsck.ntfs (or ntfsfix) could not be found, has that been removed/not added yet for LE11? Do note:

    • It would be ok for me to leave a "repair" if it ever would be needed to windows, I'd just like to have it checked if ok and if remove dirty bit, cause it's disturbing to have to switch.
    • I read that previously it at least would mount as ro, that is not the case but doesnt mount at all.
    Code: fsck
    fsck /dev/sda
    fsck from util-linux 2.38.1
    e2fsck 1.46.5 (30-Dec-2021)
    ext2fs_open2: Bad magic number in super-block
    Code: journalctl
    Jan 09 15:30:39 LibreELEC udevil[1067]: mount: mounting /dev/sda1 on /media/ExternData failed: Invalid argument
    Jan 09 15:30:39 LibreELEC kernel: ntfs3: sda1: volume is dirty and "force" flag is not set!
    Jan 09 15:30:39 LibreELEC udevil[1062]: mount: mounting /dev/sda1 on /media/ExternData failed: No such device
    Jan 09 15:30:39 LibreELEC systemd[1]: Finished [email protected].
  • Never ever hard power-off your system.

    There is no NTFS fsck for linux, the fsck.ntfs from ntfs3g only sets the "needs to be ckecked bit" - and you have to connect the drive to a windows PC and perform the filesystem repair there.

    It's best to format the drive as ext4 if you want to use it on linux.

    so long,

    Hias

  • There was no choice when you cant ssh into/no reaction (pretty much my fault) and my case not yet used/configured. Then again there was at least no known action running (and leds inactive), just no further boot involved. And the drive does have at least some power loss safety features. But yeah, I also just learned about reisub. So if it's preventable ... I'll do.

    I've read a bit further, in what ntfsfix does as well as many other options, imo what could be done:

    • use nfsfix to disable dirty bit (bad as on kernel base I only see it addable with some other docker img and the result/effort is less desired)
    • use forced mounts - and leave checking when encounting problems or when switching system. How could forced mounts be done automatically (at best - changing the defaults, or f.e. a script to check on failed mounts, probably only on sda1)?
    • use probably a win PE image to be able to run chkdsk. Few questions come mind: Since there is W10 Arm - even for RPi4, I could not find a ARM PE Version of it - does anyone know of s.t. (EDIT1: may this)? Of course if that even supports chkdsk/ntfs or only x64 version (EDIT2: tried to boot ARM using QEMU in Win to test, well this did work, chkdsk/ntfs is supported there, but only on full ARM, not PE)? Did anyone succeed in booting incl. drive-access (EDIT3: here many infos)? As docker, img or on a bootable stick? I mean it doesnt need to perform well, cli for chkdsk is enough. EDIT4: So I think the only way would be to use a default WinPE or even RE is enough and run it in a qemu docker. EDIT5: Or of course orig, or qus or binfmt. Btw. jfyi the LE Docker readme seems outdated (buildx).
    • Simply beeing as carefull as can be, detaching unneeded stuff on tests (which is problematic by itself if you want to keep as low on physical connecting as possible), asking before any command and such ..... yeah possible to some extent, still I dont want to resort only to that.
    • Any other ideas?

    So far managed to install the first qemu docker and will test once i'v buildt prob. winre, which I need a restart and new env. first, may tomorrow.

    Edited 5 times, last by rastobil (January 10, 2023 at 8:47 PM).

  • So in short: best use stock HW and SW setup - only adjust Kodi settings as outlined eg here https://wiki.libreelec.tv/configuration/4k-hdr

    Just a comment/observation about the recommended Whitelist given in that Wiki.

    I am using a 2GB Pi 4B and was having a problem with a 720p HEVC @ 25fps file that had sound but no picture - at first I managed to get it working by disabling DRM Prime but couldn't fathom out why a simple 720p HEVC file wouldn't play when I have no problem playing 2160p HEVC at all refresh rates.

    After a lot of head scratching, and at one point about to put this question to the forum, I had a light bulb moment.

    My Whitelist contained the resolutions/refresh rates listed in the Wiki but I noticed 1920x1080 @ 25 is missing from the list.

    I tried adding this to the Whitelist and, low and behold, the file now plays even with DRM Prime enabled.

    I am aware that there is a discussion about allowing Kodi to double a 25fps file to 50fps, or something relating to this, but I am taking the approach if it works then it works.

  • If you are having issues please post full debug logs - otherwise we devs are unable to know the exact circumstances and background and won't be able to resolve potential issues.

    Enable debug logging in kodi, reboot, reproduce the issue then ssh in and run "pastekodi" (or use the log upload function in libreelec settings).

    The reason for not enabling 30/29.97/25Hz and instead allowing kodi to use double rates is that otherwise you'll run into issues with interlaced videos - they report as eg 25 Hz frame rate while they contain 50 fields and kodi will output that as 50 deinterlaced frames - and you'll get hefty issues trying to play 50 frames if kodi chose to setup display with 25 frames per second.

    so long,

    Hias