這陣子,不少人都瘋著看奧運轉播,特別是棒球賽。(現在不需要再看了..*默*)
不過中華電信 hiChannel 所提供的奧運線上轉播使用了 Microsoft Windows Media DRM 機制,限制微軟平台的用戶可以使用。於是,你必須在 Windows 平台上使用瀏覽器,才能取得授權後觀看。
你可能想使用 Wine 裝 Windows Media Player 與 IE 來接取 hiChannel 的節目,不過 Microsoft DRM 需要驗證簽署過的 Windows 核心與驅動程式 (Bug 14761),即使透過 Wine 跑 Windows Media Player 也是沒轍的。
就算你很高明的攔截到 mms 網址,mplayer 也會因為讀到加密的 asf 格式,而抱怨 “This file has been encumbered with DRM encryption, it will not play in MPlayer!“。除非你先參考 [MS-DRM]: Digital Rights Management License Acquisition Data Structure 實做了 Linux 客戶端,或者認真讀了 Beale Screamer 的 Microsoft’s Digital Rights Management Scheme – Technical Details,把 content key 偷解出來,如此就可以透過 mplayer/libavformat 直接觀看 hiChannel 的 asf 串流。
因此,雖然中華電信 hiChannel 免費提供轉播服務,Linux 平台的使用者依然無福享受。
所幸,中華電信的另外一個數位家庭服務,也提供了線上轉播的服務給註冊會員使用,目前開放註冊後免費試用一個月的優惠,而且解析度 (640×480) 比 hiChannel 還高。但麻煩的是,你得使用 Windows Media Player 11 才能登入、註冊,而且註冊程序不甚方便。
好東西是,數位家庭服務最後提供的串流是沒有加密的,於是你可以直接用 mplayer 或任何可以解 WMV3 格式的播放軟體開。於是,我註冊了個帳號,並隨手用 Python/GTK+/Gstreamer 為自己寫了個播放小程式,讓我可以在 Debian GNU/Linux 上觀看轉播
目前這個瀏覽軟體只擺了五個奧運轉播頻道,預期一個月內失效。執行需要 python2.5, python-gtk2, python-gst0.10. 欲觀看視訊服務,請洽 數位家庭服務。
FourDollars – 轉播程式寫好了,戰況討論聊天室就交給你了。;-)