2011年10月24日星期一

迅雷离线的Safari插件

没什么事情,就自己折腾了一个Safari的插件。用处就是禁用迅雷离线页面的右键菜单功能,然后直接生成下载链接。

原理很简单,原来我是通过一个bookmarklet来实现的,但是总归是不方便,每次进入画面都得按一下链接。

有了插件,就可以省却这点麻烦事情了。

哈哈,在公司的PC开发的,不知道Mac下是否能正常工作,回去试试看。

下载链接




2011年10月22日星期六

iOS5 高清片的完美方案

在iOS5之前,mp4加载软字幕会有一个非常恶心的bug,那就是字体会非常非常的小。造成看片子非常的体验差。之前我一直使用第三方播放软件来实现看高清美剧的目的。为什么这样呢?因为我非常讨厌硬编码。为什么这么说,因为目前网上流行的高清片源一般都是mkv,视频编码一般是divx或者xvid,要么就是h264。原理上h264编码iOS设备是可以硬解码的,因此根本不需要很多转换软件那样花个把小时转片子,只需要几分钟重新打包mkv文件即可,花时间最多也就是音频部分的转码。

我刚刚发现iOS5已经修复了软字幕字体太小的毛病,所以我又想用原生的视频播放程序来看美剧了。

怎么做呢?

一,使用mp4box这个程序来转换mkv到mp4。
如下图所示


选中音频视频,Device选中对应的设备,如果可以video passthru,那就会在码率上面显示为disabled,这样就表明可以不编码视频直接输出了。

这样转出来的m4v文件是不带字幕的。

这个软件本身带封装字幕的功能,但是奇怪的是,我试了几个文件都添加失败了。原因不明。

二,使用subler这个软件添加字幕

添加上面那个m4v文件,然后直接添加字幕另存为即可。


三,使用iDentify这个程序来自动抓去你转换文件的meta信息,更加完美这个视频。

四,现在可以导入iTunes了。

如图看看那个大爆炸的图标,多完美啊。和在iTunes Store买的正版TV show有啥区别?




五,目前实际的运行画面,字幕已经完全可以接受了






























其实原生播放程序的优点并不多,一是可以用iTunes比较方便的管理,二就是可以比较美观的展现,纯一个好看。仅此而已。

而不如第三方播放软件的地方就很多,一就是字幕如果不合适,超前超后的话,就比较痛苦了。没法灵活的让字幕延后或者提前显示。播放控制方面也不如任意,第三方播放软件可以比较方便的前跳后跳,支持更多的手势(我这里说得第三方软件就是指AVPlayer )。

2011年10月5日星期三

iTunes崩溃记

今天我碰到了2月份买iMac以来第一次系统问题,半年多了,系统一直很稳定的工作着,今天突如其来的iTunes崩溃无法打开,弄得我很措手不及。

事情是这样的,我刚刚在用iTunes看mp4,打开一个新文件的时候,突然iTunes死机了,出现了五彩球。因为以前也碰到过类似的事情,所以我强制退出了iTunes进程。结果却发现再也无法打开iTunes了。总是会报告遇到未知错误-200的提示。

Google了一下,也没发现网上有类似的错误可以参考。只能自救了。


  1. 用TimeMachine恢复了一小时前正常状态的iTunes媒体库,未能解决错误问题。
  2. 按住Commad+Option,进入安全模式,不行,照样出问题。
  3. 按住Option选择新建一个Library,也不行,排除Library出现致命错误的可能。
  4. 重新下载了一个iTunes最新版,覆盖安装,重新Logout,然后登录,也无法打开,问题照旧。
    这时候我就有点慌了,有呼叫AppleCare的冲动了。
  5. 将/Library/QuickTime目录下的插件都移走,也无法正常启动。
  6. 将~/Library/Preferences/目录下的com.apple.iTunes开头的plist文件都移走,也无法正常启动。
  7. 上述动作都是在参看这篇文章的情况下处理的。接下去文章就提示要完全删除iTunes来达到修复目的。iTunes貌似是和Mac OS X深度结合的,用户一般情况下无法随便删除。于是我搜索到了一篇文章具体介绍怎么删除iTunes。可惜的是也应该说幸运的是我没用到。因为从这篇文章中我受到启示,其实关于iTunes的进程不止主程序有一个,还有一个iTunesHelper进程常驻内存。我怀疑它在搞怪。
  8. 于是我彻底重启电脑,进入账户,发现iTunes居然稀里糊涂的就又好了。

基于以上症状分析,应该我强行退出iTunes造成iTunesHelper这个进程锁死某些文件资源,导致iTunes无法正常打开。不知道是我重新安装了iTunes修复这个锁死状态还是单纯的重启系统释放了这个死锁。总之,这玩意还真是复杂。

这里记一笔,以后自己再碰到类似问题,可以按图索骥的排查问题。