本發(fā)明涉及視頻技術(shù)領(lǐng)域,特別是涉及一種視頻轉(zhuǎn)碼方法、一種視頻轉(zhuǎn)碼裝置、一種視頻播放方法、一種視頻播放裝置、一種計(jì)算機(jī)設(shè)備以及一種存儲(chǔ)介質(zhì)。
背景技術(shù):
在目前的智能監(jiān)控、人臉道具直播、智能圖片識(shí)別等領(lǐng)域,通常會(huì)需要根據(jù)需求對視頻流進(jìn)行轉(zhuǎn)碼處理。傳統(tǒng)的轉(zhuǎn)碼處理方式,是對原始視頻流先解碼,然后再重新編碼為新的視頻流。隨著智能應(yīng)用的增加,在對原始視頻流解碼之后,還需要對視頻流進(jìn)行視頻分析,并將視頻分析的結(jié)果呈獻(xiàn)給用戶。針對智能應(yīng)用的這種需求,基于傳統(tǒng)的視頻轉(zhuǎn)碼方式,是由服務(wù)器對視頻流先解碼,并對解碼后的每幀圖像做圖像分析,然后將圖像分析結(jié)果疊加到解碼后的視頻流并重新壓縮編碼為新的視頻流,并發(fā)送到各個(gè)終端呈現(xiàn)給用戶。這種視頻轉(zhuǎn)碼方式需要進(jìn)行二次編碼,嚴(yán)重降低了圖像質(zhì)量,同時(shí)也增加了服務(wù)器的負(fù)擔(dān)。
技術(shù)實(shí)現(xiàn)要素:
基于此,本發(fā)明實(shí)施例提供一種視頻轉(zhuǎn)碼方法、一種視頻轉(zhuǎn)碼裝置、一種視頻播放方法、一種視頻播放裝置、一種計(jì)算機(jī)設(shè)備以及一種存儲(chǔ)介質(zhì),以提高轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量,且有助于降低服務(wù)器的處理負(fù)擔(dān)。
一種視頻轉(zhuǎn)碼方法,應(yīng)用于服務(wù)器,包括步驟:
接收采集端上傳的第一視頻流;
根據(jù)所述采集端與服務(wù)器之間的第一傳輸協(xié)議信息,對所述第一視頻流進(jìn)行第一解封裝處理,獲得第二視頻流;
根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對所述第二視頻流進(jìn)行封裝,獲得第三視頻流,并將所述第三視頻流向播放終端發(fā)送;
對所述第二視頻流進(jìn)行圖像分析,獲得圖像分析結(jié)果,根據(jù)所述圖像分析結(jié)果向所述播放終端發(fā)送圖像分析信息。
一種視頻播放方法,應(yīng)用于播放終端,包括步驟:
接收服務(wù)器發(fā)送的第三視頻流,并根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對第三視頻流進(jìn)行第二解封裝處理,獲得第二視頻流;
接收所述服務(wù)器發(fā)送的與所述第二視頻流關(guān)聯(lián)的圖像分析信息;
將所述圖像分析信息添加到所述第二視頻流后進(jìn)行播放。
一種視頻轉(zhuǎn)碼裝置,應(yīng)用于服務(wù)器,包括:
第一接收模塊,用于接收采集端上傳的第一視頻流;
第一解封裝模塊,用于根據(jù)所述采集端與服務(wù)器之間的第一傳輸協(xié)議信息,對所述第一視頻流進(jìn)行第一解封裝處理,獲得第二視頻流;
封裝模塊,用于根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對所述第二視頻流進(jìn)行封裝,獲得第三視頻流,并將所述第三視頻流向播放終端發(fā)送;
圖像分析模塊,用于對所述第二視頻流進(jìn)行圖像分析,獲得圖像分析結(jié)果;
分析信息發(fā)送模塊,用于根據(jù)所述圖像分析結(jié)果向所述播放終端發(fā)送圖像分析信息。
一種視頻播放裝置,應(yīng)用于播放終端,包括:
第二接收模塊,用于接收服務(wù)器發(fā)送的第三視頻流,并根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對第三視頻流進(jìn)行第二解封裝處理,獲得第二視頻流;
分析信息接收模塊,用于接收所述服務(wù)器發(fā)送的與所述第二視頻流關(guān)聯(lián)的圖像分析信息;
疊加播放模塊,用于將所述圖像分析信息添加到所述第二視頻流后進(jìn)行播放。
一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如上所述的方法。
一種計(jì)算機(jī)存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的方法。
基于如上所述的實(shí)施例的方案,服務(wù)器在接收到采集端上傳的第一視頻流、并基于與采集端之間的第一傳輸協(xié)議信息將第一視頻流解碼為第二視頻流后,直接將給第二視頻流用與播放終端之間的第二傳輸協(xié)議信息封裝為第三視頻流后發(fā)送播放終端,服務(wù)器另一方面對上述第二視頻流進(jìn)行圖像分析獲得圖像分析結(jié)果,并基于圖像分析結(jié)果向播放終端發(fā)送圖像分析信息,播放終端分別接收第三視頻流和圖像分析信息,并對第三視頻流解碼得到第二視頻流后將圖像分析信息添加到第二視頻流進(jìn)行播放,從而,服務(wù)器在進(jìn)行視頻轉(zhuǎn)碼的過程中,盡管進(jìn)行了圖像分析的處理,但是其無需基于圖像分析結(jié)果對視頻流進(jìn)行二次編碼,從而降低了服務(wù)器的處理負(fù)擔(dān),且提高了視頻轉(zhuǎn)碼的效率,節(jié)省了轉(zhuǎn)碼資源,播放終端進(jìn)行播放時(shí),直接將圖像分析信息添加到第二視頻流中進(jìn)行播放即可,提高了轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量。
附圖說明
圖1是一個(gè)本實(shí)施例方案的工作環(huán)境的示意圖;
圖2是一個(gè)實(shí)施例的服務(wù)器的組成結(jié)構(gòu)的示意圖;
圖3是一個(gè)實(shí)施例的播放終端的組成結(jié)構(gòu)的示意圖;
圖4是一個(gè)實(shí)施例的視頻轉(zhuǎn)碼方法的流程示意圖;
圖5是一個(gè)實(shí)施例的視頻播放方法的流程示意圖;
圖6是一個(gè)具體應(yīng)用示例中基于本實(shí)施例方案的交互流程的示意圖;
圖7是一個(gè)基于圖6所示示例的一個(gè)具體應(yīng)用中的流程架構(gòu)示意圖;
圖8是一個(gè)實(shí)施例的視頻轉(zhuǎn)碼裝置的結(jié)構(gòu)示意圖;
圖9是一個(gè)實(shí)施例的視頻播放裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施方式僅僅用以解釋本發(fā)明,并不限定本發(fā)明的保護(hù)范圍。
除非另有定義,本文所使用的所有的技術(shù)和科學(xué)術(shù)語與屬于本發(fā)明的技術(shù)領(lǐng)域的技術(shù)人員通常理解的含義相同。本文中在本發(fā)明的說明書中所使用的術(shù)語只是為了描述具體的實(shí)施例的目的,不是旨在于限制本發(fā)明。本文所使用的術(shù)語“或/及”包括一個(gè)或多個(gè)相關(guān)的所列項(xiàng)目的任意的和所有的組合。
圖1示出了本發(fā)明一個(gè)實(shí)施例中的工作環(huán)境示意圖,如圖1所示,其工作環(huán)境涉及采集終端101、服務(wù)器102以及播放終端103,采集終端101、播放終端103與服務(wù)器102可以通過網(wǎng)絡(luò)進(jìn)行通信。采集終端101采集的視頻流發(fā)送至服務(wù)器102后,由服務(wù)器102轉(zhuǎn)發(fā)至播放終端103進(jìn)行播放。采集終端101與服務(wù)器102之間的通信方式,例如采用的通信協(xié)議或者數(shù)據(jù)封裝協(xié)議,跟播放終端103與服務(wù)器102之間的通信方式可以相同,也可以不同。在不同時(shí),服務(wù)器102需要對采集終端101發(fā)送的視頻流進(jìn)行轉(zhuǎn)碼,使得播放終端103能夠正確解析并解碼出正確視頻流數(shù)據(jù)進(jìn)行播放。該采集終端101可以是任何可以采集視頻數(shù)據(jù)并將采集獲得的視頻數(shù)據(jù)以視頻流發(fā)送給服務(wù)器的設(shè)備,如圖1所示,可以是移動(dòng)終端,比如手機(jī)、平板電腦,還可以是個(gè)人計(jì)算機(jī),還可以攝像頭等實(shí)現(xiàn)視頻監(jiān)控的設(shè)備。
圖2為一個(gè)實(shí)施例中服務(wù)器102的組成結(jié)構(gòu)示意圖。如圖2所示,服務(wù)器包括通過系統(tǒng)總線連接的處理器、供電模塊、存儲(chǔ)介質(zhì)、內(nèi)存和通信接口。其中,該處理器用于提供計(jì)算和控制能力,支撐整個(gè)服務(wù)器的運(yùn)行。服務(wù)器的存儲(chǔ)介質(zhì)存儲(chǔ)有操作系統(tǒng)、數(shù)據(jù)庫和一種視頻轉(zhuǎn)碼裝置的計(jì)算機(jī)應(yīng)用程序,該視頻轉(zhuǎn)碼裝置的計(jì)算機(jī)應(yīng)用程序被處理器執(zhí)行時(shí),實(shí)現(xiàn)一種視頻轉(zhuǎn)碼方法。服務(wù)器中的內(nèi)存為存儲(chǔ)介質(zhì)中的視頻轉(zhuǎn)碼裝置的運(yùn)行提供環(huán)境,通信接口用于與用采集端和播放終端進(jìn)行網(wǎng)絡(luò)通信。本領(lǐng)域技術(shù)人員可以理解,圖2中示出的結(jié)構(gòu),僅僅是與實(shí)施例方案相關(guān)的部分結(jié)構(gòu)的框圖,并不構(gòu)成對本實(shí)施例方案所應(yīng)用于其上的服務(wù)器的限定,具體的服務(wù)器可以包括比圖中所示更多或更少的部件,或者組合某些部件,或者具有不同的部件布置。
播放終端103在一個(gè)實(shí)施例中的結(jié)構(gòu)示意圖如圖3所示。該播放終端103包括通過系統(tǒng)總線連接的處理器、非易失性存儲(chǔ)介質(zhì)、通信接口、電源接口和內(nèi)存。其中,播放終端103的處理器用于提供計(jì)算和控制能力,支撐整個(gè)播放終端103的運(yùn)行。播放終端103的非易失性存儲(chǔ)介質(zhì)存儲(chǔ)有操作系統(tǒng)和一種視頻播放裝置的計(jì)算機(jī)應(yīng)用程序,該視頻播放裝置被處理器執(zhí)行時(shí),實(shí)現(xiàn)一種視頻播放方法。播放終端103的存儲(chǔ)器為非易失性存儲(chǔ)介質(zhì)中的視頻播放裝置的運(yùn)行提供環(huán)境,該。播放終端103的網(wǎng)絡(luò)接口用于與服務(wù)器102通過網(wǎng)絡(luò)連接和通信,播放終端103的電源接口用于與外部電源連接,外部電源通過該電源接口向播放終端103供電。播放終端103可以是任何一種能夠?qū)崿F(xiàn)視頻播放的設(shè)備,例如個(gè)人計(jì)算機(jī)、移動(dòng)終端,比如手機(jī)、平板電腦等;也可以是其它具有上述結(jié)構(gòu)的設(shè)備。
圖4中示出了一個(gè)實(shí)施例中的視頻轉(zhuǎn)碼方法的流程示意圖,該方法應(yīng)用于服務(wù)器102,如圖4所示,該實(shí)施例中的視頻轉(zhuǎn)碼方法包括:
步驟s401:接收采集端上傳的第一視頻流;
步驟s402:根據(jù)所述采集端與服務(wù)器之間的第一傳輸協(xié)議信息,對所述第一視頻流進(jìn)行第一解封裝處理,獲得第二視頻流;
步驟s403:根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對所述第二視頻流進(jìn)行封裝,獲得第三視頻流,并將所述第三視頻流向播放終端發(fā)送;
步驟s404:對所述第二視頻流進(jìn)行圖像分析,獲得圖像分析結(jié)果,根據(jù)所述圖像分析結(jié)果向所述播放終端發(fā)送圖像分析信息。
可以理解,上述步驟s404與步驟s403并不具有先后順序,在步驟s402中得到第二視頻流之后,步驟s403的過程與步驟s404的過程可以并行處理。
基于該實(shí)施例的方案,服務(wù)器盡管進(jìn)行了圖像分析處理,但是其無需基于圖像分析結(jié)果對視頻流進(jìn)行二次編碼,有助于降低服務(wù)器的處理負(fù)擔(dān),提高了視頻轉(zhuǎn)碼的效率,服務(wù)器將第三視頻流和圖像分析信息給到播放終端,從而播放終端進(jìn)行播放時(shí),直接將圖像分析信息添加到第二視頻流中進(jìn)行播放即可,提高了轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量。
其中,上述圖像分析信息中,可攜帶有待顯示在所述第二視頻流的視頻幀中的位置的位置信息。從而使得播放終端在接收到圖像分析信息之后,可以基于該位置信息,將相關(guān)信息添加到第二視頻流中的對應(yīng)位置的視頻幀上之后,再進(jìn)行播放。
在一個(gè)示例中,在上述獲得圖像分析結(jié)果之后,向所述播放終端發(fā)送圖像分析信息之前,還可以包括步驟:對所述圖像分析結(jié)果進(jìn)行信息歸類和/或標(biāo)定處理。此時(shí),上述圖像分析信息包括所述信息歸類和/或標(biāo)定處理后的處理結(jié)果。
圖5示出了一個(gè)實(shí)施例中的視頻播放方法的流程示意圖,該方法應(yīng)用于播放終端。如圖5所示,該實(shí)施例中的視頻播放方法包括:
步驟s501:接收服務(wù)器發(fā)送的第三視頻流,并根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對第三視頻流進(jìn)行第二解封裝處理,獲得第二視頻流;
步驟s502:接收所述服務(wù)器發(fā)送的與所述第二視頻流關(guān)聯(lián)的圖像分析信息;
步驟s503:將所述圖像分析信息添加到所述第二視頻流后進(jìn)行播放。
從而,對于播放終端而言,其是從服務(wù)器分別接收第三視頻流和圖像分析信息,并將圖像信息添加到對第三視頻流解封裝處理后的第二視頻流之后進(jìn)行播放,即,其從服務(wù)器接收的第三視頻流并沒有疊加圖像分析信息,確保了轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量。
其中,上述圖像分析信息中,可攜帶有待顯示在所述第二視頻流的視頻幀中的位置的位置信息。從而使得播放終端在接收到圖像分析信息之后,可以基于該位置信息,將相關(guān)信息添加到第二視頻流中的對應(yīng)位置的視頻幀上之后,再進(jìn)行播放。
基于如上所述的實(shí)施例,圖6示出了一個(gè)具體應(yīng)用示例中基于本實(shí)施例方案的交互流程的示意圖,其包括步驟s601至步驟s608,對應(yīng)的具體應(yīng)用的流程架構(gòu)的示意圖如圖7所示。在圖6、圖7所示中,是以同時(shí)包含了服務(wù)器的視頻轉(zhuǎn)碼過程和播放終端的視頻播放過程為例進(jìn)行說明。
結(jié)合圖6、圖7所示,在步驟s601中,采集端在采集到視頻數(shù)據(jù)后,在需要向服務(wù)器發(fā)送視頻流時(shí),將采集的視頻數(shù)據(jù)以視頻流的方式發(fā)送給服務(wù)器。為了能夠?qū)⒁曨l流傳輸至服務(wù)器,采集端需要基于其與服務(wù)器之間的傳輸協(xié)議(為便于與服務(wù)器跟播放終端之間的傳輸協(xié)議區(qū)分,本示例中成為第一傳輸協(xié)議),對視頻流進(jìn)行封裝,獲得用第一傳輸協(xié)議封裝后的視頻流,本示例中稱為第一視頻流,然后將給第一視頻流發(fā)送給服務(wù)器。采集端可以在任何可能或需要的時(shí)候封裝成第一視頻流并發(fā)送給服務(wù)器,本實(shí)施例中不做具體限定。例如,對于視頻監(jiān)控領(lǐng)域而言,在該采集端為視頻監(jiān)控設(shè)備時(shí),采集端可以是每隔一個(gè)時(shí)間段就將采集到的視頻數(shù)據(jù)以第一視頻流的方式發(fā)送給服務(wù)器,以體現(xiàn)視頻監(jiān)控的實(shí)時(shí)性。對于視頻直播領(lǐng)域而言,采集端可以為進(jìn)行直播的終端設(shè)備,可以是在開啟了直播之后,再將采集的直播視頻數(shù)據(jù)發(fā)送至服務(wù)器。在其他的需要發(fā)送視頻數(shù)據(jù)的領(lǐng)域,也可以在其他需要的時(shí)刻發(fā)送視頻流。
服務(wù)器接收到采集端上傳的第一視頻流之后,在步驟s602中,根據(jù)服務(wù)器與采集端進(jìn)行通信的第一傳輸協(xié)議的信息,對第一視頻流進(jìn)行第一解封裝處理,獲得第一解封裝處理之后的視頻流,本示例中稱為第二視頻流??梢岳斫猓杉藶榱藢⒁曨l數(shù)據(jù)傳輸給服務(wù)器,需要采用采集端與服務(wù)器之間的第一傳輸協(xié)議對采集的視頻數(shù)據(jù)進(jìn)行封裝,即第一視頻流中包含有基于第一傳輸協(xié)議對視頻數(shù)據(jù)進(jìn)行封裝的有關(guān)于第一傳輸協(xié)議的相關(guān)字段。在進(jìn)行第一解封裝處理時(shí),通過對這些相關(guān)字段進(jìn)行解析,從而可以獲得實(shí)際的完整的視頻數(shù)據(jù),這種沒有關(guān)于第一傳輸協(xié)議的字段的視頻數(shù)據(jù),即為上述第二視頻流。
服務(wù)器在得到第二視頻流后,一方面,在步驟s603中,根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對所述第二視頻流進(jìn)行封裝,獲得第三視頻流,并在步驟s604中將所述第三視頻流向播放終端發(fā)送??梢?,服務(wù)器向播放終端發(fā)送的第三視頻流中的視頻數(shù)據(jù),是原始的視頻數(shù)據(jù),未疊加其他的信息,從而有助于提高視頻的播放質(zhì)量。
服務(wù)器在得到第二視頻流后,另一方面,在步驟s605中,服務(wù)器還對該第二視頻流進(jìn)行圖像分析,獲得圖像分析結(jié)果。在獲得圖像分析結(jié)果之后,還可以對圖像分析結(jié)果進(jìn)行信息歸類和/或標(biāo)定處理。
具體的對第二視頻流進(jìn)行圖像分析的過程,可以采用任何進(jìn)行圖像分析的方式進(jìn)行,只要能夠獲得對應(yīng)圖像分析結(jié)果即可。具體的圖像分析的方式,可以與所應(yīng)用的領(lǐng)域有關(guān)。
在一個(gè)示例中,以應(yīng)用在視頻監(jiān)控領(lǐng)域?yàn)槔?,可以是如圖7所示的將第二視頻流進(jìn)行視頻解碼轉(zhuǎn)換為yuv(亦稱ycrcb,一種顏色編碼方法)格式之后,依次進(jìn)行圖像預(yù)處理、圖像特征提取、特征值確定以及得到智能識(shí)別信息的處理,在其他的實(shí)施例中,也可以采用其他的方式進(jìn)行圖像分析處理。此時(shí),上述獲得的圖像分析結(jié)果可以是是否有對應(yīng)的目標(biāo)監(jiān)控事件的結(jié)果,例如,是否出現(xiàn)目標(biāo)監(jiān)控人物、是否出現(xiàn)目標(biāo)物體、是否出現(xiàn)目標(biāo)突發(fā)事件等。具體的對圖像特征提取的方式,可以采用已有的任何可能的方式進(jìn)行,例如基于深度學(xué)習(xí)的方式、級(jí)聯(lián)分類的方式。在獲得是否有對應(yīng)的目標(biāo)監(jiān)控事件的結(jié)果之后,還可以進(jìn)行分類和標(biāo)定處理,例如是出現(xiàn)目標(biāo)監(jiān)控人物還是出現(xiàn)目標(biāo)突發(fā)事件,從而獲得最終的智能識(shí)別信息,即上述圖像分析信息??梢岳斫?,該圖像分析信息可以包括基于上述是否出現(xiàn)目標(biāo)監(jiān)控人物、是否出現(xiàn)目標(biāo)物體、是否出現(xiàn)目標(biāo)突發(fā)事件等的分析結(jié)果的信息,例如針對出現(xiàn)目標(biāo)監(jiān)控人物的特定標(biāo)記(如水印、特效、聲音)、針對出現(xiàn)目標(biāo)突發(fā)事件的特定標(biāo)記(如水印、特效、聲音),同時(shí)還包括有各信息相對于第二視頻流的位置信息,以便于定位到具體的視頻幀。
在一個(gè)示例中,以應(yīng)用到視頻直播領(lǐng)域?yàn)槔?,其圖像分析方式可以是可以與上述針對監(jiān)控視頻類似的方式處理,例如是否出現(xiàn)目標(biāo)監(jiān)控人物、是否出現(xiàn)目標(biāo)物體、是否出現(xiàn)目標(biāo)突發(fā)事件等,據(jù)此可以實(shí)現(xiàn)對直播視頻流的安全審核。在視頻直播領(lǐng)域中,還可以有其他的智能分析處理,例如在直播視頻流中添加廣告、添加水印、添加特效、直播過程中的禮物信息、直播過程中售賣的商品的信息等等。最終獲得的圖像分析信息可以包括有基于上述是否出現(xiàn)目標(biāo)監(jiān)控人物、是否出現(xiàn)目標(biāo)物體、是否出現(xiàn)目標(biāo)突發(fā)事件等的分析結(jié)果的信息,例如針對出現(xiàn)目標(biāo)監(jiān)控人物的特定標(biāo)記(如水印、特效、聲音)、針對出現(xiàn)目標(biāo)突發(fā)事件的特定標(biāo)記(如水印、特效、聲音),同時(shí)還可以有針對第二視頻流本身添加的廣告、水印、特效、禮物、商品的信息,同時(shí)還包括有各信息待顯示在第二視頻流的視頻幀中的位置的位置信息,以便于定位到具體的視頻幀以及視頻幀中的位置。對于需要在整個(gè)視頻流播放的過程中都進(jìn)行顯示的情況,其對應(yīng)的位置信息可以為空,以默認(rèn)指示需要全程顯示,也可以是將位置信息設(shè)置為設(shè)定的需要進(jìn)行全程顯示的標(biāo)記信息??梢岳斫猓谄渌麑?shí)施例中,也可以是在圖像分析信息的其他位置設(shè)置該需要進(jìn)行全程顯示的標(biāo)記信息。
在一個(gè)示例中,以應(yīng)用到教育類視頻領(lǐng)域?yàn)槔?,其進(jìn)行圖像分析后獲得的圖像分析結(jié)果,可以是添加的一些標(biāo)記、水印、特效等相關(guān)信息,同時(shí)還包括有各信息相對于第二視頻流的視頻幀中的位置的位置信息,以便于定位到具體的視頻幀以及幀中的位置。
可見,在本實(shí)施例的方案中,服務(wù)器具體進(jìn)行分析得到圖像分析信息的方式可以采用各種可能的方式進(jìn)行,不同的得到圖像分析信息的方式均可以應(yīng)用到本實(shí)施例的視頻轉(zhuǎn)碼的過程中,只要最終能夠獲得便于播放終端疊加到第二視頻流上進(jìn)行播放的圖像分析信息即可??梢岳斫?,該圖像分析信息攜帶有位置信息,該位置信息可以是矢量位置信息。
在得到圖像分析信息之后,在步驟s606中,服務(wù)器會(huì)將該圖像信息也發(fā)送給播放終端,便于播放終端進(jìn)行播放。
播放終端在接收到第三視頻流之后,在步驟s607中,根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對第三視頻流進(jìn)行第二解封裝處理,獲得第二視頻流。播放終端還接收服務(wù)器發(fā)送的與第二視頻流關(guān)聯(lián)的圖像分析信息??梢岳斫猓シ沤K端接收第三視頻流和圖像分析信息的過程,可能并不具有如圖6所示的嚴(yán)格的先后順序,例如,在接收第三視頻流的過程中,同時(shí)接收圖像分析信息,只要在進(jìn)行智能拼接或者要添加圖像分析信息時(shí),對應(yīng)位置的視頻流和圖像分析信息已經(jīng)接收到即可。在某些應(yīng)用場景中,在上述解封裝得到第二視頻流之后,還可以將該第二視頻流解碼為yuv格式之后,再進(jìn)行智能拼接處理。
隨后,在步驟s608中,播放終端對接收到的圖像分析信息與第二視頻流進(jìn)行智能拼接,即將圖像分析信息添加到第二視頻流中,以便于圖像分析信息可以基于第二視頻流的播放而播放顯示。具體的進(jìn)行智能拼接的方式,可以采用任何可能的方式進(jìn)行,例如基于圖像分析信息中攜帶的位置信息,將對應(yīng)的信息添加到第二視頻流的對應(yīng)位置處,具體的智能拼接或添加的方式,本實(shí)施例不做具體限定。
可見,基于本實(shí)施例的如上所述的方式,服務(wù)器在轉(zhuǎn)碼過程中沒有對視頻進(jìn)行二次編碼,提升了圖像質(zhì)量,且降低了服務(wù)器的處理負(fù)擔(dān),且提高了視頻轉(zhuǎn)碼的效率,而且節(jié)省了轉(zhuǎn)碼資源;而播放終端是在接收到服務(wù)器發(fā)送的圖像分析信息之后添加到第二視頻流中,從而播放終端可以根據(jù)各種需求靈活處理,實(shí)現(xiàn)了個(gè)性化。
圖8示出了一個(gè)實(shí)施例中的視頻轉(zhuǎn)碼裝置的結(jié)構(gòu)示意圖,該視頻轉(zhuǎn)碼裝置設(shè)置于服務(wù)器。如圖8所示,該實(shí)施例中的裝置包括:
第一接收模塊801,用于接收采集端上傳的第一視頻流;
第一解封裝模塊802,用于根據(jù)所述采集端與服務(wù)器之間的第一傳輸協(xié)議信息,對所述第一視頻流進(jìn)行第一解封裝處理,獲得第二視頻流;
封裝模塊803,用于根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對所述第二視頻流進(jìn)行封裝,獲得第三視頻流,并將所述第三視頻流向播放終端發(fā)送;
圖像分析模塊804,用于對所述第二視頻流進(jìn)行圖像分析,獲得圖像分析結(jié)果;
分析信息發(fā)送模塊805,用于根據(jù)所述圖像分析結(jié)果向所述播放終端發(fā)送圖像分析信息。
可以理解,上述封裝模塊803與圖像分析模塊804的處理過程并不具有先后順序,在第一解封裝模塊802得到第二視頻流之后,封裝模塊803與圖像分析模塊804可以并行處理。
基于該實(shí)施例的方案,服務(wù)器盡管進(jìn)行了圖像分析處理,但是其無需基于圖像分析結(jié)果對視頻流進(jìn)行二次編碼,從而降低了服務(wù)器的處理負(fù)擔(dān),且提高了視頻轉(zhuǎn)碼的效率,節(jié)省了轉(zhuǎn)碼資源,服務(wù)器將第三視頻流和圖像分析信息給到播放終端,從而播放終端進(jìn)行播放時(shí),直接將圖像分析信息添加到第二視頻流中進(jìn)行播放即可,提高了轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量。
其中,上述圖像分析信息中,可攜帶有待顯示在所述第二視頻流的視頻幀中的位置的位置信息。從而使得播放終端在接收到圖像分析信息之后,可以基于該位置信息,將相關(guān)信息添加到第二視頻流中的對應(yīng)位置的視頻幀上進(jìn)行播放。
在一個(gè)示例中,如圖8所示,該實(shí)施例中的視頻轉(zhuǎn)碼裝置還可以包括:
處理模塊806,用于對所述圖像分析結(jié)果進(jìn)行信息歸類和/或標(biāo)定處理。
此時(shí),上述圖像分析信息包括所述信息歸類和/或標(biāo)定處理后的處理結(jié)果。
圖9示出了一個(gè)實(shí)施例中的視頻播放裝置的結(jié)構(gòu)示意圖,該視頻播放裝置設(shè)置或應(yīng)用于播放終端。如圖9所示,該實(shí)施例中的視頻播放裝置包括:
第二接收模塊901,用于接收服務(wù)器發(fā)送的第三視頻流,并根據(jù)服務(wù)器與播放終端之間的第二傳輸協(xié)議信息,對第三視頻流進(jìn)行第二解封裝處理,獲得第二視頻流;
分析信息接收模塊902,用于接收所述服務(wù)器發(fā)送的與所述第二視頻流關(guān)聯(lián)的圖像分析信息;
疊加播放模塊903,用于將所述圖像分析信息添加到所述第二視頻流后進(jìn)行播放。
從而,對于播放終端而言,其是從服務(wù)器分別接收第三視頻流和圖像分析信息,并將圖像信息添加到對第三視頻流解封裝處理后的第二視頻流之后進(jìn)行播放,即,其從服務(wù)器接收的第三視頻流并沒有疊加圖像分析信息,確保了轉(zhuǎn)碼后進(jìn)行播放的視頻的圖像質(zhì)量。
其中,上述圖像分析信息中,可攜帶有待顯示在所述第二視頻流的視頻幀中的位置的位置信息。從而使得播放終端在接收到圖像分析信息之后,可以基于該位置信息將相關(guān)信息添加到第二視頻流中的對應(yīng)位置的視頻幀上。
可以理解,視頻轉(zhuǎn)碼裝置、視頻播放裝置中的各模塊的具體實(shí)現(xiàn)方式,可以采用與上述方法實(shí)施例中相同的方式處理。
基于如上所述的示例,在一個(gè)實(shí)施例中還提供一種計(jì)算機(jī)設(shè)備,該計(jì)算機(jī)設(shè)備包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,其中,處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)如上述各實(shí)施例中的任意一個(gè)實(shí)施例中的方法。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一非易失性的計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,如本發(fā)明實(shí)施例中,該程序可存儲(chǔ)于計(jì)算機(jī)系統(tǒng)的存儲(chǔ)介質(zhì)中,并被該計(jì)算機(jī)系統(tǒng)中的至少一個(gè)處理器執(zhí)行,以實(shí)現(xiàn)包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(read-onlymemory,rom)或隨機(jī)存儲(chǔ)記憶體(randomaccessmemory,ram)等。
據(jù)此,在一個(gè)實(shí)施例中還提供一種存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其中,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述各實(shí)施例中的任意一個(gè)實(shí)施例中的方法。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。