javenreal 发表于 2016-12-20 10:16:32

树莓派或者国产全志派,支持多个Framebuffer叠加显示吗?

比如视频全屏显示,我要在视频上叠加一些自己的东西,而且要不闪烁。用OSD功能可以做出来。

但是我查看树莓派的framebuffer,好像只有一个fb0,没有多个framebuffer。

这是网上的资料:
--------------------
s3c6410支持多个层叠窗口(5个),显示的时候,这些窗口会被叠加显示。在这里,framebuffer的概念变成和窗口关联,而不是和LCD显示屏关联。每个窗口对应一个framebuffer。

s3c6410支持硬件alpha操作和colorkey操作。

alpha操作用于实现图形渐变效果,以及半透明效果等等。

colorkey操作可以在融合两个窗口时过滤掉其中一个窗口的某一种特定颜色。因为GUI在显示图象时都是通过画矩形实现,所以这个功能在显示非矩形图像(比如圆形)时很有用。假设要显示圆形图案,可以把圆形放进一个矩形,然后矩形的剩余部分填充一个背景色,并把这个背景色指定为colorkey。这样,显示的时候自动将colorkey指定的颜色过滤,屏幕上就能显示出那个圆形了。
--------------------

这个功能是要系统支持,还是芯片硬件支持呢?

90soso 发表于 2016-12-20 11:30:01

新塘可以叠加,坑不知道多大

cnshibo 发表于 2016-12-20 13:36:26

OSD 需要硬件完成的,软件计算量不小。海斯IPC芯片硬件支持的。

javenreal 发表于 2016-12-20 14:28:03

海思芯片有一个 HiFB(Hisilicon Framebuffer),看起来功能挺齐全的,树莓派可以支持类似功能吗?

wmdng 发表于 2016-12-20 16:56:50

全志的 A20 是支持的, 后续的系列应该也可以.
在dev目录下面有两个设备文件相关,   /dev/fb0   /dev/disp

在驱动代码里面搜搜这些宏定义, 就能明白了.
DISP_CMD_LAYER_REQUEST
DISP_CMD_LAYER_SET_PARA
DISP_CMD_LAYER_BOTTOM
DISP_CMD_LAYER_OPEN

jenkins 发表于 2016-12-22 11:16:41

本帖最后由 jenkins 于 2016-12-22 11:30 编辑

可以查看下BCM2837的GPU资料VideoCoreIV-AG100-R
http://wenku.baidu.com/link?url=3PSBI1VAqhxnG5KGMU_iFrs_QXds1v2uvCq0CTp_GlWPj4TeSUAxKzJtdaS6PLbviIXG4hcst65NOEzd5dNy9Ix6LtVc4E8loKXHGWvCu8S
我把文件也传上来了



页: [1]
查看完整版本: 树莓派或者国产全志派,支持多个Framebuffer叠加显示吗?