本發(fā)明涉及互聯(lián)網(wǎng)視頻直播技術(shù)領(lǐng)域,具體涉及一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的系統(tǒng)及方法。
背景技術(shù):
互聯(lián)網(wǎng)高速發(fā)展,視頻直播網(wǎng)站的內(nèi)容越來(lái)越豐富,參與人數(shù)越來(lái)越多。在現(xiàn)有技術(shù)中,為了讓用戶了解直播房間的內(nèi)容,在用戶訪問(wèn)直播平臺(tái)時(shí),每個(gè)直播間均有一張美化后的圖片,以吸引用戶觀看,但是用戶需要點(diǎn)擊進(jìn)入直播間才能夠觀看直播間正在直播的內(nèi)容。僅僅通過(guò)說(shuō)明圖片向用戶展現(xiàn)直播間的內(nèi)容并不準(zhǔn)確,用戶看完圖片后,還是難以了解并直播間的直播內(nèi)容,無(wú)從得知該直播內(nèi)容是否是自己希望觀看到的,若根據(jù)圖片內(nèi)容進(jìn)入直播間,而發(fā)現(xiàn)直播間的內(nèi)容與圖片差異很大,對(duì)直播內(nèi)容不感興趣,需要反復(fù)進(jìn)入直播間,反而會(huì)令用戶產(chǎn)生厭煩,敬而遠(yuǎn)之,并且后續(xù)的維護(hù)成本高,給網(wǎng)站開(kāi)發(fā)的程序員帶來(lái)不必要的額外工作量。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的系統(tǒng)及方法,用戶能夠在列表中觀看到每個(gè)直播間正在直播的額內(nèi)容,提高用戶使用舒適度。
為達(dá)到以上目的,本發(fā)明采取的技術(shù)方案是:
一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的系統(tǒng),包括:
文本文件單元,用于從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,構(gòu)建文本文件;
視頻截圖單元,用于調(diào)用截圖程序讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間。
在上述技術(shù)方案的基礎(chǔ)上,文本文件包括若干直播間的房間ID和該直播間的直播流地址,房間ID和該直播間的直播流地址綁定,且每一行排列一直播間的房間ID和該直播間的直播流地址。
在上述技術(shù)方案的基礎(chǔ)上,房間ID和該直播間的直播流地址通過(guò)連接符連接。
還提供一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的方法,包括如下步驟:
S1、文本文件單元從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,并構(gòu)建文本文件;視頻截圖單元調(diào)用截圖程序讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間,且當(dāng)截圖程序讀取完文本文件的內(nèi)容時(shí),刪除文本文件;
S2、視頻截圖單元周期性檢查是否存在文本文件,若存在,則等待下一次檢查;若不存在,則文本文件單元從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,并對(duì)距離上次截圖時(shí)間間隔一定時(shí)間以上的直播間和沒(méi)有截圖時(shí)間的直播間構(gòu)建文本文件;
S3、視頻截圖單元調(diào)用截圖程序讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間,當(dāng)截圖程序讀取完文本文件的內(nèi)容時(shí),刪除文本文件;
S4、重復(fù)步驟S2和步驟S3,實(shí)時(shí)更新每個(gè)直播間的視頻截圖。
在上述技術(shù)方案的基礎(chǔ)上,文本文件包括直播間的房間ID和該直播間的直播流地址,房間ID和該直播間的直播流地址綁定,且每一行排列一直播間的房間ID和該直播間的直播流地址。
在上述技術(shù)方案的基礎(chǔ)上,視頻截圖單元生成視頻截圖的步驟如下:
文本文件單元調(diào)用截圖程序逐行讀取文本文件的內(nèi)容,獲得該行對(duì)應(yīng)的直播間的房間ID和該直播間的直播流地址;
調(diào)用視頻工具播放直播流地址后的直播流第一幀,并判斷播放是否成功;
若播放失敗,則讀取文本文件的下一行;
若播放成功,則視頻工具生成圖片文件,該圖片文件包括視頻截圖和截屏?xí)r間,將圖片文件寫(xiě)入數(shù)據(jù)庫(kù),讀取文本文件的下一行。
在上述技術(shù)方案的基礎(chǔ)上,所述視頻工具為ffmpeg程序。
在上述技術(shù)方案的基礎(chǔ)上,所述視頻截圖為PNG格式。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
(1)本發(fā)明的一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的系統(tǒng)及方法通過(guò)周期性檢查是否存在文本文件,若有文本文件,則說(shuō)明本次視頻截圖操作正在進(jìn)行,不需要再更新新型的視頻截圖,若沒(méi)有文本文件,則說(shuō)明上次視頻截圖已經(jīng)完成,需要生成新的文本文件進(jìn)行下次視頻截圖操作,進(jìn)而實(shí)時(shí)更新分類(lèi)列表中直播間的視頻截圖,達(dá)到通過(guò)觀看直播列表中每個(gè)直播間正在直播的內(nèi)容,讓用戶準(zhǔn)確的進(jìn)入感興趣的直播間,減少用戶進(jìn)出直播間的次數(shù),提高用戶體驗(yàn)舒適度的同時(shí)降低網(wǎng)站加載運(yùn)行的負(fù)荷。
(2)本發(fā)明的一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的方法及系統(tǒng)使用視頻截圖單元實(shí)時(shí)對(duì)直播房間對(duì)視頻截圖進(jìn)行截取,更好的滿足用戶的需求,對(duì)視頻的兼容性更好。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例的系統(tǒng)框圖;
圖2為本發(fā)明實(shí)施例的方法流程圖。
具體實(shí)施方式
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
參見(jiàn)圖1所示,一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的系統(tǒng),包括:
文本文件單元,從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,構(gòu)建文本文件,文本文件包括若干直播間的房間ID和該直播間的直播流地址,每個(gè)直播間的房間ID和該直播間的直播流地址通過(guò)連接符連接,且每一行排列一直播間的房間ID和該直播間的直播流地址。
視頻截圖單元,用于調(diào)用截圖程序讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間。
參見(jiàn)圖2所示,本發(fā)明實(shí)施例提供一種用于視頻直播間準(zhǔn)實(shí)時(shí)截圖的方法,包括如下步驟:
S1、文本文件單元從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,并構(gòu)建文本文件,文本文件包括當(dāng)前時(shí)刻下的所有直播間的房間ID和該直播間的直播流地址,該直播間的房間ID和該直播間的直播流地址通過(guò)連接符綁定,且每一行排列一直播間的房間ID和該直播間的直播流地址。視頻截圖單元調(diào)用截圖程序逐行讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間,且當(dāng)截圖程序讀取完文本文件的內(nèi)容時(shí),刪除文本文件;其中,視頻截圖單元生成視頻截圖的步驟如下:
其中,視頻截圖單元生成視頻截圖的步驟如下:
視頻截圖單元調(diào)用視頻工具ffmpeg程序播放行對(duì)應(yīng)的直播流地址后的直播流第一幀,并判斷播放是否成功;
若播放失敗,則截圖程序讀取文本文件的下一行;
若播放成功,則視頻工具自動(dòng)生成圖片文件,該圖片文件包括PNG格式的視頻截圖和截屏?xí)r間,將圖片文件寫(xiě)入數(shù)據(jù)庫(kù),視頻截圖、截屏?xí)r間和房間ID進(jìn)行綁定,截圖程序讀取文本文件的下一行。
S2、視頻截圖單元周期性檢查是否存在文本文件,由于文本文件的內(nèi)容不一定,截圖程序讀取完文本文件的時(shí)間不一定,讀取完文本文件所花費(fèi)的時(shí)間可能比檢查周期長(zhǎng),也可能比檢查周期短,若存在文本文件,則等待下一次檢查;若不存在文本文件,則文本文件單元從直播平臺(tái)數(shù)據(jù)庫(kù)獲取當(dāng)前時(shí)刻正在進(jìn)行直播的直播間的房間ID和該直播間的直播流地址,并對(duì)距離上次截圖時(shí)間間隔3min以上的直播間和沒(méi)有截圖時(shí)間的直播間構(gòu)建文本文件;其中文本文件包括當(dāng)前時(shí)刻下的所有直播間的房間ID和該直播間的直播流地址,該直播間的房間ID和該直播間的直播流地址通過(guò)連接符綁定,且每一行排列一直播間的房間ID和該直播間的直播流地址。
S3、視頻截圖單元調(diào)用截圖程序讀取文本文件的內(nèi)容,逐個(gè)生成每個(gè)直播間的視頻截圖和截圖時(shí)間,當(dāng)截圖程序讀取完文本文件的內(nèi)容時(shí),刪除文本文件;
其中,視頻截圖單元生成視頻截圖的步驟如下:
視頻截圖單元調(diào)用視頻工具ffmpeg程序該播放行對(duì)應(yīng)的直播流地址后的直播流第一幀,并判斷播放是否成功;
若播放失敗,則截圖程序讀取文本文件的下一行;
若播放成功,則視頻工具自動(dòng)生成圖片文件,該圖片文件包括PNG格式的視頻截圖和截屏?xí)r間,將圖片文件寫(xiě)入數(shù)據(jù)庫(kù),視頻截圖、截屏?xí)r間和房間ID進(jìn)行綁定即生成該行對(duì)應(yīng)的直播間在分類(lèi)列表中的即時(shí)視頻截圖,對(duì)直播間的視頻截圖顯示更新,截圖程序讀取文本文件的下一行。
S4、重復(fù)步驟S2和步驟S3,實(shí)時(shí)更新每個(gè)直播間的視頻截圖。
本發(fā)明不局限于上述實(shí)施方式,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說(shuō)明書(shū)中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。