两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

動態(tài)靜態(tài)視頻流圖片覆蓋方法與流程

文檔序號:12789941閱讀:537來源:國知局
動態(tài)靜態(tài)視頻流圖片覆蓋方法與流程

本發(fā)明涉及實(shí)時直播,尤其涉及實(shí)時直播的圖片覆蓋技術(shù)。



背景技術(shù):

隨著實(shí)時直播技術(shù)的發(fā)展,帶來了巨大的商機(jī)。但是用戶觀看直播時,僅僅能收看直播,而不能在直播流上實(shí)時覆蓋圖片,互動性較差。現(xiàn)有的技術(shù)中,彈幕和直播流是相互獨(dú)立的,因此,換一個視頻網(wǎng)站彈幕就會消失,不能實(shí)現(xiàn)任一平臺覆蓋所有平臺實(shí)時接收,限制很大。水印技術(shù)也僅僅應(yīng)用于轉(zhuǎn)碼階段。因此,通過現(xiàn)有技術(shù)完全無法實(shí)時修改直播視頻流。用戶登錄各個視頻平臺來收看直播節(jié)目,各個平臺間沒有交流和互動,十分不方便。

有必要進(jìn)一步改進(jìn)實(shí)時直播技術(shù),使收看直播更加便捷。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明之目的是一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其能夠?qū)崟r修改直播視頻流,并且,任一平臺實(shí)時覆蓋圖片所有平臺均可實(shí)時接收修改后的直播視頻流。

本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,用于在視頻上疊加靜態(tài)和動態(tài)圖像,使得直播可以提供和電視節(jié)目一樣的觀看體驗(yàn),包括:

步驟1:直播發(fā)起方推送源視頻流至直播云;

步驟2:監(jiān)聽器開始偵聽直播云事件,調(diào)用圖片處理事件;

步驟3:當(dāng)監(jiān)聽器偵聽到任意一件直播云事件被觸發(fā)時,直播云按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片生成合成視頻流;

步驟4:直播云將合成視頻流推送給觀眾的直播終端。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟3包括:

步驟31:直播云對原視頻流進(jìn)行解碼生成解碼視頻流;

步驟32:直播云對解碼視頻流的碼率和畫面進(jìn)行調(diào)整生成覆蓋了圖片的視頻流;

步驟33:直播云編碼覆蓋了圖片的視頻流生成合成視頻流。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟32包括:

步驟321:從ffmpeg和live555獲取推送過來的H.264源視頻流(實(shí)時視頻流);

步驟322:將圖片轉(zhuǎn)化為視頻幀疊加到源視頻流中生成中間視頻流;

步驟323:中間視頻流數(shù)據(jù)覆蓋源視頻流數(shù)據(jù)。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟322包括:

步驟3221:檢測覆蓋圖像的文件格式是否是預(yù)設(shè)文件格式;

步驟3222:檢測覆蓋圖像的尺寸是否大于預(yù)設(shè)像素數(shù);

步驟3223:檢測覆蓋圖像寬度和高度是否是偶數(shù)數(shù)目的像素;

步驟3224:檢測覆蓋圖像坐標(biāo)并校正覆蓋圖像在適配的每一幀的位置;

步驟3225:直播云按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟3的疊加模式包括:

預(yù)設(shè)模式,對用戶編輯的相應(yīng)直播模板下的所有直播流編輯生效的模式;

基于直播云的API實(shí)時編程模式,只對用戶編輯的特定的直播流編輯生效的模式。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟31包括:

將源視頻流中的每個幀均解碼為YUV12格式;

將覆蓋圖像均轉(zhuǎn)換為YUV12格式。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,

步驟3221包括:檢查覆蓋圖像的文件格式為GIF、JPEG、PNG、BMP或RGB類型圖像時,輸出第一檢測結(jié)果為合格;

步驟3222包括:第一檢測結(jié)果為合格時,檢測疊加圖像尺寸大于4x 4像素時,輸出第二檢測結(jié)果為合格;

步驟3223包括:第二檢測結(jié)果為合格時,檢測疊加圖像寬度像素和高度像素均為偶數(shù)時,輸出第三檢測結(jié)果為合格;

步驟3224包括:第三檢測結(jié)果為合格時,檢測覆蓋圖像位于視頻上的x和y坐標(biāo)上,輸出第四檢測結(jié)果為合格;

步驟3225包括:當(dāng)?shù)谝粰z測結(jié)果、第二檢測結(jié)果、第三檢測結(jié)果和第四檢測結(jié)果均為合格時,直播云按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片生成合成視頻流。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,對解碼視頻流的碼率和畫面進(jìn)行調(diào)整包括:

直播時在視頻畫面中實(shí)時增加廣告、標(biāo)題、水印、公司徽標(biāo)或符號或體育/股票行情收報器。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟32還包括:

通過配置編碼器的轉(zhuǎn)碼器模板和覆蓋API,來對當(dāng)前視頻幀的尺寸進(jìn)行調(diào)整。

作為優(yōu)選方式,本發(fā)明提供一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,覆蓋API包括:

在每個視頻幀上覆蓋一組或多組透明或半透明的圖層,其中,每組圖層可以包括一層或多層圖層;

將后一組圖層與前一組圖層融合在一起。

本發(fā)明提供的一種動態(tài)靜態(tài)視頻流圖片覆蓋方法一方面能夠在直播視頻流的不同階段自動添加動態(tài)或者靜態(tài)的圖像。另一方面能夠在直播流上實(shí)時覆蓋圖片,能夠?qū)崟r修改直播視頻流,并且,任一平臺實(shí)時覆蓋圖片所有平臺均可實(shí)時接收修改后的直播視頻流。用戶可以通過手動配置或基于直播云生命周期的外部事件的預(yù)編程序,使得網(wǎng)絡(luò)直播獲得電視直播一樣的效果。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅用于解釋本發(fā)明的構(gòu)思。

圖1為本發(fā)明動態(tài)靜態(tài)視頻流圖片覆蓋方法的示意框圖;

圖2為本發(fā)明動態(tài)靜態(tài)視頻流圖片覆蓋方法的示意框圖步驟流程圖;

圖3為本發(fā)明動態(tài)靜態(tài)視頻流圖片覆蓋方法的原理圖。

附圖標(biāo)記匯總:

1、直播發(fā)起方 2、直播云 3、監(jiān)聽器

4、直播終端

具體實(shí)施方式

在下文中,將參照附圖描述本發(fā)明的動態(tài)靜態(tài)視頻流圖片覆蓋方法的實(shí)施例。

在此記載的實(shí)施例為本發(fā)明的特定的具體實(shí)施方式,用于說明本發(fā)明的構(gòu)思,均是解釋性和示例性的,不應(yīng)解釋為對本發(fā)明實(shí)施方式及本發(fā)明范圍的限制。除在此記載的實(shí)施例外,本領(lǐng)域技術(shù)人員還能夠基于本申請權(quán)利要求書和說明書所公開的內(nèi)容采用顯而易見的其它技術(shù)方案,這些技術(shù)方案包括對在此記載的實(shí)施例做出任何顯而易見的替換和修改的技術(shù)方案。

本說明書的附圖為示意圖,輔助說明本發(fā)明的構(gòu)思,示意性地表示各部分的相互關(guān)系。相同或相似的參考標(biāo)記用于表示相同或相似的部分。

參見圖1和圖2,本發(fā)明提出的一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,用于在視頻上疊加靜態(tài)和動態(tài)圖像,使得直播可以提供和電視節(jié)目一樣的觀看體驗(yàn),包括:

步驟1:S1直播發(fā)起方1推送源視頻流至直播云2;

步驟2:S2監(jiān)聽器3開始偵聽直播云2事件,調(diào)用圖片處理事件;

步驟3:S3當(dāng)監(jiān)聽器3偵聽到任意一件直播云2事件被觸發(fā)時,直播云2按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片生成合成視頻流;

步驟4:S4直播云2將合成視頻流推送給觀眾的直播終端4。

在本實(shí)施例中,本發(fā)明可以基于直播云2的生命周期模型,可以在直播過程中合適的事件發(fā)生時疊加所需要的動態(tài)靜態(tài)圖片,比如直播開始時、直播進(jìn)行中、直播結(jié)束時或者直播全程。

本發(fā)明可以同時提供兩種疊加方式:預(yù)設(shè)模式,將某種直播模板下的所有直播流生效?;谥辈ピ?開發(fā)API實(shí)時編程模式,只對具體的直播流生效。

本發(fā)明一方面能夠在直播視頻流的不同階段自動添加動態(tài)或者靜態(tài)的圖像。另一方面能夠在直播流上實(shí)時覆蓋圖片,能夠?qū)崟r修改直播視頻流,并且,任一平臺實(shí)時覆蓋圖片所有平臺均可實(shí)時接收修改后的直播視頻流。用戶可以通過手動配置或基于直播云2生命周期的外部事件的預(yù)編程序,使得網(wǎng)絡(luò)直播獲得電視直播一樣的效果。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟3包括:

步驟31:直播云2對原視頻流進(jìn)行解碼生成解碼視頻流;

步驟32:直播云2對解碼視頻流的碼率和畫面進(jìn)行調(diào)整生成覆蓋了圖片的視頻流;

步驟33:直播云2編碼覆蓋了圖片的視頻流生成合成視頻流。

在本實(shí)施例中,本發(fā)明可以通過Java來實(shí)現(xiàn)視頻流的編碼、解碼和動態(tài)/靜態(tài)視頻流圖片的覆蓋,其中,動態(tài)/靜態(tài)視頻流圖片的覆蓋的方法可以通過使用基于Java的直播云2API在直播視頻流上疊加靜態(tài)和動態(tài)圖像來實(shí)現(xiàn)。監(jiān)聽器3開始偵聽直播云2事件之前,可以是手動配置疊加圖片的觸發(fā)事件或基于直播云2生命周期的外部事件來預(yù)編程序來實(shí)現(xiàn)當(dāng)事件觸發(fā)時實(shí)時自動疊加圖片的效果(例如:設(shè)置觸發(fā)事件為在直播開始時、直播進(jìn)行中和直播結(jié)束時自動疊加圖片,也可以設(shè)置為用戶切換直播命令時觸發(fā)自動疊加圖片),使得直播可以提供和電視節(jié)目一樣的觀看體驗(yàn)?;谠摪l(fā)明在直播時在視頻畫面中可以實(shí)時增加廣告、標(biāo)題、水印、公司徽標(biāo)或符號、體育/股票行情收報器、氣象信息、或是防洪防災(zāi)信息、彈幕等等。

使用直播云2實(shí)時編解碼器來疊加圖像圖形,以便覆蓋物是可能的最高標(biāo)準(zhǔn),可以通過直播云2自動檢測疊加圖片的過程例如:檢測覆蓋圖像的文件格式是否是GIF、JPEG、PNG、BMP或RGB類型圖像。疊加圖像尺寸是否大于4x4像素。疊加圖像寬度和高度是否是偶數(shù)數(shù)目的像素。覆蓋圖像是否位于視頻上的x和y坐標(biāo)上。

當(dāng)檢測到圖像類型、圖像尺寸、圖像像素數(shù)目和圖像位置不符合標(biāo)準(zhǔn)時,可以發(fā)送不符合標(biāo)準(zhǔn)的相關(guān)消息告知疊加圖片的用戶,也可以調(diào)用用戶預(yù)設(shè)的編碼來自動修正圖像類型、圖像尺寸、圖像像素數(shù)目和圖像位置。

視頻源中的每個幀解碼后要求是YUV12格式,這是一個2x2像素格式。因?yàn)镽GB是1x1像素格式,覆蓋圖像也必須轉(zhuǎn)換為YUV12??梢栽诏B加圖像之前先轉(zhuǎn)碼。如果覆蓋圖像是奇數(shù)個像素(寬度或高度),可能會覆蓋后留邊,因此可以先自動裁剪之后再覆蓋圖像。如果覆蓋圖像覆蓋在視頻幀的(x,y)坐標(biāo)上,其中,x或y坐標(biāo)位置造成留邊現(xiàn)象,可以先自動校正覆蓋的(x,y)坐標(biāo),然后再覆蓋圖像。

圖像可以在解碼幀,編碼幀或解碼和編碼幀時疊加。在轉(zhuǎn)碼過程中,不同的疊加步驟將產(chǎn)生不同的結(jié)果:

可以在解碼幀時覆蓋圖像,通過配置解碼器或是通過直播云2上的覆蓋API來實(shí)現(xiàn)覆蓋。通過解碼器和覆蓋API來實(shí)現(xiàn)在解碼幀之前進(jìn)行圖片大小和定位調(diào)整,以及幀縮放。通過幀縮放能夠大大減少圖片處理的時間,但是會降低畫質(zhì)。

可以在編碼幀時覆蓋圖像,通過配置解碼器或是通過直播云2上的覆蓋API來實(shí)現(xiàn)覆蓋。通過解碼器和覆蓋API來實(shí)現(xiàn)圖片大小和定位調(diào)整,先對每個視頻幀進(jìn)行縮放,再對每個視頻幀分別全尺寸覆蓋圖像。這樣能夠增加畫質(zhì),但是會增加圖片處理的時間。可以通過預(yù)設(shè)模式或者接口編程模式兩種方式疊加圖像,以適應(yīng)不同場景。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,參見圖3,其中,步驟32包括:

步驟321:從ffmpeg和live555獲取推送過來的H.264源視頻流(實(shí)時視頻流);

步驟322:將圖片轉(zhuǎn)化為視頻幀疊加到源視頻流中生成中間視頻流;

步驟323:中間視頻流數(shù)據(jù)覆蓋源視頻流數(shù)據(jù)。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟322包括:

步驟3221:檢測覆蓋圖像的文件格式是否是預(yù)設(shè)文件格式;

步驟3222:檢測覆蓋圖像的尺寸是否大于預(yù)設(shè)像素數(shù);

步驟3223:檢測覆蓋圖像寬度和高度是否是偶數(shù)數(shù)目的像素;

步驟3224:檢測覆蓋圖像坐標(biāo)并校正覆蓋圖像在適配的每一幀的位置;

步驟3225:直播云2按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟3的疊加模式包括:

預(yù)設(shè)模式,對用戶編輯的相應(yīng)直播模板下的所有直播流編輯生效的模式;

基于直播云2的API實(shí)時編程模式,只對用戶編輯的特定的直播流編輯生效的模式。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟31包括:

將源視頻流中的每個幀均解碼為YUV12格式;

將覆蓋圖像均轉(zhuǎn)換為YUV12格式。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,

步驟3221包括:檢查覆蓋圖像的文件格式為GIF、JPEG、PNG、BMP或RGB類型圖像時,輸出第一檢測結(jié)果為合格;

步驟3222包括:第一檢測結(jié)果為合格時,檢測疊加圖像尺寸大于4x 4像素時,輸出第二檢測結(jié)果為合格;

步驟3223包括:第二檢測結(jié)果為合格時,檢測疊加圖像寬度像素和高度像素均為偶數(shù)時,輸出第三檢測結(jié)果為合格;

步驟3224包括:第三檢測結(jié)果為合格時,檢測覆蓋圖像位于視頻上的x和y坐標(biāo)上,輸出第四檢測結(jié)果為合格;

步驟3225包括:當(dāng)?shù)谝粰z測結(jié)果、第二檢測結(jié)果、第三檢測結(jié)果和第四檢測結(jié)果均為合格時,直播云2按照相應(yīng)的疊加模式對源視頻流自動疊加所需要的動態(tài)靜態(tài)圖片生成合成視頻流。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,對解碼視頻流的碼率和畫面進(jìn)行調(diào)整包括:

直播時在視頻畫面中實(shí)時增加廣告、標(biāo)題、水印、公司徽標(biāo)或符號或體育/股票行情收報器。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,步驟32還包括:

通過配置編碼器的轉(zhuǎn)碼器模板和覆蓋API,來對當(dāng)前視頻幀的尺寸進(jìn)行調(diào)整。

本實(shí)施例進(jìn)一步優(yōu)選地,提供了一種動態(tài)靜態(tài)視頻流圖片覆蓋方法,其中,覆蓋API包括:

在每個視頻幀上覆蓋一組或多組透明或半透明的圖層,其中,每組圖層可以包括一層或多層圖層;

將后一組圖層與前一組圖層融合在一起。

以上對本發(fā)明的動態(tài)靜態(tài)視頻流圖片覆蓋方法進(jìn)行了說明。對于本發(fā)明的動態(tài)靜態(tài)視頻流圖片覆蓋方法涉及的裝置的具體特征可以根據(jù)本發(fā)明披露的特征的作用進(jìn)行具體設(shè)計(jì),這些設(shè)計(jì)均是本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)的。而且,本發(fā)明披露的各技術(shù)特征并不限于已披露的與其它特征的組合,本領(lǐng)域技術(shù)人員還可根據(jù)本發(fā)明之目的進(jìn)行各技術(shù)特征之間的其它組合,以實(shí)現(xiàn)本發(fā)明之目的為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
紫云| 文山县| 中卫市| 吉首市| 上犹县| 翁牛特旗| 双流县| 根河市| 六枝特区| 徐水县| 高密市| 保德县| 卢氏县| 会东县| 时尚| 林口县| 丹江口市| 三台县| 江孜县| 喀什市| 根河市| 贺州市| 酉阳| 万载县| 临邑县| 岑溪市| 雅安市| 措美县| 横山县| 华坪县| 诸城市| 汉阴县| 彰化县| 卓尼县| 杂多县| 尼勒克县| 津南区| 定西市| 嘉黎县| 上思县| 汶川县|