ASF返回目錄↑1、概述![]() ![]() ASF用于排列、組織、同步多媒體數據以利于通過網絡傳輸。ASF是一種數據格式,它也可用于指定實況演示。ASF最適于通過網絡發送多媒體流,也同樣適于在本地播放。任何壓縮/解壓縮運算法則(編解碼器)都可用來編碼ASF流。 WindowsMediaService的核心是ASF。ASF是一種數據格式,音頻、視頻、圖像以及控制命令腳本等多媒體信息通過這種格式,以網絡數據包的形式傳輸,實現流式多媒體內容發布。其中,在網絡上傳輸的內容就稱為ASFStream。ASF支持任意的壓縮/解壓縮編碼方式,并可以使用任何一種底層網絡傳輸協議,具有很大的靈活性。 MicrosoftMediaplayer是能播放幾乎所有多媒體文件的播放器,支持ASF在Internet網上的流文件格式,可以一邊下載一邊實時播放,無需下載完再聽。ASF文件本地或網絡回放;可擴充的媒體類型;部件下載、可伸縮的媒體類型;流的優先級化;多語言支持、環境獨立性;豐富的流間關系以及擴展性等。 返回目錄↑2、創建ASF文件![]() 1、通過軟件將MPEG-1格式的影像文件轉換成微軟最新的ASF視頻流格式。使用軟件工具為:SonicFoundryStreamAnywhere和WindowsMediaToolkit。具體實施步驟為:首先安裝WindowsMediaToolkit或把相應版本號的ASF壓縮編碼驅動庫拷貝到Windows/System目錄。 接著運行軟件——SonicFoundryStreamAnywhere。打開mpg文件。選擇“Saveas”(另存為)→選擇你要儲存ASF文件的文件夾→選擇“EncodeWindowsMediaFormat”項→設置你要生成的ASF文件的壓縮比例。如果選250Video的話就相當于2MB/分鐘的壓縮速度,圖像的質量不太好。同理,如果是選512Video相當于4MB/分鐘的壓縮速度。其實,質量好的ASF應該是在320×240和有30幀/秒的情況下,它的圖像和聲音仍然可以同步。最后,取消EncodeRealMediaformat選項并確認完成。 2、利用專用的視頻采集卡(Ospres-200),借助“NetshowEcorder3.0”軟件把錄像機、影蝶機、攝像機等視頻、音頻信號轉換成ASF格式。對已是數字格式的dat、mpg文件,可以通過豪杰超級解霸2000中的工具——“vcd轉avi”程序,先轉換成avi格式,再使用采集卡附帶的軟件完成轉換到ASF過程。具體過程在此不作介紹。 返回目錄↑3、ASF文件功能![]() 1、點播(VideoOnDemand) 因為ASF技術支持任意的壓縮/解壓縮編碼,可以使用任何一種底層網絡傳輸協議,這使它既能在高速的局域網內使用,也可以在撥號方式連接的低帶寬Internet環境下使用。點播服務方式下,用戶之間互不干擾,可以對點播內容的播放進行控制。這種方式最為靈活,但是占用服務器、網絡資源。 ASF的點播內容均存放在VOD服務器上,建立VOD站點進行網頁發布,在同一時間可多點同時點播相同或不同的節目,即多個計算機可在不同的地點、不同的時刻,實時、交互式地點播同一ASF流文件,用戶可以通過上網查看和選擇內容進行點播。播放過程中可實現播放、停止、暫停、快進、后退等功能,播放速率達到25幀/s,1小時的視頻信息按照300Kb/s采集,只占108MB的空間,1張640MB的光盤可存放將近6小時的ASF文件。 2、直播 直播服務下,用戶只能觀看播放的內容,無法進行控制。可以使用ASF文件作為媒體內容的來源,實時的多媒體內容最適合使用直播服務方式。通過視頻捕捉卡把攝像機、麥克風記錄的內容輸入到計算機,進行編碼生成ASF流,然后通過該機把信號傳送到網絡,用戶通過網頁收看直播內容。 計算機可同時接收相同或不同的節目頻道,直播計算機可作為一個小電視臺,連在網上的每一臺計算機都可實時接收9個不同的節目頻道。 3、遠程教育 這種ASF文件遠程教育系統由制作計算機、vod服務器、用戶機組成。 制作ASF文件計算機安裝視頻采集卡、聲卡及攝像機,用于制作流媒體文件;VOD服務器用于存儲和發布流媒體信息;用戶機是連在網上的普通多媒體計算機,通過網頁進行學習。網頁上有教員授課的視頻文件、多媒體課件、學習內容提要、參考資料、復習/練習題、作業等信息。 返回目錄↑4、ASF1.0介紹高級流格式是由微軟公司在1995年至1998年。其主要目的是作為一個普遍的形式存儲和流媒體。有兩個版本的ASF。一個版本是ASF2.0,另一個版本的ASF1.0。這里介紹ASF1.0: WAVEFORMATEX-普遍的結構,描述格式(壓縮)聲音流 所有的時間間隔不是衡量100納秒和代表64位類型,或以毫秒為單位衡量和代表與32位或16-位類型(每個65.5秒)。 ![]() 標題 1、文件頭塊:(圖二) ![]() 2、標題對象:(圖三) ![]() 3、Stream對象:(圖四) ![]() 第二未知的價值這個目標似乎是絕對隨機的,但如果有多個流在該文件中,他們都持有同樣的價值在這里。 4、輸入特定的數據為視頻流:(圖五) ![]() 5、輸入特定的數據為音頻流:(圖六) ![]() 6、流的具體數據---音頻流:(圖七) ![]() 所有有效的ASF文件頭包含一個對象,以及一個Stream對象流。 數據塊:(圖八) ![]() 包 壓縮視頻和音頻數據通常組織成‘張’或‘物體’的一個任意大小。當一個人需要轉移這種數據包一個固定的大小,就不可能有三次機會: 一)幀的大小接近大小的數據包。這將是可以接受的存放架完全在一個包墊它需要的大小。二)幀大于該數據包。然后,它需要‘支離破碎’成幾個片段,并發出不同的數據包。三)幀大大低于該數據包。在這種情況下,將是一個好主意發送多幀在同一包。這就是所謂‘集團’。 可能有多種格式的標題,但在大多數包電影開始與V82_Header:(圖九) ![]() 部分:(圖十) ![]() 段的具體領域,沒有分組:(圖十一) ![]() “flags”可以是0x01或0x08。0x01的意思是“集團(多個物體的部分)”,以及0x08的意思是“沒有分組(單個對象或片段)”。 “數據長度”欄位是沒有必要,如果這部分是唯一的數據包,因為在這種情況下,數據需要所有剩余的空間,包(當然,考慮到填充)。因此,這只是目前的0x01時位中設置包flags。 “片段抵消”字段大小是確定的‘群體型編號’報頭值。已知可能的值后者則是0x55,0x59和0x5D,這相當于1,第2和第4字節大小。 “數據長度”字段大小是確定的數細分報頭值。當數細分領域的存在,其較低的比特(大概6人)載有若干部分,設置位0x40意味著'數據長度'部分領域是1字節寬,并設置位0x80意味著'數據長度,部分領域的2字節寬。否則,這一領域的大小默認為2字節。 段的具體領域,分組:(圖十二) ![]() 每一部分有一個外地所謂的‘序列號’。它可用于重新支離破碎的物體。隨后的物體序列號碼相差1(會有較大的跳躍在‘序列號’字段分組時發生)。不同片段的同一個對象具有相同的序列號和同一個對象的開始時間。包通常是有組織的,以增加時間戳。目前尚不清楚,如果它總是如此。包可能丟失,這種情況應妥善處理。 返回目錄↑5、相關詞條
AVI
WAV
WMA
MPC
ASF
WMV 返回目錄↑6、參考資料[1]Slackware:http://avifile.sourceforge.net/ |