之前开启硬解一直有CPU占用高,或者无法启用的问题,有的即使启用了但在全屏切换时会有卡顿,偶尔看到一个GM脚本叫“Force Flash Wmode”,把Flash的参数Wmode设置为gpu或者direct可以强制开启硬解。使用之后果然上述出现的问题不见了。
GM脚本地址:
https://greasyfork.org/en/scripts/5433-force-flash-wmode
不过这个脚本有两个问题,一是只对object对象处理,但有些flash用的是embed;二是只处理找到的第一个object,如果有多个就无法处理。
下面是针对上面两个问题修改后的代码:
var wmode = "gpu"; //direct or gpu
var targetNode=document.body;
var matchObject="object[type='application/x-shockwave-flash']";
var matchEmbed="embed[type='application/x-shockwave-flash']";
var onMatch=function(node){
var objs = document.querySelectorAll(matchObject);
var embs = document.querySelectorAll(matchEmbed);
if (objs) {
for (i = 0; i < objs.length; i++) {
var wmodeParam=objs[i].querySelector("param[name='wmode']");
if(wmodeParam){
wmodeParam.value= wmode;
} else {
var param = document.createElement("param");
param.setAttribute("name", "wmode");
param.setAttribute("value", wmode);
objs[i].appendChild(param);
}
}
}
if (embs) {
for (i = 0; i < embs.length; i++) {
embs[i].setAttribute("wmode", wmode);
}
}
return true;
};
var MutationObserver=window.MutationObserver;
var observer = new MutationObserver(function(mutations) {
mutations.some(function(mutation){
var addedNodes=Array.from(mutation.addedNodes||[]);
return addedNodes.some(function(node){
if(node.nodeType!==Node.ELEMENT_NODE)return;
if(!node.mozMatchesSelector(matchObject) && !node.mozMatchesSelector(matchEmbed))return;
return onMatch(node);
});
});
});
var options={childList: true, subtree: true};
observer.observe(targetNode, options);
2015年2月12日星期四
Firefox用NPSWF32.dll无法播放Flash、出现白屏
2016-08-05 Update: 只要新建一个文本文件,名字为mms.cfg,复制如下内容:
RTMFPP2PDisable=1
ProtectedMode=0
AutoUpdateDisable=1
AVHardwareDisable=1
SilentAutoupdateEnable=0
保存后放入 Macromed\Flash目录,64位和32位的都放一份好了,重开firefox就好了
————————————————————————————————————
最近有两台机器先后出现Firefox无法播放flash,用的是单文件的NPSWF32.dll,经过排查,
一台机器是别人为了在IE播放flash而安装了adoble flash player for IE;另一台是安装的Window 10,自带IE的flash player。处理方式也很简单,先去控制面板卸载Flash,然后进入WinPE(有双系统的进入另一个也可以),然后找到刚才系统所在的分区,
32位系统的话进入\Windows\System32\Macromed\Flash,64位系统进入\Windows\SysWOW64\Macromed\Flash,删除里面的全部文件即可。
RTMFPP2PDisable=1
ProtectedMode=0
AutoUpdateDisable=1
AVHardwareDisable=1
SilentAutoupdateEnable=0
保存后放入 Macromed\Flash目录,64位和32位的都放一份好了,重开firefox就好了
————————————————————————————————————
最近有两台机器先后出现Firefox无法播放flash,用的是单文件的NPSWF32.dll,经过排查,
一台机器是别人为了在IE播放flash而安装了adoble flash player for IE;另一台是安装的Window 10,自带IE的flash player。处理方式也很简单,先去控制面板卸载Flash,然后进入WinPE(有双系统的进入另一个也可以),然后找到刚才系统所在的分区,
32位系统的话进入\Windows\System32\Macromed\Flash,64位系统进入\Windows\SysWOW64\Macromed\Flash,删除里面的全部文件即可。
2014年3月31日星期一
firefox字体渲染模糊的问题补充
之前说过这个问题, 查看
后来发现更新firefox27后,设置gfx.content.azure.backends为cairo的方法失效了。
而卸载补丁KB2670838的话需要同时卸载IE10或者IE11,其实这个问题主要发生在比较老的A卡,就像我的HD4670。
另外还有一个临时办法,不需要上面的任何操作,只需在firefox->about:config里新建项
layout.paint_rects_separately,type为boolean,值为true。
后来发现更新firefox27后,设置gfx.content.azure.backends为cairo的方法失效了。
而卸载补丁KB2670838的话需要同时卸载IE10或者IE11,其实这个问题主要发生在比较老的A卡,就像我的HD4670。
另外还有一个临时办法,不需要上面的任何操作,只需在firefox->about:config里新建项
layout.paint_rects_separately,type为boolean,值为true。
2014年3月20日星期四
Firefox 28使用noscript扩展会影响greasemonkey的脚本
FF28开始,如果用noscript或者其他方法禁止了页面的JS,那么GM脚本里用到的
addEventListener这个方法都会失效。
2014年3月1日星期六
[转载]18位身份证号码最后一位的算法
第十八位数字的计算方法为: 1.将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 2.将这17位数字和系数相乘的结果相加。 3.用加出来和除以11,看余数是多少? 4余数只可能有0 1 2 3 4 5 6 7 8 9 10这11个数字。其分别对应的最后一位身份证的号码为1 0 X 9 8 7 6 5 4 3 2。 5.通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2。
订阅:
博文 (Atom)