QT解决视频透视,有阴影的方法
#define BG_DEVNAME "/dev/fb0"
#define FG_DEVNAME "/dev/fb1"
课题5, QT界面与视频透明叠加问题:颜色透明issues已Fixed掉,而像素级的透明叠加问题尚未解决,内部有方案和上车案例(D090).
实现QT Local alpha透出fb1的多媒体视频或手机互联视频,必须同时满足QT layer显示属性设置,和以下工作:
1、控制内核Global Alpha开关,可以实现将fb0设置到fb1上层,且使能local alpha的效果:
API接口:
SetGlobalAlpha(pGlobalDevice, false, 0);
API代码如下:
int SetGlobalAlpha(const char *pFBDevice, bool bEnable, int iAlpha )
{
struct mxcfb_gbl_alpha gbl_alpha;
int fdFB = -1;
//===================// fd
fdFB = open( pFBDevice, O_RDWR, 0 );
if(fdFB < 0)
{
ERROR( "Open FrameBuffer device failed: %s !\n", pFBDevice );
return -1;
}
//===================// alpha
if( (iAlpha <= 255) && (iAlpha >= 0) )
{
gbl_alpha.alpha = iAlpha;
}
else
{
ERROR( "Invalid alpha: %d !\n", iAlpha );
return -2;
}
gbl_alpha.enable = bEnable;
ioctl( fdFB, MXCFB_SET_GBL_ALPHA, &gbl_alpha );
INFO( "%s global alpha, device: %s, alpha: %d !\n", gbl_alpha.enable?"Enable":"Disable", pFBDevice,
gbl_alpha.alpha );
close(fdFB);
return 0;
}
2、定制mfw_v4lsink插件(见附件,之前给过版本给软件部,可以尝试先不更新该库看效果,如果不行再替换成该文件),
在显示的时候不去动framebuffer的叠加层级关系,附件插件是在CN180S中使用的版本。
(替换/usr/lib/gstreamer-0.10/libmfw_gst_v4lsink.so)文件
地址:http://files.cnblogs.com/files/senior-engineer/libmfw_gst_v4lsink.zip
3、测试程序地址:
http://files.cnblogs.com/files/senior-engineer/Desktop.zip
QT解决视频透视,有阴影的方法的更多相关文章
- qt creator修改程序编码(解决中文乱码问题)的方法
qt creator修改程序编码(解决中文乱码问题)的方法 qt creator修改程序编码的功能有几处. 1.edit - select encoding 选择载入(显示)编码和储存编码,其中GB2 ...
- Eclipse解决Ctrl+c很卡的方法
问题如下 : 每当在eclipse中开发java项目打开jsp页面编辑的时候,按了ctrl+c就会卡死几秒的状态,一天经常这样会让人非常的烦躁. 解决方法如下: Eclipse -- Windows- ...
- QT点击"X"按钮,调用closeEvent()函数来实现调用特定事件(附:粗略介绍QT的信号与槽的使用方法)
背景: QT在用户关闭窗口(直接点击"X"键)时,程序一般都需要做一些善后的事情,就我现在的程序来说,既关闭USB.如何实现? 正文: 首先,在对应窗体的".h" ...
- 分享一个解决MySQL写入中文乱码的方法
分享一个解决MySQL写入中文乱码的方法 之前有发帖请教过如何解决MySQL写入中文乱码的问题.但没人会,或者是会的人不想回答.搜索网上的答案并尝试很多次无效,所以当时就因为这个乱码问题搁浅了一个软件 ...
- 解决关于jquery中$.get()方法总是报“HierarchyRequestError: Node cannot be inserted at the specified point in the hierarchy”错的方法
解决关于jquery中$.get()方法总是报“HierarchyRequestError: Node cannot be inserted at the specified point in the ...
- 解决Linux文件系统变成只读的方法
解决Linux文件系统变成只读的方法 解决方法 1.重启看是否可以修复(很多机器可以) 2.使用用 fsck – y /dev/hdc6 (/dev/hdc6指你需要修复的分区) 来修复文件系统 ...
- [转]Qt中定时器使用的两种方法
Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类. 其精确度一般依赖于操作系统和硬件,但一般支持20ms.下面将分别介绍两种方法来使用定时器. 方法 ...
- 【转】iOS 上常用的两个功能:点击屏幕和return退出隐藏键盘和解决虚拟键盘挡住UITextField的方法
iOS上面对键盘的处理很不人性化,所以这些功能都需要自己来实现, 首先是点击return和屏幕隐藏键盘 这个首先引用双子座的博客 http://my.oschina.net/plumsoft/blog ...
- 解决Oracle用户被锁定的方法
解决Oracle用户被锁定的方法 1,cmd控制台: 使用sqlplus 命令:sqlplus sys/密码@ip/orcl as sysdba; 2,先设置具体时间格式,以便查看具体时间 SQL&g ...
随机推荐
- 【BZOJ3442】学习小组 费用流
[BZOJ3442]学习小组 Description [背景] 坑校准备鼓励学生参加学习小组. [描述] 共有n个学生,m个学习小组,每个学生有一定的喜好,只愿意参加其中的一些学习小组,但是校领导为学 ...
- Android上几种Animation和多个动画同时播放以ScaleAnimation应用详解
在API Demo的View->Animation下可以找到四个Animation的Demo,第一个3D Translate比较复杂,最后再讲,先讲第2个Interpolator.该Activi ...
- open live writer 代码着色插件
插件地址1: http://files.cnblogs.com/files/zsy/OpenLiveWriter.CNBlogs.SourceCode.zip 下载,解压,把里面的文件放到最新的 ap ...
- shell命令发送网站请求
GET请求:curl "http://192.168.87.195:8888/refresh" POST请求:curl -d "name=value" &quo ...
- 【Python Programe】WSGI (Web Server Gateway Interface)
Part1: What is a Web server? 一个位于物理服务器上的网络服务器(服务器里的服务器),等待客户端去发送request,当服务器接收到request,就会生成一个respons ...
- w[wi].getAttribute('wattr')
w 将数据库的不同数值寄存到自定义的不同属性上,避免通过寄存到同一id属性上的字符串处理.
- Flume简介及使用
一.Flume概述 1)官网地址 http://flume.apache.org/ 2)日志采集工具 Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据.它具有基于流数据 ...
- 15.Update Documents-官方文档摘录
1.插入数据 db.inventory.insertMany( [ { item: "canvas", qty: 100, size: { h: 28, w: 35.5, uom: ...
- BS一机双屏的解决方式
一.WebSocket通讯 WebSocket protocol 是HTML5一种新的协议.它实现了浏览器与server全双工通信. 为保证socket不间断.使用下面类库进行socket通讯. ht ...
- Android适配不同的设备
感谢原作者的整理: http://blog.csdn.net/chenyjays/article/details/41308887 适配不同的语言 把UI中的字符串存储在外部文件,通过代码提取. 创建 ...