Open Moldiz opened 7 months ago
Firstly, thanks for the detailed issue report, it's refreshing.
AFAIK the OpenMAX integration layer is deprecated and since the RPI switch to 64-bit, I'm sure this interface is no longer possible with the suggested move to standard V4L interfaces. Moonlight Embedded supports older implementations of OMX for older OS's that still provide it. We don't.
Therefore your only option is SDL as the RPI3 does not provide X11 (which we don't even use on X86). Note: SDL provides the necessary controller support, hence the preference.
With SDL, it uses FFMPEG (AFAIK) and thus hardware accelerated playback for acceleration technologies which are supported, i.e. VA-API & VDPAU etc.
So you probably need to ask the question to the Moonlight Embedded team. How to get Hardware Acceleration under Wayland via SDL & FFMPEG ?
Note: FFPMPEG is compiled with V4L enabled.
@jdorigao thoughts?
@Moldiz Only for rpi0/1 we use vcore (omx) for the others we use mesa3d (ffmpeg).
Batocera build version
39 2024/03/01 05:31
Your architecture
Raspberry Pi 3B 1.2V
Your Graphic Processor Unit(s) (GPU)
Integrated
Issue description
I cannot run moonlight streaming with use of hardware decoding platform for RPI3B. I tried all of the options for moonlight build included in batocera, and only SDL software decoder is working properly. Moonlight version included in last stable batocera version is "Moonlight Embedded 2.6.1" which is kinda old, there is now 2.7 version available for some time.
After running "moonlight" command we can see that manpage specify platforms you can choose: "pi/imx/aml/rk/x11/x11_vdpau/sdl/fake (default auto)". On batocera wiki page about this app https://wiki.batocera.org/systems:moonlight), there is a link to default/example moonlight config file https://github.com/moonlight-stream/moonlight-embedded/blob/master/moonlight.conf , where we can find list of platforms to choose:
And here we can see "omx" platform which i assume is equivalent for "pi" command or there is some inconsistency in options. I tried both of them with the same result:
So i tried to dig dipper, i know close to nothing about buildroot but i found config file for moonlight package in batocera github https://github.com/batocera-linux/batocera.linux/blob/master/package/batocera/emulators/moonlight-embedded/Config.in where we can see whats included to build it
I took a look at Moonlight code and found this building file https://github.com/moonlight-stream/moonlight-embedded/blob/master/CMakeLists.txt where we can see what packages is it looking for while being make
And focusing on Broadcom OMX
As i said I'm newbie in terms of embedded and making distros for them, but that looks to me like there is missing package of Broadcom OMX for Raspberry Pi3 build. Maybe this will help someone to fix that problem.
Detailed reproduction steps
Installed newest stable batocera on sd card and booted it on RPI3B1.2V. Tried to run moonlight from console (ctrl+alt+f3) with command like "moonlight stream -app Steam -platform omx" or "moonlight stream -app Steam -platform pi" just to get error message about not finding selected platform.
Details of any attempts to fix this yourself
No response
Details of any modifications you have made to Batocera.
I did not make any custom modifications.
Logs and data
No response