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 ...
随机推荐
- 1-2、superset国际化
最近由于工作需要研究开源可视化项目superset,由于其国际化做不怎么好,故而记录下国际化的过程,本篇本着『授人以鱼不如授人以渔』的原则,只叙述国际化的过程及方法,不提供直接的国际化文件. 为了方便 ...
- git练习
git commit 提交记录 git branch <branch_name> 建立名为branch_name的分支 git checkout <name>:git comm ...
- 【BZOJ2973】石头游戏 矩阵乘法
[BZOJ2973]石头游戏 Description 石头游戏的规则是这样的. 石头游戏在一个n行m列的方格阵上进行.每个格子对应了一个编号在0~9之间的操作序列. 操作序列是一个长度不超过6且循环执 ...
- 简介Objective-C语言
2011-05-11 11:20 佚名 百度百科 字号:T | T Objective-C,是扩充C的面向对象编程语言.主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统, ...
- R语言中的一些函数
1.控制输出数字的精度 format(123.123,digits=4) 输出4位数字123.1,如果整数超过4位,小数部分就全被略去. options(digits=4) 功能同上,不过在Rsess ...
- 堪称神器的Windows软件推荐
更多软件使用技巧.破解软件以及硬件选购知识,欢迎加入我的QQ群(701974765)与我们交流!! 先贴上软件列表,详细描述后期更新,可自行百度 TrafficMonitor CPU.内存.网速资源监 ...
- 在虚拟机中的搭建Web服务器(CentOS)
1.制作本地yum源 相关可查看:http://www.cnblogs.com/xiaomingzaixian/p/8424290.html 2.安装JDK 上传上传jdk-7u45-linux-x6 ...
- 【python】-- RabbitMQ 队列消息持久化、消息公平分发
RabbitMQ 队列消息持久化 假如消息队列test里面还有消息等待消费者(consumers)去接收,但是这个时候服务器端宕机了,这个时候消息是否还在? 1.队列消息非持久化 服务端(produc ...
- 20190401-记录一次bug ConstraintViolationException
org.hibernate.exception.ConstraintViolationException 违反唯一约束条件 导致这个问题的原因有很多种. 在查询数据库时发生了这样的错误,一般这样的问题 ...
- Java技术大牛需要学习的25个技能
你需要精通面向对象分析与设计(OOA/OOD).涉及模式(GOF,J2EEDP)以及综合模式.你应该了解UML,尤其是class.object.interaction以及statediagrams. ...