- 相關推薦
多媒體創(chuàng)作系統(tǒng)的設計與實現(xiàn)
摘要 該文簡要分析了目前流行的創(chuàng)作工具的特點,提出了一個集多媒體信息處理、劇本編輯及演播于一體的創(chuàng)作系統(tǒng)的總體結(jié)構、設計方法及主要的實現(xiàn)技術,最后給出了用VisualBasic語言編寫的播放圖形、圖像、動畫、聲頻、視頻(AVI、MOV及VCD小影碟)等多媒體信息的程序例程。隨著多媒體技術的飛速發(fā)展,各種各樣的多媒體演示系統(tǒng)在信息領域中發(fā)揮著越來越大的作用。其豐富的表現(xiàn)力、生動的視覺及聲響效果,大大增強了所演示信息的吸引力。但是,多媒體作品的創(chuàng)作是一項費時費力的工作,不僅涉及到美術、傳播、教育、心理等多方面創(chuàng)作因素,而且更需一種能方便地將圖、文、聲、像等多媒體信息按某種特定要求編合在一起進行表現(xiàn)的方法。為節(jié)省多媒體作品的創(chuàng)作時間,需要一種相對簡單、集成、高效的創(chuàng)作工具來輔助多媒體作品的創(chuàng)作開發(fā)與演播。
本文簡要分析了目前流行的多媒體創(chuàng)作工具的特點,提出了一種多媒體創(chuàng)作工具的功能結(jié)構、設計方法及實現(xiàn)技術,最后給出一個用VisualBasic語言編寫的播放多媒體信息的程序例程。
一、現(xiàn)有多媒體創(chuàng)作工具的類型
目前,最流行的多媒體創(chuàng)作工具主要分為以下三類。
1.描述性語言式
該類工具開發(fā)作品的思想是,按書的結(jié)構方式將每個標題的開發(fā)過程視為一本"書"的組合,每一屏被指定為一頁,在每頁內(nèi)可有多級的對象,設定好各頁與各頁中內(nèi)容及其之間的動作,然后使用指定的編排設計語言進行作品設計。這類工具中,比較有代表性的是美國Asymetrix公司的MultimediaToolBook工具,其編排設計語言為OPENSCRIPT。這類工具的最大優(yōu)點是開發(fā)時的彈性較好,面向稍懂編程的用戶,另外價格較低,易于接受;缺點是整體運行速度慢,雖入門較易,但要掌握其機理需費一番苦功,特別是對多媒體資源的訪問,OPENSCRIPT主要通過MCI函數(shù)調(diào)用,必須在腳本里顯式地寫出有關調(diào)用,且語法和序列并非全直觀,又缺少提示,這點足以使非程序員怯步。
2.交互性圖標式
這類工具主要是讓用戶直接在畫面上安排所需的元件,定義出元件本身的動作以及元件和元件之間的關系。其工作方式是采用一種形象化的方法在微機上制作多媒體作品,通過選擇精簡的形象化圖標,構成應用程序結(jié)構的流程圖,然后再往結(jié)構中添加內(nèi)容,流程圖定義了多媒體元素的流動過程。這類工具很適合沒有程序設計經(jīng)驗的用戶,因此在短時間內(nèi)就可開發(fā)出一套交互式的多媒體系統(tǒng)。這類工具中,著名的有美國authorware公司開發(fā)的AuthorwareProfessional及美國AimTech公司的Icon Author。其主要用于開發(fā)事件驅(qū)動的、需要高交互性的教育、訓練模擬以及導覽系統(tǒng)。這類工具不足之處是價格一般很貴,靈活性方面受現(xiàn)有系統(tǒng)的限制。
3.時間流程式
該類工具較適合于開發(fā)簡報系統(tǒng),它在多媒體顯示上具有較強的時間前后順序,以圖形、文字信息為主。比較著名的有ACTION工具、PowerPoint、Harvard Graphic工具等。該類工具對多媒體信息的支持基本上是通過OLE外部方式進行的,因此,演播多媒體時磁盤I/O動作頻繁,系統(tǒng)開銷大,運行效率低。
上述三類多媒體創(chuàng)作工具開發(fā)的運行環(huán)境是基于Windows 3.X,可處理的音頻文件格式為wav、mid;靜態(tài)圖像文件格式為pcx、bmp、gif、tga、jpg、tif、wmf、dib等;動態(tài)圖像格式為avi、fli、flc等。
二、多媒體創(chuàng)作系統(tǒng)的功能及設計方法通過以上分析,可看出多媒體創(chuàng)作系統(tǒng)一般具有如下特點。
1.易于入門,無需專業(yè)級程序員的編程經(jīng)驗,但熟練掌握不易。對某些特定的簡單要求,往往要通過熟練掌握后所得到的使用技巧來實現(xiàn)。另外,對時效要求高、常修改的內(nèi)容,修改也不甚方便。
2.支持許多硬設備和許多文件格式,可生成含有圖形、圖像、文本、聲音、動畫、視頻元素的復雜產(chǎn)品。
3.具有流程控制能力,可為上述元素提供導引框架。
4.雖包含了圖形編輯、動態(tài)編輯、數(shù)字式動畫、視頻編輯等多項工具,但多媒體數(shù)據(jù)的制作能力不如專用軟件功能強、精美。
當前,處理多媒體信息的專用軟件資源比較豐富,文字方面有Wordfor Windows、WPS等;圖形圖像方面有PhotoStyler、Photoshop、CorelDraw等;動畫方面有Animator、3DS等;視頻方面有Video for Wind
ows、Adobe Premiere、Quicktime for Windows等;聲音方面有SoundSystem、WaveEdit等。
對用戶而言,已掌握了多媒體處理專用軟件,還得學習創(chuàng)作系統(tǒng)中的功能較弱的媒體處理工具,是某種意義上的重復。用戶要求在媒體素材設計上精雕細鑿,媒體作品演播時靈敏高效。因此,我們的設計原則是,利用現(xiàn)有功能強大的多媒體處理工具,采用系統(tǒng)集成與軟件編程相結(jié)合的方法,縮短開發(fā)周期以創(chuàng)造最佳的軟件。既兼顧一般要求,又滿足用戶演播的特定要求。在方法上綜合描述性語言及圖標式創(chuàng)作工具的優(yōu)點,以及軟件編程開發(fā)在系統(tǒng)彈性和擴充上靈活、應用范圍廣、用戶具體要求明確、軟件資源節(jié)約的特點,克服現(xiàn)有創(chuàng)作工具靈活
性弱、受現(xiàn)有系統(tǒng)限制的不足。
所設計的多媒體創(chuàng)作系統(tǒng)各模塊主要功能如下。
·文本編輯:這是一個文本編輯器,它將所要演播的文字底稿逐行輸入,形成文本文件。
·劇本編輯整合:提供一種方便、高效、直觀的圖、文、聲、像數(shù)據(jù)集成的編輯手段,按用戶的設計要求,對各種媒體數(shù)據(jù)進行編輯整合,制成各媒體對象的進出入效果(如閃爍、飛行、旋轉(zhuǎn)、淡入淡出、大小、定位等等),最后形成一個劇本文件供演播時調(diào)用。
·圖形圖像處理:圖形圖像部分掛接PhotoShop或PhotoStyler軟件,處理多種位圖文件,包括wmf、tif、bmp、pcx、tag、gif、dib、jpg等等格式;統(tǒng)計圖形方面提供制作各種二維、三維統(tǒng)計圖形的手段。
·劇本演播:將劇本編輯整合處理形成的劇本文件直接調(diào)入演播,可按自動播放方式或?qū)б、單步控制播放方式進行播出。對動態(tài)圖像播放可控制暫停、繼續(xù)。
·二維動畫處理:掛接Animator二維動畫處理軟件,處理并形成fli、flc格式動畫文件。
·三維動畫處理:掛接3DS三維動畫處理軟件,制作并形成flc、fli格式的動畫文件。
·視頻處理:掛接Video for windows、QuickTime for Windows、Adobe Premiere軟件。對質(zhì)量要求一般的視頻影像,經(jīng)電視、VCR或影碟機播出,通過視頻捕捉卡,處理形成avi、mov格式的視頻文件。而對質(zhì)量要求高、需全屏顯示的視頻影像,則使用專用數(shù)字視頻采樣壓縮工具生成mpeg、dat影像文件存于CD-ROM中,播放時,使用MPEG視頻解壓卡,將影像文件從光盤中調(diào)出,實時解壓縮,滿足全屏幕、全運動、全彩色的視覺要求。
·聲音處理:主要掛接Soundsystem或WaveEdit,處理mid、wav格式的語音文件,
并能使用CD-AUDIO音碟資源。
·地圖標繪與動畫處理:主要處理點陣、矢量地圖的標繪及基于地圖的簡單動畫,如箭頭、飛機、艦船、車輛等運動目標沿軌跡運動、閃爍、變化過程等,并形成ate自定義格式文件,供演播時調(diào)用。
·外接演播工具:主要外掛其它各種多媒體創(chuàng)作工具的演播軟件來播放其制作的作品文件。如掛接PowerPoint的PPTVIEW程序,掛接Authorware的RUNAPW程序。
三、多媒體創(chuàng)作系統(tǒng)設計技術的實現(xiàn)
我們在靜態(tài)圖形、圖像處理上,使用Windows API編程技術,結(jié)合OLE方法;在多媒體數(shù)據(jù)處理方面,充分使用MCI接口,將各種媒體的編演融合一體。
編程語言采用VisualBasic及Visual C++語言,同時充分利用第三方廠家提供的這兩種語言的用戶控制對象來解決圖、文、聲、像等多媒體演播時可能存在的效果限制問題。
1.圖、文、聲、像的編輯整合功能
具有高效方便的圖、文、聲、像等多媒體數(shù)據(jù)編輯整合功能是多媒體創(chuàng)作工具的特點。我們提出了以下這種基于表格方式,以頁操作為主的多媒體數(shù)據(jù)編輯整合的實現(xiàn)方法。
表格形式如表1。
首先將文字底稿調(diào)入并自動填入到上述表格中,然后,用清屏方式來定義屬于同一頁的文字,并定義好該頁的背景色、字體、前景色以及該頁正文出頁方式,根據(jù)需要還可定義出該頁正文所在行的操作方式、條件及其位置。系統(tǒng)還提供缺省的版面布局供用戶使用。
表1
定義好一頁的文字以后,就可定義與該頁有關的多媒體信息之間的有機關系,可選擇聲音文件、動畫文件、視頻文件、統(tǒng)計圖、地圖標繪動畫數(shù)據(jù),并定義這些媒體的播放位置、觸發(fā)條件及進出場效果等。
另外,還可嵌入播放其它著作工具的作品并融合到播出中。這種編輯方法使整個格本形成一個前后一貫的大表格,前、后、左、右滾動可直觀方便地瀏覽全部劇本,操作非常簡便,整體性好,每頁隨時可進行修改,并可隨時察看每頁效果。
2.多媒體數(shù)據(jù)訪問的實現(xiàn)
(1)采用Windows API處理多媒體數(shù)據(jù)
我們使用BITBLT函數(shù)實現(xiàn)圖形圖像的變化,MCI接口處理音頻、視頻、動畫、CD-AUDIO數(shù)據(jù)的播放。
Windows 3.1中的MMSYSTEM.DLL動態(tài)連接程序庫提供了大約一百多個具有多媒體處理能力的API函數(shù),其MCI函數(shù)提供了與設備無關的程序接口,應用程序可以通過MCI命令訪問符合MCI控制標準的多媒體設備,MCI接口覆蓋了多媒體的主要領域,因此可以滿足大多數(shù)應用系統(tǒng)的開發(fā)需要。由于MCI的設備無關性,更換設備時只需更換MCI驅(qū)動程序,無需了解每種多媒體產(chǎn)品的細節(jié),系統(tǒng)升級十分方便,提高了應用系統(tǒng)的開發(fā)效率及靈活性。
在系統(tǒng)開發(fā)中,主要用到的MCI多媒體設備類型及驅(qū)動程序如表2。
表2
其余的mpg、dat等視頻格式的設備類型及MCI驅(qū)動程序視其產(chǎn)品提供的MCI驅(qū)動程序而定。
(2)利用用戶控制對象VBX進行編程,處理圖、文、聲、像等多媒體數(shù)據(jù)
目前有眾多知名廠商開發(fā)出各類VBX控制對象,支持Visual C++、Visual Basic,VBX有可能成為標準文件格式。這類功能強大的VBX控制對象是開發(fā)多媒體系統(tǒng),提高開發(fā)效率,縮短開發(fā)周期的有效武器,使我們對復雜的圖文特效及外部設備的控制都交給了控制對象去處理,大大減少了編程的工作量,而且準確性、高效性大大地提高。
開發(fā)多媒體系統(tǒng)常用到的VBX主要有:支持MCI接口的MCI.VBX(Microsoft公司);支持flc、fli動畫演播的VBPLAY.VBX(Autodesk公司);支持圖文播放效果的FXTools/VB(ImageFx公司)、Knife.VBX(ImageKnife)、MHPicture.VBX(MicroHelp公司);支持圖形、圖像、文字播放效果的FXImage.VBX、FXLabel.VBX;支持mov視頻播放的QtMove.VBX、QtView.VBX。
四、結(jié)束語
多媒體創(chuàng)作系統(tǒng)的開發(fā)與通常的應用系統(tǒng)開發(fā)有一定的差異,既要有豐富的編程經(jīng)驗,又要充分了解多媒體的特點。
善于利用多媒體集成工具,就能在應用系統(tǒng)開發(fā)中作到事半功倍。完成多媒體作品相當部分的工作量在于圖形、圖像、聲音、影像素材的準備,其技術及藝術含量都很高。而多媒體創(chuàng)作系統(tǒng),其目的是便于用戶高效地使用創(chuàng)作工具按某種構想,將圖、文、聲、像等媒體進行導演、創(chuàng)意及包裝。
目前,多媒體創(chuàng)作工具種類越來越多,隨著多媒體技術應用發(fā)展的深入,開發(fā)多媒體的技術將越來越先進、越科學、越方便、越有效。
本系統(tǒng)應用范圍廣,適用于需經(jīng)常制作多媒體作品的教育、軍事、旅游等部門。
以下是一個用MCI.VBX控制對象來播放多媒體數(shù)據(jù)的函數(shù)實例(Visual Basic編寫,對MPEG視頻以realmagic MPEG解壓卡為例),可看出用控制對象處理多媒體信息的方便高效性。
const MCI_MODE_NOT_OPEN=524
Sub closemedia (byVal mediatype)'關閉媒體
Select Case mediatype
Case "video","sound","animator"
if Not MMControl1.Mode=MCI_MODE_NOT_OPEN Then
MMControl1.Wait=True
MMControl1.command="Close"
End If
Case "graph"
image.Picture=LoadPicture("")
image.Visible=False
End Select
End Sub
Sub openMedia(mediatype As String, medianame As String)'
打開并演播媒體
If Not MMControl.Mode=MCI_MODE_NOT_OPEN_Then
MMControl.Wait=True
MMControl.command="Close"
End If
Select Case Mediatype
Case "graph" '圖像
image.Picture=LoadPicture(medianame)
image.Visible=True
exit sub
Case "sound" '聲音
tt$=UCase(Right$(medianame,3))
Select Case tt$
Case "WAV"
MMControl.DeviceType="WaveAudio"
Case "MID"
MMControl.DeviceType="Sequencer"
End Select
Case "animator" '二、三維動畫
tt$=UCase(Right$(medianame,3))
Select Cas
e tt$
Case "FLC","FLI"
Mmcontrol.DeviceType="Animation1"
Case "MMM"
Mmcontrol.DeviceType="MMMovie"
End Select
Case "video" '視頻
tt!=UCase (Right$(medianame,3))
Select Cast tt$
Case "AVI"
Mmcontrol.DeviceType="AVIVideo"
Case "MOV"
Mmcontrol.DeviceType="QtwVideo"
Case "MPG"
Mmcontrol.DeviceType="MMaster" ' reelmagic設備名
Case "DAT"
Mmcontrol.DeviceType="MMaster" ' reelmagic設備名
Case "CDI"
Mmcontrol.DeviceType="MMaster" 'reelmagic設備名
End Select
End Select
Mmcontrol.FileName=medianame
Mmcontrol.Wait=True
Mmcontrol.Command="Open" '打開設備
Mmcontrol.Notify=True
Mmcontrol.command="play" '演播
End Sub
【多媒體創(chuàng)作系統(tǒng)的設計與實現(xiàn)】相關文章:
TM1300嵌入式多媒體網(wǎng)絡通信系統(tǒng)的設計與實現(xiàn)08-06
Real System G2實現(xiàn)多媒體點播系統(tǒng)08-09
光纖擾動入侵檢測系統(tǒng)的設計與實現(xiàn)08-06
基于Client/Server 的課件系統(tǒng)的設計與實現(xiàn)08-06
學生成績管理系統(tǒng)的設計與實現(xiàn)08-06
學生成績管理系統(tǒng)的設計與實現(xiàn)08-06
基于Client/Server 的課件系統(tǒng)的設計與實現(xiàn)04-12