-
Posts
6 -
Joined
-
Last visited
Content Type
Forums
Store
Crowdfunding
Applications
Events
Raffles
Community Map
Posts posted by Gabriel Negrisiolo Righi
-
-
On 7/20/2025 at 5:01 AM, ag123 said:
give kodi a try?
couldnt get it working with platform x11 and forcing it to build without internal ffmpeg stills defaults do software rendering with internal player, you can use mpv as external player it works but ina lot of cases you get a blue screen or a video filled with artifacts then it crashes... i'm compiling it with only gbm and forced external ffmpeg to test
to use kodi with mpv create a file
~/.kodi/userdata/playercorefactory.xml
Quote<playercorefactory>
<players>
<player name="MPV" type="ExternalPlayer" audio="false" video="true">
<filename>/usr/bin/mpv</filename>
<args>PAN_MESA_DEBUG=gofaster --hwdec=drm --profile=fast --fs "{1}"</args>
<hidexbmc>true</hidexbmc>
<hideconsole>true</hideconsole>
</player>
</players><rules action="prepend">
<rule video="true" player="MPV"/>
</rules>
</playercorefactory>
then make it immutable because kodi for some reason keeps deleting it
"sudo chattr +i ~/.kodi/userdata/playercorefactory.xml"
to edit or delete run the same command with -i
-
14 hours ago, robertoj said:
Thank you for your suggestions. I am trying to build Mesa in my Orange Pi Zero 3.
I've run into similar problems and checking the bash history, what i used was
sudo apt-get install build-essential meson ninja-build pkg-config git cmake gettext python3-mako python3-pip bison flex zlib1g-dev libelf-dev libunwind-dev libglvnd-dev llvm-18-dev libclang-18-dev libllvmspirvlib-18-dev libdrm-dev libva-dev libvdpau-dev libvulkan-dev vulkan-tools vulkan-validationlayers-dev spirv-tools libx11-dev libxext-dev libxdamage-dev libxfixes-dev libxrandr-dev libxshmfence-dev libxxf86vm-dev libxkbcommon-dev
for what i've saw it seems axtracker is only needed with -Dgallium-xvmc=enabled so try to explicitly disable this if youre not declaring.. and try to keep the build options simple as in
On 7/19/2025 at 7:34 PM, Gabriel Negrisiolo Righi said:PYTHON=~/src/mesa/mesa_venv/bin/python3 ~/src/mesa/mesa_venv/bin/meson setup build -Dbuildtype=release -Dprefix=/usr -Dgallium-drivers=panfrost -Dvulkan-drivers=panfrost -Dplatforms=x11 -Dvideo-codecs=all
it is worth the hassle, performance increase within latest mesa releases is noticeable
another tip is to create a alias to mpv in basrc (and launch gl applications with the same envs)
alias mpv='vblank_mode=3 MESA_GLTHREAD=1 PAN_MESA_DEBUG=gofaster nice -n -20 mpv'
it is actually faster, but don't set those mesa variables globally as it crashes xfce a lot
-
Quote
I actually dont remember the exact order of install, but from what i can recall first i compiled and installed libva-v4l2-request-HACK_HEVC.zip and followed that tutorial
then i downloaded h618_hwdec.tar.gz from https://www.elektroda.pl/rtvforum/topic4018092.html#20840047, those are the libs i replaced in /lib/aarch64-linux-gnu/
install latest edge kernel from armbian-config (or enable rolling updates), download kernel hearders and enable gpu in device tree overlays
to compile mesa first install deps than creat a python venv in mesa src directory to download latest meson in it
sudo apt-get install bison build-essential ccache clang cmake flex git glslang-tools libclang-dev libdrm-dev libelf-dev libexpat1-dev libgl1-mesa-dev libgles2-mesa-dev libgoogle-perftools-dev libgtk-3-dev libllvm-18-dev libomxil-bellagio-dev libpciaccess-dev libsensors-dev libspirv-tools-dev libunwind-dev libva-dev libvdpau-dev libvulkan-dev libwayland-dev libx11-dev libx11-xcb-dev libxatracker-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev libxcb-shm0-dev libxcb-sync-dev libxcb-xfixes0-dev libxdamage-dev libxext-dev libxfixes-dev libxrandr-dev libxshmfence-dev libxxf86vm-dev libzstd-dev llvm-18-dev meson ninja-build pkg-config python3-mako python3-pil wayland-protocols python3-venv python3 -m venv mesa_venv source mesa_venv/bin/activate pip3 install meson
but if i tried to compile from inside the venv i was gettin a mako version error so i exited the venv (just open another terminal window) used this exact command to be able to build from outside the python3 venv
PYTHON=~/src/mesa/mesa_venv/bin/python3 ~/src/mesa/mesa_venv/bin/meson setup build -Dbuildtype=release -Dprefix=/usr -Dgallium-drivers=panfrost -Dvulkan-drivers=panfrost -Dplatforms=x11 -Dvideo-codecs=all
you need to add wayland to platforms if you're using it, i'm not
(replace '~/src/mesa/mesa_venv/bin/python3' and '~/src/mesa/mesa_venv/bin/meson' with the path where you cloned the source...)
install any other dependencies it complains about then install with sudo ninja -C build install
you can confirm with glxinfo -B
gabriel@orangepizero3:~/$ glxinfo -B name of display: :0.0 display: :0 screen: 0 direct rendering: Yes Extended renderer info (GLX_MESA_query_renderer): Vendor: Mesa (0xffffffff) Device: Mali-G31 (Panfrost) (0xffffffff) Version: 25.2.0 Accelerated: yes Video memory: 3922MB ...
i don't know if that libva hack is working but vainfo recognize
gabriel@orangepizero3:~$ LIBVA_DRIVER_NAME=v4l2_request vainfo libva info: VA-API version 1.20.0 libva info: User environment variable requested driver 'v4l2_request' libva info: Trying to open /usr/lib/aarch64-linux-gnu/dri/v4l2_request_drv_video.so libva info: Found init function __vaDriverInit_1_20 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.20 (libva 2.12.0) vainfo: Driver version: v4l2-request vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointVLD VAProfileH264High : VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264MultiviewHigh : VAEntrypointVLD VAProfileH264StereoHigh : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD
and finally mpv (with yt-dlp installed)
gabriel@orangepizero3:~/$ mpv --hwdec=drm --profile=fast https://www.youtube.com/watch?v=Dyzf2evNjwc (+) Video --vid=1 (*) (h264 1920x1080 29.970fps) (+) Audio --aid=1 --alang=eng (*) (opus 2ch 48000Hz) File tags: Uploader: Zen Mechanics Channel_URL: https://www.youtube.com/channel/UCC8n8afKsdaYuI7Pr0J4pgA Using hardware decoding (drm). AO: [pulse] 48000Hz stereo 2ch float VO: [gpu] 1920x1080 drm_prime[nv12]
it is a bit confusing but i hope it helps...
i also recommend this moded mpv handler with youtube playlist and mpv prefetch queueing support: https://github.com/gabreek/mpv-handler-queue
-
i've got working with compositor turned on
-
For those who are seeking to enable video decode i've been able to get it working with those libs
https://www.elektroda.pl/rtvforum/topic4018092.html#20840047
download h618_hwdec.tar.gz and replace the libs and add "extraargs=cma=256M" to your /boot/armbianEnv.txt , mpv works flawlessly with --hwdec=drm --profile=fast, scrcpy is also fast and with minimal cpu usage...
i'm also using rolling edge kernel, and latest 25.2 mesa from source
Orange Pi Zero 3
in Allwinner sunxi
Posted · Edited by Gabriel Negrisiolo Righi
yes, thats it... you need to instal libllvmspirvlib-19-dev though
about kodi... it worked? altough im getting the same artifacs on some videos, its stable and with hw decode on internal player, because the ffmpeg provided by the v4l2 repo is 6.11 had to compile version 21.2 omega gbm platform without internal ffmpeg, then go to video player settings and activate DRM
you need to install jdk11 and select with "sudo update-alternatives --config java"
to compile run cmake with the options
-DCORE_PLATFORM_NAME=gbm -DAPP_RENDER_SYSTEM=gles -DENABLE_INTERNAL_FFMPEG=OFF -DWITH_FFMPEG=/usr/bin/ffmpeg
you should see cmake telling you that ffmpeg version check was disabled and externally selected
After installed you need to launch from a tty
gonna keep testing... the ss bellow is from one episode that i wasnt being able to watch
i finally got inputstream.adaptative to compile (if you compile the same version of available kodi on apt you dont have to do this, will be able to just use inputstream from apt, though kodi versions higher than omega requires ffmpeg 7+) and testing with 1080p 60fps
Definitely better than mpv 👌