q4a

  • Posts

    14
  • Joined

  • Last visited

Reputation Activity

  1. Like
    q4a reacted to jock in Mainline VPU   
    Everything well with h264 and h265 on my side, with both hantro and rkvdec drivers on kernel 5.14 on rockchip RK322x chip (roughly same performance as H3) and latest LE patches applied.
     
    One thing that always makes me have headaches are the userland kernel headers, which are not the same kernel headers used to compile modules and provided by armbian as a deb package.
     
    The userland kernel headers on Armbian comes from the distribution (debian or ubuntu) and match the distribution kernel version, not the really installed kernel version.
    Mismatch may cause compiling troubles (missing or duplicate structs or costants) or even subtle errors during runtime (unable to initialize things...)
     
    To make the userland kernel headers, compile the kernel on the board (with LE patches applied) and then running
     
    make headers_install INSTALL_HDR_PATH=/usr  
     will install them in the proper place
     
    Just after doing it is possible to go further compiling and installing ffmpeg and then compiling and installing mpv.
     
    This is what I use to compile and install ffmpeg:
     
    ./configure --arch=armhf --extra-libs='-Lpthread -Lm' --disable-debug --enable-stripping --enable-gpl --enable-nonfree --enable-logging --disable-doc --enable-pic --enable-optimizations --enable-ffmpeg --enable-avdevice --enable-avcodec --enable-avformat --enable-swscale --enable-postproc --enable-avfilter --disable-devices --enable-pthreads --disable-w32threads --enable-network --disable-gnutls --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-vaapi --disable-vdpau --enable-libdrm --enable-version3 --enable-runtime-cpudetect --enable-hardcoded-tables --enable-encoder=ac3 --enable-encoder=aac --enable-encoder=wmav2 --enable-encoder=mjpeg --enable-encoder=png --enable-hwaccels --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod --enable-muxer=mpegts --enable-demuxers --enable-parsers --enable-bsfs --enable-filters --enable-bzlib --enable-libspeex --enable-libx264 --enable-libx265 --enable-zlib --enable-asm --enable-neon --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-openssl --enable-libv4l2 --enable-v4l2-request --enable-libudev make -j4 sudo make install  
    This is what I use to compile and install mpv:
     
    ./waf configure --enable-egl-drm  
    And finally the mpv command line is (run on pure virtual terminal, no X11 at all):
     
    mpv -v --vo=gpu --hwdec=drm --gpu-context=drm --gpu-hwdec-interop=drmprime-drm --drm-draw-plane=overlay --drm-drmprime-video-plane=primary bbb_sunflower_1080p_30fps_normal.mp4  
    the --drm-draw-plane and --drm-drmprime-video-plane arguments are very imporant for my setup, probably because rk322x has no YUV capabilities for overlay plane and MPV refuses to show anything. Also they make the video and draw planes order correct (video below, GUI on top).
     
     
  2. Like
    q4a got a reaction from gounthar in Mainline VPU   
    I saw Kwiboo in irc freenode chat #linux-rockchip and he helped me: showed his last changes for main line (I was need only hdmi fixes)
    https://freenode.irclog.whitequark.org/linux-rockchip/2020-12-16 - here is log
    https://github.com/Kwiboo/linux-rockchip/compare/v5.10.1...v5.10.1-drm-rockchip - here is his patches to mainline rebased on v5.10.1