To be fair, these kind of low level stuff is usually handled by only a handful people, so investing a lot of time in proper documentation might be a lot of work for something useful by few users. The same is also true for DRM and in general the modern graphical APIs on stock Linux. It was surprisingly difficult to understand how all that works together. I had to rely mostly on example code. Even the man pages are incomplete. I guess it's the same situation: The kernel devs build an API, a few people (maybe even the same people) from Xorg or wayland use it and that's it.
On the other hand, the initial Pi firmware for earlier models came with a bunch of bundled examples in the hello_pi directory that were incredibly useful in understanding how everything worked. (see https://github.com/raspberrypi/firmware/tree/master/opt/vc/s...). Right now the forum and maybe the firmware issue tracker is the only source of information. In general, the direction of using more standardized APIs like DRM, Mesa 3D for GL and so on seems like a good idea regardless. I guess we'll just have to give all that more time.
The HEVC decoder is using a patched FFmpeg with direct communication with the hardware API. In the future there will be an V4L2 API and corresponding method in FFmpeg (see https://www.raspberrypi.org/forums/viewtopic.php?t=247897). But that's not completed yet and there's no release date announced. I would guess once that's out, the whole decoding process will be a bit cleaner than it is today. But so far I works pretty well. I ran into a ton of firmware lockups during development, but most of those are fixed now. One thing I didn't manage to do yet is to decode two videos at the same time. That's something the H264 decoder could do. See also https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=2520...
On the other hand, the initial Pi firmware for earlier models came with a bunch of bundled examples in the hello_pi directory that were incredibly useful in understanding how everything worked. (see https://github.com/raspberrypi/firmware/tree/master/opt/vc/s...). Right now the forum and maybe the firmware issue tracker is the only source of information. In general, the direction of using more standardized APIs like DRM, Mesa 3D for GL and so on seems like a good idea regardless. I guess we'll just have to give all that more time.
The HEVC decoder is using a patched FFmpeg with direct communication with the hardware API. In the future there will be an V4L2 API and corresponding method in FFmpeg (see https://www.raspberrypi.org/forums/viewtopic.php?t=247897). But that's not completed yet and there's no release date announced. I would guess once that's out, the whole decoding process will be a bit cleaner than it is today. But so far I works pretty well. I ran into a ton of firmware lockups during development, but most of those are fixed now. One thing I didn't manage to do yet is to decode two videos at the same time. That's something the H264 decoder could do. See also https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=2520...