Jump to content

Alex van Vucht

Validating
  • Posts

    2
  • Joined

  • Last visited

Everything posted by Alex van Vucht

  1. Answering my own question: https://github.com/intel/libva/pull/332 is enlightening on the situation with the v4l2-request library. As stated in the pull request, gstreamer works with v4l2 now so the pressing need for va-api support is gone, and it looks like the v4l2-request library needs substantial revising to support the VA-API framework. If an Armbian user wishes to push on with va-api on Rockchip and hantro, they will have to apply the patch on that pull request to a libva source, and compile the hantro-h264 ndufresne branch. Even then, entrypoints probably still won't emerge for use by applications: mjhammel followed these steps and applied this patch but still couldn't unlock hantro. The cedrus boards may have more luck, there seems to have been more work on those and v4l2-request in recent months. Common uses for libva include video stream hardware decoding; reports are that the h264ify extension for Vivaldi may work but I'm having stability issues with that browser and the panfrost DRM driver. That's probably just an rk3288 thing though. At least I got Widevine working but the arm64 people are out of luck at present, which rules out paid streaming services. For my own use case, I am pushing on with moonlight-embedded which has a Gstreamer branch. Good luck with VPU acceleration in the 5.x series!
  2. I'm working on getting VA-API going on Linux 5.10.y on the Openhour Chameleon, a RK3288 TV Box that is closest to the Mqmaker Miqi. This has hantro in the kernel and V4L2 is working fine. I am working with Groovy to have fairly modern libraries available. The main purpose is to enable H264 hardware decoding to make Moonlight-QT able to stream from an Nvidia Gamestreaming desktop effectively. I had a look at the various forks of libva-v4l2-request and either: 1. They don't present any entrypoints, like what @mjhammel experienced: libva info: VA-API version 1.8.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_8 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.8 (libva 2.8.0) vainfo: Driver version: v4l2-request vainfo: Supported profile and entrypoints 2. I get compilation errors. These are for hantro-specific builds like the hantro-h264 branch of ndufresne eg: ../src/h264.c: In function ‘h264_va_picture_to_v4l2’: ../src/h264.c:250:12: error: ‘VAPictureParameterBufferH264’ has no member named ‘num_ref_idx_l0_default_active_minus1’ 250 | VAPicture->num_ref_idx_l0_default_active_minus1; The root of these issues is work by ph5 but I think this may be due to them working with a different version of the libva library which has this member. Can anyone confirm the libva library used in these branches? For vainfo, I expect to see entrypoints like: vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSliceLP VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSliceLP Has anyone seen these entrypoints with the v4l2-request library before?
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines