- 相關推薦
《幸運智多星》節目控制軟件的設計與實現
《幸運智多星》節目控制軟件的設計與實現
2002中南地區廣播電視技術年會優秀論文二等獎《幸運智多星》是一檔益智類電視節目,節目形式最早來自英國,形式固定且比較復雜,由一套節目控制軟件控制。現在國內類似節目有很多,節目形式有了很多變化但基本上仍以搶答為主。《幸運智多星》節目從開播以來,已經經過多次的改版和調整,原有的節目控制軟件已經不能適應節目形式的變化,因此我們在總結了該類節目的基本形式和變化情況后,重新開發了一套新的節目控制軟件,以適應節目形式的不斷變化。
一、 系統結構與基本功能需求
《幸運智多星》節目控制系統由一臺計算機及三個選手成績顯示屏、三個搶答器、一個大屏幕顯示器組成,系統結構見圖1。
三個搶答器通過串口與控制計算機相連,三個選手的成績顯示屏及大屏幕則和控制計算機的顯示器一起通過多屏顯示卡與控制計算機相連。計算機輸出的VGA信號通過AerKey7轉為視頻信號后,再輸出給三個選手成績顯示屏和大屏幕(有一些型號的多屏卡可直接輸出視頻信號)。
節目的基本形式主要是搶答。在節目錄制過程中,三位選手在主持人的組織下進行搶答,控制計算機根據串口信息判斷是哪一位首先按下搶答器,并通過選手的成績顯示屏標記出獲得答題權的選手。選手答完題目后,根據主持人的判斷決定是否給選手加分。在基本的搶答形式中,大屏幕只顯示出系統的底圖,當有選手搶答時大屏幕與選手成績顯示屏同步顯示獲得搶答權的選手的成績。
在基本的搶答形式以外,還有一些變化的形式,主要有在大屏幕的配合下進行搶答(即三位選手根據大屏幕的顯示內容進行搶答)、單個選手根據大屏幕的顯示進行答題(即不使用搶答器,而是由一個選手進行答題)。
經過對原有軟件的分析及近一年來節目的具體情況我們對新的軟件提出了以下需求,主要是要求提高軟件的靈活性,滿足節目形式不斷調整的需要:
1、 保持基本的節目形式不變。
2、 在顯示成績時可以用數字也可以用圖片來表示。
3、 系統可以定義總的題目數量、每一輪次的題目數量及其位置。
4、 節目環節可由用戶自定義,每一個輪次都可以采取不同的節目形式。
5、 以模塊化方式實現,當某些節目環節需要調整時,無需對整個系統進行修改。
6、 節目中使用的圖片、音樂等可進行方便地更改,無需修改程序。
二、 系統數據流分析
根據節目形式的不同,有不同的數據流,圖2是最基本的搶答形式的數據流圖。
在大屏目配合下的搶答形式比單純的搶答形式要復雜一些,主要是大屏幕在選手搶答前不是只顯示底圖,而是根據操作員的命令顯示各種形式的題目,數據流圖見圖3:
由單個選手根據大屏幕的顯示進行答題的節目形式要簡單的多,大屏幕根據操作員的命令進行變化,沒有其它操作,不再附圖。
三 . 系統結構設計。
根據節目形式的不同可將系統基本上劃分為三個基本模塊,加上系統配置共可劃分為四個模塊,結構圖見圖4:
在節目中,基本的搶答形式是比較固定的,因此在系統中作為基本構架,而另外兩種形式因為常常要根據需要調整內容和形式,因此可設計成動態鏈接庫,以便在修改時不必對主程序進行改動。
四、 系統界面設計:
《幸運智多星》節目控制系統的系統界面由以下幾個部分組成:控制計算機的顯示器的主控界面、選手的三個成績顯示屏的界面、大屏幕的界面及系統配置界面。主控界面是操作員進行操作的系統主界面,見圖5。
主控界面主要由三個部分組成,上部的三個顯示區分別與三個選手的成績顯示屏相對應,即三個選手的成績顯示屏所顯示的內容與這三個顯示區的內容是完全一致,操作員對這三個顯示區進行操作就可完成對三個選手成績屏的操作。左下部的一個較大的顯示區與大屏幕相對應,對這一部分的操作可完全反應到大屏幕上。使用大屏幕的操作都是通過對這一區域的操作來完成的。右下部為按鈕區,大多數操作命令在這一區域完成。
三個選手的成績顯示屏及大屏幕主要是單純的顯示,且內容與上面介紹的幾個區域完全一致,不再敷述。
系統配置界面主要有以下幾個部分:
圖 6 中主要用來配置系統中所需的各種圖片,圖片都存儲在數據庫中。
圖 7 主要用來配置主要的系統參數,如"商標數設置"主要用來設置系統總的題目數量,這里的商標數指的是每一個選手成績顯示屏可顯示的題目數,如圖 6 中選的是"12個商標"則說明系統中共有3X12=36個題目。"答錯是否停一輪"用來設置當選手搶得答題權后,若答錯了題目,是否要被剝奪下一輪的搶答權,以示懲罰。"顯示地址設置"用來設定三個選手成績屏和大屏幕的顯示地址。"獲勝商標號"用來設定每一輪中題目數量及位置。"是否使用選手屏幕"和"是否使用大屏幕"組合起來可完成對節目形式的選擇,當前者為"是"、后者為"否"時,節目形式就是基本的搶答形式。當二者都是"是"時,則是在大屏幕的配合下的搶答形式。當前者是"否",后者為"是"時,則是單獨使用大屏幕的節目形式。
五、部分功能實現方法
《幸運智多星》節目控制系統實現的關鍵技術之一是對多屏卡的操作。多屏卡在實際使用中類似于對一個有大分辨率的顯卡的操作,例如,當設置分辯率為1024X768,采用6X1設置的6屏卡(即采用橫向6個縱向1個設置的6屏卡)時,6屏卡的實際分辯率為6144X768,這樣我們可以通不同的地址來訪問不同的屏幕,如上例中,第一個屏幕地址為0至1024,而第二個屏幕地址為1024至2048…,以此類推。因此在實際實現過程中,對選手成績屏和大屏的操作其實是兩次寫的過程,即:首先在控制計算機的相應顯示區域顯示想要顯示的圖片(第一次寫)然后將該區域的內容拷貝到相應屏幕上(第二次寫)。第二次寫的過程之所以采用拷貝而不是直接寫,是因為在Delphi中畫布拷貝命令的刷新速度要遠高于對圖片的操作,從而避免屏幕的閃爍。但在進行畫布拷貝命令時要注意該命令的執行一定要在控制計算機的圖片操作完成之后有一個小的延遲,否則畫布拷貝命令執行速度比圖片操作命令要快,拷貝至屏幕上的圖像有可能是進行圖片操作前的內容。下面是一個例子。
procedure Main_FormFormShow(Sender: TObject);
begin
BackGround_Image.Picture.LoadFromFile('Game21\ BackGround.bmp');// 裝載底圖
Image1.Picture.LoadFromFile('Game21\g1.bmp');
Image2.Picture.LoadFromFile('Game21\g2.bmp');
Image3.Picture.LoadFromFile('Game21\g3.bmp');
Image4.Picture.LoadFromFile('Game21\g4.bmp');
Image5.Picture.LoadFromFile('Game21\g5.bmp');
Image6.Picture.LoadFromFile('Game21\g6.bmp');
Image7.Picture.LoadFromFile('Game21\g7.bmp');
Image8.Picture.LoadFromFile('Game21\g8.bmp');
Image9.Picture.LoadFromFile('Game21\g9.bmp');
Image10.Picture.LoadFromFile('Game21\g10.bmp');
Image11.Picture.LoadFromFile('Game21\g11.bmp');
Image12.Picture.LoadFromFile('Game21\g12.bmp');// 裝載圖片
Timer1.Enabled:=True;//使TTimer控件開始工作
end;
procedure Main_Form.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled:=False;// 使TTimer控件停止工作
end;
【《幸運智多星》節目控制軟件的設計與實現】相關文章:
廣播節目分頻播出系統的設計與實現08-17
高速紅外VFIR控制器的設計與實現08-06
智能家居控制系統的設計與實現08-06
遠程終端中通信控制卡的設計與實現08-06
視頻節目遠程編輯的實現08-06
VB開發客戶服務器軟件的設計與實現08-06
路燈照明系統中的組群控制器設計與實現08-06
基于定點DSP的軟件鎖相環的設計和實現08-06