專利名稱:一種視頻畫面切換方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻播放技術(shù)領(lǐng)域,特別是涉及一種視頻畫面切換方法,以及一種視頻畫面切換系統(tǒng)。
背景技術(shù):
現(xiàn)有基于MCU (Multipoint Control Unit,多點控制單元)的視頻會議系統(tǒng),包括MCU服務(wù)端和多個終端設(shè)備,當(dāng)視頻會議有三 個以上的終端參加時,則可能出現(xiàn)視頻切換的情況;例如其中一個終端播放其他兩個終端的多路合成視頻時,此終端欲播放另一終端的高清視頻時,就需要從多路合成視頻切換到高清視頻。傳統(tǒng)的畫面切換處理是,當(dāng)某一終端向MCU服務(wù)端發(fā)出對另一終端的高清模式切換請求時,該終端立即切換到單路高清視頻模式,同時停止接收多路合成視頻,但是因為另一終端的高清視頻需要經(jīng)過編碼、上傳再轉(zhuǎn)發(fā)到該終端,所以在切換到高清畫面時無法立刻讀取到視頻數(shù)據(jù),往往造成馬賽克和花屏現(xiàn)象,畫面切換效果不佳。
發(fā)明內(nèi)容
基于此,本發(fā)明提供一種視頻畫面切換方法和系統(tǒng),解決了傳統(tǒng)的畫面切換時出現(xiàn)的馬賽克和花屏問題,畫面切換效果較好。一種視頻畫面切換方法,包括如下步驟將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址;根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻;將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址;當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址輸出第二視頻?!N視頻畫面切換系統(tǒng),包括第一存儲模塊、第一輸出模塊、第二存儲模塊和第二輸出模塊;所述第一存儲模塊用于將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址;所述第一輸出模塊用于根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻;所述第二存儲模塊用于將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址;所述第二輸出模塊用于當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址,輸出第二視頻。本發(fā)明通過不同的緩沖區(qū)存儲和處理切換前后接收的不同視頻數(shù)據(jù),當(dāng)發(fā)出切換請求時,因未接收到預(yù)設(shè)的切換命令,持續(xù)播出切換前的視頻;在接收到切換命令時,由于切換后的視頻數(shù)據(jù)已在緩沖區(qū)中解碼而生成視頻,當(dāng)更新輸出地址后,即可將切換后的視頻立刻流暢地輸出,保證畫面切換后圖像清晰,解決了傳統(tǒng)視頻會議系統(tǒng)中切換時常出現(xiàn)的馬賽克和花屏問題,畫面切換效果更佳。
圖I為本發(fā)明視頻畫面切換方法在一實施例中的流程示意圖。圖2為本發(fā)明視頻畫面切換方法在一實施例中視頻會議系統(tǒng)的架構(gòu)示意圖。圖3為本發(fā)明視頻畫面切換系統(tǒng)在一實施例中的結(jié)構(gòu)示意圖。
具體實施例方式下面結(jié)合實施例及附圖對本發(fā)明作進(jìn)一步詳細(xì)說明,但本發(fā)明的實施方式不限于此。 如圖I所示,是本發(fā)明視頻畫面切換方法在一實施例中的流程示意圖,該方法步驟如下S11、將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址;本發(fā)明的畫面切換方法,適用于基于MCU的視頻會議系統(tǒng),如圖2所示,是視頻會議系統(tǒng)的架構(gòu)圖,MCU服務(wù)端即視頻會議系統(tǒng)中的服務(wù)器,負(fù)責(zé)交換視頻數(shù)據(jù)和發(fā)送控制命令,終端TfTn即視頻會議系統(tǒng)中的終端,負(fù)責(zé)發(fā)送或接收視頻數(shù)據(jù),并解析MCU發(fā)送的控制命令;在本實施例中,可在終端的內(nèi)存空間中開辟多個緩沖區(qū);開辟不同緩沖區(qū)的目的是為了存儲和處理接收到的不同的視頻數(shù)據(jù),由于每個緩沖區(qū)能夠獨立工作,實現(xiàn)了終端同時處理多個不同的視頻數(shù)據(jù);在本實施例中開辟兩個緩沖區(qū)即可實現(xiàn),其中一個用于存儲和處理畫面切換前的視頻數(shù)據(jù),該切換前的視頻數(shù)據(jù)記為第一視頻數(shù)據(jù),該緩沖區(qū)記為第一緩沖區(qū);另一個用于存儲和處理畫面切換后的視頻數(shù)據(jù),該切換后的視頻數(shù)據(jù)記為第二視頻數(shù)據(jù),記為第二緩沖區(qū);其中,第一和第二是相對概念,比如從上一次畫面切換到下一次畫面切換,在上一次畫面切換中,切換后的視頻數(shù)據(jù)和緩沖區(qū)分別為第二視頻數(shù)據(jù)和第二緩沖區(qū),但相對于下一次畫面切換來說,則又為第一視頻數(shù)據(jù)和第一緩沖區(qū),上述第一和第二并非特指;S12、根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻;在一較佳實施例中,該視頻數(shù)據(jù)為MCU服務(wù)端發(fā)送的編碼碼流,在視頻會議系統(tǒng)中一般通過MCU服務(wù)端控制多個終端,各個終端將實時傳播的視頻編碼為碼流,上傳至MCU服務(wù)端進(jìn)行統(tǒng)一處理及轉(zhuǎn)發(fā),實現(xiàn)各個終端的信息交互;在接收到MCU服務(wù)端發(fā)送的編碼碼流后,將其存儲在第一緩沖區(qū)中并解碼,生成第一視頻;將記錄的第一緩沖區(qū)的地址發(fā)送給終端的輸出接口,輸出接口根據(jù)該緩沖區(qū)的地址即可輸出該緩沖區(qū)存儲的視頻;S13、將接收所述服務(wù)端發(fā)送的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址;在一較佳實施例中,步驟S13前還可包括步驟向服務(wù)端發(fā)送畫面切換請求;接收所述服務(wù)端根據(jù)所述畫面切換請求返回的所述第二視頻數(shù)據(jù);
當(dāng)終端向MCU服務(wù)端發(fā)送畫面切換請求時,由MCU服務(wù)端根據(jù)該畫面切換請求通知其他終端編碼碼流,其他終端編碼后再上傳給MCU服務(wù)端轉(zhuǎn)發(fā),此終端將接收到的所述第二視頻數(shù)據(jù)存儲在所述第二緩沖區(qū)中進(jìn)行解碼,生成第二視頻;在上述步驟中,從終端發(fā)出畫面切換請求后,到接收到新的視頻數(shù)據(jù)的過程之間,需等待MCU服務(wù)端進(jìn)行通知、接收和轉(zhuǎn)發(fā),不同的設(shè)備由于其處理器處理能力不同,其等待時間不一;在本發(fā)明中,雖然已發(fā)出畫面切換請求,但從步驟S12可知,由于終端的輸出接口接收的地址為第一緩沖區(qū)的地址,該終端仍然播放第一視頻;S14、當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址輸出第二視頻;在一較佳實施例中,該步驟具體可包括
當(dāng)接收到所述切換命令時,將輸出接口的輸出地址更新為所述第二緩沖區(qū)的地址;根據(jù)所述第二緩沖區(qū)的地址,輸出所述第二緩沖區(qū)中存儲的所述第二視頻;可在MCU服務(wù)端預(yù)設(shè)一切換命令,由前述步驟可知從發(fā)出畫面切換請求到接收到視頻數(shù)據(jù)時,有一等待時間;另外,終端接收到視頻數(shù)據(jù)后還需將其解碼;因此可根據(jù)不同設(shè)備的處理速度,在發(fā)送畫面切換請求后的一段時間后,由所述MCU服務(wù)端發(fā)出一切換命令;在接收到該切換命令時,將記錄的第二緩沖區(qū)的地址發(fā)送給輸出接口,更新輸出接口的輸出地址;由于第二視頻數(shù)據(jù)已存儲在第二緩沖區(qū)中并解碼,所以當(dāng)輸出接口的輸出地址更新后,即可立刻輸出第二緩沖區(qū)中的第二視頻,成功解決了傳統(tǒng)畫面切換時出現(xiàn)的馬賽克和花屏現(xiàn)象;在一較佳實施例中,上述的輸出接口為HDMI接口,以保證終端輸出視頻的清晰度。下面通過一個實施例進(jìn)一步說明本發(fā)明在各個終端的高清編解碼卡的內(nèi)存空間中開辟2個或2個以上的緩沖區(qū),用于存儲MCU服務(wù)端發(fā)送的編碼碼流;本實施例中,以開辟2個緩沖區(qū)(第一緩沖區(qū)和第二緩沖區(qū))為例進(jìn)行說明;視頻會議系統(tǒng)開啟,終端Tl向MCU服務(wù)端發(fā)出觀看終端T2 T5的合成模式視頻的請求,由MCU服務(wù)端接收終端Τ2 Τ5的各個編碼碼流,合成后再發(fā)送給終端Tl ;終端Tl將接收的合成數(shù)據(jù)(記為第一視頻數(shù)據(jù))存儲在上述已開辟的任一緩沖區(qū)中(記為第一緩沖區(qū)),記錄第一緩沖區(qū)的地址;在第一緩沖區(qū)中對合成的編碼碼流進(jìn)行解碼后生成視頻,將第一緩沖區(qū)的地址發(fā)送給終端Tl的輸出接口,輸出接口根據(jù)地址即可輸出該緩沖區(qū)中的視頻;當(dāng)終端接收到用戶的觀看終端Τ2的單路高清視頻的指令時,終端Tl向MCU服務(wù)發(fā)出畫面切換請求,請求切換至終端Τ2的單路高清畫面;此時,由于終端Tl的輸出地址未更改,繼續(xù)輸出合成視頻;MCU服務(wù)端根據(jù)接收的畫面切換請求通知終端T2編碼碼流,接收后再轉(zhuǎn)發(fā)給終端Tl,該編碼碼流記為第二視頻數(shù)據(jù);終端Tl接收后,由于第一緩沖區(qū)已存儲有數(shù)據(jù),則選擇另一個緩沖區(qū),記為第二緩沖區(qū),將編碼碼流存儲在第二緩沖區(qū)中解碼,生成第二視頻,同時記錄第二緩沖區(qū)的地址;在MCU服務(wù)端中預(yù)設(shè)更新命令,設(shè)置為收到畫面請求后的5秒后發(fā)出;終端Tl在接收到該更新命令后,將記錄的第二緩沖區(qū)的地址發(fā)送給輸出接口,更新輸出接口的地址;輸出接口即可輸出第二緩沖區(qū)中的第二視頻;由于第二緩沖區(qū)中的第二視頻數(shù)據(jù)已解碼完成,終端Tl的顯示屏即可播出流暢的視頻,不會產(chǎn)生馬賽克或花屏現(xiàn)象;終端的畫面切換,不局限于上述從合成模式切換為單路高清模式的例子,還可包括從單路高清模式切換為合成模式、或從某一終端的單路高清模式切換為另一終端的單路高清模式等多種畫面切換情況,任何一種畫面切換方式,均在本發(fā)明的保護(hù)范圍內(nèi)。對應(yīng)的,如圖3所示,是本發(fā)明視頻畫面切換系統(tǒng)在一實施例中的結(jié)構(gòu)示意圖,包括第一存儲模塊31、第一輸出模塊32、第二存儲模塊33和第二輸出模塊34 ;所述第一存儲模塊31用于將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址; 在各個終端的內(nèi)存空間中開辟多個緩沖區(qū),用于存儲和處理接收到的不同的視頻數(shù)據(jù),實現(xiàn)在終端同時處理多個不同的視頻數(shù)據(jù);在本實施例中開辟兩個緩沖區(qū)即可實現(xiàn),其中一個用于存儲和處理畫面切換前的視頻數(shù)據(jù),該切換前的視頻數(shù)據(jù)記為第一視頻數(shù)據(jù),該緩沖區(qū)記為第一緩沖區(qū);另一個用于存儲和處理畫面切換后的視頻數(shù)據(jù),該切換后的視頻數(shù)據(jù)記為第二視頻數(shù)據(jù),記為第二緩沖區(qū);所述第一輸出模塊32用于根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻;在一較佳實施例中,該視頻數(shù)據(jù)為MCU服務(wù)端發(fā)送的編碼碼流,在視頻會議系統(tǒng)中一般通過MCU服務(wù)端控制多個終端,各個終端將實時傳播的視頻編碼為碼流,上傳至MCU服務(wù)端進(jìn)行統(tǒng)一處理及轉(zhuǎn)發(fā),實現(xiàn)各個終端的信息交互;在接收到MCU服務(wù)端發(fā)送的編碼碼流后,將其存儲在第一緩沖區(qū)中并解碼,生成第一視頻;將記錄的第一緩沖區(qū)的地址發(fā)送給終端的輸出接口,輸出接口根據(jù)該緩沖區(qū)的地址即可輸出該緩沖區(qū)存儲的視頻;所述第二存儲模塊33用于將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址;在一較佳實施例中,在第二存儲模塊33前,還連接了發(fā)送模塊和接收模塊;所述發(fā)送模塊用于向服務(wù)端發(fā)送畫面切換請求;所述接收模塊用于接收所述服務(wù)端根據(jù)所述畫面切換請求返回的所述第二視頻數(shù)據(jù);當(dāng)終端通過發(fā)送模塊向MCU服務(wù)端發(fā)送畫面切換請求時,由MCU服務(wù)端根據(jù)該畫面切換請求通知其他終端編碼碼流,其他終端編碼后再上傳給MCU服務(wù)端轉(zhuǎn)發(fā),此終端的接收模塊將接收到的所述第二視頻數(shù)據(jù)存儲在第二存儲模塊中的所述第二緩沖區(qū)中進(jìn)行解碼,生成第二視頻;從終端發(fā)出畫面切換請求后,到接收到新的視頻數(shù)據(jù)的過程之間,需等待MCU服務(wù)端進(jìn)行通知、接收和轉(zhuǎn)發(fā),不同的設(shè)備由于其處理器處理能力不同,其等待時間不一;在本發(fā)明中,雖然已發(fā)出畫面切換請求,但第一輸出模塊32可知,由于終端的輸出接口接收的地址為第一緩沖區(qū)的地址,該終端仍然播放第一視頻;所述第二輸出模塊34用于當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址,輸出第二視頻;在一較佳實施例中,所述第二輸出模塊34可包括更新模塊和輸出模塊;
所述更新模塊用于當(dāng)接收到所述切換命令時,將輸出接口的輸出地址更新為所述第二緩沖區(qū)的地址;所述輸出模塊用于根據(jù)所述第二緩沖區(qū)的地址,輸出所述第二緩沖區(qū)中存儲的所述第二視頻;可在MCU服務(wù)端預(yù)設(shè)一切換命令,由于從發(fā)出畫面切換請求到接收到視頻數(shù)據(jù)時,有一等待時間;另外,終端接收到視頻數(shù)據(jù)后還需將其解碼;因此可根據(jù)不同設(shè)備的處理速度,在發(fā)送畫面切換請求后的一段時間后,由所述MCU服務(wù)端發(fā)出一切換命令;在接收到該切換命令時,將記錄的第二緩沖區(qū) 的地址發(fā)送給輸出接口,更新輸出接口的輸出地址;由于第二視頻數(shù)據(jù)已存儲在第二緩沖區(qū)中并解碼,所以當(dāng)輸出接口的輸出地址更新后,即可立刻輸出第二緩沖區(qū)中的第二視頻,成功解決了傳統(tǒng)畫面切換時出現(xiàn)的馬賽克和花屏現(xiàn)象;在一較佳實施例中,所述輸出接口可為HDMI接口,以保證終端輸出視頻的清晰度。本發(fā)明通過不同的緩沖區(qū)存儲和處理切換前后接收的不同視頻數(shù)據(jù),當(dāng)發(fā)出切換請求時,因未接收到預(yù)設(shè)的切換命令,持續(xù)播出切換前的視頻;在接收到切換命令時,由于切換后的視頻數(shù)據(jù)已在緩沖區(qū)中解碼而生成視頻,當(dāng)更新輸出地址后,即可將切換后的視頻立刻流暢地輸出,保證畫面切換后圖像清晰,解決了傳統(tǒng)視頻會議系統(tǒng)中切換時常出現(xiàn)的馬賽克和花屏問題,畫面切換效果更佳。以上所述實施例僅表達(dá)了本發(fā)明的幾種實施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種視頻畫面切換方法,其特征在于,包括如下步驟 將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址; 根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻; 將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址; 當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址輸出第二視頻。
2.根據(jù)權(quán)利要求I所述的視頻畫面切換方法,其特征在于,所述將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū),記錄所述第二緩沖區(qū)的地址的步驟前,還包括步驟 向服務(wù)端發(fā)送畫面切換請求; 接收所述服務(wù)端根據(jù)所述畫面切換請求返回的所述第二視頻數(shù)據(jù)。
3.根據(jù)權(quán)利要求Γ2任一項所述的視頻畫面切換方法,其特征在于,所述第一視頻數(shù)據(jù)為編碼碼流,所述第二視頻數(shù)據(jù)為編碼碼流。
4.根據(jù)權(quán)利要求I所述的視頻畫面切換方法,其特征在于,所述當(dāng)接收到預(yù)設(shè)的更新命令時,根據(jù)所述第二緩沖區(qū)的地址,輸出第二視頻的步驟具體包括 當(dāng)接收到所述切換命令時,將輸出接口的輸出地址更新為所述第二緩沖區(qū)的地址; 根據(jù)所述第二緩沖區(qū)的地址,輸出所述第二緩沖區(qū)中存儲的所述第二視頻。
5.根據(jù)權(quán)利要求4所述的視頻畫面切換方法,其特征在于,所述輸出接口為HDMI接口。
6.一種視頻畫面切換系統(tǒng),其特征在于,包括第一存儲模塊、第一輸出模塊、第二存儲模塊和第二輸出模塊; 所述第一存儲模塊用于將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址; 所述第一輸出模塊用于根據(jù)所述第一緩沖區(qū)的地址,輸出第一視頻; 所述第二存儲模塊用于將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址; 所述第二輸出模塊用于當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址輸出第二視頻。
7.根據(jù)權(quán)利要求6所述的視頻畫面切換系統(tǒng),其特征在于,還包括發(fā)送模塊和接收模塊; 所述發(fā)送模塊用于向服務(wù)端發(fā)送畫面切換請求; 所述接收模塊用于接收所述服務(wù)端根據(jù)所述畫面切換請求返回的所述第二視頻數(shù)據(jù)。
8.根據(jù)權(quán)利要求6 7任一項所述的視頻畫面切換系統(tǒng),其特征在于,所述第一視頻數(shù)據(jù)為編碼碼流,所述第二視頻數(shù)據(jù)為編碼碼流。
9.根據(jù)權(quán)利要求6所述的視頻畫面切換系統(tǒng),其特征在于,所述第二輸出模塊包括更新模塊和輸出模塊; 所述更新模塊用于當(dāng)接收到所述切換命令時,將輸出接口的輸出地址更新為所述第二緩沖區(qū)的地址; 所述輸出模塊用于根據(jù)所述第二緩沖區(qū)的地址,輸出所述第二緩沖區(qū)中存儲的所述第二視頻。
10.根據(jù)權(quán)利要求9所述的視頻畫面切換系統(tǒng),其特征在于,所述輸出接口為HDMI接□。
全文摘要
本發(fā)明涉及視頻領(lǐng)域,提供一種視頻畫面切換方法。該方法包括將接收的第一視頻數(shù)據(jù)存儲在預(yù)設(shè)的第一緩沖區(qū)中,記錄所述第一緩沖區(qū)的地址;根據(jù)所述第一緩沖區(qū)的地址輸出第一視頻;將接收的第二視頻數(shù)據(jù)存儲在預(yù)設(shè)的第二緩沖區(qū)中,記錄所述第二緩沖區(qū)的地址;當(dāng)接收到預(yù)設(shè)的切換命令時,根據(jù)所述第二緩沖區(qū)的地址,輸出第二視頻。本發(fā)明對應(yīng)還提供一種視頻畫面切換系統(tǒng)。本發(fā)明解決了傳統(tǒng)視頻會議系統(tǒng)中常出現(xiàn)的馬賽克和花屏問題,畫面切換效果更佳。
文檔編號H04N7/15GK102769737SQ201210252229
公開日2012年11月7日 申請日期2012年7月19日 優(yōu)先權(quán)日2012年7月19日
發(fā)明者郭洪猛 申請人:廣東威創(chuàng)視訊科技股份有限公司