本發(fā)明屬于播放器領域,尤其涉及一種視頻播放器及其視頻顯示方法、系統(tǒng)。
背景技術:
視頻播放器是指能播放以數(shù)字信號形式存儲/傳輸?shù)囊曨l的軟件,其通過對源文件進行解析并解碼,得到視頻數(shù)據(jù)和音頻數(shù)據(jù),之后一般使用圖形庫實現(xiàn)視頻顯示、利用音頻驅動來驅動聲卡輸出音頻數(shù)據(jù)。
當前,VR(Virtual Reality,虛擬現(xiàn)實)技術作為一種高仿真系統(tǒng),能創(chuàng)建并讓用戶感受到原本只有在真實世界才會擁有的體驗,即是說,VR技術能夠將用戶的感知帶入由它創(chuàng)建的虛擬世界,人們更加喜歡這種身臨其境的體驗。
但現(xiàn)有技術提供的視頻播放器在視頻顯示方面僅支持2D播放模式,通用性差、用戶觀影體驗差。
技術實現(xiàn)要素:
本發(fā)明實施例的目的在于提供一種視頻播放器的視頻顯示方法,旨在解決現(xiàn)有的視頻播放器在視頻顯示方面僅支持2D播放模式,通用性差、用戶觀影體驗差的問題。
本發(fā)明實施例是這樣實現(xiàn)的,一種視頻播放器的視頻顯示方法,所述方法包括以下步驟:
在視頻播放器的當前播放模式下,接收用戶輸入的播放模式切換指令;
根據(jù)所述播放模式切換指令,重繪視頻展示界面,以切換到相應的2D播放模式、3D播放模式或VR播放模式。
本發(fā)明實施例的另一目的在于提供一種視頻播放器的視頻顯示系統(tǒng),所述系統(tǒng)包括:
第一接收模塊,用于在視頻播放器的當前播放模式下,接收用戶輸入的播放模式切換指令;
切換模塊,用于根據(jù)所述播放模式切換指令,重繪視頻展示界面,以切換到相應的2D播放模式、3D播放模式或VR播放模式。
本發(fā)明實施例的另一目的在于提供一種視頻播放器,所述視頻播放器包括如上所述的視頻播放器的視頻顯示系統(tǒng)。
本發(fā)明實施例提供的視頻播放器及其視頻顯示方法及系統(tǒng)在現(xiàn)有的2D播放模式基礎上,融合了3D播放模式和VR播放模式,豐富了用戶的觀影體驗,同時通過重繪視頻展示界面,實現(xiàn)了不同播放模式的切換。
附圖說明
圖1是本發(fā)明實施例提供的視頻播放器的視頻顯示方法的流程圖;
圖2是本發(fā)明實施例提供的視頻播放器的視頻顯示系統(tǒng)的結構圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
針對現(xiàn)有視頻播放器存在的問題,本發(fā)明實施例提供的視頻播放器的視頻顯示方法同時融合了2D播放模式、3D播放模式和VR播放模式,通過重繪視頻展示界面,實現(xiàn)不同播放模式的切換。
圖1示出了本發(fā)明實施例提供的視頻播放器的視頻顯示方法的流程,包括以下步驟:
S1:在視頻播放器的當前播放模式下,接收用戶輸入的播放模式切換指令。
本發(fā)明實施例中,播放模式可以是2D播放模式、3D播放模式或VR播放模式,相應地,播放模式切換指令的類型可以包括2D轉3D播放模式指令、2D轉VR播放模式指令、3D轉2D播放模式指令、3D轉VR播放模式指令、VR轉2D播放模式指令、VR轉3D播放模式指令。
本發(fā)明實施例中,用戶既可以傳統(tǒng)的輸入方式(如鍵盤、觸摸屏等)輸入播放模式切換指令,若安裝有視頻播放器的便攜式電子設備帶有麥克風,則用戶也可以語音方式輸入播放模式切換指令,若安裝有視頻播放器的便攜式電子設備帶有三軸陀螺儀,則用戶還可以利用三軸陀螺儀來輸入播放模式切換指令。
具體地,若以語音方式輸入播放模式切換指令,則接收用戶輸入的播放模式切換指令的步驟具體可以是:
S11:對安裝有視頻播放器的便攜式電子設備中麥克風采集到的聲音信號進行除雜處理(即切除首尾端的靜音),以降低噪聲對后續(xù)步驟的干擾。
S12:通過移動窗函數(shù),對聲音信號進行分幀處理。
S13:對每一幀的聲音信號進行聲學特征提取,得到相應的觀測序列。
S14:基于觀測序列,識別每一幀的狀態(tài),之后將狀態(tài)組合成音素,再將音素組合成單詞。
S15:若在先識別出的單詞為開始指令,則返回步驟S11,繼續(xù)接收用戶后續(xù)以語音形式輸入的播放模式切換指令,直至識別出的單詞為結束指令后,停止從麥克風接收聲音信號,即:使得播放器停止響應用戶輸入的聲音信號;若在先識別出的單詞不為開始指令,則不從麥克風接收聲音信號,即:使得播放器不響應用戶輸入的聲音信號。其中的開始指令和結束指令可以是預先設計好的固定單詞,例如開始指令可以是單詞“開始”,結束指令可以是單詞“結束”。
具體地,若利用三軸陀螺儀來輸入播放模式切換指令,則接收用戶輸入的播放模式切換指令的步驟具體可以是:
S16:獲取安裝有視頻播放器的便攜式電子設備中三軸陀螺儀讀取的X軸、Y軸、Z軸的旋轉角度值,并根據(jù)獲取的角度值的正負極判斷便攜式電子設備的動作方向。
S17:獲取安裝有視頻播放器的便攜式電子設備中三軸陀螺儀輸出的X軸、Y軸、Z軸的旋轉角速度,對獲取的旋轉角速度進行積分,得到便攜式電子設備的動作在三軸上的旋轉角度。
S18:將得到的三軸上的旋轉角度分別與相應的角度閾值進行比較,并結合動作的停留時間與相應的時間閾值的比較,識別播放模式切換指令的類型及有效性。舉例來說,若通過旋轉角度與相應的角度閾值的比較,識別出播放模式切換指令的類型為2D轉3D播放模式指令,則繼續(xù)判定旋轉角度滿足相應的角度閾值的停留時間是否達到相應的時間閾值,是則判定2D轉3D播放模式指令有效,否則雖識別出播放模式切換指令的類型為2D轉3D播放模式指令,但該指令無效。
S2:根據(jù)播放模式切換指令,重繪視頻展示界面,以切換到相應的2D播放模式、3D播放模式或VR播放模式。
目前,對于2D播放模式、3D播放模式和VR播放模式,已有較多的成熟技術能夠實現(xiàn),在此不一一列舉。
作為本發(fā)明實施例的一種優(yōu)選實現(xiàn)方式,利用openGL(Open Graphics Library,底層圖形庫)和建立在其基礎上的GLUI、GLU類庫,并結合C++程序語言來實現(xiàn)2D播放模式、3D播放模式和VR播放模式。為實現(xiàn)VR播放模式時,需要利用openGL,用矩陣畫出一立體空間(如球體、半球體、立方體等),立體空間的中心為視點,全景二維圖通過openGL紋理映射技術投射到立體表面上,這樣便可看到360度全景。
此時,若播放模式切換指令的類型為2D轉3D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,將2D展示界面作為中間界面,對中間界面進行平移而得到左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在同一界面,以切換到3D播放模式。
此時,若播放模式切換指令的類型為2D轉VR播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,將2D展示界面通過openGL紋理映射技術投射到預先畫出的立體空間的表面上,該立體空間的中心為視點,以切換到VR播放模式。
此時,若播放模式切換指令的類型為3D轉2D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,將3D展示界面中的左眼圖像或右眼圖像鋪展開,以切換到2D播放模式。
此時,若播放模式切換指令的類型為3D轉VR播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,提取3D展示界面中的左眼圖像或右眼圖像,將提取的圖像通過openGL紋理映射技術投射到預先畫出的立體空間的表面上,該立體空間的中心為視點,以切換到VR播放模式。
此時,若播放模式切換指令的類型為VR轉2D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,將VR展示的立體空間展開為2D展示界面,以切換到相應的2D播放模式。
此時,若播放模式切換指令的類型為VR轉3D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,將VR展示的立體空間展開為2D展示界面,將2D展示界面作為中間界面,對中間界面進行平移而得到左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在同一界面,以切換到3D播放模式。
作為本發(fā)明實施例的另一種優(yōu)選實現(xiàn)方式,安裝有視頻播放器的便攜式電子設備帶有三軸陀螺儀,則可利用Unity3D,并結合C#程序語言來實現(xiàn)2D播放模式、3D播放模式和VR播放模式。具體來說,首先利用Unity3D來構建虛擬場景,在虛擬場景中設置兩個全景鏡頭,每個鏡頭相當于一個視角,并把兩個鏡頭之間的距離調節(jié)好,之后編寫腳本,通過控制三軸陀螺儀來控制鏡頭的旋轉,實現(xiàn)分屏的效果。同時,編寫腳本,以控制鏡頭的移動。并將預先做好的十字準星作為鏡頭的子節(jié)點,使其跟隨鏡頭旋轉和移動。如果將十字準星對準想要對準的物體,利用射線檢測判斷碰到的物體,如果檢測到物體,物體會按預先編譯好的腳本執(zhí)行,進行相應的操作。從而實現(xiàn)視頻的沉浸式體驗。
此時,若播放模式切換指令的類型為2D轉3D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,兩個畫面分別作為左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在便攜式電子設備的同一界面,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到3D播放模式。
此時,若播放模式切換指令的類型為2D轉VR播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,同時開啟對便攜式電子設備中三軸陀螺儀的響應,以切換到VR播放模式。
此時,若播放模式切換指令的類型為3D轉2D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的單個全景鏡頭,調節(jié)鏡頭的視角,顯示3D畫面的一半,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到2D播放模式。
此時,若播放模式切換指令的類型為3D轉VR播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的一個全景鏡頭,調節(jié)兩個鏡頭的視角,以切換到VR播放模式。
此時,若播放模式切換指令的類型為VR轉2D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的單個全景鏡頭,調節(jié)鏡頭的視角,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到2D播放模式。
此時,若播放模式切換指令的類型為VR轉3D播放模式指令,則步驟S2具體可以是:根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到3D播放模式。
本發(fā)明實施例中,在步驟S1之前或之后,還可包括以下步驟:
S0:在視頻播放器的當前播放模式下,在視頻播放過程中,接收用戶輸入的常規(guī)操作指令。
本發(fā)明實施例中,常規(guī)操作指令可以并不限于是快進、后退、暫停、播放、下一部等。
本發(fā)明實施例中,用戶既可以傳統(tǒng)的輸入方式(如鍵盤、觸摸屏等)輸入常規(guī)操作指令,若安裝有播放器的便攜式電子設備帶有麥克風,則用戶也可以語音方式輸入常規(guī)操作指令。
具體地,若以語音方式輸入常規(guī)操作指令,則接收用戶輸入的常規(guī)操作指令的步驟與前述接收播放模式切換指令的步驟類似,可以是:
S01:對安裝有視頻播放器的便攜式電子設備中麥克風采集到的聲音信號進行除雜處理(即切除首尾端的靜音),以降低噪聲對后續(xù)步驟的干擾。
S02:通過移動窗函數(shù),對聲音信號進行分幀處理。
S03:對每一幀的聲音信號進行聲學特征提取,得到相應的觀測序列。
S04:基于觀測序列,識別每一幀的狀態(tài),之后將狀態(tài)組合成音素,再將音素組合成單詞。
S05:若在先識別出的單詞為開始指令,則返回步驟S11,繼續(xù)接收用戶后續(xù)以語音形式輸入的常規(guī)操作指令,直至識別出的單詞為結束指令后,停止從麥克風接收聲音信號,即:使得播放器停止響應用戶輸入的聲音信號;若在先識別出的單詞不為開始指令,則不從麥克風接收聲音信號,即:使得播放器不響應用戶輸入的聲音信號。其中的開始指令和結束指令可以是預先設計好的固定單詞,例如開始指令可以是單詞“開始”,結束指令可以是單詞“結束”。
圖2示出了本發(fā)明實施例提供的視頻播放器的視頻顯示系統(tǒng)的結構。
本發(fā)明實施例提供的視頻播放器的視頻顯示系統(tǒng)包括:第一接收模塊1,用于在視頻播放器的當前播放模式下,接收用戶輸入的播放模式切換指令;切換模塊2,用于根據(jù)播放模式切換指令,重繪視頻展示界面,以切換到相應的2D播放模式、3D播放模式或VR播放模式。
在一種情況下,若安裝有視頻播放器的便攜式電子設備帶有麥克風,則第一接收模塊1可包括:第一除雜子模塊,用于對安裝有播放器的便攜式電子設備中麥克風采集到的聲音信號進行除雜處理(即切除首尾端的靜音);第一分幀子模塊,用于通過移動窗函數(shù),對聲音信號進行分幀處理;第一特征提取子模塊,用于對分幀子模塊分幀后的每一幀的聲音信號進行聲學特征提取,得到相應的觀測序列;第一單詞識別子模塊,用于基于觀測序列,識別每一幀的狀態(tài),之后將狀態(tài)組合成音素,再將音素組合成單詞;第一指令識別子模塊,用于當在先識別出的單詞為開始指令時,控制除雜子模塊繼續(xù)執(zhí)行,直至識別出的單詞為結束指令后,停止從麥克風接收聲音信號,還用于當在先識別出的單詞不為開始指令時,不從麥克風接收聲音信號。
在另一種情況下,若安裝有視頻播放器的便攜式電子設備帶有三軸陀螺儀,則第一接收模塊1可包括:獲取子模塊,用于獲取安裝有視頻播放器的便攜式電子設備中三軸陀螺儀讀取的X軸、Y軸、Z軸的旋轉角度值,并根據(jù)獲取的角度值的正負極判斷便攜式電子設備的動作方向;旋轉角度計算子模塊,用于獲取安裝有視頻播放器的便攜式電子設備中三軸陀螺儀輸出的X軸、Y軸、Z軸的旋轉角速度,對獲取的旋轉角速度進行積分,得到便攜式電子設備的動作在三軸上的旋轉角度;比較子模塊,用于將旋轉角度計算子模塊得到的三軸上的旋轉角度分別與相應的角度閾值進行比較,并結合動作的停留時間與相應的時間閾值的比較,識別播放模式切換指令的類型及有效性。
在一種情況下,利用openGL(Open Graphics Library,底層圖形庫)和建立在其基礎上的GLUI、GLU類庫,并結合C++程序語言來實現(xiàn)2D播放模式、3D播放模式和VR播放模式。此時,切換模塊2可包括:第一切換子模塊,用于當播放模式切換指令的類型為2D轉3D播放模式指令時,根據(jù)播放模式切換指令,將2D展示界面作為中間界面,對中間界面進行平移而得到左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在同一界面,以切換到3D播放模式;第二切換子模塊,用于當播放模式切換指令的類型為2D轉VR播放模式指令時,根據(jù)播放模式切換指令,將2D展示界面通過openGL紋理映射技術投射到預先畫出的立體空間的表面上,該立體空間的中心為視點,以切換到VR播放模式。第三切換子模塊,用于當播放模式切換指令的類型為3D轉2D播放模式指令時,根據(jù)播放模式切換指令,將3D展示界面中的左眼圖像或右眼圖像鋪展開,以切換到2D播放模式。第四切換子模塊,用于當播放模式切換指令的類型為3D轉VR播放模式指令時,根據(jù)播放模式切換指令,提取3D展示界面中的左眼圖像或右眼圖像,將提取的圖像通過openGL紋理映射技術投射到預先畫出的立體空間的表面上,該立體空間的中心為視點,以切換到VR播放模式。第五切換子模塊,用于當播放模式切換指令的類型為VR轉2D播放模式指令時,根據(jù)播放模式切換指令,將VR展示的立體空間展開為2D展示界面,以切換到相應的2D播放模式。第六切換子模塊,用于播放模式切換指令的類型為VR轉3D播放模式指令時,根據(jù)播放模式切換指令,將VR展示的立體空間展開為2D展示界面,將2D展示界面作為中間界面,對中間界面進行平移而得到左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在同一界面,以切換到3D播放模式。
在另一種情況下,安裝有視頻播放器的便攜式電子設備帶有三軸陀螺儀,利用Unity3D,并結合C#程序語言來實現(xiàn)2D播放模式、3D播放模式和VR播放模式。此時,切換模塊2可包括:第七切換子模塊,用于當播放模式切換指令的類型為2D轉3D播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,兩個畫面分別作為左眼圖像和右眼圖像,之后將左眼圖像和右眼圖像同時展示在便攜式電子設備的同一界面,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到3D播放模式;第八切換子模塊,用于當播放模式切換指令的類型為2D轉VR播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,同時開啟對便攜式電子設備中三軸陀螺儀的響應,以切換到VR播放模式;第九切換子模塊,用于當播放模式切換指令的類型為3D轉2D播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的單個全景鏡頭,調節(jié)鏡頭的視角,顯示3D畫面的一半,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到2D播放模式;第十切換子模塊,用于當播放模式切換指令的類型為3D轉VR播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的一個全景鏡頭,調節(jié)兩個鏡頭的視角,以切換到VR播放模式;第十一切換子模塊,用于當播放模式切換指令的類型為VR轉2D播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的單個全景鏡頭,調節(jié)鏡頭的視角,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到2D播放模式;第十二切換子模塊,用于當播放模式切換指令的類型為VR轉3D播放模式指令時,根據(jù)播放模式切換指令,開啟虛擬場景中的兩個全景鏡頭,調節(jié)兩個鏡頭的視角,以顯示兩個相同的畫面,同時關閉對便攜式電子設備中三軸陀螺儀的響應,以切換到3D播放模式。
此外,本發(fā)明實施例提供的視頻播放器的視頻顯示系統(tǒng)還可包括:第二接收模塊,用于在播放器的當前播放模式下,在視頻播放過程中,接收用戶輸入的常規(guī)操作指令,該常規(guī)操作指令的定義如前所述,不贅述。
進一步地,若安裝有視頻播放器的便攜式電子設備帶有麥克風,則第二接收模塊可包括:第二除雜子模塊,用于對安裝有視頻播放器的便攜式電子設備中麥克風采集到的聲音信號進行除雜處理(即切除首尾端的靜音);第二分幀子模塊,用于通過移動窗函數(shù),對聲音信號進行分幀處理;第二特征提取子模塊,用于對分幀子模塊分幀后的每一幀的聲音信號進行聲學特征提取,得到相應的觀測序列;第二單詞識別子模塊,用于基于觀測序列,識別每一幀的狀態(tài),之后將狀態(tài)組合成音素,再將音素組合成單詞;第二指令識別子模塊,用于當在先識別出的單詞為開始指令時,控制除雜子模塊繼續(xù)執(zhí)行,直至識別出的單詞為結束指令后,停止從麥克風接收聲音信號,還用于當在先識別出的單詞不為開始指令時,不從麥克風接收聲音信號。
本發(fā)明實施例還提供了一種視頻播放器,包括如上所述的視頻播放器的視頻顯示系統(tǒng)。
綜上所述,本發(fā)明實施例提供的視頻播放器的視頻顯示方法及系統(tǒng)在現(xiàn)有的2D播放模式基礎上,融合了3D播放模式和VR播放模式,豐富了用戶的觀影體驗,同時通過重繪視頻展示界面,實現(xiàn)了不同播放模式的切換。此外,用戶輸入的播放模式切換指令和常規(guī)操作指令根據(jù)實際應用場景的不同,既可以語音方式輸入,還可以眼控方式輸入,方便了用戶使用,并且在以語音方式輸入時,為了避免視頻的聲音影響語音識別,設定了語音開始識別和結束識別功能,提高了可應用性。
本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序來控制相關的硬件完成,所述的程序可以在存儲于一計算機可讀取存儲介質中,所述的存儲介質,如ROM/RAM、磁盤、光盤等。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。