MEDIA INFO 下載:php
https://mediaarea.net/en/MediaInfo/Download/Windowscss
摘要: 整理了一些基本視音頻術語,用於入門和查詢使用。 H264: H264是視頻的標準,是MPEG4-10,基於內容的高效編碼方式. H.264/MPEG-4第10部分,或稱AVC(AdvancedVideo Coding,高級視頻編碼),是一種視頻壓縮標準,一種被普遍使用的高精度視頻的錄製、壓縮和發佈格式。初版標準的最終草案於html
整理了一些基本視音頻術語,用於入門和查詢使用。java
H264是視頻的標準,是MPEG4-10,基於內容的高效編碼方式.ios
H.264/MPEG-4第10部分,或稱AVC(AdvancedVideo Coding,高級視頻編碼),是一種視頻壓縮標準,一種被普遍使用的高精度視頻的錄製、壓縮和發佈格式。初版標準的最終草案於2003年5月完成。git
H.264/MPEG-4 AVC是一種面向塊的基於運動補償的編解碼器標準。由ITU-T視頻編碼專家組與ISO/IEC聯合工做組——即動態圖像專家組(MPEG)——聯合組成的聯合視頻組(JVT,Joint Video Team)開發。因ITU-T H.264標準和 ISO/IEC MPEG-4 AVC標準(正式名稱是ISO/IEC 14496-10 — MPEG-4第十部分,高級視頻編碼)有相同的技術內容,故被共同管理。算法
H.264因其是藍光盤的一種編解碼標準而著名,全部藍光盤播放器都必須能解碼H.264。它也被普遍用於網絡流媒體數據如Vimeo、YouTube、以及iTunes Store,網絡軟件如Adobe Flash Player和Microsoft Silverlight,以及各類高清晰度電視陸地廣播(ATSC,ISDB-T,DVB-T或DVB-T2),線纜(DVB-C)以及衛星(DVB-S和DVB-S2)。瀏覽器
============================================================================================緩存
Group of picture.服務器
這是視頻的一個概念,簡稱圖片組.視頻序列由多個圖片組組成.
============================================================================================
I幀,一個編碼後的圖像,I幀的圖像編碼不依賴於前向和後向編碼.
P幀,是這一幀跟以前的一個關鍵幀(或P幀)的差異,解碼時須要用以前緩存的畫面疊加上本幀定義的差異,生成最終畫面。
B幀,是雙向差異幀,也就是B幀記錄的是本幀與先後幀的差異(具體比較複雜,有4種狀況),換言之,要解碼B幀,不只要取得以前的緩存畫面,還要解碼以後的畫面,經過先後畫面的與本幀數據的疊加取得最終的畫面。B幀壓縮率高,可是解碼時CPU會比較累。
============================================================================================
Frame Per Second,每秒鐘幀率
============================================================================================
ES--Elementary Streams (原始流)是直接從編碼器出來的數據流,能夠是編碼過的視頻數據流(H.264,MJPEG等),音頻數據流(AAC),或其餘編碼數據流的統稱。ES流通過PES打包器以後,被轉換成PES包。
ES是隻包含一種內容的數據流,如只含視頻或只含音頻等,打包以後的PES也是隻含一種性質的ES,如只含視頻ES的PES,只含音頻ES的PES等。每一個ES都由若干個存取單元(AU)組成,每一個視頻AU或音頻AU都是由頭部和編碼數據兩部分組成,1個AU至關於編碼的1幅視頻圖像或1個音頻幀,也能夠說,每一個AU其實是編碼數據流的顯示單元,即至關於解碼的1幅視頻圖像或1個音頻幀的取樣。
是Mpg2文件的一種後綴, DVD的視頻格式,不包含音頻文件. MPEG-2 Video擴展名爲.m2v的文件是一個視頻文件。Video only (without audio) encoded using MPEG-2 compression
PS--Program Stream(節目流)PS流由PS包組成,而一個PS包又由若干個PES包組成(到這裏,ES通過了兩層的封裝)。PS包的包頭中包含了同步信息與時鐘恢復信息。一個PS包最多可包含具備同一時鐘基準的16個視頻PES包和32個音頻PES包。
爲支持MPEG-2音頻和視頻壓縮的視頻容器格式,相似於MPEG-1文件,並且還支持隔行掃描視頻和更多的音頻通道,一般用於數字視頻流。
Video containerformat that supports MPEG-2 audio and video compression; similar to an MPEG-1file, but also supports interlaced video and more audio channels; commonly usedfor streaming digital video.
M2P files aregenerally used for streaming media; standard MPEG-2 video files typically havean .MPG extension, while standard MPEG-2 audio files usually have an .MP2extension.
TS--Transport Stream(傳輸流)由定長的TS包組成(188字節),而TS包是對PES包的一個從新封裝(到這裏,ES也通過了兩層的封裝)。PES包的包頭信息依然存在於TS包中。
HDV Video File擴展名爲.m2t的文件是一個視頻文件。
被許多高清攝像機採用的高清視頻錄製格式,一般被稱爲HDV,採用MPEG-2壓縮存儲在DV或MiniDV的錄像帶高清視頻數據,支持720p的分辨率和1080i.
High-definitionvideo recording format used by many HD camcorders; commonly referred to as HDV;uses MPEG-2 compression to store HD video data on DV or MiniDV tapes; supportsresolutions of 720p and 1080i.
PES--Packetized Elementary Streams (分組的ES),ES造成的分組稱爲PES分組,是用來傳遞ES的一種數據結構。PES流是ES流通過PES打包器處理後造成的數據流,在這個過程當中完成了將ES流分組、打包、加入包頭信息等操做(對ES流的第一次打包)。PES流的基本單位是PES包。PES包由包頭和payload組成。
在於TS流的包結構是固定長度的,而PS流的包結構是可變長度的。PS包因爲長度是變化的,一旦丟失某一PS包的同步信息,接收機就會進入失步狀態,從而致使嚴重的信息丟失事件。而TS碼流因爲採用了固定長度的包結構,當傳輸誤碼破壞了某一TS包的同步信息時,接收機可在固定的位置檢測它後面包中的同步信息,從而恢復同步,避免了信息丟失。所以在信道環境較爲惡劣、傳輸誤碼較高時通常採用TS碼流,而在信環境較好、傳輸誤碼較低時通常採用PS碼流。
在數字電視系統中,模擬視音頻信號按照MPEG-2的標準,通過抽樣、量化及壓縮編碼造成基本碼流ES,基本碼流ES是不分段的連續碼流。
把基本碼流分割成段,並加上相應的頭文件打包造成的打包基本碼流PES,PES包和包之間能夠是不連續的。
在傳輸時將PES包再分段打成有固定長度188B 的傳送碼流TS或可變長度的節目流包(PS包)。
PES只是PS轉換爲TS或TS轉換爲PS的中間步驟或橋樑時,MPEG-2數據流互換的邏輯結構。
TS 和PS這兩種碼流分別適應於不一樣的場合應用,節目流PS適合在相對出錯較少的環境下使用,其長度是變化的,而傳送流TS可以把多個節目在基於一個或多個時間標識的基礎上構成一個流,傳送流適合於出錯較多的場合下使用。
用數據包傳輸的優勢是:網絡中信息可佔用不一樣的鏈接線路和簡單暫存。經過數據包交織把多個數據流複用成一個新的數據流,便於解碼器按照相應順序對數據包進行靈活的整理,從而,爲數據流同步和複用奠基了基礎。MPEG-2的結構可分爲壓縮層和系統層,其中ES屬於壓縮層,PES和TS/PS屬於系統層。 在PES層,主要是在PES包頭信息中加入PTS(顯示時間標籤)和DTS(解碼時間標籤)用於視頻、音頻同步。
而在TS流中,TS包頭加入了PCR(節目時鐘參考),用於解碼器的系統時鐘恢復。
在節目流PS包頭中加入SCR,它的做用與PCR域類似。
MPEG-2對視頻的壓縮產生I幀、P幀、B幀。
把幀順序I1幀-P4幀-B2幀-B3幀-P7幀-B5幀-B6幀的編碼ES,經過打包並在每一個幀中插入PTS/DTS標誌,變成PES。在插入PTS/DTS標誌時,因爲在B幀PTS和DTS是相等的,因此無須在B幀多插入DTS。
而對於I幀和P幀,因爲通過複用後數據包的順序會發生變化,顯示前必定要存儲於視頻解碼器的重新排序緩存器中,通過重新排序後再顯示,因此必定要同時插入 PTS和DTS做爲重新排序的依據。
例如,解碼器輸入的圖像幀順序爲I1-P4-B2-B3-P7-B5-B6,但顯示時P4必定要在B二、B3以後,在 PST和DTS的指引下,通過緩存器重新排序,以從建視頻幀順序爲:I1-B2-B3-P4-P7-B5-B6。
在沒有B幀的狀況下,I幀和P幀在編碼和解碼端的順序是一致的。
將PES包再打成更小的具固定長度的TS包時在其包頭位置加入了PCR和PID(包標識)。PID的值是由用戶肯定的,解碼器根據PID把TS(多節目傳輸流)上不一樣節目的TS包區分出來,以重建原來的ES。另外,TS的包頭包含一個4bit的連續計數器,連續計數器可對PID包傳送順序計數,據計數器讀數,接收端可判斷是否有包丟失及包傳送順序錯誤。因此TS的包頭具備同步、識別、檢錯等功能。
單一性:TS流的基本組成單位是長度爲188字節的TS包。
混合性:TS流由多種數據組合而成,一個TS包中的數據能夠是視頻數據,音頻數據,填充數據,PSI/SI表格數據等(惟一的PID對應)。
TS流由TS包組成,TS包爲固定大小。
爲何奇藝要把 iPad 客戶端上的 MP4 流改成 TS 流呢?TS 相對於 MP4 有什麼優點呢?
衆說風雲
MPEG2 Program Stream,即MPEG2-PS,與MPEG2-TS對應。MPEG2-PS是一種多路複用數字音頻、視頻等的封裝容器。其分爲MPEG-1和MPEG-2兩部分。Program Stream將一個或多個分組但有共同的時間基準的基本數據流 (PES)合併成一個總體流。它是爲可靠穩定的儲存媒介如光盤而設計的。據傳輸媒體的質量不一樣,MPEG-2中定義了兩種複合信息流:傳送流(TS:TransportStream)和節目流(PS:ProgramStream)。TS流與PS流的區別在於TS流的包結構是固定長度的,而PS流的包結構是可變長度的。
概念:
將具備共同時間基準的一個或多個PES組合(複合)而成的單一的數據流稱爲節目流(Program Stream)。
ES是直接從編碼器出來的數據流,能夠是編碼過的視頻數據流,音頻數據流,或其餘編碼數據流的統稱。ES流通過PES打包器以後,被轉換成PES包。
……
============================================================================================
pts: present time stamp
dts:decoding time stamp
cts: Composition Time Stamp
pts/dts是ES流轉化成爲PES流時,加入PES流頭部的信息。主要是爲了解決編碼和呈現時的數據順序不一樣所致使的問題,這個能夠見ES/PS/TS章節中的例子部分。
cts:
I think I have understood the CTS. it isonly for B-frames. Because B-frames may depends fowarding frames to decode, sothe CTS means when this B-frame can be decoded, usually that means all thedepended frames are received.
從上面這段註釋看,cts只用於B幀,用於告訴解碼端全部B幀倚賴的I,P幀都已收到。
scr:system clockreference
stc:system time clock
Mpeg-2的同步及時間恢復--STC,PCR,DTS,PTS:
|---------------------------------------------------------------|
| TS/PS: Transport stream
| Packetized Stream
| |-------------------------------------------------------
| | PES: Packetized Elementary Stream
| | |-----------------------------------------------
| | | ES:Elementary stream
| | | |------------------------------------
| | | | | | | |
| | | | GOP:Group of pictures
| | | |------------------------------------
| | | | | |
| | |------------------------------------------------
| | | |
| |--------------------------------------------------------
| |
|----------------------------------------------------------------|
============================================================================================
解析度,指空間採樣率。
============================================================================================
Advanced Audio Coding
出現於1997年,基於MPEG-2的音頻編碼技術。由Fraunhofer IIS、杜比實驗室、AT&T、Sony等公司共同開發,目的是取代MP3格式。2000年,MPEG-4標準出現後,AAC從新集成了其特性,加入了SBR技術和PS技術,爲了區別於傳統的MPEG-2 AAC又稱爲MPEG-4 AAC。
AAC編碼的主要擴展名有三種:
.AAC- 使用MPEG-2 Audio Transport Stream(ADTS,參見MPEG-2)容器,區別於使用MPEG-4容器的MP4/M4A格式,屬於傳統的AAC編碼(FAAC默認的封裝,但FAAC亦可輸出MPEG-4封裝的AAC)
.MP4 - 使用了MPEG-4 Part 14(第14部分)的簡化版即3GPP Media Release 6 Basic(3gp6,參見3GP)進行封裝的AAC編碼(Nero AAC編碼器僅能輸出MPEG-4封裝的AAC);
.M4A - 爲了區別純音頻MP4文件和包含視頻的MP4文件而由蘋果(Apple)公司使用的擴展名,Apple iTunes對純音頻MP4文件採用了".M4A"命名。M4A的本質和音頻MP4相同,故音頻MP4文件亦可直接更改擴展名爲M4A。
做爲一種高壓縮比的音頻壓縮算法,AAC壓縮比一般爲18:1,也有數聽說爲20:1,遠勝mp3;在音質方面,因爲採用多聲道,和使用低複雜性的描述方式,使其比幾乎全部的傳統編碼方式在同規格的狀況下更勝一籌。不過直到2006年,使用這一格式存儲音樂的並很少,能夠播放該格式的mp3播放器更是少之又少,目前所知僅有蘋果iPod、Sony Walkman(NWZ-A、NWZ-S、NWZ-E、NWZ-X系列)、任天堂NDSi和魅族M8(微軟最新推出的Windows 7附帶的Windows media player12也支持aac)。此外計算機上不少音樂播放軟件都支持AAC(前提是安裝過AAC解碼器),如蘋果iTunes。但在移動電話領域,AAC的支持度已很廣泛,Nokia、Sony Ericsson、Motorola等品牌均在其中高端產品中支持AAC(一開始主要是LC-AAC,隨着移動電話性能的發展,HE-AAC的支持也已普遍)。
AAC能夠支持多達48個音軌,15個低頻(LFE)音軌,5.1多聲道支持,更高的採樣率(最高可達96kHz,音頻CD爲44.1kHz)和更高的採樣精度(支持8bit、16bit、24bit、32bit,音頻CD爲16bit)以及有多種語言的兼容能力,更高的解碼效率,通常來講,AAC能夠在對比MP3文件縮小30%的前提下提供更好的音質。
============================================================================================
音頻採樣率
============================================================================================
看起來對音頻的採集在幾個點同時進行,而後分別造成音軌。
按擺設理解爲;
7.1聲道:
1)前左主音箱。
2)前左環繞音箱。
3)前右主音箱。
4)前右環繞音箱。
5)後左環繞音箱。
6)後右環繞音箱。
7)中置音箱。
加上一個重低音音箱。
5.1聲道:
1)前左主音箱。
2)前右主音箱。
3)後左環繞音箱。
4)後右環繞音箱。
5)中置音箱。
加上一個重低音音箱。
主要區別是還原三維空間聲音的效果7.1好於5.1
============================================================================================
採樣位深度
============================================================================================
見Audio sample rate
============================================================================================
ABR: Average Bit Rate
CBR: Constant Bit Rate
VBR: Variable bit rate
============================================================================================
比特率
在通訊和計算機領域,比特率(Bit rate,變量Rbit)是單位時間內傳輸或處理的比特的數量。比特率常常在通訊領域用做鏈接速度、傳輸速度、信道容量、最大吞吐量和數字帶寬容量的同義詞。
============================================================================================
============================================================================================
Ffmpeg爲開源庫,集合了各類音頻,視頻編解碼協議。在FFmpeg中沒有實現264解碼,調用了X264解碼。
X264是對H264編碼標準的一種具體實現,是一個優秀的h264視頻文件格式的編碼器。
GPAC: 多媒體框架GPAC(graphics, animation and interactivity),是一個爲科研和學術領域開發的多媒體的框架,支持 MPEG-4, VRML, X3D, SVG, LASeR 等 GPAC 包括一個多媒體播放器 Osmo4 以及多媒體打包工具 MP4Box。
============================================================================================
MP4,全稱MPEG-4 Part 14,是一種使用MPEG-4的多媒體電腦文件格式,擴展名爲.mp4,以存儲數字音頻及數字視頻爲主。 MP4至2013年還是各大影音分享網站所使用主流,即便他們是在網站上多加一層Flash的影音撥放接口。由於MP4能夠在每分鐘約4MB的壓縮縮率下提供接近DVD質量的影音效果。
============================================================================================
去交錯亦稱「反交錯」(deinterlacing)是將交錯式(即隔行掃描)(interlace)影像訊號轉換爲漸進式(逐行掃描)(progressive)影像訊號的一種方法。
============================================================================================
RTMP協議是被Flash用於對象,視頻,音頻的傳輸.該協議創建在TCP協議或者輪詢HTTP協議之上.
RTMP協議就像一個用來裝數據包的容器,這些數據能夠是AMF格式的數據,也能夠是FLV中的視/音頻數據.
一個單一的鏈接能夠經過不一樣的通道傳輸多路網絡流.這些通道中的包都是按照固定大小的包傳輸的.
FMS3(Flash Media Server)中RTMP有5種類型
RTMP,標準類型,非加密實時消息協議。默認端口1935,若是端口沒有設定,FMS將嘗試用如下端口鏈接:443,80(RTMP),80(RTMPT)
RTMPT,借用HTTP通道的RTMP。RTMP數據經過HTTP封裝,默認端口80
RTMPS,在SSL之上的RTMP。FMS支持基於SSL的RTMP數據輸入和輸出,默認端口443
RTMPE,加密版本RTMP。RTMPE比RTMPS更快,可是不須要認證管理,只須要在Adaptor.xml中打開。打開後,RTMPE經過如下端口嘗試通信:935,443,80(RTMPE),80(RTMPTE)
RTMPTE,基於HTTP通道傳輸加密的RTMPE
<Flash Media Server 4.5 的安裝和使用>
============================================================================================
即時串流協定(Real Time Streaming Protocol,RTSP)是用來控制聲音或影像的多媒體串流協議,並容許同時多個串流需求控制,傳輸時所用的網絡通信協定並不在其定義的範圍內,服務器端能夠自行選擇使用TCP或UDP來傳送串流內容,它的語法和運做跟HTTP 1.1相似,但並不特別強調時間同步,因此比較能容忍網絡延遲。而前面提到的容許同時多個串流需求控制(Multicast),除了能夠下降服務器端的網絡用量,更進而支持多方視訊會議(Video Conference)。
由於與HTTP1.1的運做方式類似,因此代理服務器《Proxy》的緩衝功能《Cache》也一樣適用於RTSP,並因RTSP具備從新導向功能,可視實際負載狀況來轉換提供服務的服務器,以免過大的負載集中於同一服務器而形成延遲。
============================================================================================
MMS是(Multimedia Messaging Service)的縮寫,中文意爲多媒體短信服務,它最大的特點就是支持多媒體功能。多媒體信息使具備功能全面的內容和信息得以傳遞,這些信息包括圖像、音頻信息、視頻信息、數據以及文本等多媒體信息,能夠支持語音、因特網瀏覽、電子郵件、會議電視等多種高速數據業務,在GPRS網絡的支持下,以WAP無線應用協議爲載體傳送視頻片斷、圖片、聲音和文字。多媒體信息業務可實現即時的手機端到端、手機終端到互聯網或互聯網到手機終端的多媒體信息傳送。
===========================================================================================
可擴展標記語言(英語:eXtensible Markup Language,簡稱: XML),是一種標記語言。標記指計算機所能理解的信息符號,經過此種標記,計算機之間能夠處理包含各類信息的文章等。如何定義這些標記,既能夠選擇國際通用的標記語言,好比HTML,也可使用像XML這樣由相關人士自由決定的標記語言,這就是語言的可擴展性。XML是從標準通用標記語言(SGML)中簡化修改出來的。它主要用到的有可擴展標記語言、可擴展樣式語言(XSL)、XBRL和XPath等。
============================================================================================
超文本傳輸協議(英文:HyperText Transfer Protocol,縮寫:HTTP)是互聯網上應用最爲普遍的一種網絡協議。設計HTTP最初的目的是爲了提供一種發佈和接收HTML頁面的方法。經過HTTP或者HTTPS協議請求的資源由統一資源標識符(Uniform Resource Identifiers,URI)來標識。
HTTP的發展是萬維網協會(World WideWeb Consortium)和Internet工做小組(Internet Engineering Task Force)合做的結果,(他們)最終發佈了一系列的RFC,其中最著名的RFC2616,定義了HTTP協議中現今普遍使用的一個版本—HTTP 1.1。
============================================================================================
HTTPLive Streaming(縮寫是 HLS)是一個由蘋果公司提出的基於HTTP的流媒體網絡傳輸協議。是蘋果公司QuickTime X和iPhone軟件系統的一部分。它的工做原理是把整個流分紅一個個小的基於HTTP的文件來下載,每次只下載一些。當媒體流正在播放時,客戶端能夠選擇從許多不一樣的備用源中以不一樣的速率下載一樣的資源,容許流媒體會話適應不一樣的數據速率。在開始一個流媒體會話時,客戶端會下載一個包含元數據的extended M3U (m3u8) playlist文件,用於尋找可用的媒體流。
HLS只請求基本的HTTP報文,與實時傳輸協議(RTP)不一樣,HLS能夠穿過任何容許HTTP數據經過的防火牆或者代理服務器。它也很容易使用內容分發網絡來傳輸媒體流。
蘋果公司把HLS協議做爲一個互聯網草案(逐步提交),在第一階段中已做爲一個非正式的標準提交到IETF。可是,即便蘋果偶爾地提交一些小的更新,IETF卻沒有關於制定此標準的有關進一步的動做。
============================================================================================
Microsoft Smooth Stream.
基於IIS Live Smooth Streaming技術流媒體直播系統
============================================================================================
JPG:JPEG(發音爲jay-peg,IPA:[ˈdʒeɪpɛg])是一種針對相片圖像而普遍使用的一種有損壓縮標準方法。這個名稱表明Joint Photographic Experts Group(聯合圖像專家小組)。此團隊創立於西元1986年,1992年發佈了JPEG的標準而在1994年得到了ISO10918-1的認定。JPEG與視頻音頻壓縮標準的MPEG(Moving Picture Experts Group)很容易混淆,但二者是不一樣的組織及標準。
PNG:便攜式網絡圖形(PortableNetwork Graphics,PNG)是一種無損壓縮的位圖圖形格式,支持索引、灰度、RGB[A]三種顏色方案以及Alpha通道等特性。PNG的開發目標是改善並取代GIF做爲適合網絡傳輸的格式而不需專利許可,因此被普遍應用於互聯網及其餘方面上。
PNG另外一個非正式的名稱來源爲遞歸縮寫:「PNGis Not GIF」
============================================================================================
H.263是由ITU-T制定的視頻會議用的低碼率視頻編碼標準,屬於視頻編解碼器。H.263最初設計爲基於H.324的系統進行傳輸(即基於公共交換電話網和其它基於電路交換的網絡進行視頻會議和視頻電話)。後來發現H.263也能夠成功的應用與H.323(基於RTP/IP網絡的視頻會議系統),H.320(基於綜合業務數字網的視頻會議系統),RTSP(流式媒體傳輸系統)和SIP(基於因特網的視頻會議)。
基於以前的視頻編碼國際標準(H.261,MPEG-1和H.262/MPEG-2),H.263的性能有了革命性的提升。它的初版於1995年完成,在全部碼率下都優於以前的H.261。以後還有在1998年增長了新的功能的第二版H.263+,或者叫H.263v2,以及在2000年完成的第三版H.263++,即H.263v3。早期的H.263 新增如下的附加(annexes):
Annex A - Inverse transform accuracyspecification
Annex B - Hypothetical Reference Decoder
Annex C - Considerations for Multipoint
Annex D - Unrestricted Motion Vector mode
Annex E - Syntax-based Arithmetic Codingmode
Annex F - Advanced Prediction mode
Annex G - PB-frames mode
Annex H - Forward Error Correction forcoded video signal
在H.263以後,ITU-T(在與MPEG的合做下)的下一代視頻編解碼器是H.264,或者叫AVC以及MPEG-4第10部分。因爲H.264在性能上超越了H.263不少,如今一般認爲H.263是一個過期的標準(雖然它的開發完成並非好久之前的事情)。大多數新的視頻會議產品都已經支持了H.264視頻編解碼器,就像之前支持H.263和H.261同樣。
MPEG-4是一套用於音頻、視頻信息的壓縮編碼標準,由國際標準化組織(ISO)和國際電工委員會(IEC)下屬的「動態圖像專家組」(Moving Picture Experts Group,即MPEG)制定,初版在1998年10月經過,第二版在1999年12月經過。MPEG-4格式的主要用途在於網上流、光盤、語音傳送(視頻電話),以及電視廣播。
MPEG-4包含了MPEG-1及MPEG-2的絕大部份功能及其餘格式的長處,並加入及擴充對虛擬現實模型語言(VRML,Virtual Reality Modeling Language)的支持,面向對象的合成文件(包括音效,視頻及VRML對象),以及數字版權管理(DRM)及其餘交互功能。而MPEG-4比MPEG-2更先進的其中一個特色,就是再也不使用宏區塊作圖像分析,而是以圖像上個體爲變化記錄,所以儘管圖像變化速度很快、碼率不足時,也不會出現方塊畫面。
因爲MPEG-4是一個公開的平臺,各公司、機構都可以根據MPEG-4標準開發不一樣的制式,所以市場上出現了不少基於MPEG-4技術的視頻格式,例如WMV 九、Quick Time、DivX、Xvid等。MPEG-4大部份功能都留待開發者決定採用是否。這意味着整個格式的功能不必定被某個程序所徹底函括。所以,這個格式有所謂配置(profile)及級別(level),定義了MPEG-4應用於不一樣平臺時的功能集合。
VP8是一個開放的圖像壓縮格式,最先由On2Technologies開發,隨後由Google發佈。同時Google也發佈了VP8編碼的實作庫:libvpx,以BSD受權條款的方式發佈,隨後也附加了專利使用權。而在通過一些爭論以後,最終VP8的受權確認爲一個開放源代碼受權。
目前支持VP8的網頁瀏覽器有Opera、Firefox和Chrome。
和H.264的比較
H.264是目前使用最多的網絡圖像編碼格式,所以最常拿來和VP8作比較。
H.264的編碼技術包含專利(由MPEG-LA提供受權),並且在硬件上使用須要取得受權,VP8則不須要。即便有Google的背書,但VP8仍然很難避過全部的專利,其下場可能跟VC-1一模一樣。管理H.264專利池的MPEG LA聲稱有12家公司持有Google VP8的相關專利。[38]美國MPEG LA表示:「建立VP8專利池的相關準備正在進行」。[39][40] 2013年三月,Google與MPEG LA及11個專利持有者達成協議,讓Google取得VP8以及其以前的VPx等編碼所可能侵犯的專利受權,同時Google也能夠無償再次受權相關專利給VP8的用戶,此協議同時適用於下一代VPx編碼。至此MPEG LA放棄成立VP8專利集中受權聯盟,VP8的用戶將可肯定免費使用此編碼而無須擔憂可能的專利侵權受權金的問題。[41]
根據MSU Graphics & Media Lab在2011年5月的測試,VP8須要約213%的數據量,才能達到和H.264相同的圖像質量 [42]。
x264的開發者之一:JasonGarrett-Glaser,給了一些針對VP8的評論,他認爲VP8目前並無實現真正的比特流規範,並且在一些編碼的技術上有所欠缺[43][44]。
============================================================================================
PSNR :Peak Signal to Noise Ratio,峯值信噪比
SNR:Signal to Noise Ratio,信噪比
客觀視頻評估技術是一些與主觀質量評估結果相近的數學模型,可是它們一般由計算機按照必定的標準與指標自動完成。評價的方法大體是將原視頻(高品質、通常不被壓縮)與處理後的視頻進行分類對比。分類對比分爲三種:全參考(FR)、部分參考(RR)、無參考(NR)。全參考比較處理先後的兩段視頻每一個像素的差異,部分參考提取兩段視頻的一些特性,並依此給予它們評分。以上兩種方法一般在原視頻可用時使用,如在有限的帶寬下。無參考則試圖在沒有任何原視頻的參考下進行評估,一般在視頻編碼方法已知時使用。
固然,最傳統的方法是計算兩段視頻信噪比(SNR)與峯值信噪比(PSNR)的差別。 PSNR是使用最普遍的客觀視頻質量的度量方法,但因爲人類視覺系統的非線性,所以PSNR值與人眼感覺到的視頻質量仍有較大出入。近來一些更復雜、更精確的一些指標被指定, 好比UQI、VQM、PEVQ、結構類似性(SSIM)、VQuad-HD與CZD。
============================================================================================
動態圖像專家組-1或動態圖像專家組-2 音頻層III(MPEG-1 orMPEG-2 Audio Layer III),常常稱爲MP3,是當今至關流行的一種數字音頻編碼和有損壓縮格式,它被設計來大幅下降音頻數據量,而對於大多數用戶的聽覺感覺來講,重放的音質與最初的不壓縮音頻相比沒有明顯的降低。它是在1991年,由位於德國埃爾朗根的研究組織Fraunhofer-Gesellschaft的一組工程師發明和標準化的。 MP3的普及,曾對音樂產業形成極大的衝擊與影響。
MP3是一個數據壓縮格式。它捨棄脈衝編碼調製(PCM)音頻數據中,對人類聽覺不重要的數據(相似於JPEG是一個有損圖像壓縮),從而達到了壓縮成小得多的文件大小。
在MP3中使用了許多技術,其中包括心理聲學,以肯定音頻的哪一部分能夠丟棄。MP3音頻能夠按照不一樣的比特率進行壓縮,提供了權衡數據大小和音質之間的依據。
MP3格式使用了混合的轉換機制將時域信號轉換成頻域信號:
32波段多相積分濾波器(PQF)
36或者12 tap 改良離散餘弦濾波器(MDCT);每一個子波段大小能夠在0...1和2...31之間獨立選擇
混疊衰減後處理
根據MPEG規範的說法,儘管有許多創造和推廣其餘格式的重要努力,MPEG-4標準中的AAC(Advanced Audio Coding)將是MP3格式的接棒者。然而,因爲MP3的空前的流通,在目前來講,其餘格式並未能威脅其地位。MP3不只有普遍的用戶端軟體支持,也有不少的硬件支持,好比便攜式數位音頻播放器(泛指MP3播放器)、DVD和CD播放器。
MPEG-1 Audio Layer II(有時簡稱MP2)是ISO/IEC11172-3(MPEG-1音頻部份)中訂立之有損性音頻壓縮格式。此標準還制訂了MPEG-1 Audio Layer I(MP1)和MPEG-1 Audio Layer III(MP3)。我的電腦和互聯網音樂流行MP3,MP2則多用於廣播。
============================================================================================
m3u:
M3U本質上說不是音頻文件,它是音頻文件的列表文件。你下載下來打開它,播放軟件並非播放它,而是根據它的記錄找到 網絡地址進行在線播放。M3U文件的大小很小,也就是由於它裏面沒有任何音頻數據。把M3U文件直接轉換爲音頻文件是不可能的,除非你把它指向的音頻文件下載下來再做處理……
m3u格式的文件只是一個目錄文件,提供了一個指向其餘位置的音頻視頻文件的索引,你播放的仍是那些被指向的文件,用 記事本打開m3u文件能夠查看所指向文件的地址及文件的屬性,以選用合適播放器播放。
============================================================================================
FAAC(FreewareAdvanced Audio Coder):FAAC is an MPEG-4 and MPEG-2 AAC encoder。
FAAD(Freeware Advanced Audio Decoder):an AAC audio decoder, superseded by new version: FAAD2
============================================================================================
============================================================================================
============================================================================================
RGBA是表明Red(紅色)Green(綠色)Blue(藍色)和Alpha的色彩空間。雖然它有的時候被描述爲一個顏色空間,可是它其實僅僅是RGB模型的附加了額外的信息。採用的顏色是RGB,能夠屬於任何一種RGB顏色空間,可是Catmull和Smith在1971至1972年間提出了這個不可或缺的alpha數值,使得alpha渲染和alpha合成變得可能。提出者以alpha來命名是源於經典的線性插值方程αA + (1-α)B所用的就是這個希臘字母。
alpha通道通常用做不透明度參數。若是一個像素的alpha通道數值爲0%,那它就是徹底透明的(也就是看不見的),而數值爲100%則意味着一個徹底不透明的像素(傳統的數字圖像)。在0%和100%之間的值則使得像素能夠透過背景顯示出來,就像透過玻璃(半透明性),這種效果是簡單的二元透明性(透明或不透明)作不到的。它使數碼合成變得容易。alpha通道值能夠用百分比、整數或者像RGB參數那樣用0到1的實數表示。
有時它也被寫成ARGB(像RGBA同樣,可是第一個數據是alpha),是Macromedia的產品使用的術語。好比,0x80FFFF00是50%透明的黃色,由於全部的參數都在0到255的範圍內表示。0x80是128,大約是255的一半。
PNG是一種使用RGBA的圖像格式。
============================================================================================
脈衝編碼調製(英文:Pulse-code modulation,縮寫:PCM)是一種模擬信號的數碼化方法。PCM將信號的強度依照一樣的間距分紅數段,而後用獨特的數碼記號(一般是二進制)來量化。PCM常被用於數碼電信系統上,也是電腦和紅皮書中的標準形式。在數碼視頻中它也是標準,例如使用 ITU-R BT.601。可是PCM並不流行於諸如DVD或DVR的消費性商品上,由於它須要至關大的比特率(DVD格式雖然支持PCM,不過不多使用);與之相較,壓縮過的音頻較符合效率。不過,許多藍光光盤使用PCM做音頻編碼。很是頻繁地,PCM編碼以一種串行通訊的形式,使數碼傳訊由一點至下一點變得更容易——不論在已給定的系統內,或物理位置。
============================================================================================
圖標
============================================================================================
字幕
============================================================================================
CC字幕者,隱藏式字幕。其實多數CC字幕和劇本是同樣的,裏面除了對白以外,還有現時場景的聲音和配樂等信息,之因此作CC字幕,在國外主要是爲了方便有聽力障礙的殘障人士。在普通的電視機上是沒法看見CC字幕的,而在電腦上是能夠看見的。
Closed Captions (CC)是把文字加入NTSC電視信號的一種標準化編碼方法.電視機的內置解碼器或獨立解碼器能顯示文字.1993年之後美國出售的大於13英寸的電視機都有 Closed Caption 解碼器. Closed Captions能夠用在 DVD, 錄象帶, 廣播電視, 電纜電視,等等.
單詞 caption 和 subtitle 意思很接近, captions一般是指特別設計的屏幕文字,而 subtitles 一般是指對話翻譯. 一般Captions出如今說話人物的下方,包含聲音和音樂描述.除非使用者激活Closed captions,不然它們不會顯示出來. Open captions老是可見的,好比外國錄象帶上的字幕.
DVD上的Closed Captions由 MPEG-2 視頻流攜帶,而且自動傳送到電視機上.你沒法使用DVD播放機來打開或關閉ClosedCaptions. Subtitles是 DVD上的子圖象, 也就是全屏幕疊蓋圖形 (參閱 3.4 的技術細節). 能夠打開32個子圖象軌道中的一個,以便在視頻頂部顯示文字或圖形. 子圖象也可用來建立captions. 爲了區分NTSC Closed Captions和subtitles,由子圖象創建的 captions一般被稱爲 'captions for the hearing impaired.'
若是你依然以爲混淆, 只要記住這個建議: 要看 ClosedCaptions, 使用電視遙控器上的 CC按鈕. 要看 subtitles或 captionsfor the hearing impaired, 使用DVD遙控器上的 subtitle按鈕,或使用盤片提供的屏幕菜單.不要同時打開它們.記住並不是全部DVD盤片有 Closed Captions 或字幕.
============================================================================================
H264的概念
============================================================================================
WMV(WindowsMedia Video)是微軟公司開發的一組數字視頻編解碼格式的通稱,它是Windows Media架構下的一部分。
它最初是爲低速率流媒體應用做爲專有編解碼開發出來的,可是2003年微軟公司基於Windows Media Video第9版編解碼起草了視頻編解碼規範而且提交給SMPTE申請做爲標準。這個標準在2006年3月做爲SMPTE 421M被正式批准,這樣Windows Media Video 9編解碼就再也不是一個專有的技術。早期的編解碼版本(7和8)仍然被認爲是專有技術,由於它們不在SMPTE 421M標準的涵蓋範圍內。
WMV不是僅僅基於微軟公司的自有技術開發的。從第七版(WMV1)開始,微軟公司開始使用它本身非標準MPEG-4 Part 2。可是,因爲WMV第九版已是SMPTE的一個獨立標準(421M,也稱爲VC-1),有理由相信WMV的發展已經不像MPEG-4那樣是一個它本身專有的編解碼技術。如今VC-1專利共享的企業有16家(2006年4月),微軟公司也是MPEG-4 AVC/H.264專利共享企業中的一家。
WMV可使用如MPlayer或者WindowsMedia Player這樣的播放器播放,Windows Media Player只能在微軟視窗和Macintosh系統上使用。有許多用於如Linux這樣不一樣平臺上的使用FFmpeg實現WMV編解碼的第三方播放器。
視頻流一般與Windows Media Audio音頻流組合在一塊兒而且使用擴展名爲.wmv或者.asf的Advanced Streaming Format的文件進行封裝。WMV一般使用AdvancedStreaming Format(ASF)封裝,它也可使用AVI或者Matroska格式封裝。若是是AVI封裝的文件結果文件能夠是.avi,若是是ASF封裝的話則是.wmv或者.asf,若是是MKV封裝的話則是.mkv。
當使用VirtualDub編碼器編碼和WMV9 VCM編解碼實現的時候WMV能夠存儲在AVI文件中。用於Mac的微軟公司媒體播放器不支持全部的WMV編碼的文件,由於它只支持ASF文件封裝,Flip4Mac和QuickTime或者用於MacOSX的MPlayer能夠播放更多的文件。
當使用ASF文件格式封裝的時候,WMV可以支持用於保護知識產權的數字版權管理(DRM)工具。
WMA(WindowsMedia Audio)是微軟公司開發的一種數字音頻壓縮格式。一些使用Windows Media Audio編碼格式編碼其全部內容的純音頻ASF文件也使用WMA做爲擴展名。
WMA格式最初爲微軟公司私有,可是隨着蘋果公司的iTunes對它的支持,這個格式正在成爲MP3格式的競爭對手之一。它兼容MP3的ID3元數據標籤,同時支持額外的標籤。
另外,通常狀況下相同音質的WMA和MP3音頻,前者文件體積較小;「Windows Media Audio Professional」能夠存儲5.1甚至7.1聲道的音樂,並且音質可媲美DolbyDigital(杜比數字)。
WMA能夠用於多種格式的編碼文件中。應用程序可使用Windows Media Format SDK進行WMA格式的編碼和解碼。一些常見的支持WMA的應用程序包括Windows Media Player、Windows Media Encoder、RealPlayer、Winamp等等。其它一些平臺,例如Linux和移動設備中的軟硬件也支持此格式。
Flash Video(簡稱FLV),是一種流行的網絡視頻格式。隨着視頻網站的豐富,這個格式已經很是普及。
FLV流媒體格式是一種新的視頻格式,它的出現有效地解決了視頻文件導入Flash後,使導出的SWF文件體積龐大,不能在網絡上有效使用等缺點。
通常FLV文件包在SWF PLAYER 的殼裏,而且FLV能夠很好的保護原始地址,不容易被下載到,從而起到保護版權的做用。但仍是有些視頻格式轉換軟件將FLV轉成通常的視頻格式,如中國的軟件格式工廠。
目前YouTube、NICONICO動畫、Google Video、Yahoo! Video、MySpace,以及中國的優酷、酷6等大部分視頻分享網站均採用這個格式。
============================================================================================
AVI是英語AudioVideo Interleave(「音頻視頻交織」或譯爲「音頻視頻交錯」)的首字母縮寫,由微軟在1992年11月推出的一種多媒體文件格式,用於對抗蘋果Quicktime的技術。如今所說的AVI可能是指一種封裝格式。
儘管AVI已經屬於老舊的技術,可是因爲Windows的通用性,和簡單易懂的開發API,還在被普遍使用。
AVI的文件結構、分爲「頭部」,「主體」和「索引」三部分。主體中圖像數據和聲音數據是交互存放的。從尾部的索引能夠索引跳到本身想放的位置。
AVI將視頻和音頻封裝在一個文件裏,其順序是:若干視頻幀(Video Frame)以後接着若干音頻幀(Audio Frame),再而後是視頻幀、音頻幀,故名爲「音頻視頻交織」,意即音頻和視頻按幀交錯排列,以此達到音頻同步於視頻播放的效果。和DVD視頻格式同樣,AVI文件支持多視頻流和音頻流,雖然這些功能不多使用。大多數AVI文件還支持由Matrox OpenDML集團於1996年2月開發的格式後綴。這些文件非正式的稱爲「AVI 2.0」,並獲得微軟的支持。
AVI自己只是提供了這麼一個框架,內部的圖像數據和聲音順據格式能夠是任意的編碼形式。可是因爲索引放在了文件尾部,因此在播放internet流媒體時已屬力不從心。
ASF是(AdvancedStreamingFormat高級串流格式)的縮寫,是微軟公司針對real公司開發的新一代網上流式數字音頻壓縮技術,是Microsoft爲Windows98所開發的串流多媒體文件格式。ASF是微軟公司WindowsMedia的核心。這是一種包含音頻、視頻、圖像以及控制命令腳本的數據格式。可和WMA及WMV互換使用。ASF是一個可擴展的文件格式用來存儲多媒體數據同步。它支持的數據傳輸了各類各樣的網絡和協議同時還證實適合當地播放。在明確目標的ASF是提供一個基礎,全行業的多媒體互操做性。每一個格式的文件是由一個或多個媒體流。該文件頭指定的內容整個文件,連同流的具體內容。多媒體數據,儲存後的文件頭,特別提到媒體流編號,以代表其類型和目的。提供和介紹的全部媒體流數據同步到一個共同的時間線。
ASF是一個開放標準,它能依靠多種協議在多種網絡環境下支持數據的傳送。同JPG、MPG文件同樣,ASF文件也是一種文件類型,但它是專爲在IP網上傳送有同步關係的多媒體數據而設計的,因此ASF格式的信息特別適合在IP網上傳輸。ASF文件的內容既能夠是熟悉的普通文件,也能夠是一個由編碼設備實時生成的連續的數據流,因此ASF既能夠傳送人們事先錄製好的節目,也能夠傳送實時產生的節目。
ASF用於排列、組織、同步多媒體數據以利於經過網絡傳輸。ASF是一種數據格式,它也可用於指定實況演示。ASF最適於經過網絡發送多媒體流,也一樣適於在本地播放。任何壓縮/解壓縮運算法則(編解碼器)均可用來編碼ASF流。
WindowsMediaService的核心是ASF。ASF是一種數據格式,音頻、視頻、圖像以及控制命令腳本等多媒體信息經過這種格式,以網絡數據包的形式傳輸,實現流式多媒體內容發佈。其中,在網絡上傳輸的內容就稱爲ASFStream。ASF支持任意的壓縮/解壓縮編碼方式,並可使用任何一種底層網絡傳輸協議,具備很大的靈活性。
MicrosoftMediaplayer是能播放幾乎全部多媒體文件的播放器,支持ASF在Internet網上的流文件格式,能夠一邊下載一邊實時播放,無需下載完再聽。ASF文件本地或網絡回放;可擴充的媒體類型;部件下載、可伸縮的媒體類型;流的優先級化;多語言支持、環境獨立性;豐富的流間關係以及擴展性等。
======================================================================================
CDN的全稱是Content Delivery Network,即內容分發網絡。其目的是經過在現有的Internet中增長一層新的網絡架構,將網站的內容發佈到最接近用戶的網絡"邊緣",使用戶能夠就近取得所需的內容,解決Internet網絡擁塞情況,提升用戶訪問網站的響應速度。從技術上全面解決因爲網絡帶寬小、用戶訪問量大、網點分佈不均等緣由,解決用戶訪問網站的響應速度慢的根本緣由。
狹義地講,內容分發佈網絡(CDN)是一種新型的網絡構建方式,它是爲能在傳統的IP網發佈寬帶豐富媒體而特別優化的網絡覆蓋層;而從廣義的角度,CDN表明了一種基於質量與秩序的網絡服務模式。簡單地說,內容發佈網絡(CDN)是一個經策略性部署的總體系統,包括分佈式存儲、負載均衡、網絡請求的重定向和內容管理4個要件,而內容管理和全局的網絡流量管理(Traffic Management)是CDN的核心所在。經過用戶就近性和服務器負載的判斷,CDN確保內容以一種極爲高效的方式爲用戶的請求提供服務。總的來講,內容服務基於緩存服務器,也稱做代理緩存(Surrogate),它位於網絡的邊緣,距用戶僅有"一跳"(Single Hop)之遙。同時,代理緩存是內容提供商源服務器(一般位於CDN服務提供商的數據中心)的一個透明鏡像。這樣的架構使得CDN服務提供商可以表明他們客戶,即內容供應商,向最終用戶提供儘量好的體驗,而這些用戶是不能容忍請求響應時間有任何延遲的。據統計,採用CDN技術,能處理整個網站頁面的70%~95%的內容訪問量,減輕服務器的壓力,提高了網站的性能和可擴展性。
與目前現有的內容發佈模式相比較,CDN強調了網絡在內容發佈中的重要性。經過引入主動的內容管理層的和全局負載均衡,CDN從根本上區別於傳統的內容發佈模式。在傳統的內容發佈模式中,內容的發佈由ICP的應用服務器完成,而網絡只表現爲一個透明的數據傳輸通道,這種透明性表如今網絡的質量保證僅僅停留在數據包的層面,而不能根據內容對象的不一樣區分服務質量。此外,因爲IP網的"盡力而爲"的特性使得其質量保證是依靠在用戶和應用服務器之間端到端地提供充分的、遠大於實際所需的帶寬通量來實現的。在這樣的內容發佈模式下,不只大量寶貴的骨幹帶寬被佔用,同時ICP的應用服務器的負載也變得很是重,並且不可預計。當發生一些熱點事件和出現浪涌流量時,會產生局部熱點效應,從而使應用服務器過載退出服務。這種基於中心的應用服務器的內容發佈模式的另一個缺陷在於個性化服務的缺失和對寬帶服務價值鏈的扭曲,內容提供商承擔了他們不應幹也幹很差的內容發佈服務。
======================================================================================
Digital Television:數字電視
======================================================================================
東哥的博文 《FFMPEG SDK 開發介紹》