2012年11月29日 星期四

AVS? MPEG-4? H.264?

AVS(Audio Video coding Standard),即數字音視頻編解碼技術標准,為中國第二代信源編碼標准。[1]

AVS(Audio Video coding Standard)為中國具備自主知識產權的第二代信源編碼標准,此編碼技術主要解決數字音視頻海量數據(即初始數據、信源)的編碼壓縮問題,故也稱數字音視頻編解碼技術。目前國際上音視頻編解碼標准主要兩大系列:ISO/IEC JTC1 制定的MPEG系列標准,ITU 針對多媒體通信制定的H.26x系列視頻編碼標准,和G.7系列音頻編碼標准。1994年由MPEG和ITU合作制定的MPEG-2為第一代音視頻編解碼標準的主要格式,是目前國際上最為通行的音視頻標准。

經過十年多演變,音視頻編碼技術產生了巨大的變化,後起之秀輩出。目前音視頻產業可以選擇的信源編碼標准有四個:MPEG-2、MPEG-4、MPEG-4 AVC(簡稱AVC,也稱JVT、H.264)、AVS。從制訂者分,前三個標準是由MPEG專家組完成的,第四個是中國自主制定的。從發展階段分,MPEG-2是第一代信源標准,其餘三個為第二代標准。從主要技朮指標—編碼效率比較:MPEG-4是MPEG-2的1.4倍,AVS和AVC相當,都是MPEG-2兩倍以上。

AVS標準是《信息技術 先進音視頻編碼》系列標準的簡稱,AVS標准包括系統、視頻、音頻、數字版權管理等四個主要技朮標准和一致性測試等支撐標准。在2003年12月18日-12月19日舉行第7次會議上,工作組完成了AVS標準的第一部分(系統)和第二部分(視頻)的草案最終稿(FCD),和報批稿配套的驗証軟體也已完成。2004年12月29日,全國信息技術標准化技術委員會組織評審並通過了AVS標准視頻草案。2005年1月,AVS工作組將草案報送中國信息產業部。3月30日,中國信產部初審認可,標准草案視頻部分進入公示期。2004年度第一季度(第8次全體會議)正式開始「數字版權管理與保護」標準的制定,目前已近尾聲。2005年初(第12次全體會議)完成了第三部分(音頻)草案。


AVS與H.264相比,主要具有以下特點:
1.AVS的性能高,與H.264的編碼效率相當。
2.AVS的複雜度低,編碼複雜度比H.264明顯低,軟硬體實現成本都低於H.264。
3.AVS編碼技術為中國主導的知識產權,專利授權模式簡單,費用較H.264低。


H.264延伸閱讀[3]:
H.264/MPEG-4(AVC)

H.264因其是藍光的一種編解碼標準而而著名,所有藍光播放器也都必須要能解碼H.264。也被廣泛應用於Youtube, itune store, or DVB-S, C, T, T2的環境中
在台灣以DVB-T數位電視廣播格式進行高解析度無線數位電視頻道,採用H.264/MPEG-4 AVC作為視訊編碼格式,而其中包括了以下的電視台:

公共電視(PTS) (HiHD)
民間全民電視(FTV) (民視HD)
中國電視台(CTV)(中視HD台)
台灣電視台(TTV)(台視HD台)
中華電視台(CTS)(華視HD台)

Multiview Video Coding, MVC
於2009年11月完成,為3D立體視訊編碼的重要關鍵。據H.264/AVC附件H,MVC使得碼流結構可以表達一個視訊場景的不止一個檢視。MVC的工作中開發了兩個配置:多檢視高配置(Multiview High Profile)支援任意數量的檢視,立體高配置(Stereo High Profile)是為雙檢視立體視訊特別設計的


References:
[1] http://zh.wikipedia.org/wiki/AVS
[2] http://tech.sina.com.cn/focus/AVS_05_CN/index.shtml
[3] http://zh.wikipedia.org/wiki/H.264
[4] http://baike.baidu.com/view/403562.htm

2012年11月23日 星期五

MPEG-2的同步--STC,PCR,DTS,PTS

PTS:Presentation Time Stamp
DTS:Decoding Time Stamp
PCR:Program Clock Reference
SCR:Ststen Clock Reference
STC:System Time Clock

1. SCR
SCR是存在於PS中的,即PS的pack裡面的一個field。SCR用來提供decoder一個時間基準點。

2. ESCR
ESCR是位於PES裡面的,即PES的header裡面可能會有,當PES的packet要表示一個PES stream的時候,PES packet裡面的ESCR就表示這個PES packet的所期望的到達decoder的時間。

3.PCR
PCR是TS裡面的,即TS packet的header裡面可能會有,他用來提供該TS packet到達decoder的時間,他的作用於SCR類似。

4. DTS, PTS
對於一個ES來說,比如視頻,他又許多I,P,B幀,而P, B幀都是以I,P幀作為參考。由於B幀是前向後向參考,因此要對B幀作decode的話,就必須先decode該B幀後面的P,或者I幀,於是,decode的時間與幀的真正的present的時間就不一致了,按照DTS一次對各個幀進行decode,然後再按照PTS對各個幀進行展現。 

有時候PES header欄位也會有DTS,PTS,對於PTS來說,他代表了這個PES包得payload裡面的第一個完整地audio access unit或者video access unit的PTS時間(並不是每個audio/video access unit都帶有PTS/DTS,因此,你可以在PES裡面指定一個,作為開始)。 

PES header的DTS也是這個原理,只不過注意的是:對於video來說他的DTS和PTS是可以不一樣的,因為B幀的存在使其順序可以倒置。而對於audio來說,audio沒有雙向的預測,他的DTS和PTS可以看成是一個順序的,因此可一直採用一個,即可只採用PTS。

Reference:
[1] http://hi.baidu.com/yanl_cn/item/7619041421bdb10cd1d66d3b

2012年11月9日 星期五

Linux - Kernel panic

Kernel panic的意思是指,OS遇到了一個內部的錯誤,這個錯誤並沒辦法被安全的修復起來,而導致沒辦法繼續運行,可能必須重新啟動才行。有點像Windows 的藍屏死機。

而造成Kernel panic的原因,大多是是擴充記憶體出現問題,但亦有可能是其他硬體產生。在嵌入式系統環境下,可用的memory空間往往不夠,因此一旦kernel編譯出來,必需要去指定該用多少空間,不然一旦超出範圍,就一下子就當了。


Note:
以我這次遇到的狀況是版子上電壓偏差過大(ex. 原本腳位是3.3V的設計,但實際用電表量後只剩下2.2V),所以導致CPU無法R/W FLASH導致問題產生。