CIT 小檔案

Constrained Image Trigger (CIT)  2005 年出現在 ITU 的 draft 標準 “High level Requirements for a Digital Rights Management Bridge to a Home Network" 中. 裡面的文字大概是這樣:

Constrained Image Trigger or “CIT" The field or bits used to trigger the output of a “Constrained Image" in the High Definition Analogue Output of Set Top Boxes.

Constrained Image The visual equivalent of not more than 520,000 Pixels per frame (e.g. an image with resolution of 540 vertical lines by 960 horizontal lines for a 16:9 aspect ratio). A Constrained Image can be output or displayed using video processing techniques such as line doubling or sharpening to improve the perceived quality of the image.

當這個功能打開, Set Top Box (STB) 只能從類比輸出較小的畫面 (960 x 540).

ITU 這邊的進展我還沒有去查證, 不過它已經是 OpenCable 規格的一部分. http://www.cablelabs.com/specifications/archives/OC-SP-MC-IF-C01-050331.pdf

在好萊塢的方面, 他們也在推這個 feature 給美國聯邦政府. 請參考: Arrows in Hollywood’s Video Restrictions Bow, 看來是還沒有通過. 若是一個叫做 SOC (Selectable Output Control) 的功能打開, CIT 就會在類比輸出生效.

如果這個功能被通過了, 當我們從 cable 或是衛星接收藍光光碟片的內容時, 類比輸出只剩 960×450, 縱然使用者買了昂貴的 Full HD LCD TV, 也只能看到 scale up 的較低品質畫面. 至於 SOC 會不會影響到數位輸出呢? 我想是不會, 因為數位的部分可以交由後端的裝置 (如 TV) 把關, 讓高品質畫面不被複製. (假如有山寨 BD player 或 TV 呢?)

我還有個疑問? 現在大家都可以 rip 藍光光碟片, 做出一大堆我們解不完 bug 的 TS (Transport Stream) 檔. 光是加上 CIT, SOC 可以擋住他們嗎?

 

我是卡奴 – 顯示卡更新記

前陣子玩了幾個講究畫質的 game 之後, 覺得自己的顯示卡有點遜, 因此考量到要換一張顯卡這件事. 不過, 這個念頭, 最後為我帶來了不少的小麻煩.

首先, 當然是在網路上 survey, 想要找一張夠高級, 又不會太貴的顯卡. 看來看去, 現在的主流顯卡大概就是在 Nvidia 9600GT 那個等級. 雖然也有 ATI 或是他牌的東西可以選, 不過我原來就是用 N 系列的卡片, 這樣很容易就可以根據數字的大小, 來分辨效能的差異. 而不致於買了另外一個牌子, 結果等效於我現在的顯卡或是更低一級, 那就實在無言了.

在諸多 9600GT 的顯卡當中, 我挑了memory 最多的一張卡, 那就是旌宇的 SX96GT2048D2-HP. 它號稱有 2GB 的 DDR, 好像還滿炫的. 以我過去的印象, 記憶體愈多, 好像等級就愈高. 如果記憶體高達  2GB, 豈不就等於是: 買不起法拉利跑車, 至少買到速霸陸的 “硬皮鯊" 了嗎?!

為了買這張卡, 我還特別去燦坤續會員約 (網路上的售價比店面便宜了好幾百塊, 大家切記). 等到買回來之後, 才赫然發現我沒有大腦. 這張卡可不是我以前的小可愛, 而是身高丈二, 腰粗膀圓. 它要被塞進機殼裡的話, 要拆掉好多條訊號線、電源線, 才能勉強進駐.

重新開機之後, 本以為可以從此邁入新的紀元. 想不到在 Windows log in 的畫面, 硬是出現兩行小小的英文字, 說是電源不足, 必須降低頻率以保護電路. 開機之後, 很明顯地感覺到電腦慢了許多. 這….

只好再檢查一下手冊. 旌宇的手冊不能算太薄. 可是中文的部分只有兩頁, 其他的部分是我用不到的語文. 從圖形上來推斷, 好像我少插了一個顯示卡的 5V/12V 輔助電源. 再去翻電源供應器的手冊, 原來還有一根 6 pin 的 PCI-E 電源我沒用到. 但旌宇手冊上說的, 某些型號的顯示卡需要外接電源, 又畫了錯圖, 也實在有誤導的嫌疑.

本來這張卡就已經很占空間了. 再多接一個 PCI-E 接頭, 瞬間又長長了 1 cm (為何廠商不讓它往上發展呢?). 這樣我就只好拆掉兩顆硬碟了. 比較小顆的犧牲掉, 比較大顆的穿上 5 吋的外套, 住到光碟機的樓上去. 花了些時間, 把所有的線拆掉重接一次, 我再次準備迎接新顯卡的時代.

不過呢…開啟電源之後, 顯卡風扇的聲音超大不說, 根本就無法登入, Windows 載入到半途就藍色畫面、重新開機了.

從安全模式進去看, 電腦也沒抓錯顯卡的驅動程式, 的確是 9600GT. 不過電腦就是開不起來, 噪音又非常非常地大. 至此我已經有點灰心了, 上網搜尋 “燦坤 退貨" 等關鍵字, 順便找一找 “低功耗 顯示卡". 心裡想著, 只要能夠成功在燦坤退貨, 我一定改買 Asus 那一張沒有風扇的顯示卡, 沒有風扇就不會有噪音了吧!

第二天興沖沖去燦坤退換貨, 不過對方也非常合乎應對進退標準地, 把我的顯示卡拿去測試了一次, 證明它是可以開機的. 店員說道: “通常都是電源供應器瓦數不足的問題, 這張卡很吃電." 我問明了他的測試機只有 400W 之後, 心裡將信將疑. 我已經用了 500W 的電源供應器, 難道我應該去買 600W 的嗎?

不過既然可以開機成功, 至少這張卡還能夠用. 只要想辦法增加電源的收入或是削減開支就好了.於是我改道去順發看看有何解法? 因為順發的換貨很方便, 在和燦坤相比之後, 我覺得以後還是去順發買比較有彈性. 燦坤只有產品有瑕疵才能退換, 順發買錯就可以退換. 畢竟我拿到換貨單只會買更貴的東西, 退還的產品也包裝完整, 店家的損失有限. 

順發有一整櫃的電源供應器, 但 600W 的電源供應器只有一個牌子, 售價 6000 多 NTD. 我想我應該不會花那個錢, 只好想一些比較便宜的替代方案. 畢竟我的電腦裡面有 7 顆硬碟也實在是多了一點點. 如果買一顆 1.5TB 的新硬碟, 那麼 7 顆至少可以減到 3 顆. 然後再買個 SATA RAID 的硬碟外接盒, 這樣應該就可以幾乎充分 re-use 了.

經濟不景氣, 算盤還是要打的精一點. 我忽然發現一個很好用的伽利略硬碟抽取盒, 可以取代外接盒. 它只要賣 650 NTD, 卻可以讓我的大部分硬碟都可以活到為國捐軀、馬革裹屍, 只要把 ATA 硬碟弄到外接盒就行了. 有了這個發現之後, 我就捨棄了那個 29xx NTD 的 SATA RAID 外接盒, 再次成為伽利略公司的忠實客戶. (我發現我買過他們不少東西, 都是便宜又實用的, 像是 PC to PC 的 USB 連接線之類的).

回到顯示卡這個話題, 花了我不少寶貴的時間之後, 我終於發現是 driver 在作怪, 而不是電源供應不足. 如果用顯示卡所附的光碟片 driver, 就可以解決開機藍屏的問題. 不過為了節能減碳, 我還是把 5 顆硬碟拿出來了. 他們的資料都存在 1.5TB 那一顆硬碟, 並且放在抽取盒裡面. 最後就是可憐的 4 顆 ATA 變得無家可歸了, 因為我已經懶得去買他們的外接盒.

旌宇的顯卡在開機的過程中, 固然會發出比較大的噪音, 但是進入 Windows 之後, 聲音就小了很多, 進入可以接受的範圍. 效能方面我還沒有感受到, 可能要看看進入以前那些遊戲才知道虛實. 比方說, 我以前只要玩 GTA 就會頭昏眼花. 扣除本人太有道德或良心的因素之外, 顯示卡的張數不足可能才是主因. 所以, 如果我有一天把 GTA 玩下去了, 再來跟大家推薦旌宇的這張顯示卡.

ADPCM 的小註解

根據 Wiki 的說法, 最早是在電話訊號上使用的 8 bit 數位訊號, sampling rate 為 8KHz, 因此產生 64K bit per second 的 PCM 訊號.

這個訊號來源則是 12 或 13 bits 的類比訊號, 經過非線性的映設之後, 變為 8 bits. 此即 m-law 或是 a-law 的壓縮, 通稱 G.711.

ADPCM 可以把 G.711 的 PCM 訊號壓縮為 4 bits, 此即 G.726.

G.726 有 16/24/32/40 Kbps 幾種不同的傳輸速度. 24 和 40 Kbps 屬於 G.723 的範圍, 32 kbps 屬於 G.721 的範圍. 16Kbps 就是 G.726 所獨有的.

由於 bit rate 不同, 它們使用的 bit size、Quantizer 也不一樣. 大概整理如下:

Bit Rate(K bps) Bit size(bit) Quantizer level
16 2 4
24 3 7
32 4 15
40 5 31

 

G.726 encoder 每一 channel 需要 3.5 MIPS, decoder 需要 3.7 MIPS 左右. 

Microsoft 的 ADPCM 支援 4:1 的壓縮, 換言之, 它是 16 –> 4 bits, 也就是專攻 32 Kbps.

詳情看這個網址最好: http://sox.sourceforge.net/AudioFormats-4.html

HE-AAC 小檔案

因為客戶又在問, 所以寫個小 memo. 以後再有人問, 就轉寄這個內容給他好了. 雖然 Wiki、Google 都找得到這些資訊, 但是請客戶上網去找就太沒形象了. 還是自己準備一版吧!

HE-AAC 是 AAC 眾多 profile 之一, 這些 profile 包括:

1. Main profile (以淘汰, 這麼多年來, 只測到一隻 sample)

2. Low Complexity profile (就是所謂的 LC-AAC)

3. Sample Rate Scalable profile (SRC)

4. Long Term Predication profile (LTP)

5. High Efficient profile (即 HE-AAC)

6. Scalable to Lossless (STL, 即 Fraunhofer IIS 版的 HD-AAC)

7. Low Delay AAC (即 LD-AAC)

HE-AAC 比一般 AAC 差在哪裡呢? 

1. 從 MPEG2 AAC 到 MPEG4 AAC 時, 增加了 Perceptual Noise Substitution (PNS), 顧名思義就是用 pseudo random noise 取代 noise input. 另外也增加了 LTP.

2. 增加了 Spectral Band Replication (SBR), 即 HE-AAC version 1.

3. 增加了 Parametric Stereo (PS), 即 HE-AAC version 2.

其中 SBR 簡單地說就是, 犧牲高頻, 只採用低頻和中頻的訊號去複製出 (Replication)高頻. 至於怎麼複製呢? 就是利用低頻與中頻的諧波 (harmonic). 當 AAC 加了 SBR 的技術就變成 HE-AAC, MP3 加了 SBR 的技術就變成 MP3pro. 這個 side information 通常是附加的, 使得舊的 decoder 也可以播出少了高頻的音樂, 勉強還可以聽就是了.

PS 技術是針對低頻的 stereo 訊號, 將它壓縮為 mono 的訊號, 這樣就節省了一定的 bit rate, 想要還原回一定的音質的話, 就需要補上 down-mix 成 mono 的過程中, 已經拿出來的一些 side information. 因此, 一個只支援 HE-AAC version 1 的 decoder, 在播 HE-AAC version 2 的音樂的時候, 就會只聽到一個聲道.

  

PKI 小檔案

看完了秘鑰, 再來看一種公開鑰匙的加密方法 – PKI (Public key infrastructure). PKI 和 public key algorithm 加密並不一樣, 主要的差別在於 CA (certification authority) 的有無.

先來看一般的公開金鑰加密方法 (個人一直不懂的是, 為何沒事要把鑰匙取名叫金鑰, 純金又不能做鑰匙?).

如果仍然用 A 和 B 來舉例, 此時還需要其他的人或物介入其中. 一個是公正的第三人 C, 另外一個是數位憑證.

當 A 想要在 B 證券公司網路下單,  此時 A、B 不但要彼此檢查對方的身分, 也要防止下單資料被駭客修改了.

為了辨識資料是否被修改, 需要用到雜湊 (hash) 的技術. 首先把文件經過雜湊演算法計算, 產生一組固定長度的指紋 (fringer print) 或是數位摘要 (digital digest), 比方說 128 或 160 bits. 此時, 只要文件的內容經過修改, 就很難得到一模一樣的指紋.

當然, 這個指紋的傳送, 也不適合適明文, 它也是要加密的. 經過 A 的 private key 以 RSA 之類的演算法加密之後, digital digest 就變成了 digital signature (數位簽章).此時 A 已經準備好要傳送的明文文件, 以及數位簽章, 接著就可以透過 share private key (所謂共同金鑰) 加密 (如 DES 演算法).

不過, 此時 B 公司並不一定會保管與 A 共有的 share private key . 畢竟 B 公司可能有很多很多的客戶, 要是幫每個客戶、每筆交易都存一隻鑰匙的話, 那也挺麻煩的. 鑰匙可以重複使用的話, 感覺又太不保險了.

所以 B 公司希望 A 乾脆即時產生一隻share private key , 然後一起送給 B, 這樣就省事了. 當然, 鑰匙不能就這樣大剌剌地傳過來, 順便加個密吧! 因此 A 要用 B 公司指定的 B public key 來加密 share private key (如 RSA 演算法)

當 B 公司收到資料之後, 首先用 B 的 private key 來解 B 的 public key 加密的 share private key. 得到 share private key之後, 再用它來解 DES, 得到 A 的明文和 A 的數位簽章.

接著 B 公司再用 A 的 public key 來解數位簽章, 得到數位摘要. 這個數位摘要就可以用來判斷 A 的文件, 是否遭到竄改.

到這裡為止, A、B 雙方已經可以互相溝通了. 只要 A 和 B 都有 private key、public key 就行.

繼續閱讀「PKI 小檔案」