IMA4 小筆記

客戶的要求如土石流一樣地來, 既然不能遷村, 就要做好防災的準備, 免得不小心就滅村了. 這次的需求是 IMA4, priority 大概第 40 順位.

這個 IMA4 是什麼東西呢? 它是 Apple Quick Time 所支援的 ADPCM 格式. 一般是 1~2 聲道, 左聲道 block 放完才放右聲道 block, 然後反覆左右, 左右 的 blocks 直到檔尾. 每個 block 由 64 個 nibble 所組成, 1 nibble 也就是 1/2 bytes or 4 bits.

為何要選 nibble 為單位呢? 據說是為了要避免 endian 的問題, 只要把 data 以 4 bits 為單位組裝起來, 就可以依據平台來解釋它是 big endian 或是  little endian. Apple 號稱這個設計有 cross-platform 的功效.

[離題一下] 話說 nibble 很像另外一個單字 nipple (奶頭), 有位前同事就把這兩者搞混了, 也誤導了我一陣子.  不過人非聖賢, 孰能無過. 身為一個工程師, 程式沒錯就很偷笑了, 偶爾打印一些 FETAL ERROR, 或是程式裡面命名一些 Globle 變數也是難免的. 反正看久就習慣了, 見怪不怪真可以說是中華文化根深蒂固的一個部分.  哈哈!

name bits structure note
preamble 16 ppppppp piiiiiii

p 代表 9 bits signed predictor,
其中後 6 bits 預設為 0

i 代表 7 bits initial step index.

block 32×8 n1n0 n3n2 …. 左聲道, nibble 0 在 nibble 1 的後面,
但是要先解, 依此類推.
block 32×8 n1n0 n3n2 …. 右聲道, 單聲道就沒有這部分,
換下一個左聲道的 block.

 欲了解 IMA4 的全貌, 最好參考 Apple 的網頁.

http://developer.apple.com/mac/library/technotes/tn/tn1081.html

 

[轉載] 新竹市有提供「流感快速篩檢」與備有抗病毒藥劑之診所名單

 

新竹市有提供「流感快速篩檢」與備有抗病毒藥劑之診所名單
 
診所名稱
地址
 電話
備註
張漢傑小兒科診所
新竹市南門街14號
5239779
 
范耳鼻喉科診所
新竹市北大路264號
5237380
 
恩輝診所
新竹市內湖路62號
5375573
 
宏安診所
新竹市中華路5段24號
5380985
 
張桓小兒科診所
新竹市林森路250號1樓
5253696
 
深潭耳鼻喉科診所
新竹市中正路57號B1
5255233
 
劉復國診所
新竹市中山路48號
5210085
 
彭耳鼻喉科診所
新竹市中央路195號
5428888
 
吳廷臣診所
新竹市中央路176號
5346677
 
英慈耳鼻喉科診所
新竹市光復路2段314號
5722846
 
郭啟昱小兒科診所
新竹市西大路664號
5223855
 
簡志澔小兒科診所
新竹市西大路664號
5223855
 
城佑耳鼻喉科診所
新竹市建中路59號1樓
5748329
 
慈佑小兒科診所
新竹市民主路49號
5456526
 
書香小兒科診所
新竹市東大路2段5號1樓
5351110
 
簡小兒科內科診所
新竹市西大路364號
5223963
僅有藥劑
石銘煌診所
新竹市東門街136號
5277332
僅有藥劑20盒
杏春內兒科診所
 新竹市民富街101號
5214162
僅有藥劑19盒

資料提供:新竹市醫師公會
資料日期:98年8月26日

 

 

[相關連結]
 
預防自保/H1N1恐爆發 我該怎麼辦?(上)
預防自保/H1N1恐爆發 我該怎麼辦?(下)

 

先手

上週五的時候, 天秤座客戶發了一個 bug 叫我們解. 為了解這個 bug, 其實我們要改變架構. 還好我們預先想到要做這個改變, 所以週五有東西可以交差.

週六的下午, 客戶又說這個 bug 有 side effect. 還好, 週五我們自己 update 到最新版, 也看到 QA board 有一個 bug, 雖然其他平台和 AP 看起來沒問題, 週五我們以最高的優先級更正它. 所以週六的問題一爆發, 我們就有版本可以更正.  

把 update 版本寄出去之後, 我心裡浮出 "先手" 這兩個字. 先手是圍棋的用語, 因為圍棋就是要爭先手, 類似賣迴轉壽司的 "爭鮮"! 爭甚麼爭? 爭先啊! "先"才能讓對方被動. 如果沒有先手, 這個週六可能只好手忙腳亂地抓 Irene 和 Taro 來 debug, 至於能否順利完工也是個疑問?

如果把工作做好需要先手, 在市場上賣產品也是要先手. 即使讓 9 目才出手, 也要專心開發一個偏斜的角落, 鞏固後並且發展到左右兩邊, 最後入主中原. 若是明明落在後手, 還要和對手爭同一塊地; 除非另有劫材, 否則無論 "勢力" 發展地多大, 都可能氣盡被提, 到頭來一場空.

我知道很多聰明的人都是橋牌高手, 因為他們善於記憶與計算, 像是沈君山教授之類的. 有名的圍棋高手則不知道有誰也是著名的工程師? 或許是把圍棋下好本身就很花時間, 於是不容易再搞好另外一個領域. 我聽同學說, 他有個手下 (IC designer) 功力不錯, 所以即使他天天都在玩網路圍棋, 他也睜一隻眼閉一隻眼. 這個大概是我聽過最能兼顧兩者的範例了, 哈!

我的圍棋下得極差, 但是我曾經花了時間寫一個圍棋對弈程式. 其中很有挑戰性的一環是要判斷死活,氣盡之後自動清空死棋. 因為每個棋子有 4 個鄰居, 邊角的規則也不太一樣. 另外包括要檢查不能反覆打劫, 這個則容易很多. 我專心 debug 了一陣子, 才做到完美無缺. 回想起來這都是研究所時候的事了…

"先手" + "有資源" 才能贏. 下圍棋的時候, 資源是無限的, 而現實中則不然. 除了先, 還要知道爭什麼? 否則資源終究會不夠用.