微软高级流格式ASF简介
生活随笔
收集整理的這篇文章主要介紹了
微软高级流格式ASF简介
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Microsoft公司的Windows Media的核心是ASF(Advanced Stream Format)。微軟將ASF 定義為同步媒體的統一容器文件格式。ASF是一種數據格式,音頻、視頻、圖像以及控制命令腳本等多媒體信息通過這種格式,以網絡數據包的形式傳輸,實現流式多媒體內容發布。 ASF最大優點就是體積小,因此適合網絡傳輸,使用微軟公司的最新媒體播放器(Microsoft Windows Media Player)可以直接播放該格式的文件。用戶可以將圖形、聲音和動畫數據組合成一個ASF格式的文件,當然也可以將其他格式的視頻和音頻轉換為ASF格式,而且用戶還可以通過聲卡和視頻捕獲卡將諸如麥克風、錄像機等等外設的數據保存為ASF格式。另外,ASF格式的視頻中可以帶有命令代碼,用戶指定在到達視頻或音頻的某個時間后觸發某個事件或操作。 ASF的特征 可擴展的媒體類型- ASF文件允許制作者很容易地定義新的媒體類型。ASF格式提供了非常有效的靈活地定義符合ASF文件格式定義的新的媒體流類型。任一存儲的媒體流邏輯上都是獨立于其他媒體流的,除非在文件頭部分明顯地定義了其與另一媒體流的關系。 部件下載-特定的有關播放部件的信息(如,解壓縮算法和播放器)能夠存儲在ASF 文件頭部分,這些信息能夠為客戶機用來找到合適的所需的播放部件的版本---如果它們沒有在客戶機上安裝。 可伸縮的媒體類型- ASF是設計用來表示可伸縮的媒體類型的"帶寬"之間的依賴關系。ASF存儲各個帶寬就像一個單獨的媒體流。媒體流之間的依賴關系存儲在文件頭部分,為客戶機以一個獨立于壓縮的方式解釋可伸縮的選項提供了豐富的信息 流的優先級化- 現代的多媒體傳輸系統能夠動態地調整以適應網絡資源緊張的情況(如,帶寬不足)。多媒體內容的制作者要能夠根據流的優先級表達他們的參考信息,如最低保證音頻流的傳輸。隨著可伸縮媒體類型的出現,流的優先級的安排變得復雜起來,因為在制作的時候很難決定各媒體流的順序。ASF允許內容制作者有效地表達他們的意見(有關媒體的優先級),甚至在可伸縮的媒體類型出現的情況下也可以。 多語言- ASF設計為支持多語言。媒體流能夠可選地指示所含媒體的語言。這個功能常用于音頻臀謀玖鰲R桓齠嚶镅訟SF文件指的是包含不同語言版本的同一內容的一系列媒體流,其允許客戶機在播放的過程中選擇最合適的版本。 目錄信息- ASF提供可繼續擴展的目錄信息的功能,該功能的擴展性和靈活性都非常好。所有的目錄信息都以無格式編碼的形式存儲在文件頭部分,并且支持多語言,如果需要,目錄信息既可預先定義(如,作者和標題),也可以是制作者自定義。目錄信息功能既可以用于整個文件也可以用于單個媒體流。 ASF文件格式 ASF 對象定義 ASF文件基本的組織單元叫做ASF 對象,它是由一個128位的全球唯一的對象標識符(Object ID),一個64位整數的對象大小(Object Size)和一個可變長的對象數據(Object Data)組成。對象大小域的值是由對象數據的大小加上24比特之和。 圖11.8 ASF對象 這個文件組織單元有點類似于RIFF(Resource Interchange File Format)字節片。RIFF字節片時AVI和WAV文件的基本單位。ASF對象在兩個方面改進了RIFF的設計。首先,無需一個權威機構來管理對象標識符系統,因為計算機網卡能夠產生一個有效的唯一的GUID。其次,對象大小字段已定義得足夠處理高帶寬多媒體內容的大文件。 高層文件結構 ASF文件邏輯上是由三個高層對象組成:頭對象(Header Object)、數據對象(Data Object)和索引對象(Index Object).。頭對象是必需的并且必須放在每一個ASF文件的開頭部分,數據對象也是必需的,且一般情況下緊跟在頭對象之后。索引對象是可選的,但是一般推薦使用。 圖11.9 高層ASF文件結構 在具體實現過程中可能會出現一些文件包含無序的(Out-Of-Order)的對象,ASF也支持,但在特定情況下,將導致ASF 文件不能使用,如從特定的文件源如HTTP服務器讀取該類ASF文件。同樣地,額外的高層對象也可能被運用并加入到ASF文件中。一般推薦這些另加的對象跟在索引對象之后。 ASF數據對象能夠被解釋的一個前提條件是頭對象已被客戶機接收到。ASF沒有聲明頭對象信息是如何到達客戶端的,"到達機制"是一個"本地實現問題",顯然已超過了ASF 的定義范圍。頭對象先于數據對象到達有三種方式: 包含頭對象的信息作為"會話聲明"的一部分。 利用一個與數據對象不同的"通道"發送頭對象。 在發送ASF 數據對象之前發送頭對象。 ASF 頭對象 在ASF的三個高層對象中,頭對象是唯一包含其他ASF 對象的對象。頭對象可能包含一下對象: 文件屬性對象(File Properties Object)----全局文件屬性。 流屬性對象(Stream Properties Object)----定義一個媒體流和其屬性。 內容描述對象(Content Description Object)----包含所有目錄信息。 部件下載對象(Component Download Object)----提供播放部件信息。 流組織對象(Stream Groups Object)----邏輯上把多個媒體流組織在一起。 可伸縮對象(Scalable Object)----定義媒體流之間的可伸縮的關系。 優先級對象(Prioritization Object)----定義相關流的優先級。 相互排斥對象(Mutual Exclusion Object)----定義排斥關系如語言選擇。 媒體相互依賴對象(Inter-Media Dependency Object)----定義混合媒體流之間的相互依賴關系。 級別對象(Rating Object)----根據W3C PICS定義文件的級別。 索引參數對象(Index Parameters Object)----提供必要的信息以重建ASF文件的索引。 圖11.10 ASF 頭對象 頭對象的作用是在ASF文件的開始部分提供一個眾所周知的比特序列,并且包含所有其它頭對象信息。頭對象提供了存儲在數據對象中的多媒體數據的全局的信息。 ASF數據對象 數據對象包含一個ASF 文件的所有多媒體數據。多媒體數據以ASF數據單元的形式存儲,每一個ASF數據單元都是可變長的,且包含的數據必須是同一種媒體流。數據單元在當它們開始傳輸的時候在數據對象中自動地排序,這種排序來自于交叉存儲的文件格式。 ASF索引對象 ASF索引對象包含一個嵌入ASF文件的多媒體數據的基于時間的索引。每以索引進入表現的時間間隔是在制作時設置的,并且存儲在索引對象中。由于沒有必要為一個文件的每一個媒體流建立一個索引,因此,通常利用一個時間間隔列表來索引一系列的媒體流。
文章引用自:http://blog.video.com.cn/liumeiti/archives/2005/1974.shtml#
總結
以上是生活随笔為你收集整理的微软高级流格式ASF简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新时代知识产权创新发展与严格保护_保护知
- 下一篇: 【翻译】各种Payload免杀工具集