Jan 22

    终于看完了……令人失望。
    很多什么什么系列的东西通常搞到三就不好看了,终结者、X-Man都是如此。Saw当然也陷入了超越自我的困境。前一半的剧情很吸引人,留下了足够多的悬念,看完一半的时候我开始猜想后面有什么意想不到的结局。结果,结局确实我没想到,但同时这个结局也并没有让我拍手叫好。显然Saw III的结局没有一二来得突然,没有一二那样令人惊讶。如果有人还在犹豫是否要看III,我的建议是:看看Wikipedia上的描述或许更好一些,节约时间,也少一些恶心的感觉。
    Saw III里还有什么看点呢?其中一点,画面确实更恶心了,纯粹喜欢恐怖电影的不妨感受一下。更重要的是,Saw的前三集构成了一个完整的三部曲,很多前面的细节问题在Saw III里都有了说明。该死的都死了,这个系列已经完整地结束了,没办法再拍了。当然,刚才我说“前三集”是有原因的,因为我已经看到了Saw IV正在筹备中的消息。我估计,Saw IV只能拍前传了。Saw系列已经走到尽头了,让这个三部曲就这样完结了吧。
    如果让我评价一下这个系列,我认为,2>1>3。

Jan 17



一共有150多张专辑,全部手工添加的图片
累死我了,搞得手都酸了,小红帽被折磨得都想奶奶了
这下爽了,iPod播放时还可以显示专辑图片

Jan 16

    我从来不承认我是一个完美主义者,不过昨天不得不承认了。我花了3个小时的时间重新整理了我的F:\mp3\*.mp3所有近600个文件的ID3标签。

    在我的播放列表里添加一个文件非常的麻烦。首先下载歌曲,然后重新压成96Kbps或128Kbps的mp3文件,然后把文件名改成“歌手+空格+歌名”的样子。然后用Mp3 Gain把音量统一为89dB。然后,下载.lrc歌词文件,去掉歌词文件里的广告和制作人信息,可能还要重新编辑一下时间轴。最后把mp3文件放在F:\mp3目录下面,把歌词文件放在F:\mp3\lrc目录下面。添加进Winamp的播放列表后,有时会看见歌曲名带有网址的,那是ID3标签里的。如果把这个ID3标签留着的话,MSN上的正在收听就不好看了。为此,我干脆去掉所有mp3文件的ID3标签。这样,不管是什么地方,只要文件没有ID3,歌曲显示的就是我的文件名,而我的文件名肯定都是正确的。
    昨天去买了iPod nano,二代,2G。iPod的价格都是打算吃人的,尤其是配件。不说Hi-Fi和inMotion了,就连漫步者的某个iPod音响就是600多银子。买个套套都要花很多钱,幸好它那里送了一个。
    同步到iPod后我才发现ID3标签有多重要。iPod(当然也包括一些其它的mp3)用ID3的标签对音乐进行分类。你可以按音乐人和专辑来搜索歌曲。其它很多功能也需要完备的ID3标签。这下好了,我的ID3标签全部空白。早知道的话,不删除那些ID3标签该多好啊,至少现在我想重新完善ID3标签也有一些参考信息嘛。不然的话,难道重新添加ID3标签只能上网一个个搜索每首歌对应的专辑和曲目号?我600首歌呢,整死你。
    后来我想到好办法了。我不是有歌词文件吗?歌词文件里不是有[ti:]、[ar:]和[al:]吗?我的歌词文件名和mp3一一对应,方便文件操作。但网上从来没找到过类似的程序可以提取.lrc文件的信息加入ID3标签。于是我打算自己编一个。这个程序很简单,我也就直接用的FP了,没用Delphi。
    我花了一些时间研究了一下ID3的格式。用WinHex看几个试试,ID3 v1比v2的格式更简单,直接添加在Mp3的最末尾,你用Winamp改几个标签然后用WinHex一看就明白了。.lrc的格式更不说了,白痴都看得懂。
    以下程序代码可以自动搜索程序所在目录下的mp3文件,使用lrc子目录下的相应歌词文件中的歌曲名、音乐人和专辑信息实现自动添加ID3信息。该程序在FPC 2.0下测试。通篇代码没有一个注释,结构比较乱。毕竟是给我自己看的,当时没想过要发布上来。
program id3rename;

uses dos;

type
   info=record
           title,artist,album:string[26];
        end;
var
   Mp3:array[1..20000000]of char;

function GetInfo(FileName:string):info;
var
   ch:char;
   LrcInfo:info;
   Lines:integer;
   Content:boolean;
begin
   Lines:=1;
   LrcInfo.title:='';
   LrcInfo.artist:='';
   LrcInfo.album:='';
   {$I-}
   assign(input,FileName);
   reset(input);
   {$I+}
   if ioresult<>0 then exit(LrcInfo);

   repeat
      read(ch);
      if ord(ch)=13 then inc(Lines)
      else if ch=']' then Content:=false
      else if ch='[' then Content:=true;

      if Content then
        if Lines=1 then LrcInfo.title:=LrcInfo.title+ch
        else if Lines=2 then LrcInfo.artist:=LrcInfo.artist+ch
        else if Lines=3 then LrcInfo.album:=LrcInfo.album+ch;
   until Lines=4;
   delete(LrcInfo.title,1,4);
   delete(LrcInfo.artist,1,4);
   delete(LrcInfo.album,1,4);
   close(input);
   exit(LrcInfo);
end;

procedure SaveTag(LrcInfo:info;FileName:string;Total:longint);
var
   FileSize:longint;

   procedure InsertText(a:string;l:longint);
   var
      i:longint;
   begin
      for i:=1 to l do
         if i<=length(a) then Mp3[FileSize+i]:=a[i]
         else Mp3[FileSize+i]:=chr(0);
      FileSize:=FileSize+l;
   end;

var
   i:longint;
begin
   assign(input,FileName);
   reset(input);
   FileSize:=0;
   for FileSize:=1 to total do
      read(Mp3[FileSize]);
   close(input);

   InsertText('TAG',3);
   InsertText(LrcInfo.title,30);
   InsertText(LrcInfo.artist,30);
   InsertText(LrcInfo.album,65);
   Mp3[FileSize]:=chr(255);

   assign(output,FileName);
   rewrite(output);
   for i:=1 to FileSize do write(Mp3[i]);
   close(output);
end;

procedure main;
var
   dir:SearchRec;
   LrcInfo:info;
begin
   FindFirst('*.mp3',archive,Dir);
   while (DosError=0) do
   begin
      FindNext(Dir);
      delete(Dir.name,length(Dir.name)-2,3);
      LrcInfo:=GetInfo('lrc\'+Dir.name+'lrc');
      SaveTag(LrcInfo,Dir.name+'mp3',Dir.size);
      assign(input,'');
      reset(input);
      assign(output,'');
      rewrite(output);
      writeln(Dir.name,' Finished!');
      //readln;
   end;
   FindClose(Dir);
end;

begin
   main;
end.

    郑重声明:如果你读不懂这个代码,千万别去玩火。而且这是批量的玩火。搞坏了你的mp3文件的话我概不负责,到时候看你找谁哭去。如果你真的需要这个程序的话,在下面留言,我会考虑搞个发布版。我还有一些想法,要是这个程序能自动上网找曲目号、发行年份和专辑封面之类的就好了。国外有类似的软件,因为美国佬的网上有这一类的开放的数据库。国内呢?如果大家有好的数据库的话也欢迎在下面留言提供一下。

    接下来,使用个人认为最好的标签编辑软件ID3-TagIT 3。批量把ID3 v1转换为v2,然后手工改一些不完美的信息。比如,调整同样的东西不同的名称,例如把she、SHE、S.H.E、S.H.E(女朋友)、S.H.E(女朋友)之类的全部改成S.H.E,这样才能在按音乐人分类时准确地把同一个人的歌搞在一块。这个软件十分强大,允许你选择多个文件统一编辑某项信息。当然,它也允许按指定的格式从文件名中提取信息。有人会问,那我为什么不从文件名提取信息呢?笨蛋,前面我说过我是用空格来分隔歌手和歌名的。鬼知道“Avirl Lavigne Complicated.mp3”是不是指Avirl唱的Lavigne Complicated。
    一切搞完了,还要Save一次,软件才会真正的改动文件。哈哈,这下就爽了。当然,这样的ID3还不完善,我就等着大家推荐一些在线歌曲数据了。这下Perfect了,同步到iPod,爽。

做人要厚道
转贴请注明出处

Jan 10

    最近OIBH被众多群发机器加入到了被害者列表中,验证码那一关显然已经被搞破了(有漏洞还是识别的?如果是识别的话就有点佩服了)。后来我在网上胡乱搜索了一下关于验证码和验证码识别的对抗,有意思的东西还很多。下面这些有创意的验证码大家见过吗?

Tencent的中文验证码:
      

gif动画干扰的验证码:
      

“雪花牌电视机”(FireFox下浏览最佳):
    

3D验证码:
        

迷宫式验证码:
  

极限验证码:
  


flash验证码:
    http://www.glowchart.com/index.cfm?submit
音频验证码(记得MSN注册时就可以选择声音验证):
    http://www.notonebit.com/projects/killbot/kbaudio.php
图片分类式的验证码:
    http://gs264.sp.cs.cmu.edu/cgi-bin/esp-pix
WordPress的Did You Pass Math插件:
    http://blogs.herod.net/steven/archives/93(注意下面Leave a Reply的时候需要填写什么)
这里也有一个Do the Math脚本:
    http://www.hamidof.com/Downloads/PHP_Scripts/Simple_Captcha_Script/
问答式验证码(Discuz!插件):
    http://www.bbsplug.com/register.php

Matrix67搜集整理
转贴请注明出处

Jan 10

    Final Destination是一个恐怖+恶心的经典。我只看了一的全部和二的一部分。感觉起来那些死法在一次次的续集中逐步升级,除此之外的剧情一次次淡化。据说第三部整部电影基本上就是一个个恶心透顶的死法的串烧节目。因此,三我就不想看了,毕竟Final Destination也不是我喜欢的类型。我喜欢的恐怖片应该像电锯系列一样有构思巧妙的情节。
    电锯系列也是如此,每一次新的续集都更加血腥。一二我都看过,剧情很妙,这让我非常想继续看下去;同时,按照血腥的“梯度”,估计第三集也很难让人承受得了。
    据说Saw III在得到R级之前曾经提交上去过7次,之前的每一次都打下来一个NC-17。不过这倒不是让我感觉恐怖的主要原因。昨天看到CNXP终于有了DVD版时,等Saw III等了如此之久的我准备立即下载下来。但是我不小心看到了CNXP发布帖里的一个截图,然后开始思考我是否能承受得住。

    下面的图片是imdb上提供的一个剧照,显然又是一个精心设计的机关。
        

    然后,我看到了种子发布帖里的最后一个图片。我就不帖上来了,有兴趣的话自己去看。
    http://bt2.cnxp.com/detail62352.html

    据说动手术那一段更恶心(据说的,我还没看,所以不知道是说的什么)。鼓励我的或者鄙视我的都回贴吧。

Jan 6

国外种子:http://www.mininova.org/tor/537582
国内种子:http://bt.hz0752.net/up/24s601.torrent

没有(英文)字幕,这次裸看了一把,第一时间放出剧透。

    第一集基本上没有什么期待的,主要内容预告片都说了。正如原来的剧透所说,全剧开篇时美国已经陷入危机,不断有恐怖活动出现。白宫相信Assad是恐怖活动幕后的一个大人物,而恐怖份子想要Jack Bauer死(为了报仇)。于是总统(大家应该知道这一季总统是谁吧)和恐怖份子那边达成协定,交出Jack换一个叫Assad的人。总统和中国谈判,把Jack放了,CTU的Buchanan和Curtis把Jack接回来,告诉他We're asking you to sacrifice yourself(预告片里的那句话),然后把他交给了恐怖份子。后来恐怖份子确实把Assad的位置告诉了CTU。这一切其实是恐怖份子策划的一个阴谋。Assad其实是个恐怖分子叛徒,正准备来帮助CTU,而CTU并不知道Assad是来帮助他们的,恐怖份子利用了这一点做了一个“单方面的”交易,还顺便把Assad交给CTU处置(希望CTU把他毙了)。换句话说,Jack其实白死了。看来我英语听力还不错,不过字幕出来了和我上面说的不一样可不要怪我哦,因为我仅仅说的是“还不错”。再后来,Jack(看着都快死了的时候)有了逃生的希望。
    Chloe这一季造型确实很可爱。她犯了一个错误,后来哭得好心痛。
    Numb3rs那个物理老头在24里同样有点搞笑的嫌疑,特别是听到他说Question之类的单词时。
    还有,Buchanan和Karen Hayes貌似结婚了(他俩通电话时互相说miss you,同时有Karen的结婚戒指特写)。

Jan 5

    最近流行这样一道智力题,我觉得比较有意思,在这里写一下:
    两个男的两个女的都有性病。现在只有两个套套,问怎么才能让两个男的分别和两个女的搞(就是说总共要搞4次)而不交叉感染。任两个人之间有间接的XX都算要感染。套套可以重复用(就是说可以不射)。

    为了让大家理解题意,这里再说明一下传统的方法为什么是错的。如果让两个男的各套各的套,依次搞两个女的,那么两个女的就要交叉感染,因为同一个套套接触过两个女的。

    答案在下面,白的。

    让第一个男的同时戴两个套套(这样很爽的:-) ),把第一个女的干了,然后把外面那层套套取出来给第二个男的戴上,让第二个男的也把第一个女的搞了;第一个男的接着(用他里面那个套套)把剩下的那个MM做了,然后把套套取下来给第二个男的套在外面(第二个男的就套了两个套了),让第二个男的操第二个女的。

Jan 5