RK3588 decoding, RGA synthesis, DRM display, QT ui floating overview

There are two decoding display examples provided by rk3588, one is the API in rockit, and the other is the API of Mpp. In the rockitAPI example, we can quickly build a set of decoding and display processes, but QT's UI cannot be suspended, and there is no relevant content that can make QT's UI suspended on the video layer. The main reason is that there is no relevant API source code provided by the original manufacturer, and it is impossible to know and modify the lower-layer display to realize QT's UI floating on the video layer. After consulting some industry peers, most of the responses were that it is temporarily unavailable, probably because the API is not perfect enough. Mpp's API is very clear. It mainly understands how the data stream flows and can complete related video decoding very clearly.

The synthesis of RGA is even simpler. The key point is how to convert the data structure and associate it with the data that needs to be processed. The synthesis speed of RGA is also pretty good. I tested four-channel 1080P video synthesis, and the synthesis time is about 3ms.

The DRM display framework is basically the native Linux DRM framework. If you are familiar with DRM, you basically follow the relevant processes. The key point is the processing of data structure conversion. As long as you can clearly know how to convert the data structure, the association is basically based on RK3588. DRM can be operated as you wish.

The suspension of QT ui is mainly to distinguish the UI layer and the video layer. Once the colorkey of the relevant layer is processed, the UI can be suspended.

In the following chapters, Mpp, RGA, DRM and other related content and source code will be explained in detail. The source code can realize MPP decoding, RGA synthesis, DRM dual-screen simultaneous display, and QT suspension related functions.

Guess you like

Origin blog.csdn.net/dreamliweiming/article/details/129196697