一種2d視頻與3d視頻轉(zhuǎn)換播放的方法及其裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及3D視頻處理領(lǐng)域,尤其涉及一種2D視頻與3D視頻轉(zhuǎn)換播放的方法及其裝置。
【背景技術(shù)】
[0002]現(xiàn)有的視頻網(wǎng)站普遍使用Flash播放器插件直接播放2D視頻文件。而觀看3D影片與2D影片相比,3D影片給用戶帶來一些更優(yōu)的體驗(yàn),例如影片中場(chǎng)景的立體感,以及給用戶帶來身臨其境的氛圍。由于不同的用戶有不同的觀影需求,因此,在目前龐大的用戶量基礎(chǔ)上,2D視頻與3D視頻的播放都有其相應(yīng)的市場(chǎng)空間和用戶群。
[0003]在現(xiàn)有技術(shù)中,當(dāng)用戶需要觀看3D視頻文件時(shí),通常有以下兩種方式:一是直接獲取3D視頻文件,然后通過具有3D影片播放功能的軟件加載該3D視頻文件進(jìn)行播放;另一種方式是,下載2D視頻文件,通過具有2D轉(zhuǎn)3D功能的軟件將該2D視頻文件轉(zhuǎn)換為3D視頻文件,然后通過具有3D影片播放功能的軟件加載該3D視頻文件進(jìn)行播放。由此可以看出,在現(xiàn)有的3D視頻文件較少的情況下,用戶只能通過先轉(zhuǎn)換再播放的方式觀看3D視頻,操作方式復(fù)雜,給用戶帶來較大的不便,同時(shí),這種方式需要在本地同時(shí)存儲(chǔ)2D視頻文件與3D視頻文件,浪費(fèi)了用戶的存儲(chǔ)空間,當(dāng)該轉(zhuǎn)換服務(wù)交由視頻文件提供商完成時(shí),也會(huì)造成對(duì)視頻文件提供商的服務(wù)器存儲(chǔ)空間的浪費(fèi),而且在視頻轉(zhuǎn)換過程中消耗大量的系統(tǒng)處理資源。
[0004]為了節(jié)省本地存儲(chǔ)空間,以及給用戶帶來觀影方面的快捷體驗(yàn),通常視頻文件提供商采用flash播放器直接向用戶播放視頻文件,而現(xiàn)有技術(shù)中,在網(wǎng)頁端采用flash播放器播放視頻文件通常只能實(shí)現(xiàn)一種效果,即播放2D視頻文件時(shí),只實(shí)現(xiàn)2D效果,若要實(shí)現(xiàn)3D效果,則只能通過播放3D視頻文件。
[0005]因此,現(xiàn)有技術(shù)中,將2D視頻轉(zhuǎn)換為3D視頻的觀影方式明顯存在播放方式不夠靈活、存儲(chǔ)資源占用過大、處理資源消耗過大的缺陷,同時(shí),視頻轉(zhuǎn)換操作給用戶帶來了較大的不便。
【發(fā)明內(nèi)容】
[0006]針對(duì)現(xiàn)有技術(shù)中,將2D視頻轉(zhuǎn)換為3D視頻需要借助于獨(dú)立的功能軟件,同時(shí),在轉(zhuǎn)換之前需要將2D視頻文件事先存儲(chǔ)在本地的存儲(chǔ)目錄,對(duì)系統(tǒng)的處理資源以及存儲(chǔ)資源消耗較大,以及沒有一種可直接通過網(wǎng)頁端實(shí)現(xiàn)2D視頻轉(zhuǎn)換為3D視頻的觀影方式的缺陷,本發(fā)明提供了一種2D視頻與3D視頻轉(zhuǎn)換播放的方法及其裝置。
[0007]本發(fā)明解決現(xiàn)有技術(shù)問題所采用的技術(shù)方案是構(gòu)造一種2D視頻與3D視頻轉(zhuǎn)換播放的方法,該方法包括以下步驟:
[0008]SI,在一網(wǎng)頁端建立視頻圖像監(jiān)聽進(jìn)程,通過所述視頻圖像監(jiān)聽進(jìn)程監(jiān)聽正在播放的2D視頻文件;
[0009]S2,獲取所述2D視頻文件的幀畫面信息;
[0010]S3,在所述網(wǎng)頁端建立幀畫面信息提取進(jìn)程,通過所述幀畫面信息提取進(jìn)程在所述幀畫面信息中分別提取紅色分量以及藍(lán)綠分量;
[0011]S4,在所述網(wǎng)頁端建立幀畫面信息合成進(jìn)程,通過所述幀畫面信息合成進(jìn)程將所述紅色分量以及所述藍(lán)綠分量按預(yù)設(shè)的方式合成為3D幀畫面,同時(shí),將所述3D幀畫面還原為3D視頻文件,并在所述網(wǎng)頁端播放所述3D視頻文件。
[0012]所述步驟SI之前還有步驟SO:
[0013]S0,在一網(wǎng)頁端通過Flash播放所述2D視頻文件,當(dāng)在播放過程中開啟2D視頻轉(zhuǎn)3D視頻時(shí),在所述網(wǎng)頁端建立所述視頻圖像監(jiān)聽進(jìn)程;
[0014]所述步驟S2還包括:
[0015]建立用于存儲(chǔ)所述紅色分量的第一數(shù)據(jù)對(duì)象;
[0016]建立用于存儲(chǔ)所述藍(lán)綠分量的第二數(shù)據(jù)對(duì)象;
[0017]建立用來存儲(chǔ)合成畫面的第三數(shù)據(jù)對(duì)象。
[0018]所述步驟S3具體包括:
[0019]所述幀畫面信息提取進(jìn)程包括用于在所述幀畫面信息中提取紅色分量的第一提取對(duì)象,以及用于在所述幀畫面信息中提取藍(lán)綠分量的第二提取對(duì)象;
[0020]建立用于分離紅色分量的第一濾鏡對(duì)象索引數(shù)組,通過所述第一濾鏡對(duì)象索引數(shù)組以及所述第一提取對(duì)象在所述幀畫面信息中提取紅色分量,并將所述紅色分量存儲(chǔ)在所述第一數(shù)據(jù)對(duì)象內(nèi);
[0021]建立用于分離藍(lán)綠分量的第二濾鏡對(duì)象索引數(shù)組,通過所述第二濾鏡對(duì)象索引數(shù)組以及所述第二提取對(duì)象在所述幀畫面信息中提取藍(lán)綠分量,并將所述藍(lán)綠分量存儲(chǔ)在所述第二數(shù)據(jù)對(duì)象內(nèi);
[0022]所述步驟S4具體包括:
[0023]所述幀畫面信息合成進(jìn)程包括用于顯示3D畫面的顯示對(duì)象,以及用于計(jì)算轉(zhuǎn)換3D畫面的計(jì)算對(duì)象;
[0024]通過所述計(jì)算對(duì)象將存儲(chǔ)在所述第一數(shù)據(jù)對(duì)象中的紅色分量做一預(yù)設(shè)量的偏移,將偏移后的紅色分量合成到所述藍(lán)綠分量?jī)?nèi),并將合成后的所述3D幀畫面存儲(chǔ)到所述第三數(shù)據(jù)對(duì)象內(nèi);
[0025]在所述第三數(shù)據(jù)對(duì)象中加入所述顯示對(duì)象,則所述3D幀畫面還原為3D視頻文件,所述網(wǎng)頁端播放所述3D視頻文件;
[0026]在所述第三數(shù)據(jù)對(duì)象中去除所述顯示對(duì)象,則所述網(wǎng)頁端播放所述2D視頻文件。
[0027]所述裝置包括以下模塊:
[0028]監(jiān)聽模塊,用于在一網(wǎng)頁端建立視頻圖像監(jiān)聽進(jìn)程,通過所述視頻圖像監(jiān)聽進(jìn)程監(jiān)聽正在播放的2D視頻文件;
[0029]獲取模塊,用于獲取所述2D視頻文件的幀畫面信息;
[0030]提取模塊,用于在所述網(wǎng)頁端建立幀畫面信息提取進(jìn)程,通過所述幀畫面信息提取進(jìn)程在所述幀畫面信息中分別提取紅色分量以及藍(lán)綠分量;
[0031]合成模塊,用于在所述網(wǎng)頁端建立幀畫面信息合成進(jìn)程,通過所述幀畫面信息合成進(jìn)程將所述紅色分量以及所述藍(lán)綠分量按預(yù)設(shè)的方式合成為3D幀畫面,同時(shí),將所述3D幀畫面還原為3D視頻文件,并在所述網(wǎng)頁端播放所述3D視頻文件。
[0032]所述監(jiān)聽模塊還用于在一網(wǎng)頁端通過Flash播放所述2D視頻文件,當(dāng)在播放過程中開啟2D視頻轉(zhuǎn)3D視頻時(shí),在所述網(wǎng)頁端建立所述視頻圖像監(jiān)聽進(jìn)程;
[0033]所述獲取模塊還包括數(shù)據(jù)對(duì)象初始化單元,所述數(shù)據(jù)對(duì)象初始化單元用于:
[0034]建立用于存儲(chǔ)所述紅色分量的第一數(shù)據(jù)對(duì)象;建立用于存儲(chǔ)所述藍(lán)綠分量的第二數(shù)據(jù)對(duì)象;建立用來存儲(chǔ)合成畫面的第三數(shù)據(jù)對(duì)象。
[0035]所述提取模塊包括分量提取單元以及濾鏡對(duì)象索引數(shù)組單元,其中,
[0036]所述分量提取單元用于建立用于在所述幀畫面信息中提取紅色分量的第一提取對(duì)象,以及用于在所述幀畫面信息中提取藍(lán)綠分量的第二提取對(duì)象;
[0037]所述濾鏡對(duì)象索引數(shù)組單元用于建立用于分離紅色分量的第一濾鏡對(duì)象索引數(shù)組,通過所述第一濾鏡對(duì)象索引數(shù)組以及所述第一提取對(duì)象在所述幀畫面信息中提取紅色分量,并將所述紅色分量存儲(chǔ)在所述第一數(shù)據(jù)對(duì)象內(nèi);
[0038]所述濾鏡對(duì)象索引數(shù)組單元還用于建立用于分離藍(lán)綠分量的第二濾鏡對(duì)象索引數(shù)組,通過所述第二濾鏡對(duì)象索引數(shù)組以及所述第二提取對(duì)象在所述幀畫面信息中提取藍(lán)綠分量,并將所述藍(lán)綠分量存儲(chǔ)在所述第二數(shù)據(jù)對(duì)象內(nèi);
[0039]所述合成模塊包括用于顯示3D畫面的顯示對(duì)象單元以及用于計(jì)算轉(zhuǎn)換3D畫面的計(jì)算對(duì)象單元,其中,
[0040]所述計(jì)算對(duì)象單元將存儲(chǔ)在所述第一數(shù)據(jù)對(duì)象中的紅色分量做一預(yù)設(shè)量的偏移,將偏移后的紅色分量合成到所述藍(lán)綠分量?jī)?nèi),并將合成后的所述3D幀畫面存儲(chǔ)到所述第三數(shù)據(jù)對(duì)象內(nèi);
[0041]顯示對(duì)象單元在所述第三數(shù)據(jù)對(duì)象中加入所述顯示對(duì)象,將所述3D幀畫面還原為3D視頻文件,所述網(wǎng)頁端播放所述3D視頻文件;
[0042]顯示對(duì)象單元還用于在所述第三數(shù)據(jù)對(duì)象中去除所述顯示對(duì)象,則所述網(wǎng)頁端播放所述2D視頻文件。
[0043]實(shí)施本發(fā)明,在網(wǎng)頁端實(shí)現(xiàn)了 2D視頻與3D視頻之間的轉(zhuǎn)換,視頻轉(zhuǎn)換不需要借助于獨(dú)立的功能軟件,同時(shí),在轉(zhuǎn)換之前不需要將2D視頻文件事先存儲(chǔ)在本地的存儲(chǔ)目錄,節(jié)省了系統(tǒng)的處理資源以及存儲(chǔ)資源,實(shí)現(xiàn)了網(wǎng)頁端2D視頻與3D視頻之間的無縫快速切換。
【附圖說明】
[0044]下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,附圖中:
[0045]圖1是本發(fā)明較佳實(shí)施例提供的2D視頻與3D視頻轉(zhuǎn)換播放的方法流程圖;
[0046]圖2是本發(fā)明另一實(shí)施例提供的2D視頻與3D視頻轉(zhuǎn)換播放的方法流程圖;
[0047]圖3是本發(fā)明較佳實(shí)施例提供的2D視頻與3D視頻轉(zhuǎn)換播放裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0048]圖1是本發(fā)明較佳實(shí)施例提供的2D視頻與3D視頻轉(zhuǎn)換播放的方法流程圖。方法包括以下步驟:
[0049]SI,在一網(wǎng)頁端建立視頻圖像監(jiān)聽進(jìn)程,通過所述視頻圖像監(jiān)聽進(jìn)程監(jiān)聽正在播放的2D視頻文件。目前Flash網(wǎng)頁播放器的3D影像處理基本是采用互補(bǔ)色技術(shù),本發(fā)明即采用互補(bǔ)色技術(shù)紅藍(lán)模式作為實(shí)施例,但不限于此,應(yīng)可理解,下文描述的原理和步驟稍作變換也適用于基于互補(bǔ)色技術(shù)的其他模式。在網(wǎng)頁端播放2D視頻時(shí),采用常規(guī)的Flash播放技術(shù),通過 Netstream.play(url)和 Vide0.attachNetStream (Netstream)方法來進(jìn)行網(wǎng)頁端的視頻播放。其中,首先通過Video對(duì)象顯示需要播放的視頻內(nèi)容,然后創(chuàng)建一個(gè)Sprite對(duì)象videoSp來加載Video對(duì)象并設(shè)置視頻畫面的尺寸,最后將videoSp顯示在網(wǎng)頁端的顯示界面上。
[0050]S2,獲取所述2D視頻文件的幀畫面信息。例如,創(chuàng)建一個(gè)類型為Event.ENTER,FRAME的監(jiān)聽enterFrameHandler來轉(zhuǎn)換每一巾貞的3D畫面。
[0051]S3,在所述網(wǎng)頁端