Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Architectures & Platforms Gentoo on ARM
  • Search

HW Accelerated video on aarch64

Gentoo on all things ARM. Both 32 bit and 64 bit.
Tell about your hardware and CHOST.
Problems with crossdev targeting ARM hardware go here too.
Post Reply
  • Print view
Advanced search
10 posts • Page 1 of 1
Author
Message
trademark91
n00b
n00b
Posts: 26
Joined: Thu Dec 03, 2020 7:48 pm
Location: USA

HW Accelerated video on aarch64

  • Quote

Post by trademark91 » Sat Jul 29, 2023 6:37 pm

Hello Gentoo on Arm users!

I've been building a gentoo install on my 8gb raspberry pi CM4 on a cm4 to pi4 adapter board, and its been going great. I'm trying to use this to build a handheld machine to carry with me and use as a remote console for my machines at home, using the moonlight streaming system. This has built and runs properly, however, I am really struggling with hw accelerated h265 video decoding. I've followed the instructions here: https://github.com/moonlight-stream/moo ... berry-Pi-4 and I'm able to watch software decoded h.265, but when it streams anything more than a desktop, i drop to about 5 frames per second and its not really useable. From what I've read, this is possible on 64 bit ARM devices now, and functions properly in raspbian using a patched ffmpeg, which is what Sakaki did in the gentoo-on-rpi-64 system, however, the ebuild used fails to compile using the neon CPU flag due to it not wanting to use thumb2, despite that CPU_FLAG being set:

Here is my /etc/portage/package.use/ffmpeg:

Code: Select all

media-video/ffmpeg libdrm mmal libv4l sdl x264 x265 vorbis webp theora vpx fdk v4l openh264 opus pulseaudio CPU_FLAGS_ARM="thumb2"

Code: Select all

!!! The ebuild selected to satisfy "ffmpeg" has unmet requirements.
- media-video/ffmpeg-4.3::local USE="X bzip2 encode fdk gpl iconv libdrm libv4l network openh264 opus postproc pulseaudio sdl theora threads v4l vorbis vpx webp x264 x265 zlib -alsa (-amr) -amrenc (-appkit) -bluray (-bs2b) -cdio -chromaprint -chromium -codec2 -cpudetection (-cuda) -dav1d -debug -doc -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gnutls -gsm -hardcoded-tables -iec61883 (-ieee1394) -jack -jpeg2k -kvazaar -ladspa -libaom -libaribb24 -libass -libcaca -libilbc -libressl -librtmp -libsoxr -libtesseract -libxml2 -lv2 -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -mp3 -openal (-opencl) -opengl -openssl -oss -pic -rubberband -samba -snappy -speex -srt -ssh -svg -test -truetype -twolame -v4l2m2m-fix -vaapi (-vdpau) -vidstab -vulkan -wavpack -xvid -zeromq -zimg (-zvbi)" CPU_FLAGS_ARM="(neon) (v8) (vfp) (vfpv3) (-thumb) (-thumb2) (-v6)" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" VIDEO_CARDS="-nvidia"

  The following REQUIRED_USE flag constraints are unsatisfied:
    cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 )

  The above constraints are a subset of the following complete expression:
    cuda? ( video_cards_nvidia ) libv4l? ( v4l ) v4l2m2m-fix? ( v4l ) fftools_cws2fws? ( zlib ) test? ( encode ) postproc? ( gpl ) frei0r? ( gpl ) cdio? ( gpl ) rubberband? ( gpl ) vidstab? ( gpl ) samba? ( gpl ) encode? ( x264? ( gpl ) x265? ( gpl ) xvid? ( gpl ) ) arm64? ( cpu_flags_arm_v8 ) cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon ) cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp ) cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp ) cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 ) cpu_flags_arm_v6? ( cpu_flags_arm_thumb ) cpu_flags_ppc_vsx? ( cpu_flags_ppc_altivec ) cpu_flags_ppc_vsx2? ( cpu_flags_ppc_vsx ) cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) cpu_flags_x86_fma4? ( cpu_flags_x86_avx ) cpu_flags_x86_fma3? ( cpu_flags_x86_avx ) cpu_flags_x86_xop? ( cpu_flags_x86_avx ) cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 ) cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 ) cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )

I'm a bit stuck here, I've been looking for either a patched ffmpeg that I can make an ebuild for, or else a set of patches that can be placed in /etc/portage/patches to patch ffmpeg at compile, but I've been struggling to find any workable solution over the last two weeks. Has anyone had any success with this?
Top
Hu
Administrator
Administrator
Posts: 24385
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Sat Jul 29, 2023 6:51 pm

cpu_flags_arm_thumb2 is masked in the base profile, and unmasked in the armv7a profile. Are you expecting that the flag is available for you to enable, or are you asking for ways to proceed while keeping the flag disabled?

Code: Select all

$ git grep arm_thumb2 '*use.mask'
profiles/arch/arm/armv7a/use.mask:13:-cpu_flags_arm_thumb2
profiles/arch/base/use.mask:114:cpu_flags_arm_thumb2
Top
trademark91
n00b
n00b
Posts: 26
Joined: Thu Dec 03, 2020 7:48 pm
Location: USA

  • Quote

Post by trademark91 » Sat Jul 29, 2023 7:55 pm

I was expecting to be able to enable the flag, as it should be supported by my system:

Code: Select all

raspy /etc/portage # cpuid2cpuflags 
CPU_FLAGS_ARM: edsp neon thumb vfp vfpv3 vfpv4 vfp-d32 crc32 v4 v5 v6 v7 v8 thumb2
I'm using the

Code: Select all

[14]  default/linux/arm64/17.0/systemd (stable) *
Profile, and was just trying to build either ffmpeg with the normal ffmpeg from the gentoo overlay or else I had added this ebuild to a local repository. The issue that I'm encountering is that if I compile the ffmpeg from gentoo, it does not support hardware video decoding for mooonlight, and if I attempt to build using this old ebuild, it hits this thumb2 error. If I force thumb2 to be enabled in /etc/portage/profile/package.use.mask, I can get past that step, but then it fails almost immediately and is unable to find sdl:

Code: Select all

>>> Configuring source in /var/tmp/portage/media-video/ffmpeg-4.3/work/ffmpeg-4.3 ...
 * .arm64: running multilib-minimal_abi_src_configure
/var/tmp/portage/media-video/ffmpeg-4.3/work/ffmpeg-4.3/configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/share/doc/ffmpeg-4.3/html --mandir=/usr/share/man --enable-shared --cc=aarch64-unknown-linux-gnu-gcc --cxx=aarch64-unknown-linux-gnu-g++ --ar=aarch64-unknown-linux-gnu-ar --nm=aarch64-unknown-linux-gnu-nm --ranlib=aarch64-unknown-linux-gnu-ranlib --optflags=-mcpu=cortex-a72 -fomit-frame-pointer -funsafe-math-optimizations -flto=4 -fno-fat-lto-objects -fuse-linker-plugin -ftree-vectorize -O2 -pipe --disable-static --enable-avfilter --enable-avresample --disable-stripping --disable-optimizations --disable-libcelt --disable-indev=alsa --disable-indev=oss --disable-indev=jack --disable-outdev=alsa --disable-outdev=oss --enable-nonfree --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --disable-gnutls --disable-gmp --enable-gpl --disable-hardcoded-tables --enable-iconv --disable-libtls --disable-libxml2 --disable-lzma --enable-network --disable-opencl --disable-openssl --enable-postproc --disable-libsmbclient --enable-ffplay --enable-sdl2 --disable-vaapi --disable-vdpau --disable-vulkan --enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --disable-opengl --enable-libv4l2 --enable-libpulse --enable-libdrm --disable-libjack --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libcodec2 --disable-libdav1d --enable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libgme --disable-libgsm --disable-libaribb24 --disable-mmal --disable-libmodplug --enable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libspeex --disable-libsrt --disable-librsvg --disable-ffnvcodec --enable-libvorbis --enable-libvpx --disable-libzvbi --disable-appkit --disable-libbs2b --disable-chromaprint --disable-cuda-llvm --disable-libflite --disable-frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa --disable-libass --disable-libtesseract --disable-lv2 --disable-libfreetype --disable-libvidstab --disable-librubberband --disable-libzmq --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-libaom --enable-libopenh264 --disable-libsnappy --enable-libtheora --disable-libtwolame --disable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --disable-libxvid --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-altivec --disable-vsx --disable-power8 --disable-amd3dnow --disable-amd3dnowext --disable-aesni --disable-avx --disable-avx2 --disable-fma3 --disable-fma4 --disable-mmx --disable-mmxext --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-xop --cpu=cortex-a72 --enable-lto --disable-doc --disable-htmlpages --enable-manpages
ERROR: sdl2 requested but not found

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
 * ERROR: media-video/ffmpeg-4.3::local failed (configure phase):
I'm hoping to get pointed in the right direction to either get ffmpeg from the gentoo overlay to compile with support for hardware decoding, or possibly get this ebuild to compile. If there is another alternative, or better approach, I would be open to that as well.
Top
pingtoo
Advocate
Advocate
User avatar
Posts: 2180
Joined: Fri Sep 10, 2021 8:37 pm
Location: Richmond Hill, Canada

  • Quote

Post by pingtoo » Sat Jul 29, 2023 9:42 pm

trademark91 wrote:I'm hoping to get pointed in the right direction to either get ffmpeg from the gentoo overlay to compile with support for hardware decoding, or possibly get this ebuild to compile. If there is another alternative, or better approach, I would be open to that as well.

Since the wiki page indicate is is based on raspbian, have you consider using a docker container run rasbian so you can be sure to get full benefit of the wiki page?
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56082
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sat Jul 29, 2023 9:43 pm

trademark91,

thumb2 and other extensions do not exist on 64 bit ARM.

Post your dmesg and /boot/.config.txt please.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
trademark91
n00b
n00b
Posts: 26
Joined: Thu Dec 03, 2020 7:48 pm
Location: USA

  • Quote

Post by trademark91 » Sun Jul 30, 2023 3:24 am

Hey NeddySeagoon,

Thanks for helping, here is my config.txt:

https://pastebin.com/KdNhFLu5



Here is the dmesg output:

https://pastebin.com/apynn5Sp

Do you want me to try doing anything first before running dmesg to grab useful output?
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56082
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sun Jul 30, 2023 11:02 am

trademark91,

Code: Select all

# Enable DRM VC4 V3D driver
#dtoverlay=vc4-fkms-v3d,cma=512
#gpu_mem=256
#max_framebuffers=2
You need dtoverlay=vc4-fkms-v3d and enough GPU mem to get the /dev entries

Code: Select all

ls -l /dev/rpivid*
crw------- 1 root root 238, 0 Jan  1  1970 /dev/rpivid-h264mem
crw------- 1 root root 240, 0 Jan  1  1970 /dev/rpivid-hevcmem
crw------- 1 root root 239, 0 Jan  1  1970 /dev/rpivid-intcmem
crw------- 1 root root 237, 0 Jan  1  1970 /dev/rpivid-vp9mem
as the GPU does the hardware decoding but those /dev entries only appear if the GPU has enough RAM.

Ah .. its here

Code: Select all

[all]
dtoverlay=vc4-kms-v3d
gpu_mem=256
That works.

That's not quite the same. There are two kms dtoverlays.
dtoverlay=vc4-fkms-v3d and dtoverlay=vc4-kms-v3d
The extra 'f' means fake. kms is pure Open Source. The fkms is a wrapper around the binary blob GPU driver.
I suspect you need the fake version.

Your dmesg is truncated. I need it all from the start until the login prompt, so I can check that its actually doing what you ask for.

What VIDEO_CARDS do you have set?

Code: Select all

VIDEO_CARDS="v3d vc4"
Up to and including the Pi3 only vc4 was required. The Pi4 needs v3d an it has a newer GPU.
I don't know if both are required, my code is Pi3/4 friendly.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
trademark91
n00b
n00b
Posts: 26
Joined: Thu Dec 03, 2020 7:48 pm
Location: USA

  • Quote

Post by trademark91 » Sun Jul 30, 2023 8:46 pm

NeddySeagoon,

Thanks for clarifying. I'm using both v3d and vc4 as the VIDEO_CARD.

I've attached dmesg using both the kms and fkms dtoverlay to make it easier to troubleshoot.

Here is the one using the open source kms driver:

https://pastebin.com/GExMfnP0

And here is is after a reboot using the fkms driver:

I've read that dtoverlay=rpivid-vl2 no longer needs to be specified in the config.txt, but i've tried with both here just in case its helpful.

with dtoverlay=rpivid-v4l2 and hdmi_enable_4kp60=1
https://pastebin.com/tGXVNi9W

with those two commented as they were with the open source kms:
https://pastebin.com/JV7GieEp
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56082
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Mon Jul 31, 2023 4:33 pm

trademark91,

I don't see anything useful on the video decode side there.

Code: Select all

[    9.103887] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.txt failed with error -2
says that your WiFi doesn't work but you will know that.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
trademark91
n00b
n00b
Posts: 26
Joined: Thu Dec 03, 2020 7:48 pm
Location: USA

  • Quote

Post by trademark91 » Wed Aug 09, 2023 4:02 pm

NeddySeagoon,

Sorry for the delayed reply, I was trying to get it working on my own before I reached out for more help. I've been unable to get the patched ffmpeg from either sakaki's or your genpi64 repo to build on my system due to the neon/thumb2 error I was seeing earlier, which is to be expected given the feedback you provided. I was able to get ffmpeg built from the gentoo overlay however.


It looks like hardware acceleration is supported here on the system:

Code: Select all

trademark91@raspy ~ $ cat /proc/device-tree/v3dbus/v3d@7ec04000/status
okay
trademark91@raspy ~ $ cat /proc/device-tree/soc/firmwarekms@7e600000/status
okay
and the following are the codecs I get when i run ffmpeg -codecs | grep v4l:

Code: Select all

 DEV.L. h263                 H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2 (decoders: h263 h263_v4l2m2m ) (encoders: h263 h263_v4l2m2m )
 DEV.LS h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m libopenh264 ) (encoders: libx264 libx264rgb libopenh264 h264_v4l2m2m )
 DEV.L. hevc                 H.265 / HEVC (High Efficiency Video Coding) (decoders: hevc hevc_v4l2m2m ) (encoders: libx265 hevc_v4l2m2m )
 DEV.L. mpeg1video           MPEG-1 video (decoders: mpeg1video mpeg1_v4l2m2m )
 DEV.L. mpeg2video           MPEG-2 video (decoders: mpeg2video mpegvideo mpeg2_v4l2m2m )
 DEV.L. mpeg4                MPEG-4 part 2 (decoders: mpeg4 mpeg4_v4l2m2m ) (encoders: mpeg4 mpeg4_v4l2m2m )
 D.V.L. vc1                  SMPTE VC-1 (decoders: vc1 vc1_v4l2m2m )
 DEV.L. vp8                  On2 VP8 (decoders: vp8 vp8_v4l2m2m libvpx ) (encoders: libvpx vp8_v4l2m2m )
 DEV.L. vp9                  Google VP9 (decoders: vp9 vp9_v4l2m2m libvpx-vp9 ) (encoders: libvpx-vp9 )
However, when I try to launch moonlight and connect with hardware decoding, I get the following output in the console:

Code: Select all

00:01:27 - Qt Info: "TradeWin" is now at "192.168.1.140:47989"
00:01:46 - Qt Info: Found "ModeSeven.ttf" at ":/data/ModeSeven.ttf"
00:01:46 - Qt Info: Server GPU: ""
00:01:46 - Qt Info: Server GFE version: "3.23.0.74"
00:01:46 - SDL Info (0): Video bitrate: 18500 kbps
00:01:46 - SDL Info (0): Desired audio buffer: 480 samples (1920 bytes)
00:01:46 - SDL Info (0): Obtained audio buffer: 480 samples (1920 bytes)
00:01:46 - SDL Info (0): Audio channel count: 2
00:01:46 - SDL Info (0): Audio channel mask: 3
00:01:46 - SDL Info (0): Desired audio buffer: 480 samples (1920 bytes)
00:01:46 - SDL Info (0): Obtained audio buffer: 480 samples (1920 bytes)
00:01:47 - Qt Info: Found "gamecontrollerdb.txt" at "/home/trademark91/.cache/Moonlight Game Streaming Project/Moonlight/gamecontrollerdb.txt"
00:01:47 - SDL Info (0): Loaded 262 new gamepad mappings
00:01:47 - SDL Info (0): V-sync disabled
00:01:47 - SDL Info (0): Using SDL renderer
00:01:47 - FFmpeg: [hevc_mp4toannexb @ 0x7f4006fea0] The input looks like it is Annex B already
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video23
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in unknown mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video22
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video31
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-codec' on card 'bcm2835-codec-encode_image' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video18
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-codec' on card 'bcm2835-codec-image_fx' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video21
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video20
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video12
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-codec' on card 'bcm2835-codec-isp' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video11
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-codec' on card 'bcm2835-codec-encode' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video10
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-codec' on card 'bcm2835-codec-decode' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video16
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in unknown mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video15
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video19
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'rpivid' on card 'rpivid' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video14
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video13
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'bcm2835-isp' on card 'bcm2835-isp' in splane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] Could not find a valid device
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] can't configure decoder
00:01:47 - SDL Error (0): Unable to open decoder for format: 100
00:01:47 - SDL Error (0): Unable to find working decoder for format: 100
00:01:47 - SDL Error (0): Unable to load FFmpeg decoder
00:01:47 - Qt Info: Found "gamecontrollerdb.txt" at "/home/trademark91/.cache/Moonlight Game Streaming Project/Moonlight/gamecontrollerdb.txt"
I think the important lines are these:

Code: Select all

00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] probing device /dev/video19
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] driver 'rpivid' on card 'rpivid' in mplane mode
00:01:47 - FFmpeg: [hevc_v4l2m2m @ 0x7f4008c3a0] v4l2 output format not supported
It looks like the device exists, but v4l2 can't support it?

Is there a way to proceed in compiling the patched version from the genpi64 overlay while keeping that thumb2 flag disabled? I'd also be happy to try to create a patch for my own ffmpeg build from the gentoo overlay, however, I'm more than a little confused with all the different ffmpeg patches and branches that are out there currently what would actually need to be patched to get that version of ffmpeg to support hwacceleration on the raspberry pi4.
Top
Post Reply
  • Print view

10 posts • Page 1 of 1

Return to “Gentoo on ARM”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic