碼率就是資料轉送時單位時間傳送的資料位元數,一般我們用的單位是kbps即千位元/秒。通俗一點的理解就是取樣率,單位時間內取樣率越大,精度就越高,處理出來的檔案就越接近原始檔案,但是檔案體積與取樣率是成正比的,所以幾乎所有的編碼格式重視的都是如何用最低的碼率達到最少的失真,圍繞這個核心衍生出來的cbr(固定碼率)與vbr(可變碼率),都是在這方面做的文章,不過事情總不是絕對的,從音頻方面來說,碼率越高,被壓縮的比例越小,音質損失越小,與音源的音質越接近。“碼率”就是失真度,碼率越高越清晰,反之則畫面粗糙而多馬賽克。電腦中的資訊都是二進位的0和1來表示,其中每一個0或
1被稱作一個位,用小寫b表示,即bit(位);大寫B表示byte,即位元組,一個位元組=八個位,即1B=8b;前面的大寫K表示千的意思,即千個位(Kb)或千個位元組(KB)。表示檔案的大小單位,一般都使用位元組(KB)來表示檔案的大小。
Kbps:首先要瞭解的是,ps指的是/s,即每秒。Kbps指的是網路速度,也就是每秒鐘傳送多少個千位的資訊(K表示千位,Kb表示的是多少千個位),為了在直觀上顯得網路的傳輸速度較快,一般公司都使用kb(千位)來表示,如果是KBps,則表示每秒傳送多少KB。1KBps=8Kbps。
ADSL上網時的網速是512Kbps,如果轉換成位元組,就是512/8=64KBps(即64KB/秒)。
幀數簡單地說,幀數就是在1秒鐘時間裡傳輸的圖片的幀數,也可以理解為圖形處理器每秒鐘能夠重新整理幾次,通常用fps(Frames Per Second)表示。每一幀都是靜止的圖象,快速連續地顯示幀便形成了運動的假象。高的幀率可以得到更流暢、更逼真的動畫。每秒鐘幀數
(fps) 愈多,所顯示的動作就會愈流暢。一般來說30fps是可以接受的,所以要避免動作不流暢的最低fps是30。除了30fps外,有些電腦視頻格式,例如 AVI,每秒只能提供15幀。我們之所以能夠利用網路攝影機來看到連續不斷的影像,是因為影像感應器不斷攝取畫面並傳輸到螢幕上來,當傳輸速度達到一定的水平時,人眼就無法辨別畫面之間的時間間隙,所以大家可以看到連續動態畫面。
每秒的幀數(fps)或者說幀率表示圖形處理器情境時每秒鐘能夠更新幾次。高的幀率可以得到更流暢、更逼真的動畫。一般來說30fps就是可以接受的,但是將效能提升至60fps則可以明顯提升互動感和逼真感,但是一般來說超過75fps一般就不容易察覺到有明顯的流暢度提升了。如果幀率超過螢幕重新整理率只會浪費圖形處理的能力,因為顯示器不能以這麼快的速度更新,這樣超過重新整理率的幀率就浪費掉了。
一般用“FPS(frame per second,每秒鐘畫面更新的數量)”來表示該項指標。在欣賞電視、電影畫面時,只要畫面的重新整理率達到24幀/秒,就能滿足人們的需要。同樣的,在玩普通的遊戲時,如果重新整理率達到24幀/秒即可,但在一些高速遊戲中(例如射擊遊戲),如果畫面的重新整理率還是只有24幀/秒,那麼就會感覺到畫面比較遲鈍,不夠流暢。
雖然理論上畫面的重新整理率越快越好,但過高的重新整理率並沒有實際意義——當畫面的FPS達到60幀/秒時,已經能滿足絕大部分應用需求。一般情況下,如果能夠保證遊戲畫面的平均FPS能夠達到30幀/秒,那麼畫面已經基本流暢;能夠達到50幀/秒,就基本可以體會到行雲流水的感覺了。一般人很難分辨出60
幀/秒與100幀/秒有什麼不同。
(2)是什麼影響了FPS
既然重新整理率越快越好,為什麼還要強調沒必要追求太高的重新整理率呢?其中原因是在顯示解析度不變的情況下,FPS越高,則對顯卡的處理能力要求越高。
電腦中所顯示的畫面,都是由顯卡來進行輸出的,因此螢幕上每個像素的填充都得由顯卡來進行計算、輸出。當畫面的解析度是1024×768時,畫面的重新整理率要達到24幀/秒,那麼顯卡在一秒鐘內需要處理的像素量就達到了“1024×768×24=18874368”。如果要求畫面的重新整理率達到50
幀/秒,則資料量一下子提升到了“1024×768×50=39321600”。
FPS與解析度、顯卡處理能力的關係如下:處理能力=解析度×重新整理率。這也就是為什麼在玩遊戲時,解析度設定得越大,畫面就越不流暢的原因了。
碼率影響體積,與體積成正比:碼率越大,體積越大;碼率越小,體積越小。
幀率影響畫面流暢度,與畫面流暢度成正比:幀率越大,畫面越流暢;幀率越小,畫面越有跳動感。如果碼率為變數,則幀率也會影響體積,幀率越高,每秒鐘經過的畫面越多,需要的碼率也越高,體積也越大。
解析度影響映像大小,與映像大小成正比:解析度越高,映像越大;解析度越低,映像越小。
看了上面的關係,你會發現,沒有提到清晰度的內容,因為清晰度對兩個元素有依賴性,需要討論兩種情況的。
首先明確一下“清晰度”的概念:所謂“清晰”,是指畫面十分細膩,沒有馬賽克。並不是解析度越高映像就越清晰。
簡單說:
在碼率一定的情況下,解析度與清晰度成反比關係:解析度越高,映像越不清晰,解析度越低,映像越清晰。
在解析度一定的情況下,碼率與清晰度成正比關係,碼率越高,映像越清晰;碼率越低,映像越不清晰。
但是,事實情況卻不是這麼簡單。
可以這麼說:在碼率一定的情況下,解析度在一定範圍內取值都將是清晰的;同樣地,在解析度一定的情況下,碼率在一定範圍內取值都將是清晰的。
先說說馬賽克,根據百度百科:
馬賽克指現行廣為使用的一種映像(視頻)處理手段,此手段將影像特定地區的色階細節劣化並造成色塊打亂的效果,因為這種模糊看上去有一個個的小格子組成,便形象的稱這種畫面為馬賽克。
我們在視頻轉換時出現的馬賽克是我們不想要的。它的出現是因為碼率不夠造成的色階缺失。打個比方(只是比方),源視頻相鄰10個像素點每個點代表一種顏色,需要10Kbp/s碼率,而你只分配了2Kbp/s給它,那麼原來的10個顏色就只能留下2個,如果還保持10個像素點的解析度,那麼每就會5個像素點共用一個顏色,出來的效果就是這5個像素點的螢幕地區就一種顏色填充,畫面就變得粗糙了。
打個比方,我們給予一個視頻 8000 kbp/s 的碼率,這算是比較高的碼率了,它能保證在720*576解析度下畫面上每個像素點都代表一個獨立的色塊而非從相鄰色塊渲染而來。在這種8000 kbp/s碼率下,我們說只要解析度小於720*576,畫面就是清晰的,因為畫面越小,越不需要藉助渲染來增加色塊。
反過來說,當解析度限定為352*288(畫面大小為720*576的四分之一),此時3000kbp/s碼率就可以保證其每個像素點的獨立性,那麼只要碼率高於3000kbp/s,就
可以保證映像的清晰度。
建議參考“常見視頻光碟片採用演算法、標準解析度及標準幀率(VCD SVCD KVCD DVD KDVD HDVD)”,看源視頻和哪個解析度相近,就用哪個解析度,這樣可以最小程度地對源視頻進行渲染。
如果源視頻是高清畫質,解析度特別高,高出DVD規格許多,那麼,因為DVD規格的最大解析度就是720*576,不能設定更高,所以,目標解析度最高只能保持到720*576。
前面說了,解析度不決定清晰度,解析度一定的情況下,碼率要高於某個數值才能保持絕對清楚,因此,如果目標碼率太低,出現馬賽克的情況很正常。
降低解析度當然可以解決馬賽克的問題,但是會丟失大量細節,在大螢幕電視上播放會因為放大渲染而產生顆粒感。但在小電視上看區別不明顯。
不出現或少出現馬賽克、同時用較高解析度保留更多畫面細節,其直接結果是佔用光碟片空間巨大,一張光碟片燒錄不了多少內容。
這裡面的矛盾想起來都令人頭疼,別人無法幫你做這個決定,只能由你自己權衡利弊,魚與熊掌不可兼得!