iT邦幫忙

0

是否有這種自動轉Port功能兼管理的設備或能靠程式解決?

前情提要
依邦友們提供的方案最後認為WebRTC最為接近,
但深入了解後發現在打洞的部大多場景是使用TURN.

這代表影像的串流都必須經過中間的Server,
並不是P2P的(希望這邊是我理解錯誤).
所以現在想要讓Server負荷降到最低,
在想能不能在鏡頭端用MJPG-streamer之類在網頁上直接串流, 然後再用轉Port(Port Forwarding)的方式讓使用者能直接連到這個頁面?

https://ithelp.ithome.com.tw/upload/images/20191227/20123386NOzJ6Ez4BG.jpg

大致想法如圖.
因為對這方面很不熟,就我目前的經驗只有在Router上手動填入來源/目的端的Port
所以現在遇到幾個問題:
1.鏡頭端設備可能會有很多組, 可能又會臨時增加, 所以想要一連上線就分配鏡頭端設備的Port, 這部份不知道有沒有可能透過程式控制或和資料庫連結?
2.那因為這樣轉等於鏡頭端的網頁完全是公開的, 是否有什麼方式可以做到權限控管機制, 連結前面使用者在網頁登入後才能瀏覽到鏡頭端的網頁?

監視器如果是 FHD的解析度採用 H265 標準的話,每支監視器要吃 10Mbps 的頻寬
樓主又說要用P2P 把所有的監視器影像送到所有的用戶端電腦內讓需要的人透過P2P去看,樓主知道這表示,一支監視器一天產生105GB的資料量,你有30支監視器的話,一天就是 3TB,你確定每個USER可以承受這樣的資料儲存嘛,你也許不是 FHD的監視器,我們就當你用 DVD畫質好了,那一天也要18GB左右的空間
那30支就要 540GB了,你的USER可以撐得住,你的網路可以撐得住 ?
為什麼要監視主機,就是為了改善這各,監視網路跟內部網路必須分開
監視主機可以連上內部網路,讓需要看監視畫面的USER去撈畫面
不然你們要導入智慧監視系統,不要 24小時監視,增加偵測監視條件(要條件偵測元件 ) ,例如紅外線偵測,有人才監視,或動態偵測,有物品移動才監視,或是區域偵測,某區域有異常才啟動偵測,沒有智慧監視,你去搞P2P監視網路,真的很容易死人的
鏡頭的部分應該適用 ip-camera 對嗎 ? 建議可以輸出 大跟小的碼流
webrtc 的部分可以用 go webrtc 來做測試
https://github.com/pion/webrtc/tree/master/examples
這裡面有用 rtp-to-webrtc 可以參考一下,如何收碼流。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

2
froce
iT邦大師 1 級 ‧ 2019-12-30 10:24:51

Turn server只負責轉發封包而已,不能控制/儲存封包,這樣應該還好吧。

照你所說的架構:
1.寫爬蟲或是做自動化SSH去處理,不過我覺得這跟去router上直接輸入一樣...
2.用web server做使用者認證。

0
dscwferp
iT邦高手 1 級 ‧ 2019-12-30 16:45:33

我之前的回答: 前情提要

就是用 node.js
參考
https://github.com/kekeqy/ke-rtsp
加上 客製 自動轉Port功能兼管理的 程式
來當您要的 router(server)
這樣就可以了!

或者 功力更強
用 linux 來當 router(nat server)
加上 客製 自動轉Port功能兼管理的 程式(shell script?)
也是可以!

我要發表回答

立即登入回答