一種監(jiān)控流媒體文件傳輸?shù)姆椒?、裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種監(jiān)控流媒體文件傳輸?shù)姆椒ā⒀b置及系統(tǒng),涉及電通信技術領域,為解決不能監(jiān)控流媒體文件傳輸過程的問題而發(fā)明。本發(fā)明的方法包括:采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài);將所述監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。本發(fā)明主要應用于監(jiān)控流媒體文件傳輸?shù)倪^程中。
【專利說明】
一種監(jiān)控流媒體文件傳輸?shù)姆椒?、裝置及系統(tǒng)
技術領域
[0001]本發(fā)明實施例涉及電通信技術領域,尤其涉及一種監(jiān)控流媒體文件傳輸?shù)姆椒?、裝置及系統(tǒng)。
【背景技術】
[0002]流媒體是指采用流式傳輸?shù)姆绞皆诰W(wǎng)絡播放的媒體格式,其特點是在傳輸文件的同時能夠進行文件播放,即媒體提供方在網(wǎng)絡上傳輸媒體的“同時”,用戶不斷地接收并觀看或收聽。通過流媒體服務器把流媒體文件當成數(shù)據(jù)包發(fā)出,傳送到網(wǎng)絡上,用戶通過解壓設備對這些數(shù)據(jù)進行解壓后,流媒體文件就會像發(fā)送前那樣顯示出來。
[0003]流式媒體文件在播放前并不下載整個文件,只將開始部分內(nèi)容存入內(nèi)存,流式媒體文件的數(shù)據(jù)流隨時傳送隨時播放,不必等到整個文件全部下載完畢,而只需經(jīng)過幾秒或十數(shù)秒的啟動延時即可進行觀看。
[0004]在流媒體文件播放的過程中,由于網(wǎng)絡不穩(wěn)定,可能丟失部分數(shù)據(jù),造成流媒體文件在播放中存在缺陷。目前,現(xiàn)有技術沒有對流媒體傳輸過程進行監(jiān)控的機制,無法保證流媒體文件的播放質(zhì)量。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供了一種監(jiān)控流媒體文件傳輸?shù)姆椒ā⒀b置及系統(tǒng),能夠解決不能監(jiān)控流媒體文件傳輸過程的問題。
[0006]為了解決上述問題,一方面,本發(fā)明提供了一種監(jiān)控流媒體文件傳輸?shù)姆椒ǎ摲椒ò?
[0007]采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài);
[0008]將所述監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0009]另一方面,本發(fā)明提供了一種監(jiān)控流媒體文件傳輸?shù)难b置,該裝置包括:
[0010]采集單元,用于采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài);
[0011]發(fā)送單元,用于將所述采集單元采集的監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0012]再一方面,本發(fā)明提供了一種監(jiān)控流媒體文件傳輸?shù)南到y(tǒng),該系統(tǒng)包括客戶端、月艮務器端,日志中心和控制中心;
[0013]所述客戶端,用于上傳流媒體文件;
[0014]所述服務器端,用于采集傳輸流媒體文件的監(jiān)控數(shù)據(jù);
[0015]所述日志中心,用于統(tǒng)計采集到的監(jiān)控數(shù)據(jù);
[0016]所述控制中心,用于輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0017]本發(fā)明提供的監(jiān)控流媒體文件傳輸?shù)姆椒?、裝置及系統(tǒng),能夠采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),監(jiān)控數(shù)據(jù)以日志的形式記錄,反映流媒體文件的數(shù)據(jù)傳輸狀態(tài)。將監(jiān)控數(shù)據(jù)發(fā)送給日志中心,控制中心輸出日志中心統(tǒng)計監(jiān)控數(shù)據(jù)。與現(xiàn)有技術相比,本發(fā)明能夠在流媒體文件傳輸?shù)倪^程中,監(jiān)控流媒體文件數(shù)據(jù)的傳輸,實時地監(jiān)控并記錄流媒體文件的數(shù)據(jù)傳輸狀態(tài)。
【附圖說明】
[0018]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0019]圖1為本發(fā)明實施例提供的第一種監(jiān)控流媒體文件傳輸?shù)姆椒鞒虉D;
[0020]圖2為本發(fā)明實施例提供的第二種監(jiān)控流媒體文件傳輸?shù)姆椒鞒虉D;
[0021 ]圖3為本發(fā)明實施例提供的第三種監(jiān)控流媒體文件傳輸?shù)姆椒鞒虉D;
[0022]圖4為本發(fā)明實施例提供的第四種監(jiān)控流媒體文件傳輸?shù)姆椒鞒虉D;
[0023]圖5為本發(fā)明實施例提供的一種監(jiān)控流媒體文件傳輸?shù)难b置組成框圖;
[0024]圖6為本發(fā)明實施例提供的另一種監(jiān)控流媒體文件傳輸?shù)难b置組成框圖;
[0025]圖7為本發(fā)明實施例提供的一種監(jiān)控流媒體文件傳輸?shù)南到y(tǒng)框圖;
[0026]圖8為本發(fā)明實施例提供的一種監(jiān)控流媒體文件傳輸?shù)难b置結構示意圖。
【具體實施方式】
[0027]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0028]為了監(jiān)控流媒體文件傳輸過程,本發(fā)明實施例提供了一種監(jiān)控流媒體文件傳輸?shù)姆椒?,如圖1所示,該方法包括:
[0029]101、采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0030]流媒體,是指采用流式傳輸?shù)姆绞皆诨ヂ?lián)網(wǎng)上播放的模式。在流式傳輸時,聲音、影像或動畫等多媒體信息,實時傳送,首先在使用者端的電腦上創(chuàng)建一個緩沖區(qū),在播放前預先下載一段資料作為緩沖,用戶只需經(jīng)過秒或十幾秒的啟動延時即可進行觀看。在播放時,在后臺從服務器內(nèi)繼續(xù)下載文件的剩余部分。流媒體文件是指具有流媒體文件格式的文件,常見的流媒體文件格式的擴展名包括asf、rm、ra、rp、swf等,在本實施例中對流媒體文件的文件格式不做限定。
[0031]在流媒體文件的傳輸過程中,需要對流媒體文件做拆分成帶有標識信息的數(shù)據(jù)幀,以保證流媒體文件能通過通信線路傳輸。在本實施例中,對數(shù)據(jù)幀的拆分方法不做限定,對數(shù)據(jù)幀數(shù)量的多少也不做限定。數(shù)據(jù)幀,以二進制代碼的形式記錄文件信息。數(shù)據(jù)幀中還包括數(shù)據(jù)幀在流媒體文件中位置信息,校驗信息,數(shù)據(jù)幀對應的流媒體文件的格式信息,是否為關鍵幀信息等。在本實施例中,對數(shù)據(jù)幀中除流媒體文件信息之外包括其他的信息內(nèi)容不做限定。
[0032]流媒體文件傳輸?shù)倪^程,是不斷傳遞數(shù)據(jù)幀的過程。監(jiān)控流媒體文件傳輸過程,SP為監(jiān)控流媒體拆分的數(shù)據(jù)幀的傳輸過程。監(jiān)控數(shù)據(jù),是在流媒體文件傳輸?shù)倪^程中產(chǎn)生的,是對數(shù)據(jù)幀攜帶信息監(jiān)控產(chǎn)生的。監(jiān)控數(shù)據(jù)包括客戶端IP( internet protocol,網(wǎng)絡互連協(xié)議)、服務器IP、流IDGdentificat1n,身份)、數(shù)據(jù)幀在流媒體文件的位置、數(shù)據(jù)幀的發(fā)送是否出錯、數(shù)據(jù)幀對應的流媒體文件格式信息、數(shù)據(jù)幀是否為關鍵幀等,可以由二進制數(shù)據(jù)、英文字符串、漢語等方式記錄信息。在本實施例中,對監(jiān)控數(shù)據(jù)的信息內(nèi)容不做限定。在本實施例中,對監(jiān)控數(shù)據(jù)記錄數(shù)據(jù)形式不做限定。
[0033]在數(shù)據(jù)幀的傳輸過程中,定時地采集監(jiān)控數(shù)據(jù),并記錄監(jiān)控數(shù)據(jù)。監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài)。監(jiān)控數(shù)據(jù)是對流媒體文件傳輸?shù)谋O(jiān)控,上傳流媒體文件的用戶和觀看流媒體文件的用戶,都需要有流媒體文件的傳輸,都需要進行監(jiān)控。在本實施例中,對與傳輸流媒體文件相關的用戶數(shù)量不做限定。
[0034]102、將監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0035]將流媒體服務器采集的監(jiān)控數(shù)據(jù)信息發(fā)送至日志中心。流媒體文件通過流媒體服務器實現(xiàn)傳輸?shù)膶崟r性。流媒體服務器,根據(jù)文件傳輸過程的采用傳輸協(xié)議不同,分為不同類型。示例性的,若采用RTMP(real time messaging protocol,實時消息傳輸協(xié)議)傳輸協(xié)議,則使用CRTMPSEVER服務器。若采用HLS(http live streaming,基于超文本鏈接協(xié)議的流媒體直播)傳輸協(xié)議,則使用NGINX服務器。相同的傳輸協(xié)議,包括多個類型的服務器。在本實施例中,對服務器的具體類型不做限定。
[0036]日志中心接收監(jiān)控數(shù)據(jù),并對監(jiān)控數(shù)據(jù)做統(tǒng)計。在監(jiān)控數(shù)據(jù)中,選擇相同客戶端IP的監(jiān)控數(shù)據(jù),分析該客戶端的流媒體文件傳輸情況;選擇相同的服務器IP,分析該服務器的流媒體文件傳輸情況;選擇相同的流媒體文件,即相同的流ID,分析該流媒體文件是否完整。在本實施例中,對日志中心統(tǒng)計監(jiān)控數(shù)據(jù)的統(tǒng)計方法不做限定。
[0037]控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù),以便用戶查看監(jiān)控數(shù)據(jù)信息??刂浦行妮敵鰯?shù)據(jù)的方式,可能是曲線圖、數(shù)據(jù)表,或文字信息,在本實施例中,對輸出數(shù)據(jù)的方式不做限定。
[0038]本發(fā)明實施例提供的監(jiān)控流媒體文件傳輸?shù)姆椒?,能夠采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),監(jiān)控數(shù)據(jù)以日志的形式記錄,反映流媒體文件的數(shù)據(jù)傳輸狀態(tài)。將監(jiān)控數(shù)據(jù)發(fā)送給日志中心,控制中心輸出日志中心統(tǒng)計監(jiān)控數(shù)據(jù)。與現(xiàn)有技術相比,本發(fā)明實施例能夠在流媒體文件傳輸?shù)倪^程中,監(jiān)控流媒體文件數(shù)據(jù)的傳輸,實時地監(jiān)控并記錄流媒體文件的數(shù)據(jù)傳輸狀態(tài)。
[0039]進一步的,作為圖1所示方法的細化,本發(fā)明實施例還提供了另一種監(jiān)控流媒體文件傳輸?shù)姆椒?,如圖2所示,該方法包括:
[0040]201、采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0041]流媒體,是流媒體文件提供方上傳流媒體文件的“同時”,觀看者可以觀看同步的流媒體文件。上傳流媒體文件,是流媒體文件傳輸過程中的一部分,是流媒體文件的來源,需要采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0042]在客戶端上傳流媒體文件時,采集客戶端的監(jiān)控數(shù)據(jù),客戶端的監(jiān)控數(shù)據(jù)包括上傳速率、客戶端互聯(lián)網(wǎng)協(xié)議地址IP、服務器IP、流ID及丟幀次數(shù)。上傳速率,是指流媒體文件在上傳過程中單位時間內(nèi)的速度,通常速率單位為KB/秒,或者KB/分。在本實施例中,對上傳速率的單位不做限定。客戶端IP和服務器IP,是指客戶端或服務器的地址信息,可以對應地址信息查找對應的實際的地理位置。流ID,是指對流媒體文件的編碼,一個流ID代表一個流媒體文件。流ID的編碼,可能是根據(jù)一定的編碼規(guī)則編寫的,也可能是隨機產(chǎn)生的。流ID的編碼,可能是由數(shù)字組成的,可能由字母組成的,也可能有數(shù)字和字母共同組成的。在本實施例中,對流ID的編碼方式不做限定,對流ID的編碼組成不做限定。
[0043]在流媒體文件上傳過程中,將流媒體文件分為多個數(shù)據(jù)幀,一幀一幀的傳輸。由于網(wǎng)絡狀況、傳輸路徑、服務器性能等影響,在數(shù)據(jù)幀的傳輸過程中可能會出現(xiàn)丟幀現(xiàn)象。根據(jù)數(shù)據(jù)幀的包含的標識信息,可能確定是否有丟幀,對整個流媒體文件,什么位置丟幀,丟了多少幀。
[0044]在流媒體文件上傳的過程中,通過流媒體平臺的采集上傳信息的配置文件,定時地監(jiān)控數(shù)據(jù)發(fā)送給服務器。在監(jiān)控數(shù)據(jù)中記錄上傳速率、客戶端互聯(lián)網(wǎng)協(xié)議地址IP、服務器IP、流ID及丟幀次數(shù)。
[0045]在接收到客戶端上傳的流媒體文件時,判斷是否有關鍵幀。關鍵幀,即為多媒體文件中的關鍵信息。關鍵幀,是在流媒體文件拆分時確定的,可以是流媒體文件中關鍵部分,或攜帶流媒體文件的關鍵信息,也可以間隔一定數(shù)量的數(shù)據(jù)幀定義一個關鍵幀。若在一定的時間間隔內(nèi),沒有關鍵幀,說明在流媒體文件傳輸過程中,丟失關鍵幀,客戶端上傳的流媒體文件是不完整的,存在播放缺陷。示例性的,流媒體文件是一個視頻文件,這個視頻是一個教學視頻,一個視頻畫面中為教學過程中書寫的板書。將這個畫面分成兩個數(shù)據(jù)幀,一個為畫面的背景信息,一個為畫面的文字信息,很顯然文字信息為該畫面的關鍵內(nèi)容,所以將文字信息定義為關鍵幀。在本實施例中,對關鍵幀的確定方式不做限定。
[0046]采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù),以日志的形式記錄,以便對監(jiān)控數(shù)據(jù)的進一步處理。
[0047]202、將監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0048]控制中心除了輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)外,還可以對服務器發(fā)出指令。
[0049]在流媒體文件上傳的過程中,若丟幀次數(shù)大于第一預設值,則接收控制中心發(fā)送地斷流指令;停止接收客戶端上傳的流媒體文件;將斷流原因發(fā)送給客戶端。第一預設值,是指允許丟幀的最大次數(shù),若丟幀次數(shù)超出預設值,會造成流媒體文件的信息缺失,不能保證流媒體文件能流暢的播放。在本實施例中,對第一預設值的大小不做限定。若流媒體文件不能流暢播放,流媒體文件提供方繼續(xù)上傳,則失去了上傳流媒體文件的意義,而且會造成網(wǎng)絡資源的浪費。所以控制中心給流媒體服務器發(fā)送斷流指令,流媒體服務器停止接收流媒體文件提供方的客戶端上傳的流媒體文件,并將斷流原因發(fā)送給流媒體文件提供方的客戶端。
[0050]在流體文件上傳的過程中,若接收關鍵幀的間隔時長大于第二預設值,則接收控制中心發(fā)送的斷流指令;停止接收客戶端上傳的流媒體文件;將斷流原因發(fā)送給客戶端。關鍵幀中含有流媒體文件中的關鍵信息,若關鍵幀缺失,直接導致播放質(zhì)量的降低,若第二預設值的時間間隔內(nèi),都沒有關鍵幀,則可能導致流媒體文件的播放缺陷。播放缺陷,包括播放文件部分時段播放畫面的缺失,部分音頻的缺失等,在本實施例中,對播放缺陷的類型不做限定。第二預設值,是一段固定的時長,也可以做動態(tài)調(diào)整,在本實施例中,對第二預設值的大小不做限定,對第二預設值的設置方法也不做限定。
[0051 ]通過控制中心,對監(jiān)控數(shù)據(jù)的展示,與對流媒體服務器的控制,實現(xiàn)對流媒體文件傳輸?shù)谋O(jiān)控。
[0052]進一步的,作為圖1所示方法的細化,本發(fā)明實施例還提供了另一種監(jiān)控流媒體文件傳輸?shù)姆椒ǎ鐖D3所示,該方法包括:
[0053]301、采集實時消息傳輸協(xié)議RTMP流媒體服務器分發(fā)流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0054]流媒體,是流媒體文件提供方上傳流媒體文件的“同時”,觀看者可以觀看同步的流媒體文件。由流媒體服務器分發(fā)流媒體文件,觀看者才能觀看同步的流媒體文件。若通過RTMP流媒體服務器分發(fā)流媒體文件,則需要采集實時消息傳輸協(xié)議RTMP流媒體服務器的監(jiān)控數(shù)據(jù),RTMP流媒體服務器的監(jiān)控數(shù)據(jù)包括客戶端IP、服務器端IP、流ID及丟幀標識位。對于客戶端IP、服務器端IP、以及流ID,與步驟201中的描述相同,這里不再贅述。
[0055]丟幀標識位,標記在流媒體文件分發(fā)過程中是否丟幀。若RTMP流媒體服務器的緩沖寄存器中的數(shù)據(jù)量大于預設閾值,則根據(jù)預設丟棄策略丟棄緩沖寄存器中的數(shù)據(jù)幀;在丟幀標識位記錄丟幀標識,所述丟幀標識表示在分發(fā)流媒體文件過程中RTMP流媒體服務器丟棄數(shù)據(jù)幀。這樣的丟幀方式與步驟201中的丟幀不同,在本步驟中的丟幀為主動丟幀。月艮務器在一定的限定條件下,主動地丟棄數(shù)據(jù)幀。
[0056]在流媒體文件的傳輸過程中,從流媒體文件的提供方,到流媒體文件的觀看方之間,通常需要多臺服務器進行流媒體文件的傳輸,至少要通過一臺服務器進行流媒體文件的傳輸。所以主動地丟幀方式,存在于服務器與服務器之間,也存在于服務器與客戶端之間。
[0057]流媒體文件的分發(fā)過程中,先將數(shù)據(jù)幀存放在RTMP流媒體服務器的緩沖寄存器中,之后再發(fā)送給下一個流媒體文件數(shù)據(jù)幀的接收方,若下一個接收方的網(wǎng)絡傳輸速度較慢,則緩沖寄存器中的數(shù)據(jù)量不斷增加。若緩沖寄存器中的數(shù)據(jù)量大于預設閾值,根據(jù)預設的丟棄策略丟棄緩沖寄存器中的數(shù)據(jù)幀。預設閾值是預先設置的,在本實施例中,對預設閾值的大小不做限定。對于丟棄策略,可以將緩沖寄存器中的數(shù)據(jù)幀全部丟掉,也可以丟掉部分數(shù)據(jù),在本實施例中,對丟棄策略不做限定。
[0058]在丟棄數(shù)據(jù)幀后,在丟幀標識位記錄丟幀標識,表示丟棄數(shù)據(jù)幀。
[0059]采集實時消息傳輸協(xié)議RTMP流媒體服務器的監(jiān)控數(shù)據(jù),以日志的形式記錄,以便對監(jiān)控數(shù)據(jù)的進一步處理。
[0060]302、將監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。[0061 ]通過控制中心,對監(jiān)控數(shù)據(jù)的展示,實現(xiàn)對流媒體文件傳輸?shù)谋O(jiān)控。
[0062]進一步的,作為圖1所示方法的細化,本發(fā)明實施例還提供了另一種監(jiān)控流媒體文件傳輸?shù)姆椒ǎ鐖D4所示,該方法包括:
[0063]401、采集基于超文本鏈接協(xié)議的流媒體直播HLS流媒體服務器分發(fā)流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0064]若采用HLS流媒體服務器分發(fā)流媒體文件,則采集基于超文本鏈接協(xié)議的流媒體直播HLS流媒體服務器的監(jiān)控數(shù)據(jù),HLS流媒體服務器的分發(fā)數(shù)據(jù)信息包括客戶端IP、服務器IP、流ID、帶寬、慢速次數(shù)及快速次數(shù)。對于客戶端IP、服務器端IP、以及流ID,與步驟201中的描述相同,這里不再贅述。帶寬是指單位時間內(nèi)從網(wǎng)絡中的某一點到另一點所能通過的“最高數(shù)據(jù)率”,即每秒多少比特。帶寬用來標識信號傳輸?shù)臄?shù)據(jù)傳輸能力,標識單位時間內(nèi)通過鏈路的數(shù)量,標識顯示器的顯示能力。
[0065]在HLS流媒體文件分發(fā)過程中,將流媒體文件分為多個流媒體子塊。流媒體文件是以固定的播放時長作為切分的標準,從流媒體文件開始播放,一個固定的播放時長,劃分為一個流媒體字塊,按照流媒體文件的播放時序,順次將流媒體文件劃分為多個流媒體子塊。在本實施例中,對切分標準的固定的播放時長不做限定。在流媒體文件傳輸時,若單個流媒體子塊的下載時長大于第一預設時長,則將該次下載標記為慢速,記錄慢速次數(shù);若單個流媒體子塊的下載時長小于第二預設時長,則將該次下載標記為快速,記錄快速次數(shù)。
[0066]采集HLS流媒體服務器分發(fā)流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),以日志的形式記錄,以便對監(jiān)控數(shù)據(jù)的進一步處理。
[0067]402、將監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0068]通過控制中心,對監(jiān)控數(shù)據(jù)的展示,實現(xiàn)對流媒體文件傳輸?shù)谋O(jiān)控。
[0069]進一步的,作為圖1至圖4中任意一圖所示方法的實現(xiàn),本發(fā)明另一實施例還提供了一種監(jiān)控流媒體文件傳輸?shù)难b置。本裝置實施例與前述方法實施例對應,能夠?qū)崿F(xiàn)前述方法實施例中的全部內(nèi)容。為便于閱讀,本裝置實施例僅對前述方法實施例中的內(nèi)容進行概要性描述,不對方法實施例中的細節(jié)內(nèi)容進行逐一贅述。如圖5所示,該裝置包括:采集單元51和發(fā)送單元52。其中,
[0070]采集單元51,用于采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài);
[0071 ]發(fā)送單元52,用于將采集單元51采集的監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0072I進一步的,如圖6所示,采集單元51,包括:
[0073]上傳采集模塊511,用于采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0074]進一步的,如圖6所示,上傳采集模塊511,用于在客戶端上傳流媒體文件時,采集客戶端的監(jiān)控數(shù)據(jù),客戶端的監(jiān)控數(shù)據(jù)包括上傳速率、客戶端互聯(lián)網(wǎng)協(xié)議地址IP、服務器IP、流ID及丟幀次數(shù)。
[0075]進一步的,如圖6所示,該裝置進一步包括:
[0076]第一接收單元53,用于若上傳采集模塊511采集地丟幀次數(shù)大于第一預設值,則接收控制中心發(fā)送地斷流指令;
[0077]第一停止單元54,用于根據(jù)第一接收單元53接收到的斷流指令,停止接收客戶端上傳的流媒體文件;
[0078]發(fā)送單元52,用于將第一停止單元54停止接收的斷流原因發(fā)送給客戶端。
[0079]進一步的,如圖6所示,上傳采集模塊511,用于在接收到客戶端上傳的流媒體文件時,判斷是否有關鍵幀。
[0080]進一步的,如圖6所示,該裝置進一步包括:
[0081]第二接收單元55,用于若接收上傳采集模塊511接收到的關鍵幀的間隔時長大于第二預設值,則接收控制中心發(fā)送的斷流指令;
[0082]第二停止單元56,用于根據(jù)第二接收單元55接收到的斷流指令,停止接收客戶端上傳的流媒體文件;
[0083]發(fā)送單元52,用于將第二停止單元56停止接收的斷流原因發(fā)送給客戶端。
[0084I進一步的,如圖6所示,采集單元51,包括:
[0085]分發(fā)采集模塊512,用于采集流媒體文件分發(fā)過程中產(chǎn)生的監(jiān)控數(shù)據(jù)。
[0086]進一步的,如圖6所示,分發(fā)采集模塊512,用于采集實時消息傳輸協(xié)議RTMP流媒體服務器的監(jiān)控數(shù)據(jù),RTMP流媒體服務器的監(jiān)控數(shù)據(jù)包括客戶端IP、服務器端IP、流ID及丟幀標識位。
[0087]進一步的,如圖6所示,分發(fā)采集模塊512,包括:
[0088]丟棄子模塊5121,用于若RTMP流媒體服務器的緩沖寄存器中的數(shù)據(jù)量大于預設閾值,則根據(jù)預設丟棄策略丟棄緩沖寄存器中的數(shù)據(jù)幀;
[0089]第一記錄子模塊5122,用于若丟棄子模塊5121丟棄數(shù)據(jù)幀,則在丟幀標識位記錄丟幀標識,丟幀標識表示在分發(fā)流媒體文件過程中RTMP流媒體服務器丟棄數(shù)據(jù)幀。
[0090]進一步的,如圖6所示,分發(fā)采集模塊512,用于采集基于超文本鏈接協(xié)議的流媒體直播HLS流媒體服務器的監(jiān)控數(shù)據(jù),HLS流媒體服務器的分發(fā)數(shù)據(jù)信息包括客戶端IP、服務器IP、流ID、帶寬、慢速次數(shù)及快速次數(shù)。
[0091 ]進一步的,如圖6所示,分發(fā)采集模塊512,包括:
[0092]切分子模塊5123,用于在HLS流媒體服務器分發(fā)流媒體文件過程中,將流媒體文件分為多個流媒體子塊;
[0093]第二記錄子模塊5124,用于若切分子模塊5123切分的單個流媒體子塊的下載時長大于第一預設時長,則將該次下載標記為慢速,記錄慢速次數(shù);
[0094]第二記錄子模塊5124,用于若切分子模塊5123切分的單個流媒體子塊的下載時長小于第二預設時長,則將該次下載標記為快速,記錄快速次數(shù)。
[0095]進一步的,作為對圖1至圖4中任意一圖所示方法的實現(xiàn),本發(fā)明另一實施例還提供了一種監(jiān)控流媒體文件傳輸?shù)南到y(tǒng)。本系統(tǒng)實施例與前述方法實施例對應,能夠?qū)崿F(xiàn)前述方法實施例中的全部內(nèi)容。為便于閱讀,本系統(tǒng)實施例僅對前述方法實施例中的內(nèi)容進行概要性描述,不對方法實施例中的細節(jié)內(nèi)容進行逐一贅述。如圖7所示,該系統(tǒng)包括:客戶端71、服務器端72,日志中心73和控制中心74。具體的:
[0096]客戶端71,用于上傳流媒體文件;
[0097]服務器端72,用于采集傳輸客戶端71上傳流媒體文件的監(jiān)控數(shù)據(jù);
[0098]日志中心73,用于統(tǒng)計服務器端72采集到的監(jiān)控數(shù)據(jù);
[0099]控制中心74,用于輸出日志中心73統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0100]本發(fā)明實施例提供的監(jiān)控流媒體文件傳輸?shù)难b置及系統(tǒng),能夠采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),監(jiān)控數(shù)據(jù)以日志的形式記錄,反映流媒體文件的數(shù)據(jù)傳輸狀態(tài)。將監(jiān)控數(shù)據(jù)發(fā)送給日志中心,控制中心輸出日志中心統(tǒng)計監(jiān)控數(shù)據(jù)。與現(xiàn)有技術相比,本發(fā)明實施例能夠在流媒體文件傳輸?shù)倪^程中,監(jiān)控流媒體文件數(shù)據(jù)的傳輸,實時地監(jiān)控并記錄流媒體文件的數(shù)據(jù)傳輸狀態(tài)。
[0101]需要說明的是,針對上述監(jiān)控流媒體文件傳輸?shù)难b置,凡是本發(fā)明實施例中使用到的各個單元模塊的功能都可以通過硬件處理器(hardware processor)來實現(xiàn)。
[0102]示例性的,如圖8所示,圖8示出了本發(fā)明實施例提供的一種監(jiān)控流媒體文件傳輸?shù)难b置結構示意圖,該監(jiān)控流媒體文件傳輸?shù)难b置可以包括:處理器(prOCeSSOr)81、通信接口(Communicat1ns Int erf ace) 82、存儲器(memory) 83和總線84,其中,處理器81、通信接口 82、存儲器83通過總線84完成相互間的通信。通信接口 82可以用于服務器與客戶端之間的信息傳輸。處理器81可以調(diào)用存儲器83中的邏輯指令,以執(zhí)行如下方法:采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài);將所述監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
[0103]此外,上述的存儲器83中的邏輯指令可以通過軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(R0M,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0104]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性的勞動的情況下,即可以理解并實施。
[0105]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件。基于這樣的理解,上述技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在計算機可讀存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行各個實施例或者實施例的某些部分所述的方法。
[0106]最后應說明的是:以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各實施例技術方案的精神和范圍。
【主權項】
1.一種監(jiān)控流媒體文件傳輸?shù)姆椒ǎ涮卣髟谟?,所述方法包? 采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài); 將所述監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。2.根據(jù)權利要求1所述的方法,其特征在于,所述采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),包括: 采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)包括丟幀次數(shù); 若所述丟幀次數(shù)大于第一預設值,則接收控制中心發(fā)送的斷流指令; 停止接收客戶端上傳的流媒體文件; 將斷流原因發(fā)送給客戶端。3.根據(jù)權利要求1所述的方法,其特征在于,所述采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),包括: 采集流媒體文件上傳過程中產(chǎn)生的監(jiān)控數(shù)據(jù),在接收到客戶端上傳的流媒體文件時,判斷是否有關鍵幀; 若接收所述關鍵幀的間隔時長大于第二預設值,則接收控制中心發(fā)送的斷流指令; 停止接收客戶端上傳的流媒體文件; 將斷流原因發(fā)送給客戶端。4.根據(jù)權利要求1所述的方法,其特征在于,所述采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),包括: 采集實時消息傳輸協(xié)議RTMP流媒體服務器的監(jiān)控數(shù)據(jù),所述RTMP流媒體服務器的監(jiān)控數(shù)據(jù)包括丟幀標識位; 若RTMP流媒體服務器的緩沖寄存器中的數(shù)據(jù)量大于預設閾值,則根據(jù)預設丟棄策略丟棄緩沖寄存器中的數(shù)據(jù)幀; 在丟幀標識位記錄丟幀標識,所述丟幀標識表示在分發(fā)流媒體文件過程中RTMP流媒體服務器丟棄數(shù)據(jù)幀。5.根據(jù)權利要求1所述的方法,其特征在于,所述采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),包括: 采集基于超文本鏈接協(xié)議的流媒體直播HLS流媒體服務器的監(jiān)控數(shù)據(jù),所述HLS流媒體服務器的分發(fā)數(shù)據(jù)信息包括慢速次數(shù)及快速次數(shù); 在HLS流媒體服務器分發(fā)流媒體文件過程中,將流媒體文件分為多個流媒體子塊;若單個流媒體子塊的下載時長大于第一預設時長,則將該次下載標記為慢速,記錄慢速次數(shù); 若單個流媒體子塊的下載時長小于第二預設時長,則將該次下載標記為快速,記錄快速次數(shù)。6.一種監(jiān)控流媒體文件傳輸?shù)难b置,其特征在于,所述裝置包括: 采集單元,用于采集傳輸流媒體文件過程中產(chǎn)生的監(jiān)控數(shù)據(jù),所述監(jiān)控數(shù)據(jù)以日志的形式記錄,用于反映流媒體文件的數(shù)據(jù)傳輸狀態(tài); 發(fā)送單元,用于將所述采集單元采集的監(jiān)控數(shù)據(jù)發(fā)送至日志中心,以便控制中心輸出所述日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。7.根據(jù)權利要求6所述的裝置,其特征在于,所述采集單元用于采集客戶端上傳的監(jiān)控數(shù)據(jù),所述客戶端的監(jiān)控數(shù)據(jù)包括丟幀次數(shù);若所述丟幀次數(shù)大于第一預設值,則接收控制中心發(fā)送地斷流指令,停止接收客戶端上傳的流媒體文件,并將停止接收的斷流原因發(fā)送給客戶端。8.根據(jù)權利要求6所述的裝置,其特征在于,所述采集單元用于采集客戶端上傳的監(jiān)控數(shù)據(jù),判斷是否有關鍵幀,若接收到的關鍵幀的間隔時長大于第二預設值,則接收控制中心發(fā)送的斷流指令,停止接收客戶端上傳的流媒體文件,并將所述停止接收的斷流原因發(fā)送給客戶端。9.根據(jù)權利要求6所述的裝置,其特征在于,所述采集單元用于采集實時消息傳輸協(xié)議RTMP流媒體服務器的監(jiān)控數(shù)據(jù),所述RTMP流媒體服務器的監(jiān)控數(shù)據(jù)包括丟幀標識位;若RTMP流媒體服務器的緩沖寄存器中的數(shù)據(jù)量大于預設閾值,則根據(jù)預設丟棄策略丟棄緩沖寄存器中的數(shù)據(jù)幀,在丟幀標識位記錄丟幀標識,所述丟幀標識表示在分發(fā)流媒體文件過程中RTMP流媒體服務器丟棄數(shù)據(jù)幀。10.根據(jù)權利要求6所述的裝置,其特征在于,所述分采集單元用于采集基于超文本鏈接協(xié)議的流媒體直播HLS流媒體服務器的監(jiān)控數(shù)據(jù),所述HLS流媒體服務器的分發(fā)數(shù)據(jù)信息包括慢速次數(shù)及快速次數(shù),在HLS流媒體服務器分發(fā)流媒體文件過程中,將流媒體文件分為多個流媒體子塊,若切分的單個流媒體子塊的下載時長大于第一預設時長,則將該次下載標記為慢速,記錄慢速次數(shù);若單個流媒體子塊的下載時長小于第二預設時長,則將該次下載標記為快速,記錄快速次數(shù)。11.一種監(jiān)控流媒體文件傳輸?shù)南到y(tǒng),其特征在于,所述系統(tǒng)包括客戶端、日志中心、控制中心以及如權利要求6至10任一所述的裝置,其中: 所述客戶端,用于上傳流媒體文件; 所述日志中心,用于統(tǒng)計所述服務器端采集到的監(jiān)控數(shù)據(jù); 所述控制中心,用于輸出日志中心統(tǒng)計的監(jiān)控數(shù)據(jù)。
【文檔編號】H04L29/06GK105871802SQ201510891324
【公開日】2016年8月17日
【申請日】2015年12月7日
【發(fā)明人】劉鳳玉, 魏立志, 劉斌
【申請人】樂視云計算有限公司