專利名稱:一種視頻分布式轉(zhuǎn)換編碼格式方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種視頻分布式轉(zhuǎn)換編碼格式方法。
背景技術(shù):
目前在視頻編碼,解碼技術(shù)領(lǐng)域,能夠?qū)崿F(xiàn)本地進行視頻的解碼,編碼(即視頻編碼轉(zhuǎn)換)。支持從視頻的某一部分開始截止到某一段進行視頻編碼轉(zhuǎn)換,但是僅限于本地。視頻編碼轉(zhuǎn)換采用ffmpeg,相關(guān)鏈接地址為http://ffmpeg.org/ffmpeg.html,目前視頻采用ffmpeg技術(shù)作為基礎(chǔ),專門針對視頻編碼進行三種格式轉(zhuǎn)換,分別為h263,h264, mpeg4,三種視頻格式為目前現(xiàn)有的視頻格式。MPEG4/H264格式參考標(biāo)準(zhǔn)文檔
IS0-IEC-14496Part I: SystemsIS0-IEC-14496Part 2:VisualIS0-IEC-14496Part 3:AudioIS0-IEC-14496Part 4:Conform ance testingIS0-IEC-14496Part 5:Reference softwareIS0-IEC-14496Part 6:Delivery Multimedia Integration Framework(DMIF)IS0-IEC-14496Part 7: Optimized reference software for coding ofaudio-visual objectsIS0-IEC-14496Part 8:Carriage of IS0/IEC 14496contents over IP networksIS0-IEC-14496Part 9:Reference hardware descriptionIS0-IEC-14496Part 10!Advanced Video CodingIS0_IEC_14496Part 11:Scene description and application engineIS0-IEC-14496Part 12:ISO base media file formatIS0_IEC_14496Part 13: Intel lectual Property Management andProtection (IPMP) extensionsIS0-IEC-14496Part 14:MP4 file formatIS0-IEC-14496Part 15:Advanced Video Coding (AVC) file formatIS0-IEC-14496Part 16:Animation Framework extension (AFX)IS0-IEC-14496Part 17: Streaming text formatIS0-IEC-14496Part 18:Font compression and streamingIS0-IEC-14496Part 19: Synthesized texture streamH263編碼格式參考標(biāo)準(zhǔn)文檔[I] ITU-T的H. 223建議(1995):〃低比特率多媒體通訊中的多路協(xié)議〃[2] ITU-T的H. 242建議(1993): 〃用于建立使用可達2Mbit/s的數(shù)字通道的視聽終端間通訊的系統(tǒng)〃[3] ITU-T的H. 245建議(1995): 〃多媒體通訊的控制協(xié)議〃
[4] ITU-T 的 H. 261 建議(1993) : 〃px64kbit/s 視聽服務(wù)的視頻編碼〃[5] ITU-T的H. 262建議(1995):〃運動圖象和相關(guān)配音的通用編碼〃(ISO/IEC13818-2)[6] ITU-T的H. 320建議(1993): 〃窄帶ISDN可視電話系統(tǒng)和終端設(shè)備〃[7] ITU-T的H. 324建議(1995): 〃低比特率多媒體通訊的終端〃目前以上這些技術(shù)已經(jīng)純熟,但是在使用的過程中,僅限于將本地視頻切割為一片,然后進行視頻編碼轉(zhuǎn)換,目前視頻轉(zhuǎn)碼相關(guān)技術(shù)并不能夠快速的將一個完整的、時長很長的視頻進行快速的轉(zhuǎn)碼,實時性不夠強,因為如果用戶想要看到轉(zhuǎn)換編碼后的視頻,需要有一個很長的等待時間,并且所使用的轉(zhuǎn)碼計算機資源占用很高,導(dǎo)致計算機不能及時處理其他任務(wù),弊端重重
發(fā)明內(nèi)容
本發(fā)明主要解決視頻編碼轉(zhuǎn)換速度很慢,實時性不夠強,用戶不能夠在短時間內(nèi)看到將要轉(zhuǎn)碼的視頻,計算機資源占用率很高的問題,提出一種視頻分布式轉(zhuǎn)換編碼格式方法。為了解決上述技術(shù)問題,本發(fā)明的技術(shù)方案如下一種視頻分布式轉(zhuǎn)換編碼格式方法,包括如下步驟11)轉(zhuǎn)碼客戶端通過轉(zhuǎn)碼接口接收到請求轉(zhuǎn)碼的視頻數(shù)據(jù)以后,獲得請求轉(zhuǎn)碼的視頻信息;計算轉(zhuǎn)碼時需要使用轉(zhuǎn)碼服務(wù)器的個數(shù),然后獲得到的空閑CPU的個數(shù),根據(jù)CPU個數(shù)以及視頻總長度來進行視頻切片;12)轉(zhuǎn)碼客戶端創(chuàng)建了多個視頻切片以后,根據(jù)空閑CPU資源信息,將視頻切片進行遞加排序,創(chuàng)建多個線程,每個線程操作一個視頻切片,將視頻切片信息發(fā)送給轉(zhuǎn)碼服務(wù)器端,轉(zhuǎn)碼服務(wù)器端根據(jù)轉(zhuǎn)碼客戶端發(fā)送的視頻標(biāo)準(zhǔn)參數(shù),進行轉(zhuǎn)碼操作;所述轉(zhuǎn)碼服務(wù)器端啟動時會根據(jù)對應(yīng)的配置文件來確定是否啟動轉(zhuǎn)碼對應(yīng)服務(wù),當(dāng)轉(zhuǎn)碼客戶端的業(yè)務(wù)請求到所述轉(zhuǎn)碼服務(wù)器端時,轉(zhuǎn)碼服務(wù)器端將會根據(jù)所述業(yè)務(wù)請求類型進行對應(yīng)的業(yè)務(wù)處理,如果是轉(zhuǎn)碼請求,會啟動優(yōu)化過的ffmpeg針對視頻切片進行視頻轉(zhuǎn)碼,轉(zhuǎn)碼成功與否,都會向轉(zhuǎn)碼資源管理器反饋轉(zhuǎn)碼狀態(tài),轉(zhuǎn)碼資源管理器會根據(jù)轉(zhuǎn)碼服務(wù)器端的轉(zhuǎn)碼狀態(tài)進行轉(zhuǎn)碼進度計算,當(dāng)視頻切片第一片完成時,轉(zhuǎn)碼客戶端通知用戶可觀看轉(zhuǎn)碼后的視頻。2、根據(jù)權(quán)利要求I所述的一種視頻分布式轉(zhuǎn)換編碼格式方法,其特征在于,所述視頻切片長度=前一段視頻長度+前一段視頻的X規(guī)定視頻閥值;臨時視頻總長度=視頻切片長度+下一段視頻切片長度;判斷臨時視頻總長度是否大于視頻總長度;如果臨時視頻長度大于視頻總長度,做如下計算最后一片視頻長度=視頻總長度-最后一段視頻起始位置。3、一種視頻分布式轉(zhuǎn)換編碼格式方法,其特征在于,包括如下步驟當(dāng)用戶終端訪問網(wǎng)頁服務(wù)器時,網(wǎng)頁服務(wù)器會針對用戶終端進行判斷,并對視頻數(shù)據(jù)庫進行查找,如果包含用戶請求的信息時,將對應(yīng)的多媒體服務(wù)器信息反饋給用戶終端,由用戶終端到對應(yīng)的多媒體服務(wù)器進行視頻觀看;如果目前尚無用戶終端支持的視頻格式,網(wǎng)頁服務(wù)器發(fā)送轉(zhuǎn)碼請求給轉(zhuǎn)碼系統(tǒng),轉(zhuǎn)碼接口接收到網(wǎng)頁服務(wù)器發(fā)送的轉(zhuǎn)碼請求時,會通過轉(zhuǎn)碼資源管理器,針對轉(zhuǎn)碼請求信息進行分析,如果已經(jīng)轉(zhuǎn)碼過對應(yīng)的視頻,將已經(jīng)轉(zhuǎn)碼過的文件信息反饋給網(wǎng)頁服務(wù)器;如果未轉(zhuǎn)過碼,發(fā)送轉(zhuǎn)碼請求給轉(zhuǎn)碼客戶端,轉(zhuǎn)碼客戶端獲得請求轉(zhuǎn)碼的視頻信息;計算轉(zhuǎn)碼時需要使用轉(zhuǎn)碼服務(wù)器的個數(shù),然后獲得到的空閑CPU的個數(shù),根據(jù)CPU個數(shù)以及視頻總長度來進行視頻切片;轉(zhuǎn)碼客戶端創(chuàng)建了多個視頻切片以后,根據(jù)空閑CPU資源信息,將視頻切片進行遞加排序,創(chuàng)建多個線程,每個線程操作一個視頻切片,將視頻切片信息發(fā)送給轉(zhuǎn)碼服務(wù)器端,轉(zhuǎn)碼服務(wù)器端根據(jù)轉(zhuǎn)碼客戶端發(fā)送的視頻標(biāo)準(zhǔn)參數(shù),進行轉(zhuǎn)碼操作;所述轉(zhuǎn)碼服務(wù)器端啟動時會根據(jù)對應(yīng)的配置文件來確定是否啟動轉(zhuǎn)碼對應(yīng)服務(wù),當(dāng)轉(zhuǎn)碼客戶端的業(yè)務(wù)請求到所述轉(zhuǎn)碼服務(wù)器端時,轉(zhuǎn)碼服務(wù)器端將會根據(jù)所述業(yè)務(wù)請求類型進行對應(yīng)的業(yè)務(wù)處理,如果是轉(zhuǎn)碼請求,會啟動優(yōu)化過的ffmpeg針對視頻切片進行視頻轉(zhuǎn)碼,轉(zhuǎn)碼成功與否,都會向轉(zhuǎn)碼資源管理器反饋轉(zhuǎn)碼狀態(tài),轉(zhuǎn)碼資源管理器會根據(jù)轉(zhuǎn)碼服務(wù)器端的轉(zhuǎn)碼狀態(tài)進行轉(zhuǎn)碼進度計算,當(dāng)視頻切片第一片完成時,轉(zhuǎn)碼客戶端通知用戶可觀看轉(zhuǎn)碼后的視頻;同時轉(zhuǎn)碼客戶端將轉(zhuǎn)碼后的文件信息反饋給轉(zhuǎn)碼接口,轉(zhuǎn)碼接口將對應(yīng)的信息存入視頻數(shù)據(jù)庫,并且將對應(yīng)的視頻信息存儲入多媒體服務(wù)器。 本發(fā)明的有益效果在于本發(fā)明主要是將原有的視頻進行切片,將一個完整的、很大的、時長很長的視頻切成若干個小視頻,將小視頻進行視頻編碼轉(zhuǎn)換,以保證每一片視頻都是一個獨立的視頻分塊,視頻分塊越小,轉(zhuǎn)碼耗時越少,所以,實時性可以得到保證;由于轉(zhuǎn)碼時對計算機資源的消耗非常高,所以,為了減少計算機資源消耗高的特點,將視頻切片后的分片發(fā)送給網(wǎng)絡(luò)中的資源空閑的轉(zhuǎn)碼服務(wù)器來進行轉(zhuǎn)碼,這么做不但提高了轉(zhuǎn)碼效率,而且降低了單臺計算機負(fù)載。
圖I為轉(zhuǎn)碼系統(tǒng)框圖;圖2為轉(zhuǎn)碼客戶端操作流程圖;圖3為轉(zhuǎn)碼服務(wù)端操作流程圖;圖4為轉(zhuǎn)碼系統(tǒng)整體流程圖。
具體實施例方式下面將結(jié)合附圖和具體實施例對本發(fā)明做進一步的說明。轉(zhuǎn)碼接口 針對轉(zhuǎn)碼系統(tǒng)進行多媒體轉(zhuǎn)碼業(yè)務(wù)所使用的接口,可以以http協(xié)議形式,或系統(tǒng)命令形式,或動態(tài)鏈接庫形式提供。轉(zhuǎn)碼資源管理器專門負(fù)責(zé)轉(zhuǎn)碼服務(wù)器資源管理,轉(zhuǎn)碼任務(wù)調(diào)度,來負(fù)責(zé)轉(zhuǎn)碼接口,與轉(zhuǎn)碼客戶端,與轉(zhuǎn)碼服務(wù)端之間的任務(wù)調(diào)度。視頻閥值閥值為根據(jù)不同的視頻編解碼復(fù)雜度進行評估,應(yīng)用環(huán)境不同,使用的參數(shù)值也不同。比如如果將視頻從1080p的H264編碼,視頻碼率為8Mbps,轉(zhuǎn)碼成為480p的H264,碼率為800Kbps的視頻,閥值設(shè)為10秒,如果將如果將視頻從1080p的H264編碼,視頻碼率為8Mbps,轉(zhuǎn)碼成為480p的Mpeg4,碼率為I. 2Mbps的視頻,閥值設(shè)為20秒,以上數(shù)字不固定,以上數(shù)字均為數(shù)學(xué)概念中的自然數(shù),這個閥值用來進行視頻切片步進,即決定下一片視頻的長度
如圖I所示,轉(zhuǎn)碼系統(tǒng)主要通過轉(zhuǎn)碼接口來對外提供服務(wù),在轉(zhuǎn)碼系統(tǒng)中,通過轉(zhuǎn)碼資源管理器來判斷外部請求數(shù)據(jù)是否正常即多媒體轉(zhuǎn)碼業(yè)務(wù)在使用轉(zhuǎn)碼接口時所發(fā)送的請求數(shù)據(jù)是否符合轉(zhuǎn)碼系統(tǒng)所要求的協(xié)議標(biāo)準(zhǔn),不符合標(biāo)準(zhǔn)會被斷定為無效數(shù)據(jù),數(shù)據(jù)正常將會通過資源管理器來將轉(zhuǎn)碼請求裝入轉(zhuǎn)碼接口的轉(zhuǎn)碼業(yè)務(wù)處理部分,轉(zhuǎn)碼業(yè)務(wù)處理部分中的轉(zhuǎn)碼客戶端將會針對視頻文件進行切片,將切片放入分布式轉(zhuǎn)碼服務(wù)端中進行計算,計算之后的數(shù)據(jù)即是外部請求數(shù)據(jù)對應(yīng)的目標(biāo)視頻編碼格式視頻。轉(zhuǎn)碼客戶端只需要將公共存儲中的視頻文件中的視頻狀態(tài)獲得到,根據(jù)視頻狀態(tài)里面的視頻時長進行時間切片計算,將切片的時間和視頻轉(zhuǎn)碼格式傳遞給轉(zhuǎn)碼服務(wù)端即可。如圖2所示,轉(zhuǎn)碼客戶端需要做如下操作轉(zhuǎn)碼客戶端通過轉(zhuǎn)碼接口接收到數(shù)據(jù)以后,獲得轉(zhuǎn)碼請求相關(guān)視頻信息,比如視頻時長,比如視頻寬高等信息;計算轉(zhuǎn)碼時需要使用轉(zhuǎn)碼服務(wù)器個數(shù),即資源信息,然后根 據(jù)獲得到的空閑CPU的個數(shù),轉(zhuǎn)碼客戶端會根據(jù)所有轉(zhuǎn)碼服務(wù)器中CPU總和個數(shù)以及視頻總長度來進行視頻切片,如果CPU為多核,則每一個核在資源管理器中定義為一個CPU,這里會根據(jù)一個公式步驟如下視頻切片長度=前一段視頻長度+ (前一段視頻的X設(shè)定的視頻閥值)I)臨時視頻總長度=視頻切片長度+下一段視頻切片長度2)判斷臨時視頻總長度是否大于視頻總長度3)如果臨時視頻長度大于視頻總長度,做如下計算最后一片視頻長度=視頻總長度-最后一段視頻起始位置比如視頻的起始位置為00:00:00. 00即視頻的第0時0分0秒0毫秒或者視頻的起始位置為01:00:59. 01即視頻的第I小時0分59秒I毫秒處綜上所述,整理公式如下
r L 1V1e = inn I + — I
Tm \ fl J如上圖所示n為切片閥值;e為切片序列中第n個切片相對于第一個切片的遞增比例,為了確保用戶的實時轉(zhuǎn)碼的體驗度,調(diào)整切片閥值達到用戶實時轉(zhuǎn)碼不會出現(xiàn)停頓等待現(xiàn)象。實際應(yīng)用場景舉例例如將一個時長為2分鐘的H264編碼,視頻碼流為5Mbps,720p分辨率的視頻分析,五分鐘的視頻為300秒鐘的視頻,我們將時間精確到秒,然后針對這300秒進行切片,按照上面的公式,設(shè)定閥值為5,第一片視頻時長為5s,計算如下第I片視頻長度為00:00:00. 00起始時間至00:00:05. 00視頻時間長度第2片視頻長度為:00:00:05. 01起始時間至00:00:06. 00視頻時間長度(時間長度為(1+1/5) *前一段視頻長度)第3片視頻長度為00:00:11.01(前2段時間長度之和)起始時間至00:00:18. 00視頻時間長度(時間長度為(1+1/5)*前一段視頻長度)第4片視頻長度為00:00:29. 01(前3段時間長度之和)起始時間至00:00:35. 00視頻時間長度(時間長度為(1+1/5)*前一段視頻長度)第5片視頻長度為00:01:04. 01(前3段時間長度之和)起始時間至00:00:55. 00視頻時間長度(時間長度為(1+1/5)*前一段視頻長度)經(jīng)過以上實例,進行總結(jié)分析,得出如上計算公式。轉(zhuǎn)碼客戶端創(chuàng)建了多個視頻切片以后,根據(jù)資源管理器中空閑CPU資源信息,t匕如可用CPU個數(shù),將視頻切片根據(jù)前面給出的公式進行視頻時長從小到大排序建多個線程,每個線程操作一個視頻切片即每一個線程轉(zhuǎn)碼管理一個視頻切片,比如轉(zhuǎn)碼請求發(fā)送,轉(zhuǎn)碼狀態(tài)接收,將視頻切片信息發(fā)送給轉(zhuǎn)碼系統(tǒng)轉(zhuǎn)碼服務(wù)器端,視頻轉(zhuǎn)碼的服務(wù)端將會根據(jù)轉(zhuǎn)碼客戶端發(fā)送的視頻切片信息及視頻標(biāo)準(zhǔn)參數(shù),進行轉(zhuǎn)碼。如圖3所示,云轉(zhuǎn)碼服務(wù)器端相對來說比較輕量,但是規(guī)模越龐大,整個轉(zhuǎn)碼系統(tǒng)優(yōu)勢越明顯,轉(zhuǎn)碼服務(wù)器啟動時會根據(jù)對應(yīng)的配置文件來確定是否啟動轉(zhuǎn)碼對應(yīng)服務(wù),然后啟動相應(yīng)的服務(wù),當(dāng)轉(zhuǎn)碼客戶端發(fā)送對應(yīng)的業(yè)務(wù)請求到轉(zhuǎn)碼服務(wù)器端時,轉(zhuǎn)碼服務(wù)器端將會根據(jù)業(yè)務(wù)請求類型進行對應(yīng)的業(yè)務(wù)處理,如果是轉(zhuǎn)碼請求,會啟動優(yōu)化過的ffmpeg針對切片文件進行視頻轉(zhuǎn)碼,轉(zhuǎn)碼成功與否,都會給資源管理器發(fā)送轉(zhuǎn)碼狀態(tài),至于其他操作,由轉(zhuǎn)碼系統(tǒng)統(tǒng)一處理。資源管理器會根據(jù)轉(zhuǎn)碼狀態(tài)進行轉(zhuǎn)碼進度計算,當(dāng)視頻切片第一片完成時,轉(zhuǎn)碼客戶端會通知用戶,轉(zhuǎn)碼后的視頻已經(jīng)可以開始觀看,整個過程大約耗時3到10秒鐘,大大的提高了用戶體驗的友好度。實施案例華數(shù)云寬帶業(yè)務(wù),并行轉(zhuǎn)碼系統(tǒng)業(yè)務(wù)系統(tǒng),轉(zhuǎn)碼系統(tǒng)整體流程如下如圖4所示,當(dāng)最終用戶通過終端訪問網(wǎng)頁或者網(wǎng)盤服務(wù)器時,網(wǎng)頁、網(wǎng)盤服務(wù)器會通過針對最終用戶終端進行判斷,對數(shù)據(jù)庫進行查找,如果包含用戶請求的信息時,說明目前多媒體服務(wù)器中包含用戶終端所支持的多媒體格式,將對應(yīng)的多媒體服務(wù)器信息反饋給用戶終端,由用戶終端到對應(yīng)的多媒體服務(wù)器進行視頻觀看;如果目前尚無用戶終端支持的視頻格式,網(wǎng)頁、網(wǎng)盤服務(wù)器發(fā)送轉(zhuǎn)碼請求給云轉(zhuǎn)碼系統(tǒng),云轉(zhuǎn)碼接口接收到網(wǎng)頁、網(wǎng)盤服務(wù)器發(fā)送的轉(zhuǎn)碼請求時,會通過轉(zhuǎn)碼資源管理器,針對轉(zhuǎn)碼請求信息進行分析,如果已經(jīng)轉(zhuǎn)碼過對應(yīng)的視頻,將已經(jīng)轉(zhuǎn)碼過的文件信息反饋給網(wǎng)頁、網(wǎng)盤服務(wù)器;如果未轉(zhuǎn)過碼,發(fā)送轉(zhuǎn)碼請求給轉(zhuǎn)碼客戶端,轉(zhuǎn)碼客戶端獲得請求轉(zhuǎn)碼的視頻信息,然后根據(jù)上述所述的轉(zhuǎn)碼客戶端及轉(zhuǎn)碼服務(wù)器端進行轉(zhuǎn)碼操作,同時轉(zhuǎn)碼客戶端將轉(zhuǎn)碼后的文件信息反饋給轉(zhuǎn)碼接口,轉(zhuǎn)碼接口將對應(yīng)的多媒體信息存入數(shù)據(jù)庫,并且轉(zhuǎn)碼資源管理器將對應(yīng)的視頻信息存儲入多媒體服務(wù)器 總結(jié)這種云轉(zhuǎn)碼思想可以增加用戶轉(zhuǎn)碼體驗,能夠更加實時,高效進行視頻轉(zhuǎn)碼。以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明保護范圍內(nèi)。
權(quán)利要求
1.一種視頻分布式轉(zhuǎn)換編碼格式方法,其特征在于,包括如下步驟 11)轉(zhuǎn)碼客戶端通過轉(zhuǎn)碼接口接收到請求轉(zhuǎn)碼的視頻數(shù)據(jù)以后,獲得請求轉(zhuǎn)碼的視頻信息;計算轉(zhuǎn)碼時需要使用轉(zhuǎn)碼服務(wù)器的個數(shù),然后獲得到的空閑CPU的個數(shù),根據(jù)CPU個數(shù)以及視頻總長度來進行視頻切片; 12)轉(zhuǎn)碼客戶端創(chuàng)建了多個視頻切片以后,根據(jù)空閑CPU資源信息,將視頻切片進行遞加排序,創(chuàng)建多個線程,每個線程操作一個視頻切片,將視頻切片信息發(fā)送給轉(zhuǎn)碼服務(wù)器端,轉(zhuǎn)碼服務(wù)器端根據(jù)轉(zhuǎn)碼客戶端發(fā)送的視頻標(biāo)準(zhǔn)參數(shù),進行轉(zhuǎn)碼操作; 所述轉(zhuǎn)碼服務(wù)器端啟動時會根據(jù)對應(yīng)的配置文件來確定是否啟動轉(zhuǎn)碼對應(yīng)服務(wù),當(dāng)轉(zhuǎn)碼客戶端的業(yè)務(wù)請求到所述轉(zhuǎn)碼服務(wù)器端時,轉(zhuǎn)碼服務(wù)器端將會根據(jù)所述業(yè)務(wù)請求類型進行對應(yīng)的業(yè)務(wù)處理,如果是轉(zhuǎn)碼請求,會啟動優(yōu)化過的ffmpeg針對視頻切片進行視頻轉(zhuǎn)碼,轉(zhuǎn)碼成功與否,都會向轉(zhuǎn)碼資源管理器反饋轉(zhuǎn)碼狀態(tài),轉(zhuǎn)碼資源管理器會根據(jù)轉(zhuǎn)碼服務(wù)器端的轉(zhuǎn)碼狀態(tài)進行轉(zhuǎn)碼進度計算,當(dāng)視頻切片第一片完成時,轉(zhuǎn)碼客戶端通知用戶可觀看轉(zhuǎn)碼后的視頻。
2.根據(jù)權(quán)利要求I所述的一種視頻分布式轉(zhuǎn)換編碼格式方法,其特征在于,所述視頻切片長度=前一段視頻長度+前一段視頻的X規(guī)定視頻閥值;臨時視頻總長度=視頻切片長度+下一段視頻切片長度;判斷臨時視頻總長度是否大于視頻總長度;如果臨時視頻長度大于視頻總長度,做如下計算最后一片視頻長度=視頻總長度-最后一段視頻起始位置。
3.一種視頻分布式轉(zhuǎn)換編碼格式方法,其特征在于,包括如下步驟當(dāng)用戶終端訪問網(wǎng)頁服務(wù)器時,網(wǎng)頁服務(wù)器會針對用戶終端進行判斷,并對視頻數(shù)據(jù)庫進行查找,如果包含用戶請求的信息時,將對應(yīng)的多媒體服務(wù)器信息反饋給用戶終端,由用戶終端到對應(yīng)的多媒體服務(wù)器進行視頻觀看;如果目前尚無用戶終端支持的視頻格式,網(wǎng)頁服務(wù)器發(fā)送轉(zhuǎn)碼請求給轉(zhuǎn)碼系統(tǒng),轉(zhuǎn)碼接口接收到網(wǎng)頁服務(wù)器發(fā)送的轉(zhuǎn)碼請求時,會通過轉(zhuǎn)碼資源管理器,針對轉(zhuǎn)碼請求信息進行分析,如果已經(jīng)轉(zhuǎn)碼過對應(yīng)的視頻,將已經(jīng)轉(zhuǎn)碼過的文件信息反饋給網(wǎng)頁服務(wù)器;如果未轉(zhuǎn)過碼,發(fā)送轉(zhuǎn)碼請求給轉(zhuǎn)碼客戶端,轉(zhuǎn)碼客戶端獲得請求轉(zhuǎn)碼的視頻信息;計算轉(zhuǎn)碼時需要使用轉(zhuǎn)碼服務(wù)器的個數(shù),然后獲得到的空閑CPU的個數(shù),根據(jù)CPU個數(shù)以及視頻總長度來進行視頻切片;轉(zhuǎn)碼客戶端創(chuàng)建了多個視頻切片以后,根據(jù)空閑CPU資源信息,將視頻切片進行遞加排序,創(chuàng)建多個線程,每個線程操作一個視頻切片,將視頻切片信息發(fā)送給轉(zhuǎn)碼服務(wù)器端,轉(zhuǎn)碼服務(wù)器端根據(jù)轉(zhuǎn)碼客戶端發(fā)送的視頻標(biāo)準(zhǔn)參數(shù),進行轉(zhuǎn)碼操作; 所述轉(zhuǎn)碼服務(wù)器端啟動時會根據(jù)對應(yīng)的配置文件來確定是否啟動轉(zhuǎn)碼對應(yīng)服務(wù),當(dāng)轉(zhuǎn)碼客戶端的業(yè)務(wù)請求到所述轉(zhuǎn)碼服務(wù)器端時,轉(zhuǎn)碼服務(wù)器端將會根據(jù)所述業(yè)務(wù)請求類 型進行對應(yīng)的業(yè)務(wù)處理,如果是轉(zhuǎn)碼請求,會啟動優(yōu)化過的ffmpeg針對視頻切片進行視頻轉(zhuǎn)碼,轉(zhuǎn)碼成功與否,都會向轉(zhuǎn)碼資源管理器反饋轉(zhuǎn)碼狀態(tài),轉(zhuǎn)碼資源管理器會根據(jù)轉(zhuǎn)碼服務(wù)器端的轉(zhuǎn)碼狀態(tài)進行轉(zhuǎn)碼進度計算,當(dāng)視頻切片第一片完成時,轉(zhuǎn)碼客戶端通知用戶可觀看轉(zhuǎn)碼后的視頻;同時轉(zhuǎn)碼客戶端將轉(zhuǎn)碼后的文件信息反饋給轉(zhuǎn)碼接口,轉(zhuǎn)碼接口將對應(yīng)的信息存入視頻數(shù)據(jù)庫,并且將對應(yīng)的視頻信息存儲入多媒體服務(wù)器。
全文摘要
本發(fā)明公開了一種視頻分布式轉(zhuǎn)換編碼格式方法,主要是將原有的視頻進行切片,將一個完整的、很大的、時長很長的視頻切成若干個小視頻,將小視頻進行視頻編碼轉(zhuǎn)換,以保證每一片視頻都是一個獨立的視頻分塊,視頻分塊越小,轉(zhuǎn)碼耗時越少,所以,實時性可以得到保證;由于轉(zhuǎn)碼時對計算機資源的消耗非常高,所以,為了減少計算機資源消耗高的特點,將視頻切片后的分片發(fā)送給網(wǎng)絡(luò)中的資源空閑的轉(zhuǎn)碼服務(wù)器來進行轉(zhuǎn)碼,這么做不但提高了轉(zhuǎn)碼效率,而且降低了單臺計算機負(fù)載。
文檔編號H04N7/26GK102780918SQ20121028971
公開日2012年11月14日 申請日期2012年8月15日 優(yōu)先權(quán)日2012年8月15日
發(fā)明者何沛中, 何瑛, 劉歧, 單炳云, 張衛(wèi), 程永紅, 程耀東, 趙志峰 申請人:北京華創(chuàng)智云科技有限責(zé)任公司, 華數(shù)傳媒網(wǎng)絡(luò)有限公司