多媒體技術(shù)原理及應(yīng)用.ppt_第1頁
多媒體技術(shù)原理及應(yīng)用.ppt_第2頁
多媒體技術(shù)原理及應(yīng)用.ppt_第3頁
多媒體技術(shù)原理及應(yīng)用.ppt_第4頁
多媒體技術(shù)原理及應(yīng)用.ppt_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第5章 多媒體節(jié)目開發(fā)工具,多媒體節(jié)目開發(fā)環(huán)境 多媒體創(chuàng)作工具 多媒體功能卡開發(fā)工具 WINDOWS多媒體開發(fā)環(huán)境,5.1 多媒體節(jié)目開發(fā)環(huán)境,多媒體開發(fā)環(huán)境包括圖形開發(fā)工具、觸摸屏開發(fā)工具、音頻開發(fā)工具、圖像開發(fā)工具等和各種創(chuàng)作系統(tǒng)。 多媒體開發(fā)和創(chuàng)作環(huán)境一般具有下述功能: (1)提供編程的環(huán)境; (2)超文本、超媒體和多媒體數(shù)據(jù)管理的功能 (3)支持多媒體數(shù)據(jù)的輸入輸出; (4)應(yīng)用連接功能; (5)數(shù)據(jù)和動畫制作功能; (6)友好的用戶界面。,5.2 多媒體編著工具,多媒體創(chuàng)作工具(或稱編著工具)是一種高級的軟件程序或命令集合。 創(chuàng)作工具旨在提供給設(shè)計(jì)者一個(gè)自動產(chǎn)生多媒體節(jié)目的綜合環(huán)境,

2、 使設(shè)計(jì)者可將不同的內(nèi)容與各種功能結(jié)合在一起,形成一個(gè)結(jié)構(gòu)完整的節(jié)目。 多媒體創(chuàng)作工具通常應(yīng)包括制作、編輯、輸入輸出各種形式的數(shù)據(jù),以及將各種數(shù)據(jù)組合成為一個(gè)連續(xù)性序列的基本工作環(huán)境 。,多媒體編著(創(chuàng)作)工具分類: (1) 以卡或頁為基礎(chǔ)的創(chuàng)作工具; (2) 以圖符為基礎(chǔ),基于事件的創(chuàng)作工具; (3) 以時(shí)間為基礎(chǔ)的創(chuàng)作工具; (4) 以傳統(tǒng)程序語言為基礎(chǔ)的創(chuàng)作工具; (5) 其他專用的創(chuàng)作工具。,5.2.1 多媒體編著的功能和分類,5.2.2 以卡或頁為基礎(chǔ)的多媒體編著工具,大多數(shù)以卡或頁為基礎(chǔ)的創(chuàng)作工具提供一種可以將對象連接于卡或頁的環(huán)境。 一頁或一張卡便是數(shù)據(jù)結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn),它類似于

3、書的一頁或數(shù)據(jù)袋里一張卡片。 這種頁或卡片上的數(shù)據(jù)比書上的一頁或數(shù)據(jù)袋里一張卡片的數(shù)據(jù)更多樣化。 在卡或頁上的圖符很容易理解和使用 以Asymetrix公司開發(fā)的ToolBook為例介紹這類軟件。,1. ToolBook簡介,ToolBook是一個(gè)面向?qū)ο箝_發(fā)環(huán)境 提供一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言O(shè)PENSCRIPT。 從使用觀點(diǎn)來看,ToolBook分兩個(gè)層次:讀者和作者。在讀者層次用戶可以執(zhí)行該書,閱覽其內(nèi)容。在作者層次上,設(shè)計(jì)者可以使用命令來編寫新的書。 ToolBook采用Windows用戶接口。也采用下拉菜單、圖符驅(qū)動、放棄和剪貼板功能、綜合幫助功能,設(shè)置操作約定。 ToolBook支

4、持大量流行的文件格式,方便數(shù)據(jù)交換。,2. 設(shè)計(jì)編程制作一體化環(huán)境 ToolBook具有把圖形、文字、數(shù)字視頻圖像、聲音及動畫集成為一個(gè)交互式節(jié)目的能力。 它提供了高級腳本語言O(shè)PENSCRIPT,配置了許多命令去播放各種類型的媒體,管理各種數(shù)據(jù)以便改變對象的性質(zhì)。 擅長于制作把其他Windows應(yīng)用軟件集成在一起的多媒體節(jié)目,還可在媒體單元之間建立鏈接關(guān)系。 ToolBook的書形隱喻符很容易使人理解,因此它縮短了用戶開發(fā)節(jié)目之前學(xué)習(xí)創(chuàng)作工具的時(shí)間。,3.節(jié)目設(shè)計(jì)思想,ToolBook按書的結(jié)構(gòu)組織應(yīng)用程序。 ToolBook電子書的每屏被描述為一頁,每頁內(nèi)可有多級的對象,它們分為背景和前景

5、,其中背景的設(shè)置是滿足用戶要將生成的一系列頁共享一些通用元素的要求,如一幅圖像或像NEXT、QUIT這樣的命令按鈕。 開發(fā)電子書的過程是:在屏幕上畫出各種各樣的對象, 然后生成潛在的“腳本”,它在一給定對象以某種方式被選中或觸發(fā)時(shí),引發(fā)一個(gè)或多個(gè)結(jié)果。這些腳本事實(shí)上是用OPENSCRIPT語言寫的小段程序 。,4.編程特點(diǎn),腳本特點(diǎn)綜述如下: (1)腳本是一系列OPENSCRIPT語句或指令,它們告訴對象要做些什么。 (2)腳本可分為一些處理單元,它們描述特定文件出現(xiàn)時(shí),如讀者觸發(fā)按鈕或按某個(gè)鍵,將會發(fā)生的事件。 (3)腳本可以控制對象也可以控制信息。 (4)頁面上對象如字段、按鈕以及圖形的腳

6、本往往對該頁面或者同一本書中的一個(gè)頁面發(fā)生影響。 (5)書、頁面以及背景和頁面上的對象一樣也可以有腳本。,5.2.3 基于圖符和事件的編著工具,基于圖符的創(chuàng)作工具提供可視化的程序設(shè)計(jì)環(huán)境。 在設(shè)計(jì)之初須先用其他軟件來制作各種元素。 然后在此系統(tǒng)中建立一個(gè)流程圖,在流程圖當(dāng)中可以包括起始事件、分支、處理及結(jié)束等各種圖符。 設(shè)計(jì)者可依流程圖將適當(dāng)?shù)膶ο髲乃^的圖符庫按下拉至工作區(qū)內(nèi)。這些圖符可以包括菜單條的選項(xiàng)、圖形、圖像、聲音及運(yùn)算等。 這個(gè)流程圖也是事先安排的次序,同時(shí)也表示整個(gè)節(jié)目的邏輯藍(lán)圖。 這類創(chuàng)作工具最典型是Authorware。,Authorware功能特點(diǎn),Authorware是一

7、個(gè)交互式多媒體節(jié)目創(chuàng)作工具, 它使用圖符設(shè)計(jì)流程圖,無需編程,非常方便使用。 Authorware可以用流程圖來當(dāng)作導(dǎo)航圖,設(shè)計(jì)者只要將圖符用鼠標(biāo)按下拉至流程圖的某個(gè)位置上, 便可以使每一個(gè)環(huán)節(jié)相互連接。 變量可以互相傳輸參數(shù)。Authorware提供了200個(gè)以上的系統(tǒng)變量及功能來決定屬性、數(shù)據(jù)抓取、對象處理及顯示等工作, 甚至控制作業(yè)流程的分支, 跳畫面及循環(huán)等效果。 Authorware 最大特點(diǎn)是使用15個(gè)圖符組成的界面 。,圖5.1 Authorware6.0的圖符,5.2.4 以時(shí)間為基礎(chǔ)的多媒體編著工具,是常見的一種多媒體編輯系統(tǒng),常用于制作電影與卡通片的節(jié)目。 它們大多是以時(shí)間

8、軸來決定事件的順序與對象顯示上演的時(shí)段。 這種時(shí)間關(guān)系可以許多頻道形式出現(xiàn),以便安排多種對象同時(shí)呈現(xiàn)。 在這類系統(tǒng)中都會有一個(gè)控制播出的控制面板,它很像錄音機(jī)、錄放像機(jī)的控制板,含有倒帶、倒退、停止、演出及快進(jìn)等按鈕。 如Action!,Action!,由Macro Media公司所發(fā)行,可在Windows與Macintosh下執(zhí)行的多媒體編輯創(chuàng)作工具。 結(jié)合了動作、聲音、文字、圖形、動畫多媒體顯示環(huán)境,使用時(shí)間軸來組織其元素。 使用時(shí)間軸及控制面板來組織一個(gè)場景。 有一個(gè)內(nèi)容表可以顯示出一節(jié)目的全部場景,以及每一個(gè)場景當(dāng)中的全部對象。 另有一個(gè)場景排序器可顯示出節(jié)目中某一場景的全貌、場景各稱

9、及其連接的模板,也顯示出每一個(gè)場景最后的狀態(tài)及場景之間的聲響等。,5.2.5 傳統(tǒng)程序語言為基礎(chǔ)的編著工具,精通編程的程序員對于多媒體編輯創(chuàng)作系統(tǒng)的限制及依賴工具箱產(chǎn)生對象的方式較不容易接受。 因此,一方面保留傳統(tǒng)語言的特性,另一方面改進(jìn)其程序設(shè)計(jì)環(huán)境成為可視化的操作系統(tǒng)。 這樣程序員既可以用傳統(tǒng)的語言來編寫程序又可方便地使用媒體開發(fā)工具箱,使這些工具箱內(nèi)的編碼可以直接被采用成為重用的編碼 。 Visual BASIC 。 Visual C+ 。,1.Visual BASIC,Microsoft推出在Windows環(huán)境下開發(fā)的程序語言,也是多媒體編著軟件。 VB提供各式的圖形界面。 VB是基于

10、事件的語言,程序的行為附著于對象,等到對象被調(diào)用或被用戶引發(fā)時(shí)才被執(zhí)行。 VB提供給鼠標(biāo)與鍵盤雙重的輸入管道。同時(shí)也可攝取剪輯板,動態(tài)數(shù)據(jù)交換及對象連接與嵌入等設(shè)備,并通過MCI使音響、影片、動畫等均可融入其中。 它還可將數(shù)據(jù)文件引進(jìn)來使用.在完成一個(gè)多媒體產(chǎn)品后,可以將它制作成為一個(gè)可以直接執(zhí)行的EXE文件而成為單獨(dú)的一個(gè)應(yīng)用程序。,2.Visual C+,Visual C+是Microsoft所推出多媒體程序設(shè)計(jì)軟件, 它與Visual BASIC很相似 。 Visual C+的工具包括有Visual Workbench、AppStudio、AppWizard、ClassWizard等模塊

11、。 設(shè)計(jì)VC程序的方法是先利用Visual Workbench及AppStudio來產(chǎn)生或編輯新的資源, 接著利用ClassWizard來產(chǎn)生類, 最后將這些資源在AppWizard中組織起來通過Build來完成構(gòu)造一套新的應(yīng)用節(jié)目或多媒體的節(jié)目。,5.3 多媒體功能卡開發(fā)工具,本節(jié)著重討論音頻卡和視頻卡這兩種功能卡的編程開發(fā)工具。,5.3.1 Sound Blaster編程工具,Creative為了方便第三方軟件開發(fā)人員或用戶的開發(fā),提供了Sound Blaster開發(fā)工具包SBK。 SBK提供了一組反映Sound Blaster功能的庫函數(shù),在DOS環(huán)境下,用戶可根據(jù)需要用高級語言來調(diào)用這

12、些函數(shù)。 SBK沒有提供Windows下進(jìn)行軟件開發(fā)的動態(tài)連接庫,如需開發(fā)Windows下的聲音軟件,可使用Windows MDK。,1.SBK的功能,(1) 語音輸入輸出。 (2) FM音樂輸出。 (3) 由文本生成語音。 (4) MIDI輸入和輸出。 (5) 混音器控制。 (6)CD-ROM驅(qū)動器的聲音接口。,2.編程實(shí)例播放CMF音樂文件示例,Sound Blaster播放CMF音樂文件過程是: (1) 檢測Sound Blaster語音板; (2) 打開一個(gè).CMF文件; (3) 初始化音樂驅(qū)動; (4) 讀取CMF音樂文件首引區(qū),設(shè)定音樂演奏速度; (5) 讀取CMF音樂文件樂器區(qū)段

13、偏移地址及樂器欄內(nèi)使用樂器數(shù)量; (6) 讀取CMF音樂文件音樂段偏移地址,由語音板輸出音樂; (7) 監(jiān)測音樂輸出過程; (8) 可以使用暫停、繼續(xù)、中止函數(shù)來控制音樂輸出; (9) 音樂輸出結(jié)束,重設(shè)驅(qū)動狀態(tài)。,5.3.2 Video Blaster編程工具,Creative公司為了便于其Video Blaster功能卡的使用, 推出了VBK。 這個(gè)工具包是所有多媒體軟件開發(fā)人員使用Video Blaster數(shù)字圖像捕獲及覆蓋特性進(jìn)行軟件開發(fā)的有力工具。 VBK提供了3個(gè)開發(fā)接口: DOS驅(qū)動編程接口。 Windows動態(tài)鏈接庫編程接口。 MCI編程接口。,1. DOS驅(qū)動編程接口,該接口

14、通過使用DOS驅(qū)動程序VBLSTDRV.COM提供功能支持。 API功能包括: (1)取得VBLSTDRV的版本號、初始化驅(qū)動程序、結(jié)束驅(qū)動程序、獲得I/O地址、中斷向量號等系統(tǒng)參數(shù)。 (2)設(shè)置邏輯窗口范圍和位置。 (3)對顯示窗口進(jìn)行縮放、漫游等操作。 (4)修改輸入信號的彩色系統(tǒng)、顯示狀態(tài)、坐標(biāo)等。,2. Windows動態(tài)鏈接庫編程接口,VBK為在Windows環(huán)境下對Video Blaster進(jìn)行程序開發(fā)的用戶,提供了一個(gè)動態(tài)鏈接庫PCVIDEO.DLL。 PCVIDEO.DLL輸出的函數(shù)覆蓋了所有VBLSTDRV的API功能 。,3. MCI編程接口,VBK為Windows3.1的

15、多媒體MCI程序設(shè)計(jì)的用戶提供MCI混疊驅(qū)動程序MCIVBLST.DRV,其混疊命令集提供了顯示混疊視頻的一般方法。 MCIVBLST中的MCI命令所提供的功能也覆蓋了PCVIDEO.DLL動態(tài)鏈接庫的大部分功能,應(yīng)用程序不必在DLL級上編程就可以處理活動視頻信號。,5.4 Windows多媒體開發(fā)環(huán)境 5.4.1 媒體控制接口(MCI),MCI在控制音頻、視頻等設(shè)備方面,提供了與設(shè)備無關(guān)的API接口。 用戶應(yīng)用程序可使用MCI控制標(biāo)準(zhǔn)多媒體設(shè)備 不同設(shè)備其驅(qū)動控制方式不同: 一些MCI設(shè)備驅(qū)動程序(影碟機(jī))直接控制目標(biāo)設(shè)備; 一些MCI設(shè)備驅(qū)動程序(MIDI函數(shù))可使用MMSYSTEM函數(shù)間

16、接控制目標(biāo)設(shè)備; 還有一些MCI設(shè)備驅(qū)動程序(影片演播器)則提供了與其他Windows DLL的高層接口。,應(yīng)用程序通過設(shè)備的類型來區(qū)分設(shè)備 。 如果要通過MCI去控制設(shè)備,必須將相應(yīng)的MCI驅(qū)動程序和設(shè)備的驅(qū)動程序,DLL(如果需要)裝入。 MCI驅(qū)動程序的安裝可通過Windows中的控制面板來完成。在Windows中SYSTEM.INI文件中的mci部分包括了一個(gè)已安裝了的設(shè)備類型表 。,MCI接口分類,Windows采用兩種MCI接口: 一是使用命令消息接口函數(shù),直接控制MCI設(shè)備; 二是使用命令字符串接口函數(shù),基于文本接口或命令腳本來控制MCI設(shè)備。 不同之處在于它們基本命令結(jié)構(gòu)及其發(fā)

17、送消息到設(shè)備的原理不同。 命令消息接口使用消息控制MCI設(shè)備; 命令字符串接口使用文本命令控制MCI設(shè)備。,表5.1 MCI設(shè)備類型,表5.2 Windows提供的MCI設(shè)備驅(qū)動程序,表5.3 Microsoft其他MCI設(shè)備驅(qū)動程序,5.4.2 命令消息接口,使用命令消息接口發(fā)送MCI命令3個(gè)函數(shù): MciSendCommand 發(fā)送一個(gè)命令消息到一個(gè)MCI設(shè)備; MciGetDeviceID 當(dāng)打開一個(gè)設(shè)備時(shí),返回這個(gè)設(shè)備的ID號; MciGetErrorString 返回對應(yīng)于一個(gè)錯誤代碼的字符串。,發(fā)送命令消息 MciSendCommand函數(shù)定義: DWORD MciSendComm

18、and(WORD DeviceID,WORD Message,DWORD Param1,DWORD Param2) 其中: DeviceID標(biāo)識一個(gè)MCI設(shè)備; Message 標(biāo)識要發(fā)出的消息,如MCI-OPEN等; Param1 為消息指定標(biāo)志; Param2 為指定一個(gè)指向消息數(shù)據(jù)結(jié)構(gòu)的指針。 該函數(shù)調(diào)用如果成功返回0,否則返回一個(gè)錯誤代碼, MciGetErrorString 可獲得對這個(gè)錯誤的文本描述。,1.發(fā)送命令消息,MCI命令消息分類: 直接由MCI解釋的命令; 由所有的MCI設(shè)備所支持的命令; 基本命令; 擴(kuò)展命令。 對于不同的設(shè)備類型, MCI使用一組不同的擴(kuò)展命令控制此類

19、設(shè)備特殊性能:,2. MCI命令消息分類,第一組是MCI元素文件操作擴(kuò)展命令組, 包括MCI_COPY,MCI_CUT,MCI_DELETE, MCI_PASTE,一般具有編輯MCI數(shù)據(jù)能力的設(shè)備支持; 第二組是MCI設(shè)備操作及定位擴(kuò)展命令組, 包括MCI_CUE,MCI_ESCAPE,MCI_SEEK,MCI_STEP; 第三組是窗口或視頻設(shè)備的擴(kuò)展命令組,包括MCI_FREEZE, MCI_PUT,MCI_REALIZE, MCI_UNFREEZE, MCI_UPDATE, MCI_WHERE, MCI_WINDOW。,表5.4 直接由MCI解釋的命令,表5.5 所有的MCI設(shè)備支持的命令

20、消息,表5.6 基本命令消息,3.打開一個(gè)設(shè)備,使用設(shè)備之前,必須使用MCI_OPEN命令消息來初始化該設(shè)備 打開MCI設(shè)備的方法有以下幾種: (1)用設(shè)備類型字符串指定待打開的MCI設(shè)備 (2)用MCI設(shè)備驅(qū)動程序名指定待打開的MCI設(shè)備 (3)用設(shè)備類型常數(shù)(見下表)指定待打開的MCI設(shè)備 (4)僅用設(shè)備元素指定打開的復(fù)合設(shè)備,表5.7 設(shè)備類型及常數(shù),4.關(guān)閉一個(gè)設(shè)備,MCI_CLOSE命令消息取消對一個(gè)設(shè)備或者設(shè)備元素的訪問,它類似于一個(gè)文件的關(guān)閉操作。 為了有助MCI管理設(shè)備,應(yīng)用程序在它使用完這個(gè)設(shè)備之后,應(yīng)該明確地關(guān)閉它所使用過的每一個(gè)設(shè)備或者設(shè)備元素。,5.4.3 命令字符串接

21、口,使用命令字符串接口3個(gè)函數(shù): MciSendString向一個(gè)MCI設(shè)備驅(qū)動程序發(fā)送一個(gè)命令字符串。這個(gè)函數(shù)同時(shí)也具有對于回調(diào)函數(shù)和返回字符串的參數(shù)。 MciGetErrorString返回一個(gè)同錯誤代碼相對應(yīng)的錯誤字符串。 MciExecute向一個(gè)MCI設(shè)備驅(qū)動程序發(fā)送一個(gè)命令字符串。,發(fā)送命令字符串 MciSendString函數(shù)的語法定義如下: WORD FAR PASCAL MciSendString(LpstrCommand, LpstrRtnstring, WORD Rtnlength, hcallBack) 指針LpstrCommand 指向一個(gè)以NULL結(jié)尾的MCI控制命令的字符串。這個(gè)字符串的形式如: Command device_name arguments 指針LpstrRtnstring指向一個(gè)由應(yīng)用程序提供的返回字符串緩沖區(qū)。 Rtnl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論