技術(shù)領(lǐng)域
本申請(qǐng)涉及數(shù)據(jù)處理技術(shù),特別涉及一種基于智能電視的數(shù)據(jù)處理方法和裝置。
背景技術(shù):
順應(yīng)電視機(jī)“高清化”、“網(wǎng)絡(luò)化”、“智能化”的趨勢(shì),智能電視逐漸普及。智能電視將實(shí)現(xiàn)網(wǎng)絡(luò)搜索、IP電視、BBTV網(wǎng)視通等各種應(yīng)用服務(wù)。
目前,隨著智能電視技術(shù)的不斷發(fā)展,智能電視正在成為繼計(jì)算機(jī)、手機(jī)之后的第三種信息訪問終端,為了方便用戶可以利用智能電視隨時(shí)訪問自己需要的信息,在現(xiàn)有技術(shù)中,實(shí)現(xiàn)智能電視、網(wǎng)絡(luò)之間跨平臺(tái)交互的數(shù)據(jù)處理,是當(dāng)前亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)?zhí)峁┝艘环N基于智能電視的數(shù)據(jù)處理方法和裝置,以實(shí)現(xiàn)智能電視、網(wǎng)絡(luò)之間跨平臺(tái)交互的數(shù)據(jù)處理。
本申請(qǐng)?zhí)峁┑募夹g(shù)方案包括:
一種基于智能電視的數(shù)據(jù)處理方法,包括:
智能電視機(jī)作為客戶端,與服務(wù)器之間通過(guò)自定義的通信標(biāo)識(shí)符進(jìn)行通信,以獲取服務(wù)器的網(wǎng)絡(luò)授權(quán);
所述客戶端在需要發(fā)送視頻郵件時(shí),利用所述服務(wù)器授權(quán)的網(wǎng)絡(luò)標(biāo)識(shí)ID登陸至服務(wù)器,在完成登陸后獲取由服務(wù)器嵌入至本客戶端的HTML頁(yè)面;所述HTML頁(yè)面至少包括:收發(fā)欄、工具欄和郵件編輯區(qū);
所述客戶端在所述HTML頁(yè)面的收發(fā)欄中至少添加收件人信息、發(fā)件人信息、郵件標(biāo)題、以及郵件發(fā)送時(shí)間;
所述客戶端在所述HTML頁(yè)面的工具欄選中插入視頻選項(xiàng),以使所述HTML頁(yè)面的郵件編輯區(qū)添加一個(gè)視頻選擇區(qū);
所述客戶端在所述HTML頁(yè)面的郵件編輯區(qū)撰寫郵件內(nèi)容,并在視頻選擇區(qū)選擇發(fā)送本地視頻文件時(shí),將本地視頻文件上傳至服務(wù)器,在選擇發(fā)送錄制的視頻文件時(shí),調(diào)整視頻區(qū)的大小,以視頻區(qū)大小映射視頻分辨率打開錄制設(shè)備開始錄制視頻文件,并將錄制的視頻文件上傳至服務(wù)器;
所述客戶端在將視頻文件上傳至服務(wù)器后,通知服務(wù)器發(fā)送,以由服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件,并發(fā)送至收件人。
一種基于智能電視的數(shù)據(jù)處理方法,包括:
服務(wù)器對(duì)作為客戶端的智能電視機(jī)進(jìn)行網(wǎng)絡(luò)授權(quán);
所述服務(wù)器接收所述客戶端通過(guò)HTTP發(fā)送的帶有自定義的收取郵件標(biāo)識(shí)符的連接請(qǐng)求,識(shí)別該連接請(qǐng)求所請(qǐng)求的郵件是否已過(guò)期,如果否,則返回帶有自定義的授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端,如果是,則返回帶有自定義的拒絕收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端;
所述服務(wù)器接收所述客戶端發(fā)送的帶有播放調(diào)整標(biāo)識(shí)符的播放請(qǐng)求,所述播放請(qǐng)求是在所述客戶端接收到帶有授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答時(shí)發(fā)送的;
所述服務(wù)器根據(jù)所述播放請(qǐng)求中的參數(shù),控制多媒體流在客戶端播放。
一種基于智能電視的數(shù)據(jù)處理裝置,該裝置為智能電視機(jī),包括:
通信模塊,用于與服務(wù)器之間通過(guò)自定義的通信標(biāo)識(shí)符進(jìn)行通信,以獲取服務(wù)器的網(wǎng)絡(luò)授權(quán);
登陸模塊,用于在所述裝置需要發(fā)送視頻郵件時(shí),利用所述服務(wù)器授權(quán)的網(wǎng)絡(luò)標(biāo)識(shí)ID登陸至服務(wù)器,在完成登陸后獲取由服務(wù)器嵌入至本客戶端的HTML頁(yè)面;所述HTML頁(yè)面至少包括:收發(fā)欄、工具欄和郵件編輯區(qū);
頁(yè)面處理模塊,用于對(duì)所述HTML頁(yè)面執(zhí)行以下處理:在所述HTML頁(yè)面的收發(fā)欄中至少添加收件人信息、發(fā)件人信息、郵件標(biāo)題、以及郵件發(fā)送時(shí)間,通過(guò)在所述HTML頁(yè)面的工具欄選中插入視頻選項(xiàng),以使所述HTML頁(yè)面的郵件編輯區(qū)添加一個(gè)視頻選擇區(qū),以及在所述HTML頁(yè)面的郵件編輯區(qū)撰寫郵件內(nèi)容,并在視頻選擇區(qū)選擇發(fā)送本地視頻文件時(shí),將本地視頻文件上傳至服務(wù)器,在選擇發(fā)送錄制的視頻文件時(shí),調(diào)整視頻區(qū)的大小,以視頻區(qū)大小映射視頻分辨率打開錄制設(shè)備開始錄制視頻文件,并將錄制的視頻文件上傳至服務(wù)器;
通知模塊,用于在所述頁(yè)面處理模塊完成將視頻文件上傳至服務(wù)器后,通知服務(wù)器發(fā)送,以由服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件,并發(fā)送至收件人。
一種基于智能電視的數(shù)據(jù)處理裝置,該裝置為服務(wù)器,包括:
網(wǎng)絡(luò)處理模塊,用于對(duì)作為客戶端的智能電視機(jī)進(jìn)行網(wǎng)絡(luò)授權(quán);
郵件請(qǐng)求處理模塊,用于接收所述客戶端通過(guò)HTTP發(fā)送的帶有自定義的收取郵件標(biāo)識(shí)符的連接請(qǐng)求,識(shí)別該連接請(qǐng)求所請(qǐng)求的郵件是否已過(guò)期,如果否,則返回帶有自定義的授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端,如果是,則返回帶有自定義的拒絕收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端;
播放請(qǐng)求處理模塊,用于接收所述客戶端發(fā)送的帶有播放調(diào)整標(biāo)識(shí)符的播放請(qǐng)求,根據(jù)所述播放請(qǐng)求中的參數(shù),控制多媒體流在客戶端播放;其中,所述播放請(qǐng)求是在所述客戶端接收到帶有授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答時(shí)發(fā)送的。
由以上技術(shù)方案可以看出,本發(fā)明中,通過(guò)客戶端和服務(wù)器之間的交互實(shí)現(xiàn)了智能電視、網(wǎng)絡(luò)之間跨平臺(tái)交互的數(shù)據(jù)處理,并且,本發(fā)明中,當(dāng)客戶端發(fā)送視頻郵件時(shí),與傳統(tǒng)的發(fā)送電子郵件流程相比,本發(fā)明不需要用戶花費(fèi)大量時(shí)間上傳大容量的附件,其上傳可在視頻錄制時(shí)完成,提高郵件發(fā)送效率;
進(jìn)一步地,本發(fā)明中,服務(wù)器發(fā)送的僅是一個(gè)打包后的HTML頁(yè)面,也就是說(shuō),收件人只是接收一個(gè)HTML頁(yè)面,這能保證收件人后續(xù)可以使用網(wǎng)頁(yè)瀏覽視頻時(shí)邊下載邊瀏覽。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的方法流程圖;
圖2為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)授權(quán)流程圖;
圖3為本發(fā)明實(shí)施例提供的錄制授權(quán)流程圖;
圖4為本發(fā)明實(shí)施例提供的服務(wù)器動(dòng)態(tài)分配存儲(chǔ)空間示意圖;
圖5為本發(fā)明實(shí)施例提供的錄制視頻文件流程圖;
圖6為本發(fā)明實(shí)施例提供的音、視頻數(shù)據(jù)復(fù)合流程圖;
圖7為本發(fā)明實(shí)施例提供的視頻郵件通知發(fā)送流程圖;
圖8為本發(fā)明實(shí)施例提供的服務(wù)器向客戶端發(fā)送視頻郵件的流程圖;
圖9為本發(fā)明實(shí)施例提供的步驟805實(shí)現(xiàn)流程圖;
圖10為本發(fā)明實(shí)施例提供的服務(wù)器選擇多媒體流傳送的示意圖;
圖11為本發(fā)明實(shí)施例提供的裝置結(jié)構(gòu)圖;
圖12為本發(fā)明實(shí)施例提供的裝置結(jié)構(gòu)圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
本發(fā)明提供了一種基于智能電視的數(shù)據(jù)處理方法,如圖1所示,該方法包括圖1所示的流程:
步驟101,智能電視機(jī)作為客戶端,與服務(wù)器之間通過(guò)自定義的通信標(biāo)識(shí)符進(jìn)行通信,以獲取服務(wù)器的網(wǎng)絡(luò)授權(quán)。
這里,本步驟101具體可通過(guò)圖2所示流程實(shí)現(xiàn):
圖2為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)授權(quán)流程圖。如圖2所示,該流程包括以下步驟:
步驟201,客戶端通過(guò)HTTP發(fā)送帶有自定義的申請(qǐng)?jiān)L問標(biāo)識(shí)符[CL_USER_ACCESS]的連接請(qǐng)求。
這里,連接請(qǐng)求攜帶如下參數(shù):
CLIENT_ID:為客戶端ID,傳送時(shí)將通過(guò)客戶端的私鑰進(jìn)行加密,在服務(wù)器端使用公鑰進(jìn)行解密,驗(yàn)證客戶端真實(shí)身份,占用11個(gè)字節(jié)。
TIMESTAMP:為發(fā)送消息的時(shí)間,同樣會(huì)通過(guò)私鑰進(jìn)行加密,用以驗(yàn)證客戶端真實(shí)身份,占用11個(gè)字節(jié)。
步驟202,服務(wù)器匹配發(fā)送該連接請(qǐng)求的客戶端的信息,確定是否授權(quán)客戶端訪問。
這里,匹配的客戶端信息至少包括用戶名和密碼。
步驟203,服務(wù)器在授權(quán)時(shí),發(fā)送帶有自定義的訪問授權(quán)標(biāo)識(shí)符[SR_ACCESS_ACCEPT]的應(yīng)答至客戶端,反之,在不授權(quán)時(shí),發(fā)送帶有自定義的訪問拒絕標(biāo)識(shí)符[SR_ACCESS_REJECT]的應(yīng)答至客戶端。
這里,帶有[SR_ACCESS_ACCEPT]的應(yīng)答攜帶TIMESTAMP和SERVER_ID。其中,SERVER_ID:為服務(wù)器ID,服務(wù)器將發(fā)送確認(rèn)信息至客戶端,包含經(jīng)過(guò)服務(wù)器私鑰加密的服務(wù)器ID,客戶端使用公鑰進(jìn)行解密,用于驗(yàn)證服務(wù)器端真實(shí)身份,占用11個(gè)字節(jié)。
步驟204,客戶端在接收到帶有[SR_ACCESS_ACCEPT]的應(yīng)答時(shí),通過(guò)HTTP發(fā)送帶有自定義的性能參數(shù)標(biāo)識(shí)符[CL_PROFILE]的性能消息。
這里,之所以發(fā)送性能消息目的是便于告知服務(wù)器本客戶端的實(shí)際情況,以便服務(wù)器管理。其中,該性能消息攜帶的性能參數(shù)至少包括:
客戶端的CPU主頻(CPU_FREQ),占用10個(gè)字節(jié)。
客戶端播放器支持的最大內(nèi)存大小(MEM),占用5個(gè)字節(jié)。
客戶端支持的最大分辨率(RES),占用5個(gè)字節(jié)。
客戶端的網(wǎng)絡(luò)速率(RATE),占用6個(gè)字節(jié)。
步驟205,服務(wù)器記錄性能消息中的性能參數(shù),返回帶有自定義的性能確認(rèn)標(biāo)識(shí)符[SR_PROFILE_DONE]的應(yīng)答。
至此,完成圖2所示的流程。
通過(guò)圖2所示流程即可完成網(wǎng)絡(luò)授權(quán)。
步驟102,所述客戶端在需要發(fā)送視頻郵件時(shí),利用所述服務(wù)器授權(quán)的網(wǎng)絡(luò)標(biāo)識(shí)(ID)登陸至服務(wù)器,在完成登陸后獲取由服務(wù)器嵌入至本客戶端的HTML頁(yè)面。
步驟103,所述客戶端對(duì)所述HTML頁(yè)面進(jìn)行處理。
優(yōu)選地,本發(fā)明中,HTML頁(yè)面主要由工具欄、郵件編輯區(qū)、收發(fā)欄以及視頻庫(kù)組成?;诖?,本步驟103中,客戶端對(duì)所述HTML頁(yè)面進(jìn)行處理具體為:
在HTML頁(yè)面的工具欄部分,除了插入圖片或附件等選項(xiàng)外,本發(fā)明還增加了插入視頻和取消發(fā)送的選項(xiàng)。
1)對(duì)于插入視頻的選項(xiàng),在郵件編輯區(qū)會(huì)添加一個(gè)視頻選擇區(qū),此視頻選擇區(qū)會(huì)提供用戶選擇添加本地視頻或錄制視頻的標(biāo)簽,具體在下文進(jìn)行描述。
2)對(duì)于取消發(fā)送的選項(xiàng),在服務(wù)器投遞郵件之前,該選項(xiàng)可選,否則不可選。
在HTML頁(yè)面的郵件編輯區(qū)部分,可以撰寫郵件的內(nèi)容,并且,當(dāng)用戶在視頻選擇區(qū)選擇發(fā)送本地視頻文件時(shí),將本地視頻文件上傳至服務(wù)器,在選擇發(fā)送錄制的視頻文件時(shí),調(diào)整視頻區(qū)的大小,以視頻區(qū)大小映射視頻分辨率打開錄制設(shè)備開始錄制視頻文件,并將錄制的視頻文件上傳至服務(wù)器。
在HTML頁(yè)面的收發(fā)欄部分,優(yōu)選地,該收發(fā)欄由發(fā)件欄和收件欄組成,用戶可以根據(jù)收發(fā)需求點(diǎn)擊組件。
1)對(duì)于發(fā)件欄,用戶可以添加收件人地址、抄送人地址和標(biāo)題內(nèi)容,并點(diǎn)擊發(fā)送按鈕進(jìn)行郵件的發(fā)送。
2)對(duì)于收件欄,顯示該郵件的發(fā)件人、收件人、抄送人、標(biāo)題內(nèi)容及發(fā)送時(shí)間等信息。
在HTML頁(yè)面的視頻庫(kù)部分,待發(fā)送的視頻會(huì)以縮略圖的形式在視頻預(yù)覽界面展示出來(lái),用戶可以通過(guò)點(diǎn)擊進(jìn)入視頻預(yù)覽界面,通過(guò)設(shè)定觸發(fā)方式觸發(fā)比如長(zhǎng)按插入視頻到郵件編輯區(qū)。
至此,通過(guò)上面描述,即可完成HTML頁(yè)面的處理。
步驟104,所述客戶端在將視頻文件上傳至服務(wù)器后,通知服務(wù)器發(fā)送,以由服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件,并發(fā)送至收件人。
這里,步驟104中服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件具體在下文進(jìn)行描述。
至此,完成圖1所示的流程。
從圖1所示的客戶端發(fā)送視頻郵件的流程可以看出,本發(fā)明中,用戶不需要花費(fèi)大量時(shí)間上傳大容量的附件,其上傳可在視頻錄制時(shí)完成,并且,本發(fā)明中,服務(wù)器發(fā)送的僅是一個(gè)打包后的HTML頁(yè)面,也就是說(shuō),收件人只是接收一個(gè)HTML頁(yè)面,這能保證收件人后續(xù)可以使用網(wǎng)頁(yè)瀏覽視頻時(shí)邊下載邊瀏覽。
在圖1所示流程中,步驟103中,在客戶端開始錄制視頻之前,還需要通過(guò)自定義的通信標(biāo)識(shí)符與服務(wù)器進(jìn)行通信,以確認(rèn)服務(wù)器是否授權(quán)錄制視頻。
其中,該通信流程主要包含如圖3所示的各個(gè)步驟:
步驟301,客戶端通過(guò)HTTP發(fā)送帶有自定義的錄制視頻標(biāo)識(shí)符[CL_A_NEW_VIDEO]的連接請(qǐng)求。
步驟302,服務(wù)器接收請(qǐng)求后,動(dòng)態(tài)為客戶端分配存儲(chǔ)空間。
其中,該動(dòng)態(tài)分配存儲(chǔ)空間可為:首先預(yù)設(shè)一個(gè)L比如L取值為20兆的存儲(chǔ)空間和L比如L取值為20兆的緩沖存儲(chǔ),在錄制內(nèi)容超過(guò)預(yù)設(shè)的存儲(chǔ)空間后,翻倍增加存儲(chǔ)空間,但是緩沖存儲(chǔ)的大小保持L比如L取值為20兆不變,也即分配的存儲(chǔ)空間mm_storage=M+20,(M=20,40,80,…,10x2n;n=1,2,…),以L取值為20兆為例,則分配的存儲(chǔ)空間如圖4所示。通過(guò)這樣分配存儲(chǔ)空間,能夠保證錄制完成之后,存儲(chǔ)空間為錄制的視頻文件的大小。
步驟303,服務(wù)器根據(jù)錄制條件是否滿足,發(fā)送帶有自定義的授權(quán)錄制標(biāo)識(shí)符[SR_PVR_ACCEPT]或拒絕錄制標(biāo)識(shí)符[SR_PVR_REJECT]的應(yīng)答給客戶端。
步驟304,客戶端在接收到帶有[SR_PVR_ACCEPT]的應(yīng)答時(shí),錄制視頻文件,在接收到帶有[SR_PVR_REJECT]的應(yīng)答時(shí),關(guān)閉錄制通信。
至此,完成圖3所示流程。
優(yōu)選地,本發(fā)明中,上述步驟103中的客戶端錄制視頻文件主要包括圖5所示流程:
參見圖5,圖5為本發(fā)明實(shí)施例提供的錄制視頻文件流程圖。如圖5所示,該流程可包括以下步驟:
步驟501,采集音、視頻數(shù)據(jù)。
這里,可通過(guò)連接在客戶端上的麥克風(fēng)和攝像頭分別采集音、視頻數(shù)據(jù)。
其中,在采集音、視頻數(shù)據(jù)時(shí),可根據(jù)用戶的輸入配置音視頻的采集參數(shù),對(duì)于視頻而言,其采集參數(shù)可包括:分辨率、YUV格式、亮度、色度、飽和度等配置參數(shù);對(duì)于音頻而言,其采集參數(shù)可包括:采樣率、位深度等參數(shù)。
需要說(shuō)明的是,本發(fā)明中,音、視頻的采集參數(shù)可以由用戶根據(jù)實(shí)際需求進(jìn)行調(diào)整。
另外,還需要說(shuō)明的是,本發(fā)明中,優(yōu)選地,音頻和視頻的采集間隔須小于同步約束間隔。
步驟502,對(duì)采集的音、視頻數(shù)據(jù)進(jìn)行編碼。
本步驟502中,在對(duì)音、視頻數(shù)據(jù)編碼時(shí),可根據(jù)用戶的輸入配置音視頻的編碼參數(shù),對(duì)于視頻而言,其編碼參數(shù)可包括:編碼格式、幀率、GOP、碼流比特率等;對(duì)于音頻而言,其編碼參數(shù)可包括:音頻格式、碼流比特率等;需要說(shuō)明的是,本發(fā)明中,音、視頻的編碼參數(shù)可以由用戶根據(jù)實(shí)際需求進(jìn)行調(diào)整。
步驟503,對(duì)編碼后的音、視頻進(jìn)行復(fù)合。
本步驟503中,在音、視頻復(fù)合時(shí),可根據(jù)用戶的輸入配置視頻文件的容器類型,設(shè)置視頻文件時(shí)長(zhǎng)或總的文件長(zhǎng)度限制,對(duì)音視頻的原始數(shù)據(jù)包打包。為了保證音、視頻編碼的同步,應(yīng)該記錄音視頻的時(shí)間戳,并加入到音視頻幀頭中。
本發(fā)明中,由于視頻數(shù)據(jù)比較大,而音頻數(shù)據(jù)小得多,并且每次采集編碼視頻幀所消耗的時(shí)間也不完全相同,所以不能保證一幀音頻數(shù)據(jù)采集完成時(shí),視頻數(shù)據(jù)也能剛好采集完整數(shù)幀,所以本發(fā)明中,以系統(tǒng)時(shí)間作為參考時(shí)鐘,并選擇視頻幀作為參考點(diǎn),在采集編碼一幀視頻數(shù)據(jù)的過(guò)程中將已處理好的音頻幀依次緩存到一個(gè)音頻緩沖區(qū)中,當(dāng)一幀視頻數(shù)據(jù)采集編碼完成后,以系統(tǒng)參考時(shí)鐘作為時(shí)間戳添加到視頻幀頭中,并取得音頻緩沖區(qū)中的所有音頻數(shù)據(jù)作為一個(gè)音頻幀,并在幀頭中添加同樣的系統(tǒng)參考時(shí)鐘作為時(shí)間戳信息,具體流程如圖6所示。
至此,完成圖5所示流程。
本發(fā)明中,在上述步驟104中,客戶端通知服務(wù)器發(fā)送視頻郵件可通過(guò)圖7所示流程實(shí)現(xiàn):
參見圖7,圖7為本發(fā)明實(shí)施例提供的視頻郵件通知發(fā)送流程圖。如圖7所示,該流程可包括以下步驟:
步驟701,客戶端端通過(guò)HTTP發(fā)送帶有自定義的發(fā)送郵件標(biāo)識(shí)符[CL_A_NEW_VE]的連接請(qǐng)求。
步驟702,服務(wù)器根據(jù)步驟102處理后的HTML頁(yè)面確定是否投遞視頻郵件至收件人的郵箱。
步驟703,服務(wù)器在步驟702的確定結(jié)果為是時(shí),發(fā)送帶有自定義的授權(quán)發(fā)送標(biāo)識(shí)符[SR_VE_ACCEPT]的應(yīng)答給客戶端,而在步驟702的確定結(jié)果為否時(shí),發(fā)送帶有自定義的拒絕發(fā)送標(biāo)識(shí)符[SR_VE_REJECT]的應(yīng)答給客戶端。
步驟704,客戶端在收到帶有[SR_VE_ACCEPT]的應(yīng)答時(shí),點(diǎn)擊觸發(fā)HTML頁(yè)面上的發(fā)送選項(xiàng),以通知服務(wù)器發(fā)送視頻郵件。
至此,完成圖7所示流程。
本發(fā)明中,上述步驟104中,服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件具體可為:
在郵件產(chǎn)生裝置下,定義了郵件信息文件,視頻文件,腳本更新文件以及一些臨時(shí)文件等,在客戶端完成撰寫郵件和上傳視頻后,視頻郵件產(chǎn)生器自動(dòng)獲取郵件內(nèi)容到郵件信息文件和視頻文件中,并更新視頻郵件產(chǎn)生器腳本,最終生成新郵件,即:video_email_id.html。
其中,郵件信息文件定義MailInfo.txt,獲取郵件內(nèi)容并整理成視頻郵件產(chǎn)生器理解的文件格式,如txt文件格式,主要包括發(fā)件人,收件人,抄送人,標(biāo)題和內(nèi)容等。
視頻文件定義MediaInfo.txt,獲取視頻路徑和視頻格式信息等。
腳本更新文件定義VideoEmail.sh,更新郵件信息文件和視頻文件的內(nèi)容到新郵件。
更新郵件信息,定義變量FileC負(fù)責(zé)查詢郵件信息文件,可以利用搜尋后綴名的方法查詢郵件目錄下存在的txt文件,即:${FileC:-4}=“.txt”,并根據(jù)預(yù)定義變量Level,該Level值由更新內(nèi)容是否為NULL定義,逐級(jí)更新郵件內(nèi)容,具體實(shí)施如下:
Level1,發(fā)件人信息更新:video_email_simple.html更新為addFrom.html;
Level2,收件人信息更新:addFrom.html更新為addTo.html;
Level3,抄送人信息更新:addTo.html更新為addCc.html;
Level4,標(biāo)題信息更新:addCc.html更新為addSubject.html;
Level5,郵件內(nèi)容更新:addSubject.html更新為addContent.html;
更新視頻文件信息,定義變量URL負(fù)責(zé)視頻鏈接,變量MediaC負(fù)責(zé)視頻的內(nèi)容,繼續(xù)更新郵件內(nèi)容,具體實(shí)施如下:
Level6,視頻信息更新:addContent.html更新為video_email_id.html。
在生成視頻郵件時(shí),由于定義了各類模板控制更新郵件內(nèi)容,所以僅需填充必要的數(shù)據(jù)即可,如在HTML頁(yè)面插入視頻,僅需打包表1中視頻標(biāo)簽屬性和值并發(fā)送至Flash播放器即可,具體如下:
表1
至此,完成了服務(wù)器如何按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件的描述。
以上對(duì)客戶端如何發(fā)送視頻郵件的方法進(jìn)行了描述,本發(fā)明中,還描述了服務(wù)器如何向客戶端發(fā)送視頻郵件,下面進(jìn)行描述:
參見圖8,圖8為本發(fā)明實(shí)施例提供的服務(wù)器向客戶端發(fā)送視頻郵件的流程圖。如圖8所示,該流程可包括以下步驟:
步驟801,服務(wù)器對(duì)作為客戶端的智能電視機(jī)進(jìn)行網(wǎng)絡(luò)授權(quán)。
本步驟801具體實(shí)現(xiàn)可參考上述圖2所示流程,這里不再贅述。
步驟802,服務(wù)器接收所述客戶端通過(guò)HTTP發(fā)送的帶有自定義的收取郵件標(biāo)識(shí)符[CL_VE_PATH]的連接請(qǐng)求。
步驟803,服務(wù)器判斷連接請(qǐng)求所請(qǐng)求的郵件過(guò)期與否,如果否,則返回帶有自定義的授權(quán)收取郵件標(biāo)識(shí)符[SR_VE_PATH_ACCEPT]的應(yīng)答至客戶端,如果是,則返回帶有自定義的拒絕收取郵件標(biāo)識(shí)符[SR_VE_PATH_REJECT]的應(yīng)答至客戶端。
步驟804,服務(wù)器接收所述客戶端發(fā)送的帶有播放調(diào)整標(biāo)識(shí)符[CL_ADJUST]的播放請(qǐng)求,所述播放請(qǐng)求是在所述客戶端接收到帶有[SR_VE_PATH_ACCEPT]的應(yīng)答時(shí)發(fā)送的。
步驟805,所述服務(wù)器根據(jù)所述播放請(qǐng)求中的參數(shù),控制多媒體流在客戶端播放。本步驟具體包括:服務(wù)器解析所述播放請(qǐng)求中的延遲參數(shù)FRAME_DELAY和網(wǎng)速參數(shù)RATE_CHANGE,依據(jù)所述FRAME_DELAY、RATE_CHANGE、以及所述客戶端的性能參數(shù),實(shí)時(shí)調(diào)整多媒體流傳輸?shù)拇a率,以控制傳輸?shù)亩嗝襟w流在客戶端流暢播放。
這里,F(xiàn)RAME_DELAY為客戶端在播放的時(shí)候,產(chǎn)生的解碼延遲時(shí)間,占用13個(gè)字節(jié)。而RATE_CHANGE為客戶端在播放過(guò)程中實(shí)際網(wǎng)速,占用13個(gè)字節(jié)。
至此,完成圖8所示的流程。
需要說(shuō)明的是,本發(fā)明中,客戶端與服務(wù)器之間所有自定義的標(biāo)識(shí)符均是通過(guò)在包頭的數(shù)據(jù)段添加的,該自定義標(biāo)識(shí)符值占據(jù)16位寬度,標(biāo)識(shí)符的大小根據(jù)位寬值設(shè)置。
本發(fā)明中,服務(wù)器是基于云存儲(chǔ)模式,在步驟805中,其依據(jù)所述FRAME_DELAY、RATE_CHANGE、以及所述客戶端的性能參數(shù),實(shí)時(shí)調(diào)整多媒體流傳輸?shù)拇a率可通過(guò)圖9所示流程實(shí)現(xiàn):
參見圖9,圖9為本發(fā)明實(shí)施例提供的步驟805實(shí)現(xiàn)流程圖。如圖9所示,該流程可包括以下步驟:
步驟901,在所述FRAME_DELAY大于每幀解碼時(shí)間的最大值時(shí),執(zhí)行步驟902,在所述FRAME_DELAY小于1/2fps時(shí),執(zhí)行步驟903,在所述RATE_CHANGE小于當(dāng)前層的碼率時(shí),執(zhí)行步驟904。
本發(fā)明中,服務(wù)器端支持一個(gè)在空域上擁有N層的空間和每個(gè)空間層在時(shí)域上具有不多于3個(gè)時(shí)間層的可伸縮多媒體流,假如多媒體流的空間層為{L0,L1,L2,L3,…,LN-1},若每一空間層附帶3個(gè)時(shí)間分層,記最大幀率為fps,則每種空間層次下時(shí)間層次本別是fps,fps/2,fps/4。
其中,多媒體流中各層通過(guò)以下決策決定:
記RX為第X層的碼率,假如L0到LN-1空間分辨率越來(lái)越大,則L0到LN-1的碼率遞增,若網(wǎng)速為R,設(shè)備支持最大分辨率為res,初始層號(hào)K將如下決定。
當(dāng)存在一個(gè)層k,其分辨率與設(shè)備分辨率最接近且碼率小于當(dāng)前的網(wǎng)速乘以λ,λ為一個(gè)大于1的系數(shù),λ值將確保音頻部分的傳輸以及在一定的網(wǎng)速波動(dòng)條件下流暢播放。
若不存在這樣的層,則選取碼率小于λR且與λR最接近的層。
若λR小于基礎(chǔ)層的碼率,則選取基礎(chǔ)層且時(shí)域分層最低層作為初始分層。
基于上述決策,則圖10示出了多媒體流中各個(gè)層間結(jié)構(gòu)圖。
本發(fā)明中,如果FRAME_DELAY大于每幀解碼時(shí)間的最大值,則預(yù)示該視頻在客戶端將無(wú)法流暢播放,服務(wù)器將調(diào)整傳輸?shù)亩嗝襟w流,具體見步驟902;而當(dāng)FRAME_DELAY小于1/2fps時(shí),則意味著客戶端CPU仍有大量空閑時(shí)間,可以據(jù)此提升碼流質(zhì)量,具體見步驟903描述。而當(dāng)RATE_CHANGE小于當(dāng)前層的碼率,則意味著此時(shí)沒有必要調(diào)整碼流,可繼續(xù)按照原由方式進(jìn)行碼流傳輸。
步驟902,比較已記錄的所述客戶端性能參數(shù)中的CPU_FREQ和QLow,所述QLow,為當(dāng)前層支持流暢播放所需要的CPU主頻值,如果前者小于后者,則選擇相對(duì)于當(dāng)前層,空域上低一層的多媒體流傳送,如果前者大于等于后者,則選擇相對(duì)于當(dāng)前層,時(shí)域上低一層的多媒體流傳送。
步驟903,在所述RATE_CHANGE大于R`且大于R``時(shí),選擇相對(duì)于當(dāng)前層,空域上高一層的多媒體流傳送,在所述RATE_CHANGE大于R`且小于R``時(shí),選擇相對(duì)于當(dāng)前層,時(shí)域上高一層的多媒體流傳送;其中,所述R`為相對(duì)于當(dāng)前層時(shí)域上高一層的碼率,R``為相對(duì)于當(dāng)前層,空域上高一層的碼率。
步驟904,結(jié)束調(diào)整。
至此,完成圖9所示流程。
其中,在圖9所示流程中,服務(wù)器選擇多媒體流傳送可通過(guò)以下步驟實(shí)現(xiàn):
通過(guò)文件讀取器讀取所選擇的多媒體流并放入至內(nèi)存中;
接著使用文件解復(fù)用器將多媒體流中的視頻數(shù)據(jù)和音頻數(shù)據(jù)分開;
僅將視頻數(shù)據(jù)輸入NAL包選擇器,以使得視頻數(shù)據(jù)輸入至NAL包選擇器后組織成多個(gè)NAL單元;
對(duì)NAL包選取器所輸入的NAL單元進(jìn)行選取,然后將音頻數(shù)據(jù)和處理完成的視頻數(shù)據(jù)分別送入網(wǎng)絡(luò)組包器,進(jìn)行打包處理,最后作為網(wǎng)絡(luò)數(shù)據(jù)流輸出。
圖10示出了服務(wù)器選擇多媒體流傳送的示意圖。
本發(fā)明中,層數(shù)越低,表明碼率越小,在解碼過(guò)程中,高一層的解碼可能會(huì)依賴低一層的數(shù)據(jù),而低一層的數(shù)據(jù)絕不依賴高一層的數(shù)據(jù),因此,對(duì)NAL包選擇器所輸入的NAL包進(jìn)行選取具體可為:將服務(wù)器之前決策定出所要傳送的多媒體流的具體碼率規(guī)格映射為相應(yīng)的目標(biāo)dependency_id(用U表示)和目標(biāo)temporal_id(用V表示),從NAL包選擇器所輸入的所有NAL單元中讀取NAL Type=第一值的NAL單元,這里,第一值表示SVC擴(kuò)展頭header的NAL單元,其具體可為14,如果該讀取的NAL單元的dependency_id≤U,temporal_id≤V,則表明該NAL單元之后的所有NAL單元皆為需要選取發(fā)出的,否則跳過(guò)其后的所有NAL包。如再遇到NAL Type等于第一值的NAL包,重新進(jìn)行判斷。
至此,完成本發(fā)明提供的方法描述。
下面對(duì)本發(fā)明提供的裝置進(jìn)行描述:
參見圖11,圖11為本發(fā)明實(shí)施例提供的裝置結(jié)構(gòu)圖。該裝置為智能電視機(jī),應(yīng)用于圖1所示流程,可包括:
通信模塊,用于與服務(wù)器之間通過(guò)自定義的通信標(biāo)識(shí)符進(jìn)行通信,以獲取服務(wù)器的網(wǎng)絡(luò)授權(quán);
登陸模塊,用于在所述裝置需要發(fā)送視頻郵件時(shí),利用所述服務(wù)器授權(quán)的網(wǎng)絡(luò)標(biāo)識(shí)ID登陸至服務(wù)器,在完成登陸后獲取由服務(wù)器嵌入至本客戶端的HTML頁(yè)面;所述HTML頁(yè)面至少包括:收發(fā)欄、工具欄和郵件編輯區(qū);
頁(yè)面處理模塊,用于對(duì)所述HTML頁(yè)面執(zhí)行以下處理:在所述HTML頁(yè)面的收發(fā)欄中至少添加收件人信息、發(fā)件人信息、郵件標(biāo)題、以及郵件發(fā)送時(shí)間,通過(guò)在所述HTML頁(yè)面的工具欄選中插入視頻選項(xiàng),以使所述HTML頁(yè)面的郵件編輯區(qū)添加一個(gè)視頻選擇區(qū),以及在所述HTML頁(yè)面的郵件編輯區(qū)撰寫郵件內(nèi)容,并在視頻選擇區(qū)選擇發(fā)送本地視頻文件時(shí),將本地視頻文件上傳至服務(wù)器,在選擇發(fā)送錄制的視頻文件時(shí),調(diào)整視頻區(qū)的大小,以視頻區(qū)大小映射視頻分辨率打開錄制設(shè)備開始錄制視頻文件,并將錄制的視頻文件上傳至服務(wù)器;
通知模塊,用于在所述頁(yè)面處理模塊完成將視頻文件上傳至服務(wù)器后,通知服務(wù)器發(fā)送,以由服務(wù)器按照郵件產(chǎn)生器理解的格式對(duì)所述HTML頁(yè)面進(jìn)行打包生成一視頻郵件,并發(fā)送至收件人。
優(yōu)選地,本發(fā)明中,所述頁(yè)面處理模塊通過(guò)以下步驟錄制視頻文件:
采集音、視頻數(shù)據(jù);
對(duì)采集的音、視頻數(shù)據(jù)進(jìn)行編碼;
系統(tǒng)時(shí)間作為參考時(shí)鐘,并選擇視頻幀作為參考點(diǎn),在采集編碼一幀視頻數(shù)據(jù)的過(guò)程中將已處理好的音頻幀依次緩存到一個(gè)音頻緩沖區(qū)中,當(dāng)一幀視頻數(shù)據(jù)采集編碼完成后,以當(dāng)前系統(tǒng)時(shí)間作為時(shí)間戳添加到視頻幀頭中,并取得音頻緩沖區(qū)中的所有音頻數(shù)據(jù)作為一個(gè)音頻幀,在音頻幀頭中添加同樣的系統(tǒng)時(shí)間作為時(shí)間戳。
另外,本發(fā)明還提供了另一種基于智能電視的數(shù)據(jù)處理裝置,如圖12所示,其中,該裝置為服務(wù)器,包括:
網(wǎng)絡(luò)處理模塊,用于對(duì)作為客戶端的智能電視機(jī)進(jìn)行網(wǎng)絡(luò)授權(quán);
郵件請(qǐng)求處理模塊,用于接收所述客戶端通過(guò)HTTP發(fā)送的帶有自定義的收取郵件標(biāo)識(shí)符的連接請(qǐng)求,識(shí)別該連接請(qǐng)求所請(qǐng)求的郵件是否已過(guò)期,如果否,則返回帶有自定義的授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端,如果是,則返回帶有自定義的拒絕收取郵件標(biāo)識(shí)符的應(yīng)答至客戶端;
播放請(qǐng)求處理模塊,用于接收所述客戶端發(fā)送的帶有播放調(diào)整標(biāo)識(shí)符的播放請(qǐng)求,根據(jù)所述播放請(qǐng)求中的參數(shù),控制多媒體流在客戶端播放;其中,所述播放請(qǐng)求是在所述客戶端接收到帶有授權(quán)收取郵件標(biāo)識(shí)符的應(yīng)答時(shí)發(fā)送的。
所述播放請(qǐng)求處理模塊根據(jù)所述播放請(qǐng)求中的參數(shù),控制多媒體流在客戶端播放,具體包括:解析所述播放請(qǐng)求中的延遲參數(shù)FRAME_DELAY和網(wǎng)速參數(shù)RATE_CHANGE,依據(jù)所述FRAME_DELAY、RATE_CHANGE、以及所述客戶端的性能參數(shù),實(shí)時(shí)調(diào)整多媒體流傳輸?shù)拇a率,以控制傳輸?shù)亩嗝襟w流在客戶端正常播放。
本發(fā)明中,所述多媒體流在空域上擁有N層的空間,每一空間層在時(shí)域上具有不多于三個(gè)時(shí)間層;
基于此,所述播放請(qǐng)求處理模塊依據(jù)FRAME_DELAY、RATE_CHANGE、以及所述客戶端的性能參數(shù),實(shí)時(shí)調(diào)整傳輸?shù)拇a率包括:
如果所述FRAME_DELAY大于每幀解碼時(shí)間的最大值,則,
比較已記錄的所述客戶端性能參數(shù)中的CPU_FREQ和QLow,所述QLow,為當(dāng)前層支持流暢播放所需要的CPU主頻值,如果前者小于后者,則選擇相對(duì)于當(dāng)前層,空域上低一層的多媒體流傳送,如果前者大于等于后者,則選擇相對(duì)于當(dāng)前層,時(shí)域上低一層的多媒體流傳送;
如果所述FRAME_DELAY小于1/2fps,則在所述RATE_CHANGE大于R`且大于R``時(shí),選擇相對(duì)于當(dāng)前層,空域上高一層的多媒體流傳送,在所述RATE_CHANGE大于R`且小于R``時(shí),選擇相對(duì)于當(dāng)前層,時(shí)域上高一層的多媒體流傳送;其中,所述R`為相對(duì)于當(dāng)前層時(shí)域上高一層的碼率,R``為相對(duì)于當(dāng)前層,空域上高一層的碼率。
所述多媒體流包括音頻流和/或視頻流。
尤其是,在一種優(yōu)選實(shí)施例中,所述視頻流在空域上擁有N層的空間,每一空間層在時(shí)域上具有不多于三個(gè)時(shí)間層;
所述播放請(qǐng)求處理模塊依據(jù)FRAME_DELAY、RATE_CHANGE、以及所述客戶端的性能參數(shù),實(shí)時(shí)調(diào)整傳輸?shù)拇a率包括:
如果所述FRAME_DELAY大于每幀解碼時(shí)間的最大值,則,
比較已記錄的所述客戶端性能參數(shù)中的CPU_FREQ和QLow,所述QLow,為當(dāng)前層支持流暢播放所需要的CPU主頻值,如果前者小于后者,則選擇相對(duì)于當(dāng)前層,空域上低一層的視頻流傳送,如果前者大于等于后者,則選擇相對(duì)于當(dāng)前層,時(shí)域上低一層的視頻流傳送;所述視頻流在空域上擁有N層的空間,每一空間層在時(shí)域上具有不多于三個(gè)時(shí)間層;
如果所述FRAME_DELAY小于1/2fps,則在所述RATE_CHANGE大于R`且大于R``時(shí),選擇相對(duì)于當(dāng)前層,空域上高一層的視頻流傳送,在所述RATE_CHANGE大于R`且小于R``時(shí),選擇相對(duì)于當(dāng)前層,時(shí)域上高一層的視頻流傳送;其中,所述R`為相對(duì)于當(dāng)前層時(shí)域上高一層的碼率,R``為相對(duì)于當(dāng)前層,空域上高一層的碼率。
至此,完成本發(fā)明提供的裝置描述。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。