页面

2011年12月7日星期三

一个艰难的决定

我做出了一个艰难的决定,我决定无限期关闭这个博客。说实话,我不是一个擅长写作的人。写作对我来说还是挺痛苦的,特别是很耗时间。在这个学期我是越发觉得没有时间写博客了……当然也有很多时候是懒得写和不知道写什么……综合来看,半年才更新一次的更新频率实在是太低了,特别是对这个付费的空间来说……

从明年开始这个空间就不再续费了。至于域名应该会继续付费,至少要维持一下我的域名邮箱,或者找到一个支持绑定域名的免费博客服务什么的……

这个博客关闭之后我倒不至于不再写博客了,就像我前面说的,我大概会找个免费的博客服务用着。域名啊feed之类我会想办法转到新的博客去。当然我比较活跃的地方大概会是微博,饭否新浪推特我全都有,不过说活跃也不会太活跃……有什么事都写一段话还是挺麻烦的。

至于挂在我空间上的programet,他们倒是有可能直接接手这个空间,从他们挂在我的空间上变成我挂在他们空间上倒是有可能的……

大概情况就是这样了……

在Potplayer中调用ffdshow DXVA decoder

Potplayer是一款优秀的视频播放器,之前我也写过一篇推广Potplayer的文章,其无广告和硬件加速支持是我最初选择它的原因。而其中所谓的硬件加速就指的是DXVA,一个有微软制定并在windows中实现的API接口。

但是,我慢慢发现Potplayer内带的DXVA模块并不是很令人满意。虽然看1080p的时候确实能够有效的降低CPU的占用率,但是就算是播放480p,在跳转时间轴时也会出现画面闪一下才能够继续播放的问。题由于这个问题,我有很长一段时间都放弃使用Potplayer内置的硬件加速模块,仗着CPU还算可以1080p也强行使用软解。

前几天我发现JOG版老友记的S09E04用Potplayer播放的时候只有声音没有图像,就另外下一个也有一样的问题,于是我开始折腾解码器这些东西。在折腾的过程中我偶然间注意到ffdshow也提供DVXA支持,从而能够支持硬件加速。于是我立马开始尝试。

去下载一个ffdshow的最新SVN编译版,注意不要下载正式版,像这种开源软件一般正式版的更新都比较慢,不过开发板一般也足够稳定了,毕竟新版的新功我们一般是用不到的。下载之后开始安装,在选择安装部件的时候记得勾上DXVA支持。ffdshow安装配置安装之后打开ffdshow DXVA decoder设置,硬件加速(DXVA)中把H264和VC1选上,DirectShow控制中在“仅在以下程序中使用”里添加上Potplayer的主程序或者直接将这一项前面的勾去掉。

我一开始就没有注意到这个设置,在Potplayer中设置好之后也只是调用软解……

然后,打开Potplayer,在参数选项中的滤镜-视频解码中点击“源/镜解码器管理”,然后选择“添加系统解码器”,至少把ffdshow DXVA decoder选上。确定之后回到视频解码,把H264 AVC1 VC-1的解码器设置都改成ffdshow DXVA decoder。这样设置就搞定了,现在只要使用Potplayer打开硬件解码能够支持的格式就能够调用ffdshow的硬件加速功能了,在拖动时间轴的时候也变顺畅了。

作为一个优秀的开源软件,ffdshow的功能可不止那么一点。ffdshow Audio decoder也有很强的功能,很够针对不同的音响系统进行混音,还有很多Potplayer本身不具备的细节调整的功能。

在折腾这些解码器的过程中,我对MPC的印象也有了很大的改变,以前我总觉得MPC是那种别人整合的解码包中附带的播放器而已,而从其官网上下载了MPC的独立版本之后我发现Potplayer借鉴了不少MPC的设计,而新版的MPC自身也支持DXVA加速了。对我来说开源软件如果没有什么致命缺陷的话总是我的第一选择,于是现在我的默认播放器也从Potplayer改成MPC了。虽然快捷键设置之类的还有点不习惯,但还是很令人满意的。

至于后来那集老友记,我发现其实不是解码器的问题,而是在Potplayer中调用系统自带的AVI分离器的容错能力较低,实际上什么也不用安装,只要将AVI分离器改成Potplayer的内置分离器就行了……

说到分离器,我发现在网上很受推崇的haali分离器和LAV分离器在搭配DXVA解码器,不管是ffdshow的还是MPC自带的,都会出现一切换音频,视频就停止播放,而且还不关播放器就恢复不过来的问题。这个问题Potplayer和MPC自带的分离器都没有遇到。放狗搜也没看到解决方法,甚至没看到有人抱怨这个问题……不知道有没有高人能够提供解决方法……

更新:对比Potplayer,MPC的使用体验还是差了一些……我又用回Potplayer了,虽然现在只是单纯的作为播放器外壳而已。

2011年5月7日星期六

最大化Google Reader的阅读面积

在我以前写的那篇介绍Google Reader的文章里面就有提到可以用GreaseMonkey脚本来扩大Google Reader 的阅读面积。当初我是推荐的阿禅的脚本的,但是前几天Google在Reader的页面顶上加了一条Google服务的导航条,将放在顶上一排的按钮全给挡住了。然后我在userscripts.org发现了名为Google Reader Minimalistic的一个脚本。试用之后我发现这个脚本去掉的东西有点太多了,虽然我知道Google Reader还可以用快捷键来控制,但是有时候会懒得把手放在键盘上,看文章的时候一只手难着鼠标就好了嘛……接下来就只好自己动手丰衣足食了。

研究了下代码,发现还有按w就能恢复原来界面的功能。在firebug的辅助下很快就把搜索框等等一堆东西找回来了,顺带把一些CSS修改给去掉了,反正我是觉得原来的就挺好看的,改了反而不习惯。然后得到的就是这个

之后又参考原来阿禅的脚本,把搜索框弄小了丢到添加订阅的边上了,得到的是这个

以上两个脚本由于基本没有什么改动,作者信息我都保留了……

然后又考虑到那个恢复原来界面的功能实在是没什么用,参照着两个原有的两个脚本干脆自己重写了一遍,去掉恢复原来界面的功能并简化了代码。成果是这个这个,第一个是原版的搜索框,第二个用了简化版的搜索框。这两个基本都是我自己写的所以作者信息也写的是我,并且加上lite后缀以示区别。

这些脚本修改后都会在页面顶部流出4个像素的空白,虽然用Firebug确定了网页中有问题的语句,但是我这个半瓶子实在是不知道该写脚本来改,望高手赐教。

2011-05-09更新:在麤蟲童鞋的提示下我意识到可以用负的top参数来去除空白,于是上面提到的那个问题就能够解决了,跟上面四个向对应的修改版我就直接提供打包下载好了,分别弄也怪麻烦的……下载链接。话说我原来一直在想怎么覆盖掉原来的margin-top参数而没有想到CSS里面的定位参数还可以用负数,虽然现在想想不能用负数才叫奇怪……而昨晚我查CSS的优先级之后发现用“!important”强制覆盖原来的margin-top参数似乎也是可行的,但是这样写在实现恢复原来界面的时候会有麻烦,还是选用麤蟲提供的方法比较方便。

2011-06-24更新:今天GReader的CSS改了,把搜索框跟Google的logo都放在top-bar元素中了,用原来的脚本顶上会有一行空白,而且top-bar也不能简单的隐藏了事,否则搜索框也一并隐藏了。这回根据麤蟲的建议上传到userscripts.org了。
下载页面

PS:代码都是托管在GoogleCode上,但似乎是由于Google的URL过滤的原因,后缀为JS的文件在上传之后就无法修改……

PS2:最近打算加大发文的频率,但是不知道能不能坚持下来……

2011年5月3日星期二

KMPlayer的小弟——PotPlayer

想当年KMPlayer也算是风光一时啊,凭借强大的功能占领了相当大的市场份额,事到如今其丰富的快捷键仍然被人津津乐道并被众多播放器所学习,我当初也是KMPlayer的支持者之一。只是在2007年8月作者将源代码及核心引擎技术出售给Pandora TV之后,KMPlayer的更新变得缓慢。而我是没有经常出新版给我更新一下就不爽的“不折腾会死”星人,一个软件停止更新之后就失去了存在的价值,我也就跳槽成为射手播放器的支持者了。

当初射手播放器刚出道的时候确实是风光无限啊,自动字幕下载,高清加速的支持以及软件的小巧非常对我的胃口。只是过了一段时间之后,射手播放器就被爆出使用GPL协议下发布的FFmpeg的源代码而没有遵守协议要求开放修改后的代码,射手播放器也因此上了耻辱柱。也就是那段时间我才发现KMPlayer也被挂在耻辱柱了。不过射手播放器很快开始使用插件的方式来规避GPL那病毒式的协议要求,而KMPlayer却是一直都在上面挂着。之后射手播放器发布了3.6版,在新版中射手播放器一改原来的设计,在设置中提供的选项越来越有限,后来有开始加上跟新浪微博关联的东西。前几天看到新出了3.7版,结果新版甚至出现文字广告了。我认为这种给软件加上没有用的功能的做法是软件开发的大忌,一个软件只要能够把一个功能做到极致就行了。

随着射手播放器在我不喜欢的道路上越走越远,我只好选择其他播放器,这次我跳槽去使用QQ播放器了。从众多角度上说QQ播放器都是非常优秀的,没有广告,硬件加速支持,跟KMPlayer类似的快捷键设置使得我能够很快上手。不过很快,我发现用QQ播放器播放高清视频的时候,如果不是硬件加速能够支持的格式就会出现图像与声音不同步的现象,正处于高清中毒期的我无奈之下只好再次开始寻找适合的播放器……

很偶然的,我发现在高清论坛中讨论PotPlayer的特别多。在Google之后我发现PotPlayer居然是KMPlayer的小弟,是原作者用C++重新实现的KMPlayer。在保留KMPlayer的优秀之处的同时还有所改进,其中最让我看中的就是原来KMPlayer需要调用外部解码器才能实现的硬件加速被PotPlayer很好的在内部实现了。在实际使用之后我发现PotPlayer使用FFmpeg的源代码重新编译成.DLL文件,同时也开放修改之后的代码,从而避免被挂到耻辱柱上。FFmpeg为PotPlayer提供了广泛的格式解码支持,再加上对付高清文件的DXVA硬件加速和对付RM/RMVB文件的Real Decoder,PotPlayer就拥有了完善的解码器支持了。作为一个新兴的播放器,PotPlayer也有一些问题,我现在遇到的比较大的问题就是当RMVB文件的音频也是使用RM格式进行编码,在拖动进度条的时候音频总是要等一两秒才能恢复。PotPlayer虽然也有64位编译版本,不过似乎没有64位的Real Decoder,用FFmpeg解码RMVB格式就会出现严重的跳帧……不过瑕不掩瑜,那丰富到我都看得云里雾里的选项正是功能强大的证明,基本一个播放器能够想到的功能都提供了。

PotPlayer

至于PotPlayer的获取,直接去www.potplayer.org下载压缩包就好。截止到我写文章的时候,最新的版本号是1.5.28025,不过我这里使用这一版的时候只要开始硬件加速就会出现色块,根本没法观看视频,也不知道我这是不是个别现象,不过不用最新版就没问题的说……下载合适的版本之后解压到你喜欢的地方之后使用管理员身份运行,在参数选项的“关联”中选择需要关联的文件类型就能在打开相应文件的时候默认用PotPlayer打开了。

PS:如果想要订阅本博客的话,请一定在阅读器里面直接订阅http://feed.qcts33.com/ 现在这个域名是被301重置到Feedsky去的。众所周知Feedsky时不时就要当掉一下,使用这个的话我可以方便的更改feed源的来路……

2011年4月30日星期六

浏览器里的HIPS——NoScript

今早起来一开人人就看到提示说有17个未读站内信,话说一半站内信是只有管理员才会用的东西,可以当我点进去之后却提示站内信已删除。在之后的浏览中我意识到昨晚人人网由于对外用户输入的过滤不够严格导致打开站内信就会造成跨站攻击,然后就会大量发送站内信,看来是由于我十一点就睡了而没有见到当时的盛况……
noscript-logo

这件事应该让我们意识到跨站攻击的危害。对于Firefox用户而言,对跨站攻击进行防护是很简单的,安装NoScript扩展就行了!不是Firefox用户的话就换用Firefox吧……

NoScript这个插件的功能说起来也很简单,那就是默认禁止所有的JavaScript、Flash之类的插件和脚本,并通过白名单的方式来允许能够信任的域名下的插件与脚本进行选择性执行。通过这一个Firefox的扩展,我们就可以很方便的控制脚本及插件的执行。基于这样的特性,第三方网站上的脚本没有被允许执行,所谓的跨站攻击自然就失效了。新版的NoScript对跨站攻击更提供了专门的防护。

基本的使用方法也很简单。使用这个扩展之后打开一个新的网站时可能会出现由于JavaScript被禁止导致加载不完全或者有些什么按钮失效之类的问题。一般而言只要在NoScript里面将正在访问的网站加入白名单就能够正常访问了,如果还不行的话可以暂NoScript的菜单中多允许几个域名试试,实在不行的话还可以使用“临时允许本页所有对象”的功能。虽然使用NoScript之后可能是会麻烦一些,但是我们经常访问的网站一般也就那几个,在白名单里面将常用的网站设置好之后就不会对网页浏览带来太多的打扰,同时还能够享受到完善的保护。

对于新手而言这个Firefox扩展的使用门槛确实是稍微高了一点,但是考虑到这个扩展所带来的安全性上的提升,跨过那点门槛绝对是值得的。

下载页面:https://addons.mozilla.org/zh-CN/firefox/addon/noscript/
主页:http://noscript.net/

2011年3月24日星期四

遇见最好的浏览器——Firefox

前言
话说Firefox 4.0正式版在无数次的跳票之后终于发布了。说起来我,可是从Firefox2.0时代就开始使用的Firefox铁杆用户。作为铁杆用户,我也该写篇文章来推广一下Firefox了。首先秀一下我Firefox 4的界面:

firefox

历史
Firefox的正式全称是Mozilla Firefox,前面那个Mozilla代表的就是的Mozilla基金会。在第一次浏览器大战中微软依靠捆绑销售的手段击败Netscape的网景导航者使IE成为浏览器霸主,而战败的Netscape公开了网景导航者的代码并成立Mozilla.org组织来执行开发下一代浏览器的Mozilla计划,Netscape自身也被AOL收购。而当Netscape最终被解散的当天成立了现在的Mozilla基金会。

可惜在第一次浏览器大战之后IE的开发陷于停滞,而Mozilla便趁机依靠更好的安全性,更快的执行速度,强大的插件系统,市场占有率开始提升。而在Google发布Chrome浏览器之后新一轮的浏览器大战爆发了。跟第一次浏览器大战的两强争霸不同,这次的浏览器大战可以说是百花齐放,光是国产浏览器就能数出一大堆。挑起这场战争的Chrome以简洁和速度见长,简洁快速也成为这场战争的胜利之本。而依赖于社区进行开发的Firefox没能很快做出反应,就连长期以来执行速度跟Firefox处于同一水平的Opera在发布新版之后都将Firefox远远的甩在了后面,Firefox手上的王牌只剩下丰富的扩展了。而新发布的Firefox 4.0正式版正是为了改变这一局面而开发的。

特点
Firefox本身自带的功能确实挺少的。不过官方也有提供进行过配置的所谓“火狐中国版”,但是我是不推荐火狐中国版。作为一个以定制性强而著称的软件,使用一个别人定制好的版本不就没意思了吗。

要弥补自带功能较少的问题自然是使用插件系统了。Firefox使用的Gecho排版引擎其实也是一个用户界面的渲染引擎,Firefox整个界面其实都是由Gecho渲染出来的,而第三方的插件也是跟浏览器本身处于同一个运行级别的。这样的特性使得Firefox的插件实现非常底层的功能,所以有一些杀手级插件是很难在其他浏览器上实现的。因为习惯的力量,真正的Firefox用户是很难改用其他浏览器的。我也尝试过在Chrome下重现我在Firefox下的操作习惯,不过最终还是失败了。

获取Firefox
最基本的当然是去官网下一个,不过现在官网提供似乎是所谓的“中国版”,我推荐去Mozilla的FTP上去下个纯净的版本然后自己装扩展。还有一个选择是用第三方优化版,所谓的第三方优化一般都是将Firefox自己编译同时加上编译优化指令集优化什么的。在众多第三方优化版之中最有名的应该是tete009了。如果你跟我一样有小白鼠精神的话还可以选用Minefield,Minefield就是Firefox的开发版的名称,如名称一样是BUG比较多的“雷区”。不过就我自己使用来看还是很少出现崩溃的。

扩展推荐
接下来我就介绍一下我正在使用的插件,顺带也说说相应功能在Chrome上实现的情况,当做参考吧。以下插件在firefox addons上搜索名称就能找到。如果提示不兼容的话可以在相应扩展页面最下面找到“查看所有版本”的链接,在版本历史中可能有由于没有通过Mozilla的验证而没有正式上线的测试版,在这版本更新之际,就先拿测试版凑乎用吧。

Add-on Compatibility Reporter
对于我这种日常使用测试版软件的人来说这个软件可以将Firefox对插件的兼容性测试禁用掉,从而强制使用一些不兼容的插件……

Adblock Plus
这算是一个杀手级扩展了,简称ABP。这个扩展通过订阅人工维护的列表对网页上的广告进行屏蔽。虽然Chrome上也出现一些兼容ABP的列表对广告进行屏蔽的插件,但即使使用同样的屏蔽列表也会有拦截失败的广告出现。
Add to Search Bar
这个插件的功能是在搜索栏里加入自定义的搜索引擎,只要在网页上的任意输入框打开右键菜单就能将这个输入框的功能加到搜索栏里。话说我还不知道怎么在Chrome里加入除了Google以外的搜索引擎呢,有知道的可以提点我一下。
AutoProxy
这个不解释……Chrome下有个不错的替代插件,但是我使用的感觉还是不如AutoProxy。
Close Tab By Double Click
功能跟名字一样,提供双击标签关闭标签的功能。虽然这个功能在另一个著名的插件Tab Mix Plus中也有提供,但是TMP功能太繁多了,而我只是想双击关闭标签而已。这么简单的功能在Chrome下倒是肯定是可以实现的。
Context Search
这个是我花了很长时间才发现的,功能是将划词搜索中用当前搜索引擎搜索的选项替换成包括搜索框中所有引擎的折叠菜单,方便划词搜索。由于不同的东西会使用不同的搜索引擎,比如搜索电影图书用豆瓣(搜索框不包括这个?用户Add to Search Bar啊),查单词用爱词霸,我苦苦寻找好久才找到这个插件啊。Chrome下有类似插件,但是使用的搜索引擎全部要手动设置。
DownThemAll!
这是对Firefox下载功能的加强。加入多线程下载功能,以及批量下载的功能,我最受用的一个功能就是支持用正则表达式对链接进行筛选。据我所知Chrome下没有能够媲美的插件,前段时间看到一个实现Chrome多线程下载的方法。
Greasemonkey
算是有一个杀手级扩展吧。能够运行一些自定义脚本,是更改网页的好手!我现在在用的自定义脚本包括Google Reader Optimized、校内人人网改造器、HTTP-to-HTTPS redirector。Chrome上倒是更绝,原生支持Greasemonkey脚本……
LastPass
这个密码管理器,可以将你的密码保存到云上。只要LatPass的主登陆成功,LastPass就能帮你自动输入用户名和密码甚至登陆都能一起自动完成。Chrome上有同公司提供的插件。
Personal Menu
这个扩展可以让你自定义Firefox左上角那个一体化按钮的内容,非常赞!
Find Suggest
Instant Preview
Speak Words

上面这三个是Mozilla Labs自家的插件,提供点查找功能加强啊,预载入之类的功能。
PlacesCleaner
Firefox使用久了以后数据库会变得比较大,用这个可以优化一下啊。这个估计Chrome是用不到吧……
Speed Dial
提供一个类似Opera那样的快速拨号界面,能够在新Tab上载入。Chrome自带类似功能,不过还是有一个类似的插件比较好用。
SearchLoad Options
这个扩展提供更加详细的搜索框的设置。我最喜欢的功能是在使用非默认搜索引擎搜索之后会自动切换回默认搜索引擎,为下次搜索做好准备。
Undo Closed Tabs Button
提供打开刚刚关闭的标签的功能,这个想必Chrome上也是有的吧……
Xmarks
这个是往云上同步书签用的……这个Chrome上也是有同公司提供的插件。

杀手级扩展Vimperator
说来Vimperator也是Firefox的扩展之一,但是Vimperator强大到被称为“世界上最好浏览器没有之一”,而Firefox只是一个运行环境……要详细介绍Vimperator的话我得再写一篇文章才够,而Vimperator的功能是给Firefox加上了模仿Vim的操作方式,至于Vim的操作方式是什么,这甚至不止一篇文章可以说清楚。所以虽然我现在在用这个插件,前面展示的那简洁得一塌糊涂的界面就是使用Vimperator之后的结果,但这个东西算是超出我们的讨论范围了。有兴趣的可以看看善用佳软的这篇文章。

尾声
对Firefox的介绍就到这里了。我虽然是非常喜欢Firefox,恨不得所有人都使用Firefox,但我也不会去要求别人,大家都能找到适合于自己的浏览器就好。不过如果你用IE6的话我觉得还是升级一下吧……IE6去死啊!

2011年2月7日星期一

我使用的那些软件

我自己常用的那些软件在经过一系列的折腾之后已经基本定型了。而且其中包括很多我觉得非常好的,使用人数还不多的,有必要推荐给大家的软件。但是一个一个的单独说,有很多又达不到一定的篇幅,我就索性一起说说了,有些有必要的话可能会再发文章详细说说。

我相当信奉那个"Do one thing, and do it well"的UNIX哲学,同时我对广告是非常的反感,所以我喜欢的软件都是比较简洁的。

在视听方面
听音乐用foobar2000属于那种定制性很强的软件,虽然不能直接拿来用,但是花点功夫定制一下就能变得非常顺手的软件。依靠插件可是实现全格式支持再加上强大的音乐管理能力,绝对是播放器中的上上品啊。
看电影用射手播放器,虽然定制性不如foobar2000,但是他足够简洁,支持的格式非常广泛,支持硬件加速,我以前用KMPlayer的时候习惯的的快捷键也都支持。
现在看电影用PotPlayer了,见新文章……
在线听歌当然是豆瓣电台,但是官方的网页版跟桌面版都不和我胃口。我喜欢的是dbRadio Plus,这玩意的作者应该是自己分析了豆瓣电台的API,重新用.Net Framework 4.0写出来的东西。

解压缩用7zip,虽然现在WinRAR的破解版到处都有,但是我还是偏向于使用7zip这样的开源软件。况且7zip自有的7z压缩格式拥有比rar略胜一筹的压缩率。

快速启动用ALTRun,入选理由还是一样,简洁和高度可定制。

浏览器自然是首选FirefoxChrome一般也会装,偶尔用用。这俩都是支持插件的,等Firefox出4.0正式版我就写一篇文章把我用的插件好好列举一下。

人人桌面和Google Talk这些本来就没有广告的自然是用官方的了,QQ用孤雨定制版,MSN则用MSN Lite

反正以上只要稍微Google一下就能找到一堆的介绍了,我就不一一细说了。

PS:昨天看着别人的博客有个SliverLight的蓝泽光时钟就也去弄了一个,大家想看的话请安装SliverLight了,反正没多大的。