Hello and thanks for the awesome addon again!
After I remember PSP working fine in 1.6.2, I had to reinstall coreelec recently (odroid n2+) and with 1.7.2 I have green flickering for 2 games I tried.
Is there anything that usually need to be configured for ppsspp on retroarch for coreelec? Hope it’s just something in the settings, otherwise I will try to investigate.
Psx or really psp? PSP never going good on CE without vulkan. Only in android is PPSSPP usable.
Thank you for the fast and nice replies!
Yes PSP - oh ok that it works better in android is interesting. In the meanwhile I discovered something new though: When I finally achieved to load my old crisis core savegame, I had my character ingame next to a checkpoint was able to progress through a scripted scene and fight - everything ran fine, no artifacts, great fps.
This made me realize that only the start menu background / (intro) video have those green artifacts - after the intro finished and when you’re “in the game”, everything runs and looks (supremely) well. The artifacts in the “psp-videos” also look similar to mpeg-artifacts when keyframes are missed, maybe it’s just the video decoder.
But, I’m not sure if I had those video-playback-artifacts earlier in say 1.6.0 (not 1.6.2, i copied the cores from 1.6.0 see previous post ).
I think I should try 1.6.0 and report back.
Thanks for letting me know that it runs fine under EmuElec! I thought about switching to it yesterday, but then I need Kodi anyway and am convinced that the performance should be quite similar.
That’s also great to hear from someone who knows what the upper limit is. I wasn’t able to get gamecube running yesterday (aarch64-release requires 64bit user-space CE or something, but I want to focus on getting psp running fine first). Dreamcast runs awesomely out of the box btw, same as PSX.
I think it should be on me now to verify whether psp ran without the artifacts I encounter now in the previous version I tried and allegedly (not 100% sure about my memory) remember to be better.
I will try later tonight hopefully, whether the PSP situation improves on my end with older cores or something I can try, and report back here and potentially make a github issue.
Sorry I was thinking PSX not PSP. I know PSX emulation works fine under EmuELEC. PSP is more hit and miss depending on the game. PSP was approaching PS2 specs which were out of reach for the s922x.
PPSSPP will generally perform from bad to unplayable on this kind of platforms, though I don’t have specifically a s922x to try.
Also CE and EE performance should be the same for aarch64 versions, assumed the cores are taken at the same commit.
That would be useful, we can temporarily revert to an older version in case of regressions.
Thank you! Good to know at least that you’re also confirming my situation is normal
I have tested for 2 hours now and it didn’t work better in the end but I came to several conclusions which I’d like to share:
- I am on 21.1.0, hence ng. I finally grapsed what it means (no/ng/ne) and that I could have no.aarch64 by downloading CE 22 from nightly downloads https://relkai.coreelec.org/
- On the github Readme, you also say actually CE 19 and 20 are fully supported. Maybe because of that, I couldn’t run any version before v1.7.0. I tried from 1.6.0 and none of them started into retroarch, all exited to kodi without any further ado. With the 3 (latest) versions I could try, there was no difference in the ppsspp issues.
- I also tried a lot of different core settings and none influenced the video issues/stuttering in a conclusive way (audio is fine)
So I’m happy/lucky that the current addon version runs on my CE 21, and I’m just a little sad that I lost my old (maybe a bit better, at least in memory ) running CE 20 v1.6.2 setup, but I anyway don’t really have time to play PSP, just wanted to know whether I have the 100% safe and working option to do so. I will stick to dreamcast/psx/etc for now:)
Didn’t really plan to reinstall the whole os again, but of course now I’m quite excited about a future stable CE 22 no.aarch64 release, and then I will upgrade again. Looking forward a lot to try your aarch64 version with dolphin then (just for messing around not expecting much)
In my opinion dolphin need some optimilisation for s922xj. I tried on nightly CE22 …3 months ago, but performance of GC was unplayable. But 64 bit performance is worst than 32 bit on s922x. Better would be ask an optimalisation (for linux arm was released only from development release 2409 and only as 64 bit: GitHub - dolphin-emu/dolphin: Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.). Dolphin need SSE2 instructions.
Difference between game performance for 32 and 64 bit is included of simd instructions as equivalent to SSE2. I dont know if was included 64 bit simd for CE (neon simd is maybe only for 32 bit ?). Here was this issue opened: Are there ARM64 equivalents for x86-64 SSE2 integer SIMD GCC built-in functions? - Stack Overflow
It would be usable also this set of simd optimalization: GitHub - chirp/Ne10: An open optimized software library project for the ARM® Architecture
I am only user, not software developer. But maybe i found a reason of performance gap.
In android is playable always on same device with PPSSPP, meanwhile on CE is unplayable. I added idea about missing of simd instractions in CE as a reason of performance gap between CE and android (and also gap between 32 bit vs 64 in CE).
To test a previous version of one core you don’t need to reinstall the entire addon.
You should stick with the latest version of the addon (e.g. v1.7.2), and replace the core file (e.g. .kodi/addons/script.retroarch.launcher.Amlogic-ng.arm/lib/libretro/ppsspp_libretro.so
) with the one from a previous addon version, that you can extract directly from its zip package.
NEON flags are set both for CE and Android builds of PPSSPP core, so it does not depend on that.
Android is a different platform, with a different driver support. For example Vulkan is available on Android.
But i mean in side of builds of CE, that right implemented requirement SIMD are really in 64 bit version of CE ? Are there ARM64 equivalents for x86-64 SSE2 integer SIMD GCC built-in functions? - Stack Overflow
I accept different driver support, but we compare very old android 9 with CE on linux base, for which are realised updateds on page of MALI ARM in form of blob. Mali Drivers | Mali GPU User-Space Binary Drivers – Arm Developer with many libs in file BXODROIDN2PL-r51p0-00eac0.tar
But i dont know if somebody tried replace libs for newer or is it usually for newer realised builds.
Thanks again!
I actually tried that first before I wrote here, error: “Failed to open libretro core”. That’s why I even went that route of installing the entire addon now. I thought maybe it relied on another .so-file like ffmpeg but I can’t get any version/core to run without the error before v1.7.0 with CE21. I tried again just now for all .so-files from the releases starting from v1.6.0 and it doesn’t open with the older ppsspp_libretro.so files with that error.
Btw the same does not happen for flycast, where I can replace .so-files/cores from your releases and it doesnt ever give that error
The PSP only supports two formats: MP4 and (MJPEG) AVI up to 272p resolution. PSP Video Format: What Video Formats Are Supported by PSP?
According articles is maybe reason of crach in psp : mjpeg. Video codec crashes when hardware accelerated requiring. Kodi plays these media with software decoding only.
Somebody found an incompatibility with Kodi / LE 9.80 nightly and ESP32CAM. On LE 9.2.6 it partially worked but unreliably.
I tried this video on pc without issue, but in CE are green artefacts: Dropbox according this article one guy Anton fixed it in kodi evniroment in past. MJPEG (Motion JPEG) videos play with black screen, audio ok and other in kodi 19 : Kodi 19 - avi videos not playing · Issue #20017 · xbmc/xbmc · GitHub
In datasheed of s922x is proclaimed support for MJPEG and JPEG unlimited pixel resolution decoding (ISO/IEC-10918), but in reality now we have green artefacts in videos (and entertainments media in retroarch).
Looking for a solution for this issue i shipped to own topic for bad playing of mjpeg videos. Learning about Dolby Vision and CoreELEC development - #497 by Sholander
It is one big question about using video SF/HW (amlogic) decoders of CE in retroarch. In context of issue MJPEG with HW accelaration would be better support only software decoding for all formats of videos in retroarch.
I saw errors in retroarch logs to AVC, but sample AVC in mp4 (close to PSP specification) was ok in kodi player with HW and also SW decoding without artefacts. Only mjpeg and avc are supported formats of video in PSP.
openalsoft
support will be added in the next release.
@dired @atirage21 I think I found a solution for a working PPSSPP, based on a previous version of the core with some backports to the package build recipe. Next addon version should be ok both for arm and aarch64.
To understand what is wrong with the current core version on these platforms, a deep dive into the core source/build system is needed.
As this is very time consuming and the expected result will be poor in any case from the performance point of view, that would be a very low priority task (possibly to be solved upstream in lakka).
OK, but only please to check my logs from retroarch from last post to missing support of mjpeg on amlogic cpus, maybe it help for identification of bugs. And big thank you for progress.
Lakka: i let on your solution and communication with lakka. I am not sure, what is issue of implementation in CE and what on side retroarch.
Those [libretro INFO/WARN/ERROR]
logs are coming directly from the core, not much we can do without digging or knowing the core source in detail. That would be a job for the core maintainers, actually.
Also regarding the availability or not of features in this platform there is not much we can do addon side, we just do what we can with what is available…