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 ...
随机推荐
- 打开cmd闪退
我们在使用电脑过程中一般会很少用到cmd命令,CMD命令窗口在一些特殊情况时我们会用到,如PING下看网络通不通.在CMD窗口里运行命令如磁盘格式转换,但是有些朋友遇到了这样的问题,在开始运行输入CM ...
- Android无线测试之—UiAutomator UiScrollable API介绍七
滑动到某个对象 一.滑动到某个对象相关API 返回值 API 描述 boolean scrollIntoView(UiSelector selector) 滑动到条件元素所在位置,并且尽量让其居于屏幕 ...
- JSP小例子——以Model1的思想实现用户登录小例子(不涉及DB操作)
Model1简介现在比较流行的就是Model1和Model2,这里介绍Model1.在Model1模型出现前,整个Web应用的情况是:几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理 ...
- 160606、springmvc中使用Spring Mobile
springmobile特点: 1.客户端设备识别:识别结果只有3种类型:NORMAL(非手机设备).MOBILE(手机设备).TABLET(平板电脑). 2.网站偏好设置:Spring 通过设备识别 ...
- Exchange OAB(Offline Address Book)
If Outlook is left running constantly in Cached Exchange Mode, it updates the Offline Address Book a ...
- php和jsCOOKIE实现前端交互
w如何精简? <script> document.cookie = 'wjs_cookie=' + 'amz_reviews'; function w(id) { document.coo ...
- Sublime Text 配置成 C++ IDE
在Windows中将Sublime Text配置成C++的IDE.首先,为了运行C++需要安装g++编译器,g++可直接在codeblocks中找到.codeblock的官网下载地址是http://w ...
- 微信js分享朋友圈(二)
近期又用到微信分享的功能了.虽然不是第一次用了,依然我又有幸踩到了一个坑,所以分享一下吧. 根据微信sdk写的代码一步步很顺利,但是后面就是获取微信返回的分享结果的回调的时候IOS老是有问题,然后就网 ...
- golang官方实现如何对httpserver做频率限制(最大连接数限制)
一般海量处理服务,都会对服务做个最大连接数限制,超过该限制之后,拒绝服务,避免发生雪崩,压坏服务. 使用golang来编写httpserver时,如何进行呢?官方已经有实现好的包. 使用示例: imp ...
- 【我的Android进阶之旅】 RxJava 理解Backpressure并解决异常 rx.exceptions.MissingBackpressureException
今天测试人员在测试应用APP的时候应用crash了,查看了下crash log如下所示: java.lang.IllegalStateException: Exception thrown on Sc ...