starroach 兄:
引用:
Originally posted by starroach
關於這一點,小弟覺得,目前的硬體播放機,規格表上似乎都沒有講清楚支援到那個profile...或許這也因為目前還在「推廣大家知道MPEG4」的階段吧
假如只有到simple profile的話,大家壓Xvid/Divx幾乎都會用B-frame (這是ASP的功能沒記錯吧),那麼不就在這些機器內無法播放...@_@
所以這是機器的DSP晶片的問題了...只能等待更有力的硬體堆出了
|
現在的硬體晶片應該可以解碼 B-frame,不過不支援 GMC 和 Qpel。
不過就算支援 B-frame,我也不清楚它到底是支援 "DivX 5 的 B-frame",還是支援 MPEG-4 的 B-frame。
這兩個有什麼不同呢,其實規格上是一樣的,但是 MPEG-4 的 B-frame 個數沒有限制,DivX 5 的 B-frame 限制最多只能一個,也就是要維持 IBPBPB... 這種型式。
會有這個限制,我想是因為 AVI 這個載體的關係,AVI 不適合放 B-frame,當初設計的時候就沒有考慮 B-frame,現在是用 packed bitstream 這種 hack 的設計勉強避免影音不同步的問題。
我想硬體晶片應該沒有必要去遷就 DivX 5 的限制,就算現在有限制只能解一個 B-frame,將來應該會破除這種限制。
XviD 可以壓縮無限個 B-frame。
另外,就算硬體解碼晶片宣稱他可以解 GMC,我也還是要問,你支援的是 "DivX 5 的 GMC",還是 MPEG-4 的 GMC。
這兩在規格上也沒有不同,但是 MPEG-4 原本的設計,GMC 最多可以有 4 個 warpping points,然而 DivX 5 做不出來(?),或者認為沒有必要做,所以 DivX 5 的 GMC 只支援 1- warpping point。只支援 1-warpping point,GMC 等於是廢物。
所以晶片標榜可以解 GMC,到底是可以解到幾 point 的 GMC,這個必須要說明清楚,因為目前 XviD 的 GMC 是 3- warpping point 的 GMC,用 DivX 5 是無法解的。
我相信等那些大廠,例如 SONY, Panasonic 等公司發表 MPEG-4 解碼晶片或播放機,就不會有這些限制,做出這種蹩腳的 decoder。
引用:
ps.順便想請教一下Shade大,MPEG4除了simple profile、Advanced simple profile(這個算自成一個profile還是只是simple下的分支profile呀?)、還有好像聽過的studio profile,還有什麼profile嗎?目前Xvid/Divx只有作到simple profile與Advanced simple profile對吧?!
|
Advanced Simple Profile(ASP) 是自成一個 Profile,多出許多壓縮工具。
MPEG-4 各個 Profile 所使用的壓縮工具,請參考
http://www.m4if.org/resources/profiles/visualtools.php
這裡面沒有列 Studio Profile,因為 Studio Profile 是新設立的 Profile,在 MPEG-4 Version 3 裡面才提出的。
XviD 和 DivX 都號稱支援到 ASP,但是如前所述,DivX 的 B-frame 和 GMC 都是蹩腳,不完整的 B-frame 和 GMC。
另外,DivX 也沒有做出 ASP 應該要有的 "Method 1/2 Quantization" 這項功能(請參考上面的網址),這個功能就是支援 H.263/MPEG 兩種量化方式,DivX 沒有,只支援 H.263。
XviD 和 DivX 一樣,其實也有沒有做完全的部分,例如所有 Profile 都要支援的 "Error Resillience",XviD 就沒有做全,原因是因為,呃,開發人員看到 spec 的這一段,就先跳過去,這個不是目前關注的焦點
XviD 還支援了 Advanced Real Time Simple Profile(ARTS Profile) 的 "Dynamic Resolution Conversion" 這個功能,在 XviD 裡面叫做 "Reduced resolution",這個是偉大的 skal 大神的貢獻,但是一般幾乎不會去用這個功能,純粹是做出來 "實踐理論",作為一種樂趣的
總和以上,XviD/DivX 雖然有支援 ASP 的"重要"、"顯著"的功能,但是並沒有把所有的功能都做完全,這其中 XviD 又做得比 DivX 多很多。