死了都要賣!Sell Out!

十月 26th, 2008

Sell Out!

“死了都要賣”是一個Malaysia的喜劇歌舞劇…

這個片子對我而言, 有兩大特點.
1. 我沒看過歌舞劇, 除非真善美也算. 2. 我也沒看過Malaysia的片子.

像我這種人想寫介紹該片的文章, 連我自己都掰不下去. XD

不過裡面的歌實在太有趣了.
今天聽到兩首, 其中有一首是男女對唱的.
You’re not my type!
Don’t get you hopes all high.
I still won’t sleep with you I would rather be a bi.

I’m not her type!
Why get my hopes all high?
She’ll never fall for me, No matter how I try.

You’re not my type!
Don’t get you hopes all high.
I’ll never sleep with you till the day I die.

I Know~~ Know~.

2008.11.07 (五) 19:00
台北新光影城 3廳
2008.11.11 (二) 21:10
台北新光影城 3廳
2008.11.12 (三) 16:00
台北新光影城 3廳

debian wordpress 2.5.1-6

九月 4th, 2008

晚兩天還中標… XD

sid的wordpress 因為轉入2.6.1的一些原因, 有一些2.5.1的source已經偷跑到2.6.1了
bug report

看到他說下一版會修, 我就在想是要關掉blog等他release 下一版嗎… -_-
不過自救其實很快, 只要在 /usr/share/wordpress/wp-includes/link-template.php 加一個function.
這樣就好了.

function admin_url($option){
return “wp-admin/”.$option;
}

減稅?

八月 18th, 2008

最近台灣的電視一直不停的大打減稅廣告. 最後標上Milton & Rose D. Friedman Foundation. 看了之後一直好奇, 傅利曼的教育基金會怎麼會打這樣的廣告呢?
Milton Friedman

甚至…降稅是傅利曼(Milton Friedman)的經濟主張嗎?

真正刊登廣告的人, 很明顯是想借傅利曼的名氣. 對大眾進行灌輸. 廣告中所謂”稅跟經濟是掛勾的”, 就算是供給面學派大概也沒辦法完全同意. 2001年諾貝爾經濟學獎得主Joseph E. Stiglitz就曾經大力抨擊布希政府的減稅政策.

在這個廣告中, 可以看到它透過誇張的圖表, 斷章取義的名言名語. 在推廣他們錯誤的理念.

減稅可以是政治上的良藥但不見得也是經濟良藥.

政府要刺激消費大致上可以分成三種作法. 號稱供給面學派那些主張減稅的人認為”保留一些錢在消費者手中, 那麼消費者至少會花掉一點”. 但是, 你真的能衡量他的效果嗎? 接著是凱因斯學派所主張的政府投資, 政府投資就算是找人挖水溝, 那也會提昇就業, 而就業的民眾再拿薪水進行消費. 最後一個手段就是貨幣學派(monetarist)所主張的降低利率, 透過降低利率來刺激民間消費.

1950~1960年代各經濟學派就針對這三種方法進行長達數十年的辯論. 最後可以說是主張操控利率的貨幣學派獲勝. 而貨幣學派中最有名的經濟學家則是傅利曼. 現在這個廣告居然打出傅利曼的名子, 告訴我們他是支持用”減稅”來刺激經濟的? 如果傅利曼主張減稅來喚醒景氣, 那我就是個瘦子.

上個世紀已經有結論的爭論要延燒到現在, 那不是政治的扭曲就是有心人的操弄.

減稅可能跟經濟有關, 但大概是這三種方法中效果最差的方法. 利率只需要中央銀行依遽景氣操作就可以迅速實行, 然後在半年內就可以達到效果. 而稅的變更則需要經過行政, 立法, 宣告, 實施… 然後隔年才會省下稅額的支出. 接著期待消費者花掉手上多的錢(如果他們會花的話)直到產生經濟效果… 這可不是SimCity啊, 在稅的效果出現之前搞不好景氣就已經復甦了. 到那時候難道又要增稅嗎?

HiHD Part2 其他要注意的事項.

八月 3rd, 2008

首先, 要看Hi_HD不能拿那種跟跳蛋牙籤一樣的天線…
ua-24
一旦用室內天線, 如果不是住在發射站隔壁. 那加什麼強波器大概效果都不會很好…如果家中有很多電視, 或者線需要拉得很遠, 那可能就會需要買強波器.而強波器也不用另外找.

一般第四台的強波器範圍大概就在 50~900MHz 之間, 價位大概在NTD:200以內. 重點是強波器要接近天線, 避免線拉長了耗損多. DVB-T的訊號用到470~807 Mhz就足夠了. 而台灣目前只用到533~593Mhz, 每個Channel 的 BANDWIDTH 是 6Mhz. 推算一下應該可以猜出未來NCC要增加的四台頻道應該會剛剛好用完533~593這一段.

而室外天線建議用大通的指向型魚骨天線UA-2, 約NTD:120. 就算沒有辦法直接對準發射站, 靠大樓的反射也沒問題. 或許有人覺得自製天線也可以… 但要做到近似室外天線的接收度可能還得花不少時間研究.

天線真的很重要, 但線也一樣. 我在換過大約10公尺從天線到強波器, 接著從強波器到Spliter後. 信號明顯增加約0.5倍, 用的就是大通168編的5C2V泡綿同軸電纜線. (是的, 1米9元…) 但這還不是貴的線, 市面上還買的到進口1米12元的雙網雙隔離還有1米50元的銀同軸… 相對這168編就很便宜實用了…

Spliter就是分接Cable的1 in N Out的N-way接頭. 請去電子街買. 不要在路口的24HR五金百貨買…
不然會買到這一種的, 黑心splitter(NTD: 50~300). 在玩Cable之前, 其實家裏都用這種.
splitter
一般好一點的裡面會用電路板, 外面不是融合起來就是用銲錫熱封. 不會像上一張照片, 是強力膠封的… 通常Splitter又分成 5Mhz~1000Mhz (一般Cable, NTD:100~300 )或 5Mhz~2050Mhz(DVB-S, NTD: 400~1×00)的. 甚至還有5Mhz~3Ghz的…
splitter

當然啦, 料用的越好當然就越貴. 最後你的訊號就會神奇的好起來了. (敗家達人: 沒好的話… 就是你買的不夠貴. XD )
不看HiHD? 可以啊. 但是. 你難道不知道, 這個禮拜的週日夜狂熱, 是塔西蘇嗎?

但我現在看HiHD其實有的時候還是會有點lag.
在訊號不良的問題排除後, 還見識到了Full HD對CPU的要求… Intel Q6600有的時候還得要framedrop才不會卡住.

Haskell in 5 steps

六月 8th, 2008

最近在看象棋的對戰系統, 所以就稍微看了一下functional programming.
然後找到haskell, 查了一下才發現原來就是tim之前介紹過的. 真是有趣的東西.

我練習程式時會有順手翻譯入門文件的習慣… 所以下面是翻的.

翻一翻也順便送一份到Haskell的wiki上.

—-
Haskell入門的5個步驟

Haskell 是一個純粹的函式編程语言。本頁將幫助你快速的入門。

1. 安裝Haskell

跟多數語言一樣, Haskell有兩種執行方法: 編譯跟直譯.
直譯式系統可以給你一行命令列(Command line), 讓你直接的進行實驗或評估.

GHC Compiler and interpreter (GHCi)
最多人用, 也是最有未來性的系統
Hugs Interpreter only
移植性嘉, 而且比GHC小的多.

GHC跟Hugs都可以在{ 某大廠作業系統 }上作業, Hugs有最佳的平台整合.
除此之外, GHC是最多實際用來開發與維護的. 這兩套軟體無異是適合
新手或老手的選擇.

2. 開始使用Haskell

開啟一個終端機. 如果你已經安裝了GHC, 直接在命令列上輸入ghci
(GHC直譯器的名子)
如果你安裝的是Hugs, 輸入 hugs

kevin@lls:~$ ghci
GHCi, version 6.8.2: http://www.haskell.org/ghc/ :? for help
Loading package base … linking … done.
Prelude>

當你出現提示符號, 那表示Haskell系統已經在準備你的輸入了.

3. 撰寫你的第一個Haskell程式

如果你已經學過其他程式了. 你的第一個程式大概是”Hello, world!”.
讓我們也這樣搞吧.

Prelude> “Hello, World!”
“Hello, World!”

Haskell系統評估為一個字串(string), 接著列出(printed)結果.
或著我們可以用另一種方法將它直接列印到標準輸出上.

Prelude> putStrLn “Hello World”
Hello World

使用Haskell的編譯器, 像GHC. 你可以編譯程式碼讓程式獨立執行.
建立一個hello.hs, 內容為:

main = putStrLn “Hello, World!”
然後用下列命令編譯他:

$ ghc -o hello hello.hs

接著你就得到一個可執行的執行檔了.
( Unix系統為./hello, hello.exe 則為{ 某大廠作業系統 } )

kevin@lls:~/Haskell$ ./hello
Hello, World!

4 Haskell的計算

來搞些有趣的吧. 在Haskell, 你的第一個真正的程式是乘階的function.
所以現在讓我們回到直譯器, 接著輸入:

Prelude> let fac n = if n == 0 then 1 else n * fac (n-1)

這一行定義了一個新的function, 名子叫fac. 將接收一個整數以供乘階運算.
我們可以輸入參數執行fac:

Prelude> fac 42
1405006117752879898543142606244511569936384000000000

需要注意的是如果你使用的是Hugs, 你將需要從檔案中載入定義的fac, fac.hs.
內容為:

fac n = if n == 0 then 1 else n * fac (n-1)

然後用Hugs執行他, 如下(在GHCi也能這樣做)

Hugs:

Hugs.Base> :load fac.hs
Main> fac 42
1405006117752879898543142606244511569936384000000000

GHCi:

Prelude> :load fac.hs
[1 of 1] Compiling Main ( fac.hs, interpreted )
Ok, modules loaded: Main.
*Main> fac 42
1405006117752879898543142606244511569936384000000000

我們也可以編譯這個程式, 產生一個獨立的執行檔. 在fac.hs裡可以這樣寫.
(這裡換了一個比較優雅的寫法, 只是為了好玩.)

fac 0 = 1
fac n = n * fac (n-1)

main = print (fac 42)

現在可以編譯並執行它

kevin@lls:~/Haskell$ ghc -o fac fac.hs
kevin@lls:~/Haskell$ ./fac
1405006117752879898543142606244511569936384000000000

幹的好!

5. 接著該往哪走

有很多很好的Haskell教學資料跟書本. 這裡有一些我們推薦的.

教學:

Haskell in 10 minutes
Yet Another Haskell Tutorial (English)
A Gentle Introduction to Haskell (English, French PDF)

完整的列表, 參考跟教學:

Books and tutorials

加入社群:
跟別的Haskell社群連絡:

Haskell-Cafe mailing list
IRC channel

This file has been encumbered with DRM encryption, it will not play in MPlayer!

五月 31st, 2008

終於我在這幾天見識到了… 在網路的media stream上. 原來這就是DRM(Digital rights management)啊.

依稀記得在一年多前, 我第一次聽到DRM這個名子的時候. 心裡想… 這種東西怎麼可能會紅.
而且在我幼小的心靈裡依然相信著, 只要是在電腦裡撥的, 又有什麼是不能轉錄的呢.

結果….. 果然在某大廠作業系統可以轉錄, 但Linux遽然是不能播.


所以 c.py 的 中天新聞台不能播了. 想看的話… 再找找好了. :P

Hi_HD Part1 在Linux下看HiHD

五月 19th, 2008

Hi_HD:569000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2001:2003:200

公視播放的Hi_HD 節目. Codec分別是Video的H.264跟Audio的AAC.
歐洲有部份國家還有芬蘭好像都是用這樣的規格. 不過詳情可能要再稍微查一下.

DVB-T USB Devices要是 USB 2.0 的才能看. (通常, 所謂的相容大概也沒機會了) 至於到底要買哪一種可以參考linuxtv的wiki. 我是買ASUS的U-3000 mini.

mplayer要換到svn版本的. 不然deb版本的h.264不容許frame有lose… 很容易crash. 而且直接用dvb://1@Hi_HD也不會動.
要直接把dvbstream餵給mplayer才行(覺得這樣很麻煩? 看看Windows吧, 還得要掏信用卡出來買些怪軟體才有法子)

$ tzap -a 1 Hi_HD
$ dvbstream -o -c 1 8192|./mplayer - -ni -mc 1 -cache 65535

指令
tzap:
-a 1 第二張DVB卡, -a 0為第一張.
Hi_HD 頻道名稱
dvbstream:
-o 從stdout匯出
-c 1 第二張DVB卡, -a 0為第一張.
8192 是取得所有的PID(Packet Id). 匯出TS檔
-a 可以由這裡選聲道, 像Hi_HD的雙語節目 pid有2002跟2003.
mplayer: - -mc 1 -ni
- 從stdin匯入
-mc 1 maximum A-V sync correction per frame

以下為mplayer執行的狀況.

dvbstream v0.6 - (C) Dave Chapman 2001-2004
Released under the GPL.
Latest version available from http://www.linuxstb.org/
dvbstream will stop after -1 seconds (71582788 minutes)
Output to stdout
Streaming 1 stream
MPlayer dev-SVN-r26838-4.2.3 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz (Family: 6, Model: 15, Stepping: 11)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
Unknown key ‘KEY_PAUSE’

Playing -.
Reading from stdin…
Cache fill: 14.06% (73728 bytes)
TS file format detected.
VIDEO H264(pid=2001) AUDIO AAC(pid=2003) NO SUBS (yet)! PROGRAM N. 0
Cannot seek backward in linear streams!
Seek failed
FPS seems to be: 29.970030
[VO_XV] Using Xv Adaptor #0 (NV17 Video Texture)
======================================
Opening video decoder: [ffmpeg] FFmpeg’s libavcodec codec family
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
======================================
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 48000 Hz, 2 ch, s16le, 128.0 kbit/8.33% (ratio: 16000->192000)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio) decoder)
======================================
AO: [oss] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback…
VDec: vo config request - 1920 x 1080 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [xv] 1920×1080 => 1920×1080 Planar YV12

看看HiHD 1080i的畫面吧… XD

Hi_HD

Go mplayer! Go!

不, 我不是換手機…..

二月 28th, 2008

因為另一位指導老師的課程需要. 發了一些手機讓我們在上面應用與寫寫程式.

所以依照炫燿的慣例, 箱子疊疊樂.


以上總金額大概4~5萬.

其中s300是我的手機… 去年買只要5000.

HTC的Touch Dual, Windows Mobile

我到現在也只有開機跑了一下, 其實Windows Mobile沒有3.5G網路真的很廢…

內部.

MOTO V8開箱

抽出來後

質感一流

Linux 作業系統

MOTO的系統不太開放. 只能依靠Hacking刷機, 不過我耽心刷不回zh. 所以先放著. 等有空再來研究它.

NOKIA開箱
其實N82算是這幾隻手機裏面最好玩的.

在花一點時間後, 裝上了一個好東西…

對.. 就是這個光!

可以載入執行.

可以用藍芽Keyboard直接寫程式.

執行先寫好的程式.

改寫了一段小程式… 拍照後直接透過http上傳到網站.

import appuifw,e32,httplib
import camera

def upload_image_to_url(filename):
picture = file(filename).read()
conn = httplib.HTTPConnection(”ossug.org”)
conn.request(”POST”, “/~nokia/upload_image_to_url.php”, picture)
print “upload started …”
e32.ao_yield()
response = conn.getresponse()
remote_file = response.read()
conn.close()
appuifw.note(u” ” + remote_file, “info”)
print remote_file

filename = ‘c:\\photo.jpg’
img=camera.take_photo()
img.save(filename)
upload_image_to_url(filename)

畫質如下:

雖然有閃光+200萬畫素. 不過畢竟比不過光學相機. XD

右聲道

左聲道

…..其他待續. XD

amule 2.1.3+CVS

二月 17th, 2008

“640K ought to be enough for anybody.” -Bill Gates (1981)

因為特別的需求, 需要用到amule抓一些大於4GB的檔案, 如: Debian DVD版本的ISO檔. (迷之聲: 我都是用P2P抓OpenSource Software的…)
在3~4年前eDonkey network事實上並不支援> 2GB的檔案, 後來因為DVD的需求加到4GB.

接著在2006年同樣因為發現4GB根本不夠. 因為Dual Layer跟HD&Blu-ray的需求開始出現. 但就跟KAD的需求一樣, 生命總是可以自己找到出路.
於是eDonkey Protocol 改支援到256GB的檔案. (主要是修改ed2k link中 hash 的部份)

使用emule 0.46所架設的server版本. 使用windows下的emule或amule CVS板的Client及可以透過這個新板的Protocol抓取> 4GB的檔案.

在Debian安裝要libwxgtk2.8-dev, 所以需要另外裝.

deb http://apt.wxwidgets.org/ etch-wx main
deb http://www.vollstreckernet.de/debian/ testing amule

之後

apt-get install libwxgtk2.8-dev binutils amule

就好了.

DVB-T

二月 4th, 2008

剛剛在鬼屋買了一台DVB-T, 499元.
是雙漢的TwinhanDTV USB-Ter USB1.1 / Magic Box I / HAMA USB1.1 DVB-T devicels -s
Magic Box I 或Magic Box II在Linux都有support. 這算是很超值的玩具.

話說回來,今天女友在問我,
DVB-T, DVB-S, Cable各系統都在玩. 各種小零件都準備了一堆還得裝箱.
結果我其實根本不看電視… 最後還是靠網路抓美劇. -_-a
這樣真是怪怪的.

Anyway. 這台根本沒有驅動的問題, firmware抓一抓就會動了. 反而是找發射站的頻率找了半天.
才知道頻率表跟幾年前幾乎完全不一樣.
台南高雄屏東在用的 channels.conf 可以參考下面的資料.

kevin@lls:~/.mplayer$ cat channels.conf
TTN:581000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:4001:4002:400
TTN-E:581000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:4011:4012:401
TTN-F:581000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:4021:4022:402
CTV:533000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1001:1002:100
CTV-N:533000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1011:1012:101
CTV-L:533000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1021:1022:102
PTS:545000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2011:2012:201
DIMO:545000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2021:2022:202
NAKKA:545000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2031:2032:203
CTS-U:593000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:5011:5012:501
CTS-E:593000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:5021:5022:502
CTS:593000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_AUTO:QAM_16:TRANSMISSION_MODE_AUTO:GUARD_INTERVAL_1_4:HIERARCHY_NONE:5031:5032:503
FTV:557000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3001:3002:300
FTV-T:557000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3011:3012:301
FTV-N:557000000:INVERSION_AUTO:BANDWIDTH_6_MHZ:FEC_2_3:FEC_2_3:QAM_16:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3021:3022:302
kevin@lls:~/.mplayer$

另外, 那種動輒五百~九百還要通電的”數位XX通”天線, 其實噱頭大於實際效果.

一般UHF戶外天線(一百左右)的效果才是真的好. 隨便一接連室內都能收… -_-a