本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種視頻錄制方法及裝置、圖形處理器及電子設(shè)備。
背景技術(shù):
隨著通信技術(shù)和電子設(shè)備的發(fā)展,各種電子設(shè)備例如手機、智能手機、平板電腦已經(jīng)成為了人們工作和生活中不可或缺的一部分。且隨著移動終端日益普及,通過電子設(shè)備錄制視頻的功能給用戶帶來了極大地方便。
目前,利用電子設(shè)備進(jìn)行視頻錄制,錄制得到的視頻均是正常速度的,若需要得到加快播放或慢速播放的視頻,則需要對正常速度的視頻進(jìn)行后期處理,例如,通過視頻編輯軟件對該正常速度的視頻進(jìn)行處理,得到加快播放或慢速播放的視頻。因此,現(xiàn)有技術(shù)存在以下缺陷:無法通過一次錄制得到不同速度的視頻。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提供一種視頻錄制方法及裝置、圖形處理器及電子設(shè)備,旨在解決現(xiàn)有技術(shù)中無法通過一次錄制得到不同速度的視頻的技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明第一方面提供一種視頻錄制方法,所述方法包括:
響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
按照多個所述速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
實時獲取圖像數(shù)據(jù),利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
為實現(xiàn)上述目的,本發(fā)明第二方面提供一種視頻錄制裝置,該視頻錄制裝置包括:
模式獲取模塊,用于響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
分配模塊,用于按照多個所述速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
數(shù)據(jù)獲取模塊,用于實時獲取圖像數(shù)據(jù);
處理模塊,用于利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
為實現(xiàn)上述目的,本發(fā)明第三方面提供一種圖形處理器,所述圖像處理器用于調(diào)用并運行第二方面提供的視頻錄制裝置。
為實現(xiàn)上述目的,本發(fā)明第三方面提供一種電子設(shè)備,所述電子設(shè)備包括上述第三方面提供的圖形處理器。
本發(fā)明提供一種視頻錄制方法及裝置、圖形處理器及電子設(shè)備,其中方法包括:響應(yīng)于檢測到的視頻錄制指令,獲取該視頻錄制指令中包含的多個速度模式,按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,實時獲取圖像數(shù)據(jù),利用已創(chuàng)建的渲染顯示線程對該圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用視頻錄制線程根據(jù)對應(yīng)的速度模式和該圖像數(shù)據(jù)進(jìn)行視頻錄制。相對于現(xiàn)有技術(shù),本發(fā)明將渲染顯示與視頻錄制分開來,由不同的線程實現(xiàn),使得視頻錄制過程和渲染顯示過程互相獨立,且通過為多個不同速度模式分配對應(yīng)的視頻錄制線程,使得能夠在一次錄制中得到多個不同速度模式的視頻。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例中電子設(shè)備的結(jié)構(gòu)示意圖;
圖2為本發(fā)明實施例中視頻錄制方法的一流程示意圖;
圖3為本發(fā)明實施例中視頻錄制方法的另一流程示意圖;
圖4為本發(fā)明實施例中視頻錄制方法的另一流程示意圖;
圖5為本發(fā)明實施例中視頻錄制方法的另一流程示意圖;
圖6為本發(fā)明實施例中視頻錄制裝置的一示意圖;
圖7為本發(fā)明實施例中視頻錄制裝置的另一示意圖;
圖8為本發(fā)明實施例中視頻錄制裝置的另一示意圖;
圖9為本發(fā)明實施例中視頻錄制時顯示界面顯示速度模式的示意圖。
具體實施方式
為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
由于現(xiàn)有技術(shù)中存在無法通過一次錄制得到不同速度的視頻的技術(shù)問題。
為了解決上述技術(shù)問題,本發(fā)明提出一種視頻錄制方法,該方法將渲染顯示與視頻錄制分開來,由不同的線程實現(xiàn),使得視頻錄制過程和渲染顯示過程互相獨立,且通過為多個不同速度模式分配對應(yīng)的視頻錄制線程,使得能夠在一次錄制中得到多個不同速度模式的視頻。
在本發(fā)明實施例中,上述的視頻錄制方法是由視頻錄制裝置實現(xiàn)的,該視頻錄制裝置實際上是程序模塊,由圖形處理器(graphicsprocessingunit,gpu)調(diào)用及執(zhí)行。
進(jìn)一步的,上述的gpu屬于電子設(shè)備,請參閱圖1,為本發(fā)明實施例中電子設(shè)備的結(jié)構(gòu)示意圖,該電子設(shè)備包括通過系統(tǒng)總線連接的處理器、gpu、非易失性存儲介質(zhì)、內(nèi)存儲器、網(wǎng)絡(luò)接口、顯示屏和輸入裝置。其中,電子設(shè)備的非易失性存儲介質(zhì)存儲有操作系統(tǒng),及上述的視頻錄制裝置,該視頻錄制裝置用于實現(xiàn)一種視頻錄制方法,其中,gpu可調(diào)用及執(zhí)行存儲在非易失性存儲介質(zhì)中的視頻錄制裝置,以實現(xiàn)視頻錄制。該處理器用于提供計算和控制能力,支撐整個電子設(shè)備的運行。電子設(shè)備中的內(nèi)存儲器為非易失性存儲介質(zhì)中的視頻錄制裝置的運行提供環(huán)境,該內(nèi)存儲器中可存儲有計算機可讀指令,該計算機可讀指令被處理器執(zhí)行時,可使得處理器觸發(fā)gpu執(zhí)行一種視頻錄制方法,即調(diào)用并運行視頻錄制裝置。網(wǎng)絡(luò)接口用于與其他設(shè)備進(jìn)行網(wǎng)絡(luò)通信。電子設(shè)備的顯示屏可以是液晶顯示屏或者電子墨水顯示屏等,輸入裝置可以是顯示屏上覆蓋的觸摸層,也可以是電子設(shè)備外殼上設(shè)置的按鍵、軌跡球或觸控版,也可以是外接的鍵盤、觸控板或鼠標(biāo)等。該電子設(shè)備可以是手機、個人計算機、平板電腦或服務(wù)器等。本領(lǐng)域技術(shù)人員可以理解,圖1中示出的結(jié)構(gòu),僅僅是與本申請方案相關(guān)的部分結(jié)構(gòu)的框圖,并不構(gòu)成對本申請方案所應(yīng)用于其他的電子設(shè)備的限定,具體的電子設(shè)備可以包括比圖中所示更多或更少的部件,或者組合某些部件,或者具有不同的部件布置。
其中,電子設(shè)備可以但不限于包括:相機、錄像機、智能手機、筆記本、平板電腦及穿戴智能設(shè)備等。
在本發(fā)明實施例中,通過基于gpu調(diào)用并運行視頻錄制裝置,使得能夠發(fā)揮出gpu在電子設(shè)備中的性能以實現(xiàn)渲染顯示及視頻錄制。
下面將基于圖1所示的電子設(shè)備的結(jié)構(gòu)詳細(xì)描述本發(fā)明實施例中的技術(shù)方案。
請參閱圖2,為本發(fā)明實施例中視頻錄制方法的流程示意圖,該視頻錄制方法包括:
步驟201、響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
步驟202、按照獲取的多個速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
在本發(fā)明實施例中,速度模式是指視頻播放時的速度,該速度模式可以是正常模式,也可以是2倍模式、3倍模式、4倍模式等等加快模式,還可以是二分之一模式、三分之一模式、四分之一模式等等慢速模式,其中,正常模式下視頻的播放速度是30fps,即每秒播放30個視頻幀,加快模式及慢速模式則是相對于正常模式而言的,通常是正常模式的倍速,例如,速度=正常速度*倍速,該倍速可以是2倍、3倍、4倍等等,且該倍數(shù)為整數(shù)時,則基于該倍數(shù)得到的視頻的播放速度較快,在相同的時間內(nèi)相對于正常模式播放的視頻幀多,屬于加快模式,例如,2倍模式1秒內(nèi)播放的視頻幀的個數(shù)為60。在倍數(shù)為小于1的倍數(shù)時,基于該倍數(shù)得到的視頻的播放速度較慢,在相同的時間內(nèi)相對于正常模式播放的視頻幀少,例如,二分之一模式1秒內(nèi)播放的視頻幀的個數(shù)為15。
為更好的理解本發(fā)明實施例中的技術(shù)方案,以智能手機為例描述速度模式的設(shè)置過程,具體的:用戶在需要錄制視頻時,通過點擊智能手機的顯示屏上的攝像頭圖標(biāo)的方式,以便智能手機啟動攝像頭應(yīng)用程序,且用戶還可以通過點擊攝像界面上的設(shè)置按鈕進(jìn)入速度模式的選擇界面,該選擇界面上將顯示上述的包含正常模式、多種加快模式及多種慢速模式在內(nèi)的速度模式,用戶可以通過點擊的方式選擇此次錄制視頻,需要錄制的視頻的速度模式,例如,用戶選擇正常模式、2倍模式及二分之一模式。通過上述方式可以完成多個速度模式的設(shè)置,此外,用戶還可以通過默認(rèn)設(shè)置的方式預(yù)先設(shè)置好每次錄制視頻時的速度模式。
在本發(fā)明實施例中,用戶可以通過點擊錄制按鈕的方式開始視頻的錄制,以生成視頻錄制指令,視頻錄制裝置將響應(yīng)該視頻錄制指令,獲取該視頻錄制指令中的多個速度模式。該多個速度模式可以是用戶單次設(shè)置的,也可以是默認(rèn)設(shè)置的速度模式。且在獲取到多個速度模式之后,將按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程。
其中,每一個速度模式都對應(yīng)著一個視頻錄制線程,該視頻錄制線程是用于按照其對應(yīng)的速度模式進(jìn)行視頻錄制的。例如,若2倍模式對應(yīng)的視頻錄制線程a,則該視頻錄制線程a錄制的視頻為2倍模式的視頻。
其中,分配的視頻錄制線程可以是視頻錄制線程隊列中已有的,也可以是新創(chuàng)建的,具體的,在分配視頻錄制線程時,優(yōu)先將視頻錄制線程隊列中已有的視頻錄制線程分配給速度模式,若該視頻錄制線程隊列中的視頻錄制線程的數(shù)量不夠,則創(chuàng)建新的視頻錄制線程,并將新創(chuàng)建的視頻錄制線程分配給速度模式,以使得每一個速度模式都有與其一一對應(yīng)的視頻錄制線程。
步驟203、實時獲取圖像數(shù)據(jù),利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
在本發(fā)明實施例中,攝像頭將實時獲取圖像數(shù)據(jù),并將該圖像數(shù)據(jù)發(fā)送給視頻錄制裝置,該視頻錄制裝置在獲取到圖像數(shù)據(jù)之后,利用已創(chuàng)建的渲染顯示線程對該圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個視頻錄制線程根據(jù)對應(yīng)的速度模式和圖像數(shù)據(jù)進(jìn)行視頻錄制。其中,每一個視頻錄制線程都將錄制得到一個與其速度模式匹配的視頻。
在本發(fā)明實施例中,視頻錄制裝置按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,實時獲取圖像數(shù)據(jù),利用已創(chuàng)建的渲染顯示線程對該圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用視頻錄制線程根據(jù)對應(yīng)的速度模式和該圖像數(shù)據(jù)進(jìn)行視頻錄制。相對于現(xiàn)有技術(shù),本發(fā)明將渲染顯示與視頻錄制分開來,由不同的線程實現(xiàn),使得視頻錄制過程和渲染顯示過程互相獨立,且通過為多個不同速度模式分配對應(yīng)的視頻錄制線程,使得能夠在一次錄制中得到多個不同速度模式的視頻。
請參閱圖3,為本發(fā)明實施例中視頻錄制方法的另一流程示意圖,該視頻錄制方法包括:
步驟301、響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
步驟302、按照獲取的多個速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
步驟303、實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的渲染顯示線程,利用所述渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行紋理渲染并顯示;及采用輪詢的方式調(diào)用并運行所述視頻錄制線程,利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從所述圖像數(shù)據(jù)中獲取及緩存視頻幀,以進(jìn)行視頻錄制。
在本發(fā)明實施例中,步驟301與302分別與圖2所示實施例中步驟201及步驟202描述的內(nèi)容相似,此處不做贅述。
在本發(fā)明實施例中,在開始錄制之后,視頻錄制裝置將先為每個速度模式分配對應(yīng)的視頻錄制線程,并實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的渲染顯示線程及采用輪詢的方式調(diào)用并運行視頻錄制線程,使得能過利用該渲染顯示線程對圖像數(shù)據(jù)進(jìn)行紋理渲染并顯示,及能夠利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從圖像數(shù)據(jù)中獲取及緩存視頻幀,以實現(xiàn)視頻錄制。
其中,該渲染顯示線程可以是已有的線程,也可以是新創(chuàng)建的線程,具體的,視頻錄制裝置在開始錄制后,將確認(rèn)是否已有渲染顯示線程,若有,則表明可調(diào)用該已創(chuàng)建的渲染顯示線程,若沒有,則新創(chuàng)建渲染顯示線程,將該新創(chuàng)建的渲染顯示線程作為已創(chuàng)建的渲染顯示線程進(jìn)行調(diào)用。
在本發(fā)明實施例中,渲染顯示與視頻錄制將在不同的線程上實現(xiàn),是相互獨立的過程,渲染顯示線程通過對圖像數(shù)據(jù)進(jìn)行紋理渲染,并將渲染后的圖像數(shù)據(jù)顯示在顯示界面上,使得用戶在錄制視頻的過程中,能夠觀看到錄制的正常速度的視頻。
其中,視頻錄制裝置還將調(diào)用并運行已分配的多個視頻錄制線程,并采用輪詢的方式調(diào)用并運行視頻錄制線程,且利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從圖像數(shù)據(jù)中獲取及緩存視頻幀,以完成視頻錄制。例如,若有3個視頻錄制線程,分別為線程1,其對應(yīng)的速度模式是正常模式,線程2,其對應(yīng)的速度模式是2倍模式,線程3,其對應(yīng)的速度模式是二分之一模式,則視頻錄制裝置對于每一次實時獲取的圖像數(shù)據(jù),都將分別調(diào)用并運行該3個線程,以每次錄制1秒的視頻為例,視頻錄制裝置調(diào)用并運行線程1,通過該線程1按照正常模式從圖像數(shù)據(jù)中獲取30幀視頻幀,將該30幀視頻幀作為1s播放的視頻幀,緩存至預(yù)置的第一路徑下,接著調(diào)用并運行線程2,通過該線程2按照2倍模式從圖像數(shù)據(jù)中獲取60幀視頻幀,將該60幀視頻幀作為1s播放的視頻幀,緩存至預(yù)置的第二路徑下,并繼續(xù)調(diào)用并運行線程3,通過線程3按照二分之一模式從圖像數(shù)據(jù)中獲取15幀視頻幀,將該15幀視頻幀作為1s播放的視頻幀,緩存至預(yù)置的第三路徑下,若未完成視頻錄制,則返回繼續(xù)調(diào)用并運行線程1,其中,線程的調(diào)用順序為線程1-線程2-線程3,并返回線程1,通過這種輪詢方式,實現(xiàn)三種不同的速度模式的視頻的錄制。
可以理解的是,在本發(fā)明實施例中,在結(jié)束視頻錄制之后,視頻錄制裝置將不同路徑下的視頻幀處理為視頻,并顯示提示信息,該提示信息用于提示是否保存錄制的視頻,若用戶點擊保存按鈕,則將已錄制的視頻保存至預(yù)置路徑下或用戶選擇的路徑下。其中,由于每一個視頻錄制線程都能夠得到一個獨立的視頻,因此,通過為每一個速度模式分配一個視頻錄制線程的方式,使得能夠得到不同速度模式的視頻。
在本發(fā)明實施例中,視頻錄制裝置按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,并實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的渲染顯示顯示,利用該渲染顯示線程對圖像數(shù)據(jù)進(jìn)行紋理渲染并顯示,同時,采用輪詢的方式調(diào)用并運行視頻錄制線程,利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從圖像數(shù)據(jù)中獲取及緩存視頻幀,以進(jìn)行視頻錄制。通過將視頻錄制與渲染顯示分開處理,使得能夠獨立完成視頻錄制過程,且通過為每一種視頻模式分配一個視頻錄制線程,并采用輪詢方式調(diào)用并運行視頻錄制線程,使得每一個視頻線程都能夠按照其對應(yīng)的速度模式獲取及緩存視頻幀,完成相應(yīng)的速度模式的視頻的錄制,使得在一次錄制中得到多個不同速度模式的視頻成為可能。
請參閱圖4,為本發(fā)明實施例中視頻錄制方法的另一流程示意圖,該視頻錄制方法包括:
步驟401、若檢測到美化效果設(shè)置操作,則獲取美化效果參數(shù);
步驟402、響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
步驟403、按照獲取的多個速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
步驟404、實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的美化線程,通過所述美化線程利用所述美化效果參數(shù)對實時獲取到的圖像數(shù)據(jù)進(jìn)行美化處理,得到美化后的圖像數(shù)據(jù);
步驟405、利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
在本發(fā)明實施例中,在開始錄制視頻之前,用戶可設(shè)置錄制視頻時的美化效果,且視頻錄制裝置在檢測到美化效果設(shè)置操作之后,將獲取美化效果參數(shù),其中,該美化效果參數(shù)是預(yù)先設(shè)置的。
在開始錄制視頻后,視頻錄制裝置按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的美化線程,通過該美化線程利用美化效果參數(shù)對實時獲取到的圖像數(shù)據(jù)進(jìn)行美化處理,得到美化后的圖像數(shù)據(jù)。該美化后的圖像數(shù)據(jù)將同時給渲染顯示線程,及多個視頻錄制線程,利用已創(chuàng)建的渲染顯示線程對美化后的圖像數(shù)據(jù)進(jìn)行渲染及顯示,使得在顯示界面上能夠顯示具有美化效果的畫面,且利用視頻錄制線程根據(jù)對應(yīng)的速度模式和美化后的圖像數(shù)據(jù)進(jìn)行視頻錄制,使得不僅能夠?qū)崿F(xiàn)視頻錄制,還能夠得到具有美化效果的視頻。
在本發(fā)明實施例中,用戶可通過美化效果設(shè)置操作設(shè)置錄制及顯示的畫面的美化效果,且在開始錄制之后,利用美化效果參數(shù)對實時獲取的圖像數(shù)據(jù)進(jìn)行美化處理,并將美化后的圖像數(shù)據(jù)給渲染顯示線程及視頻錄制線程,使得渲染顯示線程能夠利用該美化后的圖像數(shù)據(jù)進(jìn)行渲染及顯示,得到具有美化效果的畫面,且視頻錄制線程也能夠利用美化后的圖像數(shù)據(jù)進(jìn)行視頻錄制,得到具有美化效果的視頻,為用戶提供了更加豐富的使用體驗。
請參閱圖5,為本發(fā)明實施例中視頻錄制方法的流程示意圖,該視頻錄制方法包括:
步驟501、若檢測到畫面旋轉(zhuǎn)設(shè)置操作,則獲取畫面旋轉(zhuǎn)參數(shù);
步驟502、響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
步驟503、按照獲取的多個速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
步驟504、實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的畫面旋轉(zhuǎn)線程,通過所述畫面旋轉(zhuǎn)線程利用所述畫面旋轉(zhuǎn)參數(shù)對所述圖像數(shù)據(jù)進(jìn)行畫面旋轉(zhuǎn)處理,得到畫面旋轉(zhuǎn)后的圖像數(shù)據(jù);
步驟505、利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
在本發(fā)明實施例中,在開始錄制視頻之前,用戶可以設(shè)置錄制視頻時的畫面旋轉(zhuǎn),例如,從正常畫面旋轉(zhuǎn)為倒立畫面,從正常畫面旋轉(zhuǎn)90度等等,以滿足用戶特殊的視頻錄制需求。
其中,若視頻錄制裝置檢測到畫面旋轉(zhuǎn)設(shè)置操作,則獲取畫面旋轉(zhuǎn)參數(shù),且在開始錄制之后,按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的畫面旋轉(zhuǎn)線程,通過該畫面旋轉(zhuǎn)線程利用畫面旋轉(zhuǎn)參數(shù)對圖像數(shù)據(jù)進(jìn)行畫面旋轉(zhuǎn)處理,得到畫面旋轉(zhuǎn)后的圖像數(shù)據(jù),并利用已創(chuàng)建的渲染顯示線程對旋轉(zhuǎn)處理后的圖像數(shù)據(jù)進(jìn)行渲染及顯示,利用多個視頻錄制線程根據(jù)對應(yīng)的速度模式和旋轉(zhuǎn)處理后的圖像數(shù)據(jù)進(jìn)行視頻錄制。
在本發(fā)明實施例中,用戶可通過執(zhí)行畫面旋轉(zhuǎn)設(shè)置操作,完成畫面旋轉(zhuǎn)參數(shù)的設(shè)置,使得渲染顯示線程能夠顯示畫面旋轉(zhuǎn)后的圖像,且使得多個視頻錄制線程能夠錄制得到不同速度模式的且畫面旋轉(zhuǎn)后的視頻,滿足用戶的錄制需求。
可以理解的是,用戶在錄制視頻之前,可以先后執(zhí)行美化效果設(shè)置操作及畫面旋轉(zhuǎn)設(shè)置操作,使得在開始錄制之后,視頻錄制裝置能夠利用美化效果參數(shù)及畫面旋轉(zhuǎn)參數(shù)對實時獲取到的圖像數(shù)據(jù)進(jìn)行處理,得到具有美化效果且畫面旋轉(zhuǎn)后的圖像數(shù)據(jù),使得渲染顯示線程利用該圖像數(shù)據(jù)進(jìn)行渲染,且顯示具有美化效果及畫面旋轉(zhuǎn)后的畫面,使得多個視頻錄制線程能夠得到不同速度模式的、具有美化效果且畫面旋轉(zhuǎn)后的視頻。
請參閱圖6,為本發(fā)明實施例中視頻錄制裝置的示意圖,該視頻錄制裝置包括:
模式獲取模塊601,用于響應(yīng)于檢測到的視頻錄制指令,獲取所述視頻錄制指令中包含的多個速度模式;
分配模塊602,用于按照獲取的多個速度模式,分別為每個所述速度模式分配對應(yīng)的視頻錄制線程;
數(shù)據(jù)獲取模塊603,用于實時獲取圖像數(shù)據(jù);
處理模塊604,用于利用已創(chuàng)建的渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用多個所述視頻錄制線程根據(jù)對應(yīng)的速度模式和所述圖像數(shù)據(jù)進(jìn)行視頻錄制。
在本發(fā)明實施例中,速度模式是指視頻播放時的速度,該速度模式可以正常模式,也可以是2倍模式、3倍模式、4倍模式等等加快模式,還可以是二分之一模式、三分之一模式、四分之一模式等等慢速模式,其中,正常模式下視頻的播放速度是30fps,即每秒播放30個視頻幀,加快模式及慢速模式則是相對于正常模式而言的,通常是正常模式的倍速,例如,速度=正常速度*倍速,該倍速可以是2倍、3倍、4倍等等,且該倍數(shù)為整數(shù)時,則基于該倍數(shù)得到的視頻的播放速度較快,在相同的時間內(nèi)相對于正常模式播放的視頻幀多,屬于加快模式,例如,2倍模式1秒內(nèi)播放的視頻幀的個數(shù)為60。在倍數(shù)為小于1的倍數(shù)時,基于該倍數(shù)得到的視頻的播放速度較慢,在相同的時間內(nèi)相對于正常模式播放的視頻幀少,例如,二分之一模式1秒內(nèi)播放的視頻幀的個數(shù)為15。
其中,每一個速度模式都對應(yīng)著一個視頻錄制線程,該視頻錄制線程是用于按照其對應(yīng)的速度模式進(jìn)行視頻錄制的。例如,若2倍模式對應(yīng)的視頻錄制線程a,則該視頻錄制線程a錄制的視頻為2倍模式的視頻。
在本發(fā)明實施例中,視頻錄制裝置按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,實時獲取圖像數(shù)據(jù),利用已創(chuàng)建的渲染顯示線程對該圖像數(shù)據(jù)進(jìn)行渲染及顯示,及利用視頻錄制線程根據(jù)對應(yīng)的速度模式和該圖像數(shù)據(jù)進(jìn)行視頻錄制。相對于現(xiàn)有技術(shù),本發(fā)明將渲染顯示與視頻錄制分開來,由不同的線程實現(xiàn),使得視頻錄制過程和渲染顯示過程互相獨立,且通過為多個不同速度模式分配對應(yīng)的視頻錄制線程,使得能夠在一次錄制中得到多個不同速度模式的視頻。
進(jìn)一步的,在圖6所示實施例中,處理模塊604具體用于:
調(diào)用并運行已創(chuàng)建的渲染顯示線程,利用所述渲染顯示線程對所述圖像數(shù)據(jù)進(jìn)行紋理渲染并顯示;及采用輪詢的方式調(diào)用并運行所述視頻錄制線程,利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從所述圖像數(shù)據(jù)中獲取及緩存視頻幀,以進(jìn)行視頻錄制。
在本發(fā)明實施例中,視頻錄制裝置按照獲取的多個速度模式,分別為每個速度模式分配對應(yīng)的視頻錄制線程,并實時獲取圖像數(shù)據(jù),調(diào)用并運行已創(chuàng)建的渲染顯示顯示,利用該渲染顯示線程對圖像數(shù)據(jù)進(jìn)行紋理渲染并顯示,同時,采用輪詢的方式調(diào)用并運行視頻錄制線程,利用調(diào)用到的視頻錄制線程按照對應(yīng)的速度模式從圖像數(shù)據(jù)中獲取及緩存視頻幀,以進(jìn)行視頻錄制。通過將視頻錄制與渲染顯示分開處理,使得能夠獨立完成視頻錄制過程,且通過為每一種視頻模式分配一個視頻錄制線程,并采用輪詢方式調(diào)用并運行視頻錄制線程,使得每一個視頻線程都能夠按照其對應(yīng)的速度模式獲取及緩存視頻幀,完成相應(yīng)的速度模式的視頻的錄制,使得在一次錄制中得到多個不同速度模式的視頻成為可能。
請參閱圖7,為本發(fā)明實施例中視頻錄制裝置的示意圖,該視頻錄制裝置包括:如圖6所示實施例中的模式獲取模塊601、分配模塊602、數(shù)據(jù)獲取模塊603及處理模塊604,且與圖6所示實施例中描述的內(nèi)容相似,此處不做贅述。
在本發(fā)明實施例中,該視頻錄制裝置還包括:
第一獲取模塊701,用于若檢測到美化效果設(shè)置操作,則獲取美化效果參數(shù);
美化處理模塊702,用于在所述數(shù)據(jù)獲取模塊之后,調(diào)用并運行已創(chuàng)建的美化線程,通過所述美化線程利用所述美化效果參數(shù)對實時獲取到的圖像數(shù)據(jù)進(jìn)行美化處理,得到美化后的圖像數(shù)據(jù)。
在本發(fā)明實施例中,用戶可通過美化效果設(shè)置操作設(shè)置錄制及顯示的畫面的美化效果,且在開始錄制之后,利用美化效果參數(shù)對實時獲取的圖像數(shù)據(jù)進(jìn)行美化處理,并將美化后的圖像數(shù)據(jù)給渲染顯示線程及視頻錄制線程,使得渲染顯示線程能夠利用該美化后的圖像數(shù)據(jù)進(jìn)行渲染及顯示,得到具有美化效果的畫面,且視頻錄制線程也能夠利用美化后的圖像數(shù)據(jù)進(jìn)行視頻錄制,得到具有美化效果的視頻,為用戶提供了更加豐富的使用體驗。
請參閱圖8,位本發(fā)明實施例中視頻錄制裝置的示意圖,該視頻錄制裝置包括:如圖6所示所示實施例中的模式獲取模塊601、分配模塊602、數(shù)據(jù)獲取模塊603及處理模塊604,且與圖6所示實施例中描述的內(nèi)容相似,此處不做贅述。
在本發(fā)明實施例中,該視頻錄制裝置還包括:
第二獲取模塊801,用于若檢測到畫面旋轉(zhuǎn)設(shè)置操作,則獲取畫面旋轉(zhuǎn)參數(shù);
旋轉(zhuǎn)處理模塊802,用于在所述數(shù)據(jù)獲取模塊之后,調(diào)用并運行已創(chuàng)建的畫面旋轉(zhuǎn)線程,通過所述畫面旋轉(zhuǎn)線程利用所述畫面旋轉(zhuǎn)參數(shù)對所述圖像數(shù)據(jù)進(jìn)行畫面旋轉(zhuǎn)處理,得到畫面旋轉(zhuǎn)后的圖像數(shù)據(jù)。
在本發(fā)明實施例中,用戶可通過執(zhí)行畫面旋轉(zhuǎn)設(shè)置操作,完成畫面旋轉(zhuǎn)參數(shù)的設(shè)置,使得渲染顯示線程能夠顯示畫面旋轉(zhuǎn)后的圖像,且使得多個視頻錄制線程能夠錄制得到不同速度模式的且畫面旋轉(zhuǎn)后的視頻,滿足用戶的錄制需求。
可以理解的是,在本發(fā)明實施例中,還可以將圖7與圖8結(jié)合為另一個視頻錄制裝置,以實現(xiàn)在一次錄制得到不同速度模式的視頻的前提下,使得得到的視頻具有美化效果且畫面旋轉(zhuǎn)。
需要說明的是,在本發(fā)明實施例中,為了便于錄制者了解到當(dāng)前錄制的視頻的速度模式,在錄制過程中,在顯示界面上可以顯示待錄制的多個視頻的不同的速度模式,請參閱圖9,圖9為本發(fā)明實施例中視頻錄制時顯示界面顯示速度模式的示意圖,其中,圖9是以利用移動終端進(jìn)行錄制為例,其中,速度模式1、速度模式2及速度模式3是當(dāng)前正在錄制的視頻的三個模式,通常情況下是顯示在顯示界面的邊緣,以避免錄制時對錄制者所觀看到的畫面造成影響,此外,顯示界面上還包括暫停按鈕901,停止按鈕902,及拍照按鈕903,其中,錄制者可以通過點擊該暫停按鈕901暫停當(dāng)前的錄制,此外,錄制者可以通過點擊該停止按鈕902結(jié)束視頻錄制過程,可以理解的是,在結(jié)束錄制之后,該停止按鈕902將成為開始錄制按鈕。在錄制的過程中,若錄制者想得到單幅畫面,則可以點擊拍照按鈕903,以便在錄制的同時進(jìn)行拍照,不僅得到錄制的視頻同時得到拍照的圖片。
在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個模塊或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或模塊的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)模塊上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理模塊中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。
所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
需要說明的是,對于前述的各方法實施例,為了簡便描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其它順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定都是本發(fā)明所必須的。
在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關(guān)描述。
以上為對本發(fā)明所提供的一種視頻錄制方法及裝置、圖像處理器及電子設(shè)備的描述,對于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明實施例的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。