Alerino Reis Posted August 22, 2019 Share Posted August 22, 2019 Kodi with KMS/DRM/GBM backend only Tried MPV, but it didn't seem to work . Looks like MPV is not supported http://linux-sunxi.org/Sunxi-Cedrus#Player_Support we're tweaking the sources and scripts to release a new RetrOrangePi version , so hopefully a working tutorial will be available soon 1 Quote Link to comment Share on other sites More sharing options...
jernej Posted August 22, 2019 Share Posted August 22, 2019 @Alerino Reis If you're using ffmpeg patches from LibreELEC, then you need only this additional patch to make it compatible with mpv. I tested yesterday and it works for me when running without any window manager running with either of these commands: mpv --vo=gpu --gpu-context=drm --hwdec=auto video.mkv mpv --vo=drm --hwdec=auto video.mkv You can append "-v" parameter to check if mpv really uses HW decoding. 0 Quote Link to comment Share on other sites More sharing options...
Alerino Reis Posted August 22, 2019 Share Posted August 22, 2019 Yes, i used some of the LibreElec patches and kwiboo and lrusak ffmpeg forks, i will recheck my sources and test your suggestion. thanks a lot 0 Quote Link to comment Share on other sites More sharing options...
stulluk Posted February 29, 2020 Share Posted February 29, 2020 Any update on this topic ? Did anyone managed to run MPV with HW Video acceleration on 5.3+ Kernels from Armbian ? 3 Quote Link to comment Share on other sites More sharing options...
Dreyk Posted March 28, 2020 Share Posted March 28, 2020 I am also still interested in manual, which explain how to manage HW accel in MPV or VLC at Armbian... 1 Quote Link to comment Share on other sites More sharing options...
Alerino Reis Posted April 8, 2020 Share Posted April 8, 2020 Took some time to resume working on it... At the moment, i'm only able to get Kodi working fine with hw decoding. MPV and VLC are a no-go. MPV log Spoiler pi@RetrOrangePi:~$ mpv -v --vo=gpu --gpu-context=drm --gpu-hwdec-interop=drmprime-drm --hwdec=auto Videos/BigBuckBunny-1080p.mp4 [cplayer] Command line options: '-v' '--vo=gpu' '--gpu-context=drm' '--gpu-hwdec-interop=drmprime-drm' '--hwdec=auto' 'Videos/BigBuckBunny-1080p.mp4' [cplayer] mpv 0.32.0-328-gc5f8ec76b1-dirty Copyright © 2000-2020 mpv/MPlayer/mplayer2 projects [cplayer] built on Wed Apr 8 18:24:45 UTC 2020 [cplayer] FFmpeg library versions: [cplayer] libavutil 56.14.100 [cplayer] libavcodec 58.18.100 [cplayer] libavformat 58.12.100 [cplayer] libswscale 5.1.100 [cplayer] libavfilter 7.16.100 [cplayer] libswresample 3.1.100 [cplayer] FFmpeg version: 4.0.4-Kodi [cplayer] [cplayer] Configuration: ./waf configure [cplayer] List of enabled features: aligned_alloc alsa asm build-date caca cplayer cplugins debug-build drm egl egl-drm egl-helpers egl-x11 ffmpeg gbm gbm.h gl gl-x11 glibc-thread-name glob glob-posix gpl iconv jpeg libass libavdevice libbluray libdl libm librt linux-fstatfs memfd_create optimize posix posix-or-mingw posix-spawn posix-spawn-native pthreads pulse stdatomic vaapi vaapi-drm vaapi-egl vaapi-x-egl vaapi-x11 vdpau vdpau-gl-x11 vt.h x11 xv zlib [cplayer] Reading config file /usr/local/etc/mpv/encoding-profiles.conf [cplayer] Applying profile 'default'... [cplayer] Setting option 'v' = '' (flags = 8) [cplayer] Setting option 'vo' = 'gpu' (flags = 8) [cplayer] Setting option 'gpu-context' = 'drm' (flags = 8) [cplayer] Setting option 'gpu-hwdec-interop' = 'drmprime-drm' (flags = 8) [cplayer] Setting option 'hwdec' = 'auto' (flags = 8) [bdmv/bluray] Opening Videos/BigBuckBunny-1080p.mp4 [file] Opening Videos/BigBuckBunny-1080p.mp4 [demux] Trying demuxers for level=normal. [lavf] Found 'mov,mp4,m4a,3gp,3g2,mj2' at score=100 size=2048. [file] stream level seek from 131072 to 22698752 [demux] Detected file format: mov,mp4,m4a,3gp,3g2,mj2 (libavformat) [cplayer] Opening done: Videos/BigBuckBunny-1080p.mp4 [find_files] Loading external files in Videos/ [lavf] select track 0 [lavf] select track 1 [cplayer] (+) Video --vid=1 (*) (h264 1920x1080 24.000fps) [cplayer] (+) Audio --aid=1 (*) (aac 6ch 48000Hz) [vo/gpu/opengl] Initializing GPU context 'drm' [vo/gpu] VT_GETMODE failed: Inappropriate ioctl for device [vo/gpu/opengl] Failed to set up VT switcher. Terminal switching will be unavailable. [vo/gpu/opengl] Initializing KMS [vo/gpu/opengl] Device name: /dev/dri/card0 [vo/gpu/opengl] Driver: sun4i-drm 1.0.0 (20150629) [vo/gpu/opengl/kms] Connector 43 currently connected to encoder 42 [vo/gpu/opengl/kms] Selected Encoder 42 with CRTC 41 [vo/gpu/opengl/kms] Selected mode: 1920x1080 (1920x1080@60.00Hz) [vo/gpu/opengl] DRM Atomic support found [vo/gpu/opengl/kms] Using primary plane 35 as draw plane [vo/gpu/opengl/kms] Using overlay plane 31 as drmprime plane [vo/gpu] GBM_FORMAT_ARGB8888 supported by draw plane. [vo/gpu] Creating GBM device [vo/gpu] Initializing GBM surface (1920 x 1080) [vo/gpu/opengl] Initializing EGL [vo/gpu/opengl] EGL_VERSION=1.4 Linux-r6p2-01rel0 [vo/gpu/opengl] EGL_VENDOR=ARM [vo/gpu/opengl] EGL_CLIENT_APIS=OpenGL_ES [vo/gpu/opengl] Trying to create Desktop OpenGL context. [vo/gpu/opengl] Could not bind API! [vo/gpu/opengl] Trying to create GLES 3.x context. [vo/gpu/opengl] Could not choose EGLConfig for GLES 3.x! [vo/gpu/opengl] Trying to create GLES 2.x context. [vo/gpu/opengl] Attempting to find EGLConfig matching GBM_FORMAT_ARGB8888 [vo/gpu/opengl] No matching EGLConfig for GBM_FORMAT_ARGB8888 [vo/gpu/opengl] Attempting to find EGLConfig matching GBM_FORMAT_XRGB8888 [vo/gpu/opengl] Found matching EGLConfig for GBM_FORMAT_XRGB8888 [vo/gpu/opengl] Initializing EGL surface [vo/gpu] GL_VERSION='OpenGL ES 2.0' [vo/gpu] Detected GLES 2.0. [vo/gpu] GL_VENDOR='ARM' [vo/gpu] GL_RENDERER='Mali-400 MP' [vo/gpu] GL_SHADING_LANGUAGE_VERSION='OpenGL ES GLSL ES 1.00' [vo/gpu/opengl] Preparing framebuffer [vo/gpu/opengl] Could not find path to render node. VAAPI hwdec will be disabled [vo/gpu/opengl] 16 bit UNORM textures not available. [vo/gpu] Disabling HDR peak computation (one or more of the following is not supported: compute shaders=0, SSBO=0). [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu] Loading hwdec driver 'drmprime-drm' [vo/gpu/drmprime-drm] Using primary plane 35 as draw plane [vo/gpu/drmprime-drm] Using overlay plane 31 as drmprime plane [vo/gpu] Assuming 60.000000 FPS for display sync. [decode_wrapper/vd] Container reported FPS: 24.000000 [decode_wrapper/vd] Codec list: [decode_wrapper/vd] h264 - H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [decode_wrapper/vd] h264_v4l2m2m (h264) - V4L2 mem2mem H.264 decoder wrapper [decode_wrapper/vd] Opening decoder h264 [decode_wrapper/vd] Looking at hwdec h264-vaapi... [decode_wrapper/vd] Could not create device. [decode_wrapper/vd] Looking at hwdec h264-vaapi-copy... [decode_wrapper/vd] Could not create device. [decode_wrapper/vd] Looking at hwdec h264-drm... [decode_wrapper/vd] Trying hardware decoding via h264-drm. [decode_wrapper/vd] Selected codec: h264 (H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10) [vf] User filter list: [vf] (empty) [decode_wrapper/ad] Codec list: [decode_wrapper/ad] aac - AAC (Advanced Audio Coding) [decode_wrapper/ad] aac_fixed (aac) - AAC (Advanced Audio Coding) [decode_wrapper/ad] Opening decoder aac [decode_wrapper/ad] Requesting 1 threads for decoding. [decode_wrapper/ad] Selected codec: aac (AAC (Advanced Audio Coding)) [af] User filter list: [af] (empty) [cplayer] Starting playback... [file] stream level seek from 22718509 to 48 [decode_wrapper/vd] Pixel formats supported by decoder: vaapi_vld drm_prime yuv420p [decode_wrapper/vd] Codec profile: High (0x64) [decode_wrapper/vd] Requesting pixfmt 'drm_prime' from decoder. [af] [in] 48000Hz 5.1 6ch floatp [af] [userspeed] 48000Hz 5.1 6ch floatp [af] [userspeed] (disabled) [af] [convert] 48000Hz 5.1 6ch floatp [decode_wrapper/vd] Using hardware decoding (drm). [decode_wrapper/vd] Decoder format: 1920x1080 drm_prime[nv12] auto/auto/auto/auto/auto CL=mpeg2/4/h264 [vf] [in] 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] (disabled) [vf] [autorotate] 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [autorotate] (disabled) [vf] [convert] 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [convert] (disabled) [vf] [out] 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [ao] Trying audio driver 'pulse' [ao/pulse] requested format: 48000 Hz, 5.1 channels, floatp [ao/pulse] Library version: 11.1.0 [ao/pulse] Proto: 32 [ao/pulse] Server proto: 4294967295 [ao] Trying audio driver 'alsa' [ao/alsa] requested format: 48000 Hz, 5.1 channels, floatp [ao/alsa] using ALSA version: 1.1.3 [ao/alsa] opening device 'default' [ao/alsa] trying format float/14 [ao/alsa] Channel layouts: [ao/alsa] - stereo [ao/alsa] result: stereo [ao/alsa] channel map reported by ALSA: FL FR [ao/alsa] which we understand as: stereo [ao/alsa] which is what we requested. [ao/alsa] hw pausing supported: no [ao/alsa] buffersize: 4096 samples [ao/alsa] period size: 1024 samples [ao/alsa] device buffer: 4096 samples. [ao/alsa] using soft-buffer of 8820 samples. [cplayer] AO: [alsa] 44100Hz stereo 2ch float [cplayer] AO: Description: ALSA audio output [autoconvert] inserting resampler [swresample] format change, reinitializing resampler [swresample] 48000Hz 5.1 floatp -> 44100Hz stereo float [swresample] Remix: 5.1 -> stereo [af] [out] 44100Hz stereo 2ch float [cplayer] VO: [gpu] 1920x1080 drm_prime[nv12] [cplayer] VO: Description: Shader-based GPU Renderer [vo/gpu] reconfig to 1920x1080 drm_prime[nv12] bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vo/gpu] Resize: 1920x1080 [vo/gpu] Window size: 1920x1080 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 1920x1080 (1:1) [vo/gpu] Video display: (0, 0) 1920x1080 -> (0, 0) 1920x1080 [vo/gpu] Video scale: 1.000000/1.000000 [vo/gpu] OSD borders: l=0 t=0 r=0 b=0 [vo/gpu] Video borders: l=0 t=0 r=0 b=0 [vo/gpu] Using HW-overlay mode. No GL filtering is performed on the video! [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [cplayer] first video frame after restart shown [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [cplayer] audio sync: sync_to_video=1, offset=0.000000 [cplayer] playback restart complete @ 0.000000, audio=playing, video=playing [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: 0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: 0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: 0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: 0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: -0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: -0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [statusline] AV: 00:00:00 / 00:00:30 (0%) A-V: -0.000 [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0. [cplayer] EOF code: 5 [cplayer] finished playback, success (reason 3) [cplayer] [cplayer] Exiting... (Quit) [ao/alsa] draining... 2 Quote Link to comment Share on other sites More sharing options...
Pol Isidor Posted May 15, 2020 Share Posted May 15, 2020 Huh..it seams that it is not so simple for everyone to reach this poing to have a HW acceleration on H3. My goal is to reach transcoding from h264 full HD as input stream (satillite stream from enigma2 receivers) and lower down the resolution to SD in h264 with FFmpeg. I compiled myself the ffmpeg with h264 and libfdk-aac. All this working even without HW but from SD to SD. Is there some detail tutorial how can I reach this point? Thx! 1 Quote Link to comment Share on other sites More sharing options...
Sash0k Posted July 16, 2020 Share Posted July 16, 2020 (edited) Trying to add VA-API into actual Armbian Focal (Linux orangepipc 5.4.45-sunxi #20.05.4) Install instruction Spoiler $ sudo apt-get install libtool pkg-config vainfo libva2 libva-x11-2 libva-drm2 libva-utils libva-dev libdrm-dev $ git clone https://github.com/bootlin/libva-v4l2-request $ cd libva-v4l2-request $ ./autogen.sh $ make $ sudo make install Next, export driver: $ export LIBVA_DRIVER_NAME=v4l2_request and check it with vainfo tool. Have an error: $ vainfo libva info: VA-API version 1.7.0 libva info: User environment variable requested driver 'v4l2_request' libva info: Trying to open /usr/lib/arm-linux-gnueabihf/dri/v4l2_request_drv_video.so libva info: va_openDriver() returns -1 vaInitialize failed with error code -1 (unknown libva error),exit To fix, add symbolic link to installed driver: $ sudo ln -s /usr/lib/dri/v4l2_request_drv_video.so /usr/lib/arm-linux-gnueabihf/dri/ And seems everything is ok $ vainfo libva info: VA-API version 1.7.0 libva info: User environment variable requested driver 'v4l2_request' libva info: Trying to open /usr/lib/arm-linux-gnueabihf/dri/v4l2_request_drv_video.so libva info: Found init function __vaDriverInit_1_7 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.7 (libva 2.6.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 Edited July 16, 2020 by Sash0k fixed by myself 1 Quote Link to comment Share on other sites More sharing options...
Dreyk Posted July 17, 2020 Share Posted July 17, 2020 @Sash0k, it looks interesting. What about the real video playback in video players (like mpv, vlc, etc...)? 0 Quote Link to comment Share on other sites More sharing options...
Sash0k Posted July 17, 2020 Share Posted July 17, 2020 4 hours ago, Dreyk said: @Sash0k, it looks interesting. What about the real video playback in video players (like mpv, vlc, etc...)? Unfortunately, no success. First, mainline bootlin backend is outdated, h264 broken. It has some pull requests, that not merged. Tryng to recompile Philipp Zabel's version, and merge his work for h264 Spoiler $ git clone https://github.com/pH5/libva-v4l2-request.git $ cd libva-v4l2-request $ git merge origin/h264 $ ./autogen.sh $ make $ sudo make install This version works with artifacts in VLC: 1 Quote Link to comment Share on other sites More sharing options...
Sash0k Posted July 20, 2020 Share Posted July 20, 2020 (edited) Finally got it! No kernel modifications needed, only v4l2-request. Key notes: Use bootlin code, latest master (not release-2019.03 tag) I merged just one small patch from https://github.com/bootlin/libva-v4l2-request/pull/30/files (seems, it's unecessary) Download kernel sources with corresponding version. For my armbian is: https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.4.45.tar.xz Extract 2 files from kernel/include/media mpeg2-ctrls.h and h264-ctrls.h and replace ones in v4l2-request Replace V4L2_PIX_FMT_H264_SLICE_RAW to V4L2_PIX_FMT_H264_SLICE in v4l2-request source code Compile and install (instruction is as 2 posts above) Don't forget to set VLC as in https://linux-sunxi.org/Sunxi-Cedrus Spoiler Tools > Preferences > Input / Codecs > Codecs > Hardware-accelerated decoding > VA-API video decoder Tools > Preferences > Video > Display > Output > X11 video output (XCB) Tested with VLC, usable with issues: Artifacts in some videos h264 720p and higher, for example: https://imgur.com/nYFArT4 (360/480 works fine) Scaling (fullscreen, resizing) not works, slowdown with message [a310cb88] main filter error: Failed to create video converter Minor issues in console output on playback (see bold) Spoiler $ vlc 3-big_buck_bunny_480p_H264_AAC_25fps_1800K.MP4 VLC media player 3.0.9.2 Vetinari (revision 3.0.9.2-0-gd4c1aefe4d) [02287b98] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.libEGL warning: DRI2: failed to authenticate libva info: VA-API version 1.7.0 libva info: User environment variable requested driver 'v4l2_request' libva info: Trying to open /usr/lib/arm-linux-gnueabihf/dri/v4l2_request_drv_video.so libva info: Found init function __vaDriverInit_1_7 libva info: va_openDriver() returns 0 [a272d350] avcodec decoder: Using v4l2-request for hardware decoding[a3018b98] blend blend error: no matching alpha blending routine (chroma: YUVA -> VAOP) [a3018b98] main blend error: blending YUVA to VAOP failed Thanks to: @jernej for this post: Edited July 20, 2020 by Sash0k thanks 1 Quote Link to comment Share on other sites More sharing options...
jernej Posted July 20, 2020 Share Posted July 20, 2020 Well, kernel modification is needed for better decoding (less glitches). Probably new *-ctrl.h files contain new fields (not 100% sure) which also need to be filled. There is no any post processing implemented here like scaling. It would be possible to do that via SoC specific peripherals but that wouldn't be universal and thus it's out of scope of this library. Anyway, I'm glad you succeeded. 2 Quote Link to comment Share on other sites More sharing options...
Sash0k Posted August 22, 2020 Share Posted August 22, 2020 Hello again. I've compiled libva-v4l2-request for actual orangepipc 5.7.15-sunxi #20.08 Works better than 5.4.45, no artifacts in 720p Patched sources: https://github.com/Sash0k/libva-v4l2-request 1 Quote Link to comment Share on other sites More sharing options...
jernej Posted August 22, 2020 Share Posted August 22, 2020 BTW, while your approach may work to some degree, note that you don't set bunch of flags for h265. This may work only in very specific cases. Certainly h265 should be worse than before. 0 Quote Link to comment Share on other sites More sharing options...
AnonymousPi Posted September 12, 2020 Share Posted September 12, 2020 Hi Jernej, are you able to elaborate on the h265 compile flags that should be set? 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted September 12, 2020 Share Posted September 12, 2020 I mean flags in source, not compile flags. Check what has been removed in h265.c and restore it, with new flag or field names. 0 Quote Link to comment Share on other sites More sharing options...
UniformBuffer Posted September 30, 2020 Share Posted September 30, 2020 Hi, i'm interested in this topic, but since i use wayland i would like to get it working on mpv (for example). I got vaainfo detecting the library, but when launched using mpv i got green screen and a lot of "failed to destoy surface". I also have noticed that after a some try, i got an error about failed resource allocation (i imagine because it does not free correctly buffers). Someone have managed to get mpv working? For the context, i'm not using Armbian device, but a Pinephone with PostmarketOS (it's the only Allwinner device i have), but i think a lot of people could benefit from get this driver working. 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted October 10, 2020 Share Posted October 10, 2020 Sadly noone maintain vaapi layer, so you're mostly on your own there, which means learning a ton of internal details of vaapi, v4l2 request api and supported codecs. On the other hand, ffmpeg fork with v4l2 request api is pretty well maintained. I know this is not ideal, but for example mpv (with one patch) can work with that modified ffmpeg. 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 2, 2022 Share Posted February 2, 2022 Hi guys, i did what you say above but still doesnt work on both vlc and ffmpeg running on Orangepi PC. I am using armbian latest stable version : Linux orangepipc 5.10.60-sunxi #21.08.1 SMP Wed Aug 25 18:19:32 UTC 2021 armv7l armv7l armv7l GNU/Linux Umit 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted February 2, 2022 Share Posted February 2, 2022 1 hour ago, umtkyck said: I am using armbian latest stable version : Linux orangepipc 5.10.60-sunxi #21.08.1 SMP Wed Aug 25 18:19:32 UTC 2021 armv7l armv7l armv7l GNU/Linux 5.10 is ancient for video decoding purposes. Codecs started stabilizing after 5.11. With 5.14 you'll have stable and fully working MPEG2, VP8 and H264. If you need low effort solution, build latest gstreamer 1.20 RC with gst-plugins-bad with one of the latest kernels. With proper pipeline, it works. If you need out of the box solution, use LibreELEC distro. 1 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 3, 2022 Share Posted February 3, 2022 Hi jernej, thanks. how can i find armbian kernel 5.14 for orangepi pc? Sorry i am new in allwinner. Regards, Umit 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted February 3, 2022 Share Posted February 3, 2022 13 hours ago, umtkyck said: how can i find armbian kernel 5.14 for orangepi pc? There is no 5.14 kernel available in Armbian, I talked about minimum version. In general, codecs are improved with (almost) every release, so latest version is best. I only see images with kernel 5.13 on download page, which should in theory work. You can build your own Armbian image with kernel 5.15 (edge). 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 5, 2022 Share Posted February 5, 2022 Jernej, what if i want to make backporting the 5.14 codecs to 5.4 release coming with openwrt for orange pi pc. Is that possible, what do i need to take care doing this operation. Just taking the cedrus drivers will not help generally, right? I wanna port the working librelec libraries to latest openwrt stable distro. Umit 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted February 6, 2022 Share Posted February 6, 2022 On 2/5/2022 at 4:49 PM, umtkyck said: Just taking the cedrus drivers will not help generally, right? You'll have to also port headers and maybe more. This is generally not something I'd spend time on. It should be easier to update Linux package on openwrt. 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 8, 2022 Share Posted February 8, 2022 @jernej my main approach is backport drivers to kernel 4.19, due to the limitations they dont want to change it. What if i use ubarobov's images , i guess he used 4.20 for the tests. Also bootlin guys also says 4.20 is working for their toolchains. Do you see any risk on that? Can i run hw decode on kernel 4.19? Umit 0 Quote Link to comment Share on other sites More sharing options...
jernej Posted February 8, 2022 Share Posted February 8, 2022 Kernel 4.19 was one of the first which has anything of request API framework IIRC. Task of porting mainlined patches there will be even harder. You can use WIP patches from Bootlin and accompanying libs, but then expect that many videos won't work, especially interlaced H264. Also gstreamer or patched ffmpeg won't be compatible with that API. That's even more futile IMO and don't expect any help from me. 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 8, 2022 Share Posted February 8, 2022 Thanks so much, i will try to backport i hope it works. 0 Quote Link to comment Share on other sites More sharing options...
Sylvain P Posted February 8, 2022 Share Posted February 8, 2022 Umtkyck why do youwant to do this instead or trying a more mainstream approche? 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 8, 2022 Share Posted February 8, 2022 I prefer to use latest one but customer doesnt want to update board kernel version thats all. 0 Quote Link to comment Share on other sites More sharing options...
umtkyck Posted February 8, 2022 Share Posted February 8, 2022 @jernej is there any libreelec version h3 hw decoding working on kernel 4? Especially on your releases. I saw this one is on 2018 seems working. https://forum.libreelec.tv/thread/13228-early-community-images-for-h3-h6-and-a64/ I am tring my chance sorry Umit 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.