欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種rtmp流媒體直播系統(tǒng)反向控制方法及其系統(tǒng)的制作方法

文檔序號(hào):9436561閱讀:701來(lái)源:國(guó)知局
一種rtmp流媒體直播系統(tǒng)反向控制方法及其系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及流媒體技術(shù)設(shè)計(jì)方法領(lǐng)域,具體地,尤其涉及一種RTMP流媒體直播系 統(tǒng)反向控制的設(shè)計(jì)方法及其系統(tǒng)。
【背景技術(shù)】
[0002] 在流媒體直播系統(tǒng)中,正在直播的RTMP流媒體通過(guò)網(wǎng)絡(luò)傳輸給用戶(hù),觀看該直播 流的用戶(hù)可能隨時(shí)接入該網(wǎng)絡(luò)。直播系統(tǒng)內(nèi)RTMP主播設(shè)備可能通過(guò)專(zhuān)網(wǎng)或ADSL網(wǎng)分布在 不同的地方,因?yàn)镽TMP協(xié)議對(duì)音視頻進(jìn)行主動(dòng)推送,每臺(tái)開(kāi)啟的RTMP主播設(shè)備都會(huì)向指定 IP的RTMP流媒體服務(wù)器進(jìn)行推流,當(dāng)用戶(hù)通過(guò)APP等軟件瀏覽實(shí)時(shí)視頻時(shí),可能因?yàn)榫W(wǎng)絡(luò) 狀況、視覺(jué)場(chǎng)景要求變換等原因,需要遠(yuǎn)程改變RTMP主播設(shè)備的參數(shù),如果流媒體直播系 統(tǒng)沒(méi)有設(shè)計(jì)反向控制協(xié)議,必定達(dá)不到用戶(hù)的需求。
[0003]目前,流媒體直播系統(tǒng)的反向控制通常采用如下方式去解決上述問(wèn)題: 1.當(dāng)用戶(hù)需要改變RTMP主播設(shè)備的參數(shù)時(shí),通過(guò)遠(yuǎn)程協(xié)助方式,采用RTMP主播設(shè)備 本地客戶(hù)端配置軟件,在局域網(wǎng)內(nèi)來(lái)設(shè)置各種參數(shù)。但是,遠(yuǎn)程APP客戶(hù)端用戶(hù)沒(méi)法進(jìn)行反 向控制,只能實(shí)時(shí)瀏覽。
[0004] 2.當(dāng)用戶(hù)需要改變RTMP主播設(shè)備的參數(shù)時(shí),通過(guò)遠(yuǎn)程控制方式,采用RTMP主播設(shè) 備遠(yuǎn)程客戶(hù)端配置軟件,在公網(wǎng)上來(lái)進(jìn)行反向設(shè)置各種參數(shù)。但是,遠(yuǎn)程APP客戶(hù)端用戶(hù)沒(méi) 法進(jìn)行反向控制,也只能實(shí)時(shí)瀏覽。
[0005] 而且,以上處理方法存在不足的地方: 1)對(duì)于1的處理方法,不能實(shí)時(shí)解決遠(yuǎn)程反向改變RTMP主播設(shè)備參數(shù)設(shè)置問(wèn)題,需要 遠(yuǎn)程有專(zhuān)門(mén)技術(shù)人員進(jìn)行配合工作,這樣將增加RTMP流媒體直播系統(tǒng)的人工成本,也難做 到實(shí)時(shí)性。
[0006] 2)對(duì)于2的處理方法,需要額外采用RTMP主播設(shè)備遠(yuǎn)程客戶(hù)端配置軟件來(lái)解決遠(yuǎn) 程反向改變RTMP主播設(shè)備參數(shù)設(shè)置問(wèn)題。此時(shí),RTMP流媒體直播系統(tǒng)必須額外部署一臺(tái) 有固定IP地址的協(xié)議解析服務(wù)器來(lái)進(jìn)行工作,且用戶(hù)必須要運(yùn)行遠(yuǎn)程客戶(hù)端配置軟件,才 能達(dá)到反向控制的效果,另外,設(shè)備廠商所提供的遠(yuǎn)程客戶(hù)端配置軟件多為PC下運(yùn)行。這 樣將增加RTMP流媒體直播系統(tǒng)的設(shè)備成本、研發(fā)成本、網(wǎng)絡(luò)租用成本等。

【發(fā)明內(nèi)容】

[0007]本發(fā)明目的在于針對(duì)上述技術(shù)問(wèn)題,提出一種RTMP流媒體直播系統(tǒng)反向控制方 法。
[0008] 同時(shí)本發(fā)明還公開(kāi)了應(yīng)用上述方法的RTMP流媒體直播系統(tǒng)。本系統(tǒng)包括RTMP主 播設(shè)備、RTMP流媒體服務(wù)器和客戶(hù)端APP。
[0009]本發(fā)明的RTMP流媒體直播系統(tǒng)反向控制方法,包括以下步驟: 步驟1,客戶(hù)端APP向RTMP流媒體服務(wù)器發(fā)送反向控制請(qǐng)求信令,RTMP流媒體服務(wù)器 將反向控制請(qǐng)求信令向?qū)?yīng)的RTMP主播設(shè)備轉(zhuǎn)發(fā); 步驟2,當(dāng)RTMP主播設(shè)備接收到反向控制請(qǐng)求信令,當(dāng)分析到反向控制信令并沒(méi)有涉 及到編碼參數(shù)的改變時(shí),RTMP主播設(shè)備信令控制模塊直接進(jìn)行各種PTZ處理; 步驟3,當(dāng)RTMP主播設(shè)備接收到反向控制請(qǐng)求信令,當(dāng)分析到反向控制信令涉及到編 碼參數(shù)的改變時(shí),不管原先編碼應(yīng)該是I幀還是P幀,強(qiáng)制編碼成I幀數(shù)據(jù)進(jìn)行發(fā)送;當(dāng)沒(méi) 有實(shí)時(shí)性要求時(shí),并不用去強(qiáng)制編碼成I幀數(shù)據(jù)進(jìn)行發(fā)送,I幀數(shù)據(jù)的檢測(cè)由RTMP流媒體 服務(wù)器進(jìn)行處理,或I幀數(shù)據(jù)的檢測(cè)直接由客戶(hù)端APP進(jìn)行處理。
[0010] 其中,步驟1所述的反向控制請(qǐng)求信令發(fā)送步驟為: 步驟1),反向控制信令載于RTMP協(xié)議上; 步驟2),客戶(hù)端APP向RTMP流媒體服務(wù)器發(fā)送反向控制請(qǐng)求信令; 步驟3),RTMP流媒體服務(wù)器將反向控制請(qǐng)求信令發(fā)送到RTMP主播設(shè)備。
[0011] 而,步驟3所述的I幀編碼步驟為: 步驟1 ),采集視頻數(shù)據(jù),并將數(shù)據(jù)編碼成H. 264格式; 步驟2),如果存在反向修改編碼參數(shù),則要強(qiáng)制生成I幀關(guān)鍵幀; 步驟3),如果不存在反向修改編碼參數(shù),則每隔預(yù)設(shè)定值來(lái)生成一個(gè)固定I幀。
[0012] 上述判斷是否存在反向修改編碼參數(shù)后,還可包括: 判斷預(yù)設(shè)定值的該段時(shí)間內(nèi)網(wǎng)絡(luò)視頻在線播放否存在視頻丟幀現(xiàn)象; 相應(yīng)地,如果不存在反向修改編碼參數(shù),則將當(dāng)前要生成的幀設(shè)置成為P幀,包括: 如果在該時(shí)間內(nèi)存在網(wǎng)絡(luò)丟失視頻幀,且不存在反向修改編碼參數(shù),則將當(dāng)前要生成 的幀強(qiáng)制設(shè)置成I幀,并將預(yù)設(shè)定值縮短為原來(lái)的一半且取整。
[0013] 如果在該時(shí)間內(nèi)不存在網(wǎng)絡(luò)丟失視頻幀,且不存在反向修改編碼參數(shù),則將當(dāng)前 要生成的幀設(shè)置成P幀。
[0014] 本發(fā)明提供的RTMP流媒體直播系統(tǒng)反向控制的設(shè)計(jì)方法可以解決用戶(hù)對(duì)RTMP主 播設(shè)備的控制問(wèn)題。本發(fā)明具有以下優(yōu)點(diǎn): 1 :RTMP流媒體直播系統(tǒng)反向控制協(xié)議,在公網(wǎng)上進(jìn)行反向控制時(shí),具有良好的實(shí)時(shí) 性。
[0015] 2:主播設(shè)備具有動(dòng)態(tài)編碼功能,在出現(xiàn)編碼參數(shù)改變時(shí),可實(shí)時(shí)強(qiáng)制編碼出I幀 數(shù)據(jù),具有良好的編碼自適應(yīng)性。
[0016] 3:反向控制協(xié)議載于RTMP協(xié)議中,在公網(wǎng)上進(jìn)行反向控制時(shí),無(wú)須再另外設(shè)計(jì)控 制信令解析服務(wù)器問(wèn)題,可節(jié)省系統(tǒng)部署成本。
[0017] 下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步的詳細(xì)描述。
【附圖說(shuō)明】
[0018] 圖1是本發(fā)明實(shí)施例的系統(tǒng)原理結(jié)構(gòu)示意圖。
[0019] 圖2是本發(fā)明實(shí)施例的方法流程圖。
[0020] 圖3是本發(fā)明實(shí)施例的強(qiáng)制I幀編碼模型原理結(jié)構(gòu)示意圖。
[0021] 具體實(shí)施方案 以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說(shuō)明,應(yīng)當(dāng)理解此處所描述的優(yōu)選實(shí)施例僅 用于說(shuō)明和解釋本發(fā)明并不用于限定本發(fā)明。
[0022] 參見(jiàn)附圖1,所有RTMP主播設(shè)備分別通過(guò)網(wǎng)線與RTMP流媒體服務(wù)器相連,客戶(hù)端 APP101對(duì)RTMP主播設(shè)備流的反向控制,由RTMP流媒體服務(wù)器102進(jìn)行分發(fā)處理。系統(tǒng)部 署時(shí),RTMP主播設(shè)備104與網(wǎng)絡(luò)交換設(shè)備位于家庭、學(xué)校、公司等流媒體發(fā)布系統(tǒng)內(nèi)部,再 通過(guò)ADSL或?qū)>W(wǎng)進(jìn)行流媒體數(shù)據(jù)上傳。RTMP流媒體服務(wù)器102位于運(yùn)營(yíng)商機(jī)房,客戶(hù)端 APP101位于能進(jìn)行公網(wǎng)訪問(wèn)的各地。圖中可知當(dāng)客戶(hù)端APP101發(fā)出反向控制信令時(shí),通過(guò) RTMP流媒體服務(wù)器102將信令轉(zhuǎn)發(fā)到RTMP主播設(shè)備104。本發(fā)明處理方式說(shuō)明如下: 1、 所有RTMP主播設(shè)備104開(kāi)始運(yùn)行時(shí)都向RTMP流媒體服務(wù)器102進(jìn)行注冊(cè)、RTMP連 接; 2、 客戶(hù)端APP101向RTMP流媒體服務(wù)器102發(fā)起反向控制請(qǐng)求時(shí),RTMP流媒體服務(wù)器 102分析請(qǐng)求信令,確認(rèn)所請(qǐng)求的RTMP主播設(shè)備104,并向RTMP主播設(shè)備104發(fā)出反向控 制請(qǐng)求。
[0023] 3、當(dāng)RTMP主播設(shè)備104接收到RTMP流媒體服務(wù)器102的反向控制請(qǐng)求信令并進(jìn) 行分析,跟據(jù)分析實(shí)時(shí)進(jìn)行相應(yīng)的反向控制操作。
[0024] 在本實(shí)施例中,在流媒體直播過(guò)程中,根據(jù)是否出現(xiàn)客戶(hù)端APP101反向控制請(qǐng) 求,RTMP主播設(shè)備104進(jìn)行實(shí)時(shí)處理。所以,本發(fā)明實(shí)施例提供的方法在不增加系統(tǒng)復(fù)雜 度的前提下,可以解決當(dāng)出現(xiàn)客戶(hù)端APP101向RTMP流媒體直播系統(tǒng)發(fā)出反向控制請(qǐng)求時(shí), RTMP主播設(shè)備104實(shí)時(shí)響應(yīng)問(wèn)題。
[0025] 參見(jiàn)附圖2是本發(fā)明實(shí)施例的方法流程圖,該方法包括: 201、客戶(hù)端APP101發(fā)出反向控制請(qǐng)求; 在進(jìn)行媒體數(shù)據(jù)傳輸時(shí),根據(jù)用戶(hù)需求,由客戶(hù)端發(fā)起反向控制請(qǐng)求??蛻?hù)端APP101 的反向請(qǐng)求信令載于RTMP協(xié)議上,客戶(hù)端APP101將請(qǐng)求信令發(fā)送給RTMP流媒體服務(wù)器 102,再轉(zhuǎn)發(fā)到RTMP主播設(shè)備104。在APP端反向控制信令可設(shè)計(jì)定義如下例所示: private final String handler-Name =〃PTZ〃; private final String handler-Name =''ENCODE"; private final StringMOVE=〃move〃;//云臺(tái)水平或上下移動(dòng) private final String ZOOM =〃zoom〃;//鏡頭縮放 private final String STOP = ''stop";//停止當(dāng)前動(dòng)作 private final String SETENC= ''encode";//設(shè)置編碼參數(shù) private final String CALL-PRESET =〃call-preset";//調(diào)用預(yù)置位 private final StringADD_PRESET ="add-preset";//添加預(yù)置位 private final StringREM0VE_PRESET= ''remove-preset";//刪除預(yù)置位 private final String X_SPEED =〃x_speed〃;//代表(P)水平動(dòng)作和速度 private final String Y_SPEED =〃y_speed〃;//代表(T)上下動(dòng)作和速度 private final String Z_SPEED =〃z_speed〃;//代表縮放(ZOOM)的動(dòng)作和速度 private final String PRESET-ID= "preset-id";//預(yù)置位 ID(0~256) private final StringBIT_RATE= "bit_rate";//代表
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
四平市| 克山县| 镇康县| 亳州市| 延津县| 濉溪县| 宜宾市| 昂仁县| 岢岚县| 铜鼓县| 丹阳市| 农安县| 灯塔市| 肇源县| 定西市| 诏安县| 即墨市| 嘉义市| 清原| 周口市| 景谷| 丹巴县| 榆林市| 荥经县| 吉林省| 上栗县| 太和县| 普安县| 河池市| 海门市| 中山市| 砀山县| 乌鲁木齐市| 伽师县| 白朗县| 新宁县| 盈江县| 翼城县| 九寨沟县| 昭苏县| 景洪市|