專利名稱:互聯(lián)網(wǎng)卡拉ok實(shí)時(shí)播放系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于實(shí)時(shí)互聯(lián)網(wǎng)流媒體傳輸技術(shù),特別是互聯(lián)網(wǎng)卡拉OK實(shí)時(shí)播放系統(tǒng)。
互聯(lián)網(wǎng)為傳輸各種數(shù)據(jù)提供了可靠的路徑,在互聯(lián)網(wǎng)上可以傳輸各種不同的數(shù)據(jù),例如,文字、圖像、音樂等。目前,出現(xiàn)了一種使用互聯(lián)網(wǎng)進(jìn)行卡拉OK娛樂的系統(tǒng)。該設(shè)備由日本先鋒公司推出。該系統(tǒng)的主要原理是采用Midi音樂格式,音色還原采用Midi解碼芯片,還原的音質(zhì)優(yōu)良。其音樂傳播形式是通過專線下載連接,下載音樂更新區(qū)目。下載的圖像存儲(chǔ)在光盤上,并與音樂同步播出。該系統(tǒng)的主要缺點(diǎn)是必須通過專線從互聯(lián)網(wǎng)上下載音樂,不能做到實(shí)時(shí)播放。同時(shí),由于互聯(lián)網(wǎng)的帶寬較窄,如果從互聯(lián)網(wǎng)上直接進(jìn)行媒體播放,則播放的質(zhì)量非常差,無法滿足人們使用卡拉OK進(jìn)行娛樂本發(fā)明的目的是提供一種卡拉OK實(shí)時(shí)播放系統(tǒng),改善由于互聯(lián)網(wǎng)帶寬的瓶頸造成的實(shí)時(shí)媒體播放質(zhì)量低下問題。
本發(fā)明的主要特點(diǎn)是包括連接到互聯(lián)網(wǎng)上的服務(wù)器和連接到服務(wù)器的用戶端,文件格式模塊放置在服務(wù)器和客戶端之間,客戶端模塊放置在客戶端與播放器之間,所述的文件格式模塊將Midi文件轉(zhuǎn)換為適合傳統(tǒng)媒體播放的內(nèi)部格式,所述的客戶端模塊接收文件格式模塊發(fā)出的數(shù)據(jù),并將數(shù)據(jù)包含的Midi音樂數(shù)據(jù)通過Midi設(shè)備播放出來。
本發(fā)明具有實(shí)時(shí)播放的特點(diǎn),中間信息載體在依賴于互聯(lián)網(wǎng)的同時(shí),器數(shù)據(jù)傳輸需求基本不受帶寬的限制。當(dāng)用戶希望存儲(chǔ)一首曲目時(shí),它將無法得到原傳輸格式的文件,只能以數(shù)字錄音的方式獲得一個(gè)非常大的音樂文件。所以防止了對(duì)歌曲的盜版。
圖1是本發(fā)明的系統(tǒng)圖。
圖2是文件格式模塊的流程圖。
圖3是播放模塊的流程圖。
下面結(jié)合附圖詳述本發(fā)明。
參考圖1,將Midi格式的音樂通過互聯(lián)網(wǎng)以流媒體的方式進(jìn)行傳輸,并在接受的計(jì)算機(jī)端,通過聲卡輸出在線播放Midi音樂,并在屏幕上顯示隨音樂變色的卡拉OK歌詞。在播放軟件中具備Midi音樂軟波表的選擇功能,以調(diào)整Midi音樂的音色。同時(shí)為Midi文件配備其它網(wǎng)絡(luò)流媒體文件,如,文字、圖片、動(dòng)畫,及在接受電腦端播放的錄像片斷。通過聲卡,音頻輸出到卡拉OK音響設(shè)備,通過帶有電視信號(hào)輸出的電腦顯卡,將歌詞、圖片、文字、活動(dòng)錄像等所有卡拉OK元素輸出到電視,配合音樂同時(shí)播放,達(dá)到卡拉OK的效果。具體步驟是將midi文件加入歌詞動(dòng)畫,由文件格式模塊轉(zhuǎn)換成為支持傳統(tǒng)媒體播放的內(nèi)部格式。在系統(tǒng)啟動(dòng)階段,Real平臺(tái)裝載每個(gè)文件格式模塊,播放模塊創(chuàng)建一個(gè)播放對(duì)象。在系統(tǒng)初始化階段,模塊調(diào)用IRMA格式響應(yīng)傳給系統(tǒng)一個(gè)流的頭數(shù)據(jù)對(duì)象。在傳輸階段,播放模塊接收文件格式模塊所發(fā)出的數(shù)據(jù)包,將數(shù)據(jù)包中所包含的midi音樂數(shù)據(jù)通過midi設(shè)備播放出來,并將歌詞與音樂同步顯示。
與其它流媒體不同的是,本發(fā)明的midi卡拉OK數(shù)據(jù)以每5秒一個(gè)包的方式向客戶機(jī)發(fā)送,并只在本地緩存中存貯,接受本地播放模塊的直接調(diào)用。這甚至不同于網(wǎng)頁的打開形式。因此它具有實(shí)時(shí)播放的特點(diǎn),中間信息載體在依賴于互聯(lián)網(wǎng)的同時(shí),其數(shù)據(jù)傳輸需求基本不受帶寬的限制。
當(dāng)用戶希望存貯一首曲目時(shí),他將無法得到原傳輸格式的文件,他只能以數(shù)字錄音的方式,獲得一個(gè)非常大的錄音文件,這具有利用音頻設(shè)備進(jìn)行計(jì)算機(jī)錄音的特點(diǎn)。
數(shù)據(jù)在本地實(shí)時(shí)播放,利用了波表技術(shù)(一項(xiàng)成熟的,midi音色改制技術(shù))進(jìn)行音色和音質(zhì)的修復(fù)。其次利用數(shù)字信號(hào)和視頻的轉(zhuǎn)換技術(shù),將播放的數(shù)字化信息傳置成為普通視頻信號(hào),傳輸于家用電器設(shè)備。
以上過程實(shí)現(xiàn)的是一個(gè)數(shù)字化的專有格式的midi卡拉OK文件從服務(wù)器向客戶機(jī)的實(shí)時(shí)傳播與處理的過程,以完成實(shí)時(shí)在線視聽的全部功能。
本軟件是一個(gè)基于Realplayer的模塊,編程規(guī)范嚴(yán)格按照real公司提供的Real SDK(軟件開發(fā)工具)相關(guān)文檔進(jìn)行開發(fā),以充分利用SDK提供的RTSP(實(shí)時(shí)流協(xié)議)通信支撐和其它類COM對(duì)象支持庫,并且可以和Realplayer所支持的其他多媒體應(yīng)用(如real text,real picture,realmedia等)進(jìn)行集成,以使軟件所播放的音樂和顯示的歌詞能夠同其他媒體(如視頻畫面)進(jìn)行視頻同步,以達(dá)到盡可能完美的卡拉OK效果。在軟件開發(fā)過程中,一個(gè)重要的原則是盡量使用跨平臺(tái)的SDK所提供的庫,而盡量少使用windows平臺(tái)的函數(shù),并盡量隔離windows平臺(tái)的函數(shù),以便將來可以很方便地?cái)U(kuò)充到其他Wince,Unix,Linux等平臺(tái)。
軟件分為兩大部分,服務(wù)器端文件格式模塊和客戶端的播放模塊該軟件采用visual C++6.0開發(fā)完成,大多數(shù)函數(shù)均被封裝至C++對(duì)象。文件格式模塊參考圖2,該部分為本軟件的關(guān)鍵部分,將原本不適合傳統(tǒng)媒體播放的midi文件轉(zhuǎn)為支持傳統(tǒng)媒體播放的內(nèi)部格式,并按照每5s一個(gè)包(packet)的方式向客戶端發(fā)送。這區(qū)別于傳統(tǒng)的midi播放方式,如web瀏覽器需要將整個(gè)midi文件下載完才能播放,而現(xiàn)在只需傳輸5s的midi的數(shù)據(jù)即可開始連續(xù)播放。
模塊所需支持的接口●IRMAPlugin Real系統(tǒng)用來確定模塊的特點(diǎn)●IRMAFileFormatObjectReal系統(tǒng)用來通知模塊發(fā)送頭信息和數(shù)據(jù)包●IRMAFileResponseReal的本地文件存取接口為異步方式,該接口可以最終獲得文件的實(shí)際內(nèi)容。
系統(tǒng)的流程(按時(shí)間順序)1. 啟動(dòng)階段當(dāng)Real系統(tǒng)啟動(dòng)時(shí),它裝載每個(gè)文件格式模塊a RMACreateInstance()來創(chuàng)建文件格式模塊的一個(gè)新實(shí)例。
b IRMAplugin∷GetPluginInfo()它含返回關(guān)于模塊的描述信息,包括它的版權(quán)。
c IRMAFileFormatObject∷GetFileFormatInfo()它含返回模塊的功能信息○ FileMIMEType表示模塊支持的MIME類型或文件格式的類型。(相應(yīng)的播放模塊沒有相同的MIME類型)○ FileExtensions給出了模塊支持的文件擴(kuò)展名(*.kar)○ FileOpenNames給出了文件類型描述以及在客戶端打開文件的對(duì)話框中出現(xiàn)的文件類型中顯示出來的文件名。
2.初始化階段模塊調(diào)用IRMAFormatRespense∷StreamHeaderRealy來傳給系統(tǒng)一個(gè)流的頭數(shù)據(jù)對(duì)象(包含播放時(shí)間總長(zhǎng)度,需要的網(wǎng)絡(luò)帶寬等信息)。a IRMAPlugin∷InitPlugin()模塊完成任何必須的初始化b IRMAFileFormatObject∷InitFileFormat()進(jìn)行必要的初始化c 當(dāng)初始化完成以后,文件對(duì)象調(diào)用文件格式模塊IRMAFileResponse∷InitDone()方法來返回一個(gè)狀態(tài)碼來通知系統(tǒng)初始化是否完成。d IRMAFileFormatObject∷GetFileHeader()來得到一個(gè)對(duì)象,該對(duì)象包含文件的頭數(shù)據(jù)e IRMAFileFormatObject∷FileHeaderReady()返回頭數(shù)據(jù)到系統(tǒng)3.播放階段每個(gè)IRMAFileFormatObject∷GetPacket()調(diào)用返回IRMAPacket對(duì)象組成的包,包含了傳送到Rendering Plugin的數(shù)據(jù)。文件格式模塊調(diào)用IRMAFormatResponse∷PacketReady()來傳遞給系統(tǒng)一個(gè)指針到包對(duì)象。4.結(jié)束階段系統(tǒng)需要另外的包時(shí),它再重復(fù)調(diào)用GetPacket()以及上述的步驟3,直到模塊調(diào)用IRMAFormatResponse∷StreamDone()通知系統(tǒng)流已經(jīng)結(jié)束。
播放模塊該模塊接收文件格式模塊所發(fā)出的包,將包中所包含的midi音樂數(shù)據(jù)通過midi設(shè)備播放出來,并將歌詞與音樂同步顯示。
該模塊實(shí)現(xiàn)CMidiRender對(duì)象支持如下的接口●IRMAPlugin 提供模塊的屬性,通知Realplayer本模塊支持音樂播放和視頻顯示●IRMARender 在該接口中可以獲取文件格式模塊所提供的數(shù)據(jù)包●IRMASiteUser 在該接口中顯示歌詞●IRMAContextMenuRespone顯示右鍵midi設(shè)備顯示菜單,以方便用戶選擇midi播放設(shè)備。
除了標(biāo)準(zhǔn)接口,該模塊還實(shí)現(xiàn)如下對(duì)象CSMFPlayer封裝了windows平臺(tái)的midi播放接口,實(shí)現(xiàn)了Init,Play,Pause等高層函數(shù),并掛接IRMASiteUser的函數(shù)進(jìn)行歌詞同步顯示系統(tǒng)的流程如下1.啟動(dòng)階段a)每次在RealPlayer啟動(dòng)時(shí)在用戶開始播入一個(gè)MIDI文件時(shí),通過RMAcreatInstanse()創(chuàng)建一個(gè)CMidiRerder對(duì)象。b)IRMAplugin∷GetPlugInfo返回版權(quán)信息。c)IRMARender∷GetRenderInfo返回模塊支持MIME信息(與文件格式的返回信息相同)2.初始化階段a)IRMARender∷Initplugin()進(jìn)行播放每個(gè)MIDI文件所需要的初始化,包括初始化一個(gè)CSMFPlayer對(duì)象b)IRMARender∷StartStream()開始接收數(shù)據(jù)包c(diǎn))IRMARender∷OnHeader()接收信息頭d)IRMARender∷GetDisplaytype()返回歌詞窗口大小3.播放階段a)IRMARender∷OnBegin()開始播放接收第一個(gè)數(shù)據(jù)包b)IRMARender∷OnPaeket()接收后續(xù)數(shù)據(jù)包c(diǎn))IRMARender∷OnTimesync()與RealPlayer的其他窗口的播放內(nèi)容進(jìn)行同步4.播入結(jié)束階段a)IRMARenderOnEndofPackets()不再接收數(shù)據(jù)包b)IRMARenderEndStream()終止音樂和歌詞的顯示
權(quán)利要求
1.一種互聯(lián)網(wǎng)卡拉OK實(shí)時(shí)播放系統(tǒng),包括連接到互聯(lián)網(wǎng)上的服務(wù)器和連接到服務(wù)器的用戶端,其特征在于文件格式模塊放置在服務(wù)器和客戶端之間,客戶端模塊放置在客戶端與播放器之間,所述的文件格式模塊將Midi文件轉(zhuǎn)換為適合傳統(tǒng)媒體播放的內(nèi)部格式,所述的客戶端模塊接收文件格式模塊發(fā)出的數(shù)據(jù),并將數(shù)據(jù)包含的Midi音樂數(shù)據(jù)通過Midi設(shè)備播放出來。
2.按權(quán)利要求1所述的系統(tǒng),其特征在于所述的文件格式模塊將Midi文件轉(zhuǎn)換為多個(gè)數(shù)據(jù)包。
3.按權(quán)利要求1或2所述的系統(tǒng),其特征在于文件格式模塊將Midi文件轉(zhuǎn)換為5秒一個(gè)的數(shù)據(jù)包。
4.按權(quán)利要求1所述的系統(tǒng),其特征在于依次向客戶端發(fā)送的數(shù)據(jù)包存儲(chǔ)在本地緩存器中。
全文摘要
一種互聯(lián)網(wǎng)卡拉OK實(shí)時(shí)播放系統(tǒng)。包括連接到互聯(lián)網(wǎng)上的服務(wù)器和連接到服務(wù)器的用戶端,文件格式模塊放置在服務(wù)器和客戶端之間,客戶端模塊放置在客戶端與播放器之間。本發(fā)明具有實(shí)時(shí)播放的特點(diǎn),中間信息載體在依賴于互聯(lián)網(wǎng)的同時(shí),器數(shù)據(jù)傳輸需求基本不受帶寬的限制。當(dāng)用戶希望存儲(chǔ)一首曲目時(shí),它將無法得到原傳輸格式的文件,只能以數(shù)字錄音的方式獲得一個(gè)非常大的音樂文件。所以防止了對(duì)歌曲的盜版。
文檔編號(hào)G06F15/173GK1346109SQ00124968
公開日2002年4月24日 申請(qǐng)日期2000年9月27日 優(yōu)先權(quán)日2000年9月27日
發(fā)明者鄒迅 申請(qǐng)人:鄒迅